diff --git a/frontend/src/components/article/PopularArticle/PopularArticle.styles.tsx b/frontend/src/components/article/PopularArticleCarousel/PopularArticleCarousel.styles.tsx similarity index 100% rename from frontend/src/components/article/PopularArticle/PopularArticle.styles.tsx rename to frontend/src/components/article/PopularArticleCarousel/PopularArticleCarousel.styles.tsx diff --git a/frontend/src/components/article/PopularArticle/PopularArticle.tsx b/frontend/src/components/article/PopularArticleCarousel/PopularArticleCarousel.tsx similarity index 91% rename from frontend/src/components/article/PopularArticle/PopularArticle.tsx rename to frontend/src/components/article/PopularArticleCarousel/PopularArticleCarousel.tsx index abbba2612..7ca47d3e5 100644 --- a/frontend/src/components/article/PopularArticle/PopularArticle.tsx +++ b/frontend/src/components/article/PopularArticleCarousel/PopularArticleCarousel.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { useNavigate } from 'react-router-dom'; import Loading from '@/components/@common/Loading/Loading'; -import * as S from '@/components/article/PopularArticle/PopularArticle.styles'; +import * as S from '@/components/article/PopularArticleCarousel/PopularArticleCarousel.styles'; import PopularArticleItem from '@/components/article/PopularArticleItem/PopularArticleItem'; import useGetPopularArticles from '@/hooks/article/useGetPopularArticles'; import useCarousel from '@/hooks/common/useCarousel'; @@ -10,7 +10,7 @@ import { Category } from '@/types/articleResponse'; const EmptyMessage = React.lazy(() => import('@/components/@common/EmptyMessage/EmptyMessage')); -const PopularArticle = () => { +const PopularArticleCarousel = () => { const { handleCarouselElementRef, handleLeftSlideEvent, handleRightSlideEvent, currentIndex } = useCarousel(); const { data, isLoading } = useGetPopularArticles(); @@ -59,4 +59,4 @@ const PopularArticle = () => { ) : null; }; -export default PopularArticle; +export default PopularArticleCarousel; diff --git a/frontend/src/components/article/PopularArticleItem/PopularArticleItem.styles.tsx b/frontend/src/components/article/PopularArticleItem/PopularArticleItem.styles.tsx index 0d5716a34..7f77e3503 100644 --- a/frontend/src/components/article/PopularArticleItem/PopularArticleItem.styles.tsx +++ b/frontend/src/components/article/PopularArticleItem/PopularArticleItem.styles.tsx @@ -1,4 +1,4 @@ -import { AiOutlineEye, AiOutlineMessage, AiFillHeart } from 'react-icons/ai'; +import { AiOutlineEye, AiOutlineMessage, AiFillHeart, AiOutlineHeart } from 'react-icons/ai'; import { UserProfile, @@ -32,7 +32,13 @@ export const ViewIcon = styled(AiOutlineEye)` color: ${({ theme }) => theme.colors.BLACK_600}; `; -export const HeartIcon = styled(AiFillHeart)` +export const FillHeartIcon = styled(AiFillHeart)` + font-size: ${({ theme }) => theme.size.SIZE_016}; + + color: ${({ theme }) => theme.colors.RED_600}; +`; + +export const EmptyHeartIcon = styled(AiOutlineHeart)` font-size: ${({ theme }) => theme.size.SIZE_016}; color: ${({ theme }) => theme.colors.RED_600}; diff --git a/frontend/src/components/article/PopularArticleItem/PopularArticleItem.tsx b/frontend/src/components/article/PopularArticleItem/PopularArticleItem.tsx index 829536ef5..ae6aee870 100644 --- a/frontend/src/components/article/PopularArticleItem/PopularArticleItem.tsx +++ b/frontend/src/components/article/PopularArticleItem/PopularArticleItem.tsx @@ -64,7 +64,11 @@ const PopularArticleItem = ({ {views.toLocaleString()} - + {article.isLike ? ( + + ) : ( + + )} {likeCount.toLocaleString()} diff --git a/frontend/src/pages/Home/index.tsx b/frontend/src/pages/Home/index.tsx index fad51bf79..68f2e894b 100644 --- a/frontend/src/pages/Home/index.tsx +++ b/frontend/src/pages/Home/index.tsx @@ -13,7 +13,7 @@ const ResponsiveInfiniteCardList = React.lazy( ); const ArticleItem = React.lazy(() => import('@/components/article/ArticleItem/ArticleItem')); const PopularArticle = React.lazy( - () => import('@/components/article/PopularArticle/PopularArticle'), + () => import('@/components/article/PopularArticleCarousel/PopularArticleCarousel'), ); const EmptyMessage = React.lazy(() => import('@/components/@common/EmptyMessage/EmptyMessage')); diff --git a/frontend/src/storybook/Article/PopularArticle.stories.tsx b/frontend/src/storybook/Article/PopularArticle.stories.tsx index b2a1cc90a..4c86b1ae0 100644 --- a/frontend/src/storybook/Article/PopularArticle.stories.tsx +++ b/frontend/src/storybook/Article/PopularArticle.stories.tsx @@ -1,13 +1,13 @@ import { rest } from 'msw'; import { BrowserRouter } from 'react-router-dom'; -import PopularArticle from '@/components/article/PopularArticle/PopularArticle'; +import PopularArticleCarousel from '@/components/article/PopularArticleCarousel/PopularArticleCarousel'; import { HOME_URL } from '@/constants/apiUrl'; import { Meta, Story } from '@storybook/react'; export default { title: 'Article/PopularArticle', - component: PopularArticle, + component: PopularArticleCarousel, decorators: [ (Story) => ( @@ -19,7 +19,7 @@ export default { ], } as Meta; -const Template: Story = (args) => ; +const Template: Story = (args) => ; export const DefaultPopularArticle = Template.bind({}); DefaultPopularArticle.args = {};