diff --git a/apps/service/package.json b/apps/service/package.json index 2cf1f7a2..9a574941 100644 --- a/apps/service/package.json +++ b/apps/service/package.json @@ -12,6 +12,7 @@ "dependencies": { "@next/third-parties": "^15.2.4", "@repo/pointer-design-system": "workspace:*", + "@repo/pointer-editor": "workspace:*", "@tanstack/react-query": "^5.66.0", "@tanstack/react-query-devtools": "^5.66.0", "dayjs": "^1.11.13", diff --git a/apps/service/public/svg/ic-question-white.svg b/apps/service/public/svg/ic-question-white.svg new file mode 100644 index 00000000..66331744 --- /dev/null +++ b/apps/service/public/svg/ic-question-white.svg @@ -0,0 +1,3 @@ + + + diff --git a/apps/service/src/apis/authMiddleware.ts b/apps/service/src/apis/authMiddleware.ts index 33de2eaf..cc42ab27 100644 --- a/apps/service/src/apis/authMiddleware.ts +++ b/apps/service/src/apis/authMiddleware.ts @@ -1,7 +1,7 @@ 'use client'; import { Middleware } from 'openapi-fetch'; -import { getAccessToken, setAccessToken, setName, setRefreshToken } from '@utils'; +import { getAccessToken, setAccessToken, setGrade, setName, setRefreshToken } from '@utils'; import { postRefreshToken } from '@/apis/controller/auth'; const UNPROTECTED_ROUTES = ['/api/student/auth/social/login', '/api/common/auth/refresh']; @@ -32,6 +32,7 @@ const reissueToken = async () => { } if (result.data?.name) { setName(result.data.name); + setGrade(result.data.grade); } return accessToken; }; diff --git a/apps/service/src/apis/controller/home/index.ts b/apps/service/src/apis/controller/home/index.ts index 6a91c1e4..ede6fd01 100644 --- a/apps/service/src/apis/controller/home/index.ts +++ b/apps/service/src/apis/controller/home/index.ts @@ -2,5 +2,12 @@ import useGetWeeklyProgress from './useGetWeeklyProgress'; import useGetNoticeUnreadCount from './useGetNoticeUnreadCount'; import useGetNotice from './useGetNotice'; import putRead from './putRead'; +import useGetWeeklyPublish from './useGetWeeklyPublish'; -export { useGetWeeklyProgress, useGetNoticeUnreadCount, useGetNotice, putRead }; +export { + useGetWeeklyPublish, + useGetWeeklyProgress, + useGetNoticeUnreadCount, + useGetNotice, + putRead, +}; diff --git a/apps/service/src/apis/controller/home/useGetWeeklyPublish.ts b/apps/service/src/apis/controller/home/useGetWeeklyPublish.ts new file mode 100644 index 00000000..0369076d --- /dev/null +++ b/apps/service/src/apis/controller/home/useGetWeeklyPublish.ts @@ -0,0 +1,7 @@ +import { TanstackQueryClient } from '@apis'; + +const useGetWeeklyPublish = () => { + return TanstackQueryClient.useQuery('get', '/api/student/study/publish/weekly'); +}; + +export default useGetWeeklyPublish; diff --git a/apps/service/src/app/(home)/page.tsx b/apps/service/src/app/(home)/page.tsx index 0a8f895c..fe6ab03c 100644 --- a/apps/service/src/app/(home)/page.tsx +++ b/apps/service/src/app/(home)/page.tsx @@ -2,11 +2,14 @@ import { useRouter } from 'next/navigation'; import { Button } from '@components'; -import { IcCalendar } from '@svg'; +import { IcCalendar, IcQuestionWhite } from '@svg'; import { trackEvent } from '@utils'; import { HomeHeader, NoticeButton, ProblemSwiper, WeekProgress } from '@/components/home'; +import { useGetWeeklyPublish } from '@/apis/controller/home'; const Page = () => { const router = useRouter(); + const { data, isLoading } = useGetWeeklyPublish(); + const problemSets = data?.data ?? []; const handleClickAllProblem = () => { trackEvent('home_all_problem_button_click'); @@ -31,21 +34,22 @@ const Page = () => {
- {/* {isLoading ? ( + {isLoading ? (
) : problemSets ? ( ) : ( <> - )} */} + )}
-