diff --git a/src/pages/learning/hooks/useLearningData.ts b/src/pages/learning/hooks/useLearningData.ts index f743378..cb9b908 100644 --- a/src/pages/learning/hooks/useLearningData.ts +++ b/src/pages/learning/hooks/useLearningData.ts @@ -1,78 +1,17 @@ import { useQuery } from "@tanstack/react-query"; -// import * as api from "../service/LearningService"; -import { - staticLearningsData, - staticLearningDetailData, -} from "../data/staticData"; +import * as api from "../service/LearningService"; export const useGetLearnings = (search: string, limit?: number) => { return useQuery({ queryKey: ["learnings", search, limit], - // queryFn: () => api.getLearnings(search, limit), - queryFn: () => { - // شبیه‌سازی delay سرور - return new Promise((resolve) => { - setTimeout(() => { - let filteredData = staticLearningsData; - - // فیلتر کردن بر اساس جستجو - if (search) { - filteredData = { - data: { - learnings: staticLearningsData.data.learnings.filter( - (item) => - item.title.toLowerCase().includes(search.toLowerCase()) || - item.description - .toLowerCase() - .includes(search.toLowerCase()) || - item.category.name - .toLowerCase() - .includes(search.toLowerCase()) - ), - }, - }; - } - - // محدود کردن تعداد نتایج - if (limit) { - filteredData = { - data: { - learnings: filteredData.data.learnings.slice(0, limit), - }, - }; - } - - resolve(filteredData); - }, 500); - }); - }, + queryFn: () => api.getLearnings(search, limit), }); }; export const useGetLearningDetail = (id: string) => { return useQuery({ queryKey: ["learning", id], - // queryFn: () => api.getLearningDetail(id), - queryFn: () => { - // شبیه‌سازی delay سرور - return new Promise((resolve) => { - setTimeout(() => { - // پیدا کردن آموزش بر اساس ID - const learning = staticLearningsData.data.learnings.find( - (item) => item.id === id - ); - if (learning) { - resolve({ - data: { - learning: learning, - }, - }); - } else { - resolve(staticLearningDetailData); - } - }, 300); - }); - }, + queryFn: () => api.getLearningDetail(id), enabled: !!id, }); }; diff --git a/src/pages/learning/service/LearningService.ts b/src/pages/learning/service/LearningService.ts index 0fd4221..f872fd0 100644 --- a/src/pages/learning/service/LearningService.ts +++ b/src/pages/learning/service/LearningService.ts @@ -1,14 +1,13 @@ -// import axios from "../../../config/axios"; +import axios from "../../../config/axios"; -// Service calls کامنت شده - در حال حاضر از دیتای استاتیک استفاده می‌شود -// export const getLearnings = async (search: string, limit?: number) => { -// const { data } = await axios.get( -// `/learnings?q=${search}&limit=${limit ? limit : 20}` -// ); -// return data; -// }; +export const getLearnings = async (search: string, limit?: number) => { + const { data } = await axios.get( + `/public/learnings?q=${search}&limit=${limit ? limit : 20}`, + ); + return data; +}; -// export const getLearningDetail = async (id: string) => { -// const { data } = await axios.get(`/learnings/${id}`); -// return data; -// }; +export const getLearningDetail = async (id: string) => { + const { data } = await axios.get(`/public/learnings/${id}`); + return data; +};