From c2e3c93886b8ee92ca487ecfb225d6d2456e44d7 Mon Sep 17 00:00:00 2001 From: Lawrene Jang Date: Fri, 18 Oct 2024 00:43:19 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=F0=9F=90=9B=20fix:=20update=20toast=20to?= =?UTF-8?q?=20design=20toast?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/like/page.tsx | 8 ++++--- src/app/login/callback/page.tsx | 21 +++++++++++++------ src/app/page.tsx | 4 ++-- src/app/signup/page.tsx | 7 +++---- src/app/user/[id]/page.tsx | 16 ++++++-------- .../HomeLectureCard/HomeLectureCard.tsx | 8 ++----- .../PickLectureCard/PickLectureCard.tsx | 8 ++----- .../ui/LectureFooter/LectureFooter.tsx | 8 ++----- .../ui/LectureImageInfo/LectureImageInfo.tsx | 8 ++----- .../LectureSummaryHeader.tsx | 2 +- .../UserServiceAgreeDialog.tsx | 6 ++---- src/shared/ui/Footer/Footer.tsx | 2 +- 12 files changed, 43 insertions(+), 55 deletions(-) diff --git a/src/app/like/page.tsx b/src/app/like/page.tsx index 8f71df9..2971824 100755 --- a/src/app/like/page.tsx +++ b/src/app/like/page.tsx @@ -20,10 +20,10 @@ import { import { useEffect, useState } from "react"; import Paginator from "@/shared/ui/Pagination/Paginator"; -import { toast } from "sonner"; import useDeleteDeactivatesLikeLecture from "@/features/like/api/useDeleteDeactivatesLikeLecture"; import { useInView } from "react-intersection-observer"; import useLikeLectureList from "@/features/like/api/useLikeLectureList"; +import { useToast } from "@/shared/hooks/useToast"; const LikePage = () => { const [lectureListData, setLectureListData] = useState< @@ -41,6 +41,8 @@ const LikePage = () => { const [openDeleteLectureDialog, setOpenDeleteLectureDialog] = useState(false); + const { toast } = useToast(); + const { control, watch } = useForm({ defaultValues: { onlyCanApply: likeLectureParams.mode, @@ -65,12 +67,12 @@ const LikePage = () => { if (data?.data.data.some((lecture) => lecture.status === false)) { deleteDeactivatesLecture.mutate(undefined, { onSuccess: () => { - toast("마감된 찜 클래스를 삭제했어요"); + toast({ title: "마감된 찜 클래스가 삭제됐어요." }); setOpenDeleteLectureDialog(false); }, }); } else { - toast("마감된 찜 클래스가 없어요"); + toast({ title: "마감된 찜 클래스가 없어요." }); setOpenDeleteLectureDialog(false); } }; diff --git a/src/app/login/callback/page.tsx b/src/app/login/callback/page.tsx index c4a99e8..918e22f 100755 --- a/src/app/login/callback/page.tsx +++ b/src/app/login/callback/page.tsx @@ -5,16 +5,18 @@ import { useRouter, useSearchParams } from "next/navigation"; import { SquareLoader } from "react-spinners"; import { setCookie } from "cookies-next"; -import { toast } from "sonner"; import useGetAccessToken from "@/features/authentication/api/useGetAccessToken"; import useGetLoginUserInfo from "@/entities/user/api/useGetLoginUserInfo"; import useLoginedUserStore from "@/shared/store/user"; +import { useToast } from "@/shared/hooks/useToast"; const LoginCallback = () => { const router = useRouter(); const searchParams = useSearchParams(); const code = searchParams.get("code"); + const { toast } = useToast(); + // Access Token을 가져오는 훅 const { data: tokenData, @@ -56,9 +58,16 @@ const LoginCallback = () => { // 로그인 사용자 정보 요청 if (isLoginUserSuccess) { setLoginedUser(loginUserData.data.data); - toast("회원가입 / 로그인 성공", { - description: "시ː니어를 위한 문화생활 플랫폼에 오신 걸 환영합니다!", - }); + if (tokenData.is_new === true) { + toast({ + title: "회원가입이 완료되었습니다.", + }); + } + if (tokenData.is_new === false) { + toast({ + title: "로그인 성공!", + }); + } if (tokenData.is_new) { router.push("/signup"); @@ -71,8 +80,8 @@ const LoginCallback = () => { } if (tokenError) { - toast("로그인 실패", { - description: `${tokenError}`, + toast({ + title: "로그인 실패!", }); } }, [ diff --git a/src/app/page.tsx b/src/app/page.tsx index 379addb..545fa83 100755 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -349,8 +349,8 @@ const Home = () => { )} -
-
+
+
시ː작 PICK 클래스 📌
diff --git a/src/app/signup/page.tsx b/src/app/signup/page.tsx index d826539..23f9c76 100755 --- a/src/app/signup/page.tsx +++ b/src/app/signup/page.tsx @@ -6,8 +6,6 @@ import { BackToPrevious, Button, InputLabel, - RadioGroup, - RadioGroupItem, Select, SelectContent, SelectGroup, @@ -23,10 +21,10 @@ import { InputLabelStatus } from "@/shared/ui/InputLabel/InputLabel"; import { UserServiceAgreeDialog } from "@/entities/user/ui"; import axios from "axios"; import { debounce } from "lodash"; -import { toast } from "sonner"; import useGetRandomNickname from "@/entities/user/api/useGetRandomNickname"; import usePostNickname from "@/entities/user/api/usePostNickname"; import { useRouter } from "next/navigation"; +import { useToast } from "@/shared/hooks/useToast"; import useValidateNickname from "@/entities/user/api/useValidateNickname"; import { userAgeList } from "@/entities/user/model/user"; @@ -56,6 +54,7 @@ const SignUpPage = () => { const getRandomNickname = useGetRandomNickname(); const validateNickname = useValidateNickname(); const postNickname = usePostNickname(); + const { toast } = useToast(); const makeRandomNickname = () => { getRandomNickname.mutate(undefined, { @@ -115,7 +114,7 @@ const SignUpPage = () => { }, { onSuccess: () => { - toast("닉네임이 성공적으로 업데이트됐어요"); + toast({ title: "시ː작에 오신 걸 환영합니다." }); router.push("/"); }, }, diff --git a/src/app/user/[id]/page.tsx b/src/app/user/[id]/page.tsx index b909bc7..c63bafe 100755 --- a/src/app/user/[id]/page.tsx +++ b/src/app/user/[id]/page.tsx @@ -2,27 +2,21 @@ import { BackToPrevious, Button, InputLabel, UnifiedDialog } from "@/shared/ui"; import { Controller, SubmitHandler, useForm } from "react-hook-form"; -import { - LoginUserInfo, - PatchUserAddress, - userAgeMap, -} from "@/entities/user/model/user"; +import { LoginUserInfo, PatchUserAddress } from "@/entities/user/model/user"; import { debounce, isEmpty } from "lodash"; import { useEffect, useState } from "react"; -import Image from "next/image"; import { InputLabelStatus } from "@/shared/ui/InputLabel/InputLabel"; import { SquareLoader } from "react-spinners"; import axios from "axios"; import { deleteCookie } from "cookies-next"; -import { toast } from "sonner"; import { useGeoLocation } from "@/shared/lib/useGeolocation"; import useGetLoginUserInfo from "@/entities/user/api/useGetLoginUserInfo"; -import usePatchUserAddress from "@/entities/user/api/usePatchUserAddress"; import usePatchUserInfo from "@/entities/user/api/usePatchUserInfo"; import usePostLogout from "@/features/authentication/api/usePostLogout"; import { useQueryClient } from "@tanstack/react-query"; import { useRouter } from "next/navigation"; +import { useToast } from "@/shared/hooks/useToast"; import useValidateNickname from "@/entities/user/api/useValidateNickname"; export const runtime = "edge"; @@ -77,6 +71,8 @@ const UserInfoPage = () => { const queryClient = useQueryClient(); + const { toast } = useToast(); + const validationCheckNickname = debounce((nickname: string) => { validateNickname.mutate( { nickname }, @@ -138,7 +134,7 @@ const UserInfoPage = () => { }, { onSuccess: () => { - toast("유저 정보 업데이트가 성공적으로 됐어요."); + toast({ title: "닉네임이 변경 완료됐습니다." }); window.location.reload(); }, }, @@ -150,7 +146,7 @@ const UserInfoPage = () => { onSuccess: () => { deleteCookie("accessToken"); deleteCookie("refreshToken"); - toast("로그아웃 성공"); + toast({ title: "다음에 또 봐요~!" }); queryClient.clear(); router.push("/"); }, diff --git a/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx b/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx index 7583ea1..3abe5fb 100755 --- a/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx +++ b/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx @@ -106,9 +106,7 @@ const HomeLectureCard = (props: HomeLectureCardProps) => { lectureId: id, }, { - onSuccess: () => { - toast("찜한 클래스를 삭제했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(true); }, @@ -122,9 +120,7 @@ const HomeLectureCard = (props: HomeLectureCardProps) => { lectureId: id, }, { - onSuccess: () => { - toast("클래스를 찜 했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(false); }, diff --git a/src/entities/lecture/ui/LectureCard/PickLectureCard/PickLectureCard.tsx b/src/entities/lecture/ui/LectureCard/PickLectureCard/PickLectureCard.tsx index 554a283..2f6be05 100755 --- a/src/entities/lecture/ui/LectureCard/PickLectureCard/PickLectureCard.tsx +++ b/src/entities/lecture/ui/LectureCard/PickLectureCard/PickLectureCard.tsx @@ -102,9 +102,7 @@ const PickLectureCard = (props: PickLectureCardProps) => { lectureId: id, }, { - onSuccess: () => { - toast("찜한 클래스를 삭제했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(true); }, @@ -118,9 +116,7 @@ const PickLectureCard = (props: PickLectureCardProps) => { lectureId: id, }, { - onSuccess: () => { - toast("클래스를 찜 했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(false); }, diff --git a/src/entities/lecture/ui/LectureFooter/LectureFooter.tsx b/src/entities/lecture/ui/LectureFooter/LectureFooter.tsx index cb2acca..7ad7f34 100755 --- a/src/entities/lecture/ui/LectureFooter/LectureFooter.tsx +++ b/src/entities/lecture/ui/LectureFooter/LectureFooter.tsx @@ -57,9 +57,7 @@ const LectureFooter = ({ lectureId: lectureInfo.id, }, { - onSuccess: () => { - toast("찜한 클래스를 삭제했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(true); }, @@ -73,9 +71,7 @@ const LectureFooter = ({ lectureId: lectureInfo.id, }, { - onSuccess: () => { - toast("클래스를 찜 했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(false); }, diff --git a/src/entities/lecture/ui/LectureImageInfo/LectureImageInfo.tsx b/src/entities/lecture/ui/LectureImageInfo/LectureImageInfo.tsx index 35a3f0a..ad2df47 100755 --- a/src/entities/lecture/ui/LectureImageInfo/LectureImageInfo.tsx +++ b/src/entities/lecture/ui/LectureImageInfo/LectureImageInfo.tsx @@ -49,9 +49,7 @@ const LectureImageInfo = ({ lectureId: lectureInfo.id, }, { - onSuccess: () => { - toast("찜한 클래스를 삭제했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(true); }, @@ -65,9 +63,7 @@ const LectureImageInfo = ({ lectureId: lectureInfo.id, }, { - onSuccess: () => { - toast("클래스를 찜 했어요"); - }, + onSuccess: () => {}, onError: () => { setHeart(false); }, diff --git a/src/entities/lecture/ui/LectureSummary/LectureSummaryHeader/LectureSummaryHeader.tsx b/src/entities/lecture/ui/LectureSummary/LectureSummaryHeader/LectureSummaryHeader.tsx index 2a563d8..be715df 100755 --- a/src/entities/lecture/ui/LectureSummary/LectureSummaryHeader/LectureSummaryHeader.tsx +++ b/src/entities/lecture/ui/LectureSummary/LectureSummaryHeader/LectureSummaryHeader.tsx @@ -24,7 +24,7 @@ const LectureSummaryHeader = ({ const currentUrl = window.location.href; handleCopyClipBoard(currentUrl); toast({ - title: "링크를 복사했어요", + title: "링크를 복사했어요.", }); }; diff --git a/src/entities/user/ui/UserServiceAgreeDialog/UserServiceAgreeDialog.tsx b/src/entities/user/ui/UserServiceAgreeDialog/UserServiceAgreeDialog.tsx index 728b909..765d75b 100755 --- a/src/entities/user/ui/UserServiceAgreeDialog/UserServiceAgreeDialog.tsx +++ b/src/entities/user/ui/UserServiceAgreeDialog/UserServiceAgreeDialog.tsx @@ -18,12 +18,11 @@ import { FormLabel, FormMessage, } from "@/shared/ui"; -import { Dispatch, FormEvent, SetStateAction, useState } from "react"; +import { Dispatch, SetStateAction, useState } from "react"; import { SubmitHandler, useForm } from "react-hook-form"; import Image from "next/image"; import Link from "next/link"; -import { toast } from "sonner"; import { twMerge } from "tailwind-merge"; import usePostUserAgree from "../../api/usePostUserAgree"; import { z } from "zod"; @@ -64,7 +63,7 @@ const agreeItems = [ }, { id: "locationBasedServiceAgree", - label: "[필수] 위치기반서비스동의", + label: "[필수] 위치정보 이용약관", externalLink: "https://www.notion.so/17e92e6c1188429cb17ad92d84f65103?pvs=4", }, @@ -112,7 +111,6 @@ const UserServiceAgreeDialog = ({ setAgree }: UserServiceAgreeDialogProps) => { { onSuccess: () => { setAgree(true); - toast("서비스 동의 완료"); }, }, ); diff --git a/src/shared/ui/Footer/Footer.tsx b/src/shared/ui/Footer/Footer.tsx index 1339308..c91db78 100755 --- a/src/shared/ui/Footer/Footer.tsx +++ b/src/shared/ui/Footer/Footer.tsx @@ -16,7 +16,7 @@ export const externalLinkList: Array = [ }, { link: "https://www.notion.so/17e92e6c1188429cb17ad92d84f65103?pvs=4", - content: "위치기반시스템이용약관", + content: "위치정보 이용약관", }, { link: "https://www.notion.so/f34337d192d54efd818663cbeb2ad77c?pvs=4", From d5532a64d7372d124dd98384d10a764c911c74f2 Mon Sep 17 00:00:00 2001 From: Lawrene Jang Date: Fri, 18 Oct 2024 12:42:45 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=90=9B=20fix:=20update=20NotFoundLect?= =?UTF-8?q?ure=20align?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/page.tsx | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index 545fa83..551521a 100755 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -268,16 +268,20 @@ const Home = () => { ); } - if (pickLectureListData && pickLectureListData.length > 0) { - return ( - - ); - } + // if (pickLectureListData && pickLectureListData.length > 0) { + // return ( + // + // ); + // } - return ; + return ( +
+ +
+ ); }; return ( @@ -339,7 +343,9 @@ const Home = () => {
-
{renderHomeLectureList()}
+
+ {renderHomeLectureList()} +
@@ -358,7 +364,7 @@ const Home = () => { 조회 수 많은 추천 클래스를 소개할게요!
-
{renderPickLectureList()}
+
{renderPickLectureList()}
From 8e1ec75bd12c09155a406342fc62129244978243 Mon Sep 17 00:00:00 2001 From: Lawrene Jang Date: Fri, 18 Oct 2024 14:07:03 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=90=9B=20fix:=20update=20qa=20bug=20f?= =?UTF-8?q?ix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/icons/sijak_footer_logo.svg | 4 + public/images/sijak_footer_logo.png | Bin 1011 -> 0 bytes src/app/class/[id]/page.tsx | 11 -- src/app/like/page.tsx | 126 +++++++++--------- src/app/page.tsx | 20 +-- .../HomeLectureCard/HomeLectureCard.tsx | 6 +- .../PickLectureCard/PickLectureCard.tsx | 6 +- .../ui/LectureFooter/LectureFooter.tsx | 8 +- .../ui/LectureImageInfo/LectureImageInfo.tsx | 6 +- .../LectureSummaryHeader.tsx | 2 +- .../ui/NotFoundLecture/NotFoundLecture.tsx | 13 +- src/shared/ui/Chip/Chip.tsx | 2 +- .../ExternalLinkList/ExternalLinkList.tsx | 44 ++++++ .../ui/Footer/ExternalLinkList/index.ts | 1 + src/shared/ui/Footer/Footer.tsx | 120 ++++++++++------- .../FooterSijakLogo/FooterSijakLogo.tsx | 26 ++++ src/shared/ui/Footer/FooterSijakLogo/index.ts | 1 + src/shared/ui/Footer/index.ts | 2 + .../Header/HeaderFeatures/HeaderFeatures.tsx | 6 +- .../Header/HeaderPrevious/HeaderPrevious.tsx | 2 +- 20 files changed, 251 insertions(+), 155 deletions(-) create mode 100644 public/icons/sijak_footer_logo.svg delete mode 100755 public/images/sijak_footer_logo.png create mode 100644 src/shared/ui/Footer/ExternalLinkList/ExternalLinkList.tsx create mode 100644 src/shared/ui/Footer/ExternalLinkList/index.ts create mode 100644 src/shared/ui/Footer/FooterSijakLogo/FooterSijakLogo.tsx create mode 100644 src/shared/ui/Footer/FooterSijakLogo/index.ts diff --git a/public/icons/sijak_footer_logo.svg b/public/icons/sijak_footer_logo.svg new file mode 100644 index 0000000..951a781 --- /dev/null +++ b/public/icons/sijak_footer_logo.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/images/sijak_footer_logo.png b/public/images/sijak_footer_logo.png deleted file mode 100755 index 6046abf3ce5787892484a118d63330e35631ae12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1011 zcmV8`2EeViwl@wy(kCcy0DS?JK0)0BqWlO& zAcXSY`8FPF6V{0xlK7J>kN0Qx+nL$%?pl-(J3BjGwOU=bEGye;wN|;v4IZG(Bw@o^s_4H33&f2-H)hs9#COmPVzPHMHOMFWwt^$)mdOk@D%g?v8mMiL5Q#-lL-A>laAzFro(49l8d1xf)N=xfKv#}`W0 z%J(TH1ZhP<5els1QF`zK4sAl5O?N3};4h%w!7~4or1Q(mi+WE_Ps9JQ`mkH5QmORp z$8A;|{3v@VxxT(u^8EZfWilC6c7K1blrJqU(d_JOM<29jogHN}Gc&5c^jltDR=T>u zB-d>=)yF78n8oDeq_PNzNEv1r1q>t)+H$Um)h|HSp+3Q^D>Q-sOUPeJo|~H^*LB14 ztE(#|OPK)WAPh@&Vb$j35&^3&7Pt9TJ0KHypmdUJE52*IL=F%ShI=;D7@dsMbqFG5B@`NPA5lA-+W?oKHY zE9lUb%j_{I`e70%17YX@AV&e(u`lVc5?m!Fm)T?HC^PuIbBas^7LnDd>x8vHve9T5 zCk8G?LNG7LKsg8j_=d$Km*{{sF^~kltVkWQVxh-W4`4s;U^C8wr&qwtPyka4Kn$x0 zGt*-W08zAGSXc<#ns9r28wR=wO!P1EP{~xOlM$HAEEdD8^_4UTn9GI3iq3d;Uz2nM zS&+l3L9$z1T#VIEf~mC5{|l!3Dw-ujLae|(S9 zfzRi)6$qg-*{>Uv9u7sA5aIIj($D2`@7R|gXpDfX3WdTK`L??%52Dh*h=5Cp1HGVw z5RSK;)<04E96oX~yv*0SkJPUc0yj_%M@b4^2*~)|brYrzrBbP!&1R7bGQ*B3#0-<%ZNcl_@e*-002ovPDHLkV1j(@#5w=~ diff --git a/src/app/class/[id]/page.tsx b/src/app/class/[id]/page.tsx index a80666c..1e0a366 100755 --- a/src/app/class/[id]/page.tsx +++ b/src/app/class/[id]/page.tsx @@ -217,17 +217,6 @@ const LectureInfoPage = () => { /> - {/* {isLoading && ( -
-
- -
- - -
-
-
- )} */} {renderSummary()} {lectureInfo && ( diff --git a/src/app/like/page.tsx b/src/app/like/page.tsx index 2971824..312d2f8 100755 --- a/src/app/like/page.tsx +++ b/src/app/like/page.tsx @@ -49,11 +49,11 @@ const LikePage = () => { }, }); - const { ref, inView } = useInView({ - threshold: 1.0, // 100% 보일 때 트리거 - }); + // const { ref, inView } = useInView({ + // threshold: 1.0, // 100% 보일 때 트리거 + // }); - const { data, isLoading, isSuccess, refetch } = useLikeLectureList({ + const { data, isLoading, isSuccess } = useLikeLectureList({ page: likeLectureParams.page, size: likeLectureParams.size, mode: likeLectureParams.mode, @@ -95,6 +95,7 @@ const LikePage = () => { // setHasNext(data.data.hasNext); // } // }, [data, isSuccess]); + useEffect(() => { if (isSuccess) { setLectureListData(data.data.data); @@ -110,16 +111,16 @@ const LikePage = () => { })); }, [onlyCanApply]); - useEffect(() => { - if (inView && hasNext && !isLoading) { - setLikeLectureParams((prev) => { - return { - ...prev, - page: prev.page + 1, - }; - }); - } - }, [inView, hasNext, isLoading]); + // useEffect(() => { + // if (inView && hasNext && !isLoading) { + // setLikeLectureParams((prev) => { + // return { + // ...prev, + // page: prev.page + 1, + // }; + // }); + // } + // }, [inView, hasNext, isLoading]); const triggerItem = () => { return ( @@ -199,7 +200,8 @@ const LikePage = () => { return ( ); @@ -220,56 +222,54 @@ const LikePage = () => { -
-
- {!isLoading && lectureListData && lectureListData.length > 0 && ( -
-
- ( - // FIXME: 로직 확인 필요 - 멘토님 도움 필요 - { - onChange(checked); - setLikeLectureParams((prev) => ({ - ...prev, - mode: !!checked, - page: 0, - })); - }} - onBlur={onBlur} - ref={ref} - /> - )} - /> - -
- +
+
+
+ ( + // FIXME: 로직 확인 필요 - 멘토님 도움 필요 + { + onChange(checked); + setLikeLectureParams((prev) => ({ + ...prev, + mode: !!checked, + page: 0, + })); + }} + onBlur={onBlur} + ref={ref} + /> + )} /> +
- )} + +
{renderLikeCardContent()}
diff --git a/src/app/page.tsx b/src/app/page.tsx index 551521a..b6e2e7f 100755 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -268,14 +268,14 @@ const Home = () => { ); } - // if (pickLectureListData && pickLectureListData.length > 0) { - // return ( - // - // ); - // } + if (pickLectureListData && pickLectureListData.length > 0) { + return ( + + ); + } return (
@@ -364,7 +364,9 @@ const Home = () => { 조회 수 많은 추천 클래스를 소개할게요!
-
{renderPickLectureList()}
+
+ {renderPickLectureList()} +
diff --git a/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx b/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx index 3abe5fb..cedc54b 100755 --- a/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx +++ b/src/entities/lecture/ui/LectureCard/HomeLectureCard/HomeLectureCard.tsx @@ -158,12 +158,12 @@ const HomeLectureCard = (props: HomeLectureCardProps) => { const dialogContent = () => { return ( -
+
-
+
로그인이 필요한
-
서비스에요
+
서비스에요