diff --git a/web/bun.lockb b/web/bun.lockb index b7674cd..998f07f 100755 Binary files a/web/bun.lockb and b/web/bun.lockb differ diff --git a/web/package.json b/web/package.json index 4ffb939..5a41653 100644 --- a/web/package.json +++ b/web/package.json @@ -11,10 +11,14 @@ "fmt": "prettier --write ." }, "dependencies": { + "@radix-ui/react-tooltip": "^1.1.2", "@tabler/icons-react": "^3.14.0", + "clsx": "^2.1.1", "date-fns": "^3.6.0", "react": "^18.3.1", - "react-dom": "^18.3.1" + "react-dom": "^18.3.1", + "tailwind-merge": "^2.5.2", + "tailwindcss-animate": "^1.0.7" }, "devDependencies": { "@eslint/js": "^9.9.0", diff --git a/web/src/App.tsx b/web/src/App.tsx index d1d586c..c9ded3b 100644 --- a/web/src/App.tsx +++ b/web/src/App.tsx @@ -1,33 +1,16 @@ -import { MouseEvent, useState } from "react"; +import { useState } from "react"; import Logo from "./components/Logo"; import Statistic from "./components/Statistic"; import Image from "./components/Image"; import { LastChecked } from "./components/LastChecked"; import Loading from "./components/Loading"; import { Data } from "./types"; +import { theme } from "./theme"; +import RefreshButton from "./components/RefreshButton"; function App() { const [data, setData] = useState(null); - const theme = "neutral"; // Stupid, I know but I want both the dev and prod to work easily. if (!data) return ; - const refresh = (event: MouseEvent) => { - const btn = event.currentTarget as HTMLButtonElement; - btn.disabled = true; - - let request = new XMLHttpRequest(); - request.onload = () => { - if (request.status === 200) { - window.location.reload(); - } - }; - request.open( - "GET", - process.env.NODE_ENV === "production" - ? "/refresh" - : `http://${window.location.hostname}:8000/refresh` - ); - request.send(); - }; return (
- +