fix(api): fix api endpoint logic #2

This commit is contained in:
shafin-r
2025-08-16 17:05:40 +06:00
parent 713696760e
commit ad46bf954e
5 changed files with 40 additions and 41 deletions

View File

@ -10,13 +10,14 @@ import { login } from "@/lib/auth";
import DestructibleAlert from "@/components/DestructibleAlert";
import { useAuth } from "@/context/AuthContext";
import { LoginForm } from "@/types/auth";
import { CircleAlert } from "lucide-react";
const LoginPage = () => {
const router = useRouter();
const { setToken } = useAuth();
const [form, setForm] = useState<LoginForm>({
email: "",
identifier: "",
password: "",
});
@ -71,11 +72,11 @@ const LoginPage = () => {
<div className="flex flex-col justify-between gap-10">
<div className="flex flex-col w-full gap-5">
<FormField
title="Email Address"
value={form.email}
title="Email \ Username"
value={form.identifier}
placeholder="Enter your email address..."
handleChangeText={(value) =>
setForm({ ...form, email: value })
setForm({ ...form, identifier: value })
}
/>
<FormField
@ -87,9 +88,13 @@ const LoginPage = () => {
}
/>
</div>
{error && <DestructibleAlert text={error} extraStyles="" />}
<h1 className="flex justify-center items-center gap-2 bg-green-200 p-4 rounded-full">
<CircleAlert size={20} />
Your login details will be remembered.
</h1>
<button
onClick={loginUser}
disabled={isLoading}

View File

@ -28,34 +28,34 @@ const HomePage = () => {
const [linkedViews, setLinkedViews] = useState<GalleryViews[]>();
useEffect(() => {
let isMounted = true;
// let isMounted = true;
const fetchBoardData = async () => {
try {
const response = await fetch(`${API_URL}/leaderboard`);
if (!response.ok) {
throw new Error("Failed to fetch leaderboard data");
}
// const fetchBoardData = async () => {
// try {
// const response = await fetch(`${API_URL}/leaderboard`);
// if (!response.ok) {
// throw new Error("Failed to fetch leaderboard data");
// }
const data: LeaderboardEntry[] = await response.json();
if (isMounted) setBoardData(data);
} catch (err) {
if (isMounted) {
const message =
err instanceof Error ? err.message : "An unexpected error occurred";
setBoardError(message);
}
}
};
// const data: LeaderboardEntry[] = await response.json();
// if (isMounted) setBoardData(data);
// } catch (err) {
// if (isMounted) {
// const message =
// err instanceof Error ? err.message : "An unexpected error occurred";
// setBoardError(message);
// }
// }
// };
const fetchedLinkedViews: GalleryViews[] = getLinkedViews();
setLinkedViews(fetchedLinkedViews);
fetchBoardData();
// fetchBoardData();
return () => {
isMounted = false;
};
// return () => {
// isMounted = false;
// };
}, []);
return (
@ -144,7 +144,8 @@ const HomePage = () => {
{/* Leaderboard Section */}
<div className={styles.leaderboardWrapper}>
<h2 className={styles.sectionTitle}>Leaderboard</h2>
<div className={styles.leaderboardContainer}>
<p className="text-center text-xl">Coming Soon.</p>
{/* <div className={styles.leaderboardContainer}>
<div className={styles.topThreeHeader}>
<span className={styles.topThreeTitle}>Top 3</span>
<button
@ -175,7 +176,7 @@ const HomePage = () => {
))
)}
</div>
</div>
</div> */}
</div>
{/* Performance Summary Section */}