Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: 홈(구 탐색) 개편 #261

Closed
wants to merge 89 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
da972cf
Feat: 홈 폴더 및 페이지 생성
Nahyun-Kang Aug 8, 2024
5076fea
Design: 추천 리스터 css 수정
Nahyun-Kang Aug 8, 2024
7582642
Feat: 헤더 컴포넌트 생성
Nahyun-Kang Aug 15, 2024
e03c63d
Merge branch 'dev' of https://github.com/Nahyun-Kang/ListyWave-front …
Nahyun-Kang Aug 15, 2024
5c08f0b
Feat: 헤더 퍼블리싱 완료
Nahyun-Kang Aug 15, 2024
3bf6cbd
Feat: 트렌딩리스트 수정
Nahyun-Kang Aug 16, 2024
a3277ca
Chore: 불필요한 css 파일 삭제
Nahyun-Kang Aug 16, 2024
f3e2077
design/디자인시스템(컬러&폰트)
Eugene-A-01 Aug 11, 2024
7d9f6ab
Feat: 플로팅 버튼 정리
Nahyun-Kang Aug 18, 2024
698c56f
Fix: 플로팅 버튼 디자인 수정
Nahyun-Kang Aug 18, 2024
8f022e5
Feat: 주제 요청하기 버튼 만들기
Nahyun-Kang Aug 18, 2024
64c8e07
Design: 내피드 공개/비공개 라벨 표시 UI 구현
ParkSohyunee Aug 18, 2024
6220984
Chore: 기존 버전 카드 컴포넌트 추가
ParkSohyunee Aug 18, 2024
75f4d0b
Design: isPublic 옵션에 따른 내피드 리스트 공개/비공개 문구 나오도록 수정
ParkSohyunee Aug 18, 2024
af10b8b
Design: 내피드 공개/비공개 옵션 버튼 스타일 수정
ParkSohyunee Aug 18, 2024
ddd9721
Feat: 마이피드 리스트 케밥버튼 클릭시, 팝업 메뉴 나오도록 구현
ParkSohyunee Aug 21, 2024
e4d245e
Feat: 리스트 팝업 옵션 토글 버튼 컴포넌트 구현
ParkSohyunee Sep 2, 2024
2945681
Fix: 팝업 메뉴 div 태그 제거
ParkSohyunee Sep 2, 2024
9835032
Feat: 리스트 공개, 비공개 상태에 따른 팝업메뉴 text 적용
ParkSohyunee Sep 2, 2024
2eba820
Design: 리스트 팝오버 메뉴에 삭제하기 옵션 UI 추가
ParkSohyunee Sep 2, 2024
fd59ef8
Feat: 팝업 메뉴 삭제하기 클릭 시, 리스트 개별 삭제 기능 구현
ParkSohyunee Sep 2, 2024
cf3ccf0
Feat: 삭제하기 옵션을 눌렀을 때 리스트가 삭제되도록 구현
ParkSohyunee Sep 4, 2024
d6f7c7e
Chore: 디자인시스템 폰트 추가 설정
ParkSohyunee Sep 4, 2024
7dac6b6
Design: 마이피드 ver3.0 디자인 변경에 따른 스타일 일부 수정
ParkSohyunee Sep 4, 2024
deb4abc
Refactor: 리스트 카드 컴포넌트와 옵션토글 버튼 컴포넌트에 메모이제이션 적용
ParkSohyunee Sep 4, 2024
7613f78
Design: Ver3.0 폰트로 변경
ParkSohyunee Sep 8, 2024
6b55f9e
Feat: 로그인 모달에 로컬용 로그인 기능 추가
ParkSohyunee Sep 5, 2024
9ea85a0
Feat: 개발용 로그인 버튼 컴포넌트 분리
ParkSohyunee Sep 5, 2024
edd77ed
Feat: 로컬용 로그인 계정에서 로그아웃 시, 쿠키 제거 및 로그아웃 상태되도록 구현
ParkSohyunee Sep 5, 2024
bbc504c
Remove: 기존 로그인을 위해 만든 임시페이지 제거
ParkSohyunee Sep 5, 2024
dde06db
Refactor: 하단 네브바 로직 리팩토링
ParkSohyunee Sep 6, 2024
8c8c57a
Fix: 기존 explore 버튼을 home 버튼으로 변경 및 next/link 태그로 변경
ParkSohyunee Sep 6, 2024
8dba1a4
Feat: 네브 탭 아이콘 추가 및 하드코딩 된 path를 객체로 리팩토링
ParkSohyunee Sep 6, 2024
1b3fb7c
Design: 하단 네브바 UI 스타일 적용
ParkSohyunee Sep 6, 2024
e7b73d8
Design: 하단 네브 탭 패딩 적용
ParkSohyunee Sep 6, 2024
c13f982
Refactor: 탭 아이콘 색상 및 탭 text 스타일 조건부 처리 로직을 함수로 정의하여 리팩토링
ParkSohyunee Sep 6, 2024
8e00c45
Design: 홈, 피드 아이콘 변경
ParkSohyunee Sep 9, 2024
ae92eeb
Design: 마이피드 페이지 Profile, Content, FollowButton 컴포넌트 Ver3.0 UI 디자인 적용
ParkSohyunee Sep 9, 2024
9e74904
Design: 마이피드 페이지 Card, Category, OptionToggleButton 컴포넌트 Ver3.0 UI 디자…
ParkSohyunee Sep 9, 2024
aa0a6f1
Design: 마이피드 리스트 스크롤 영역 지정
ParkSohyunee Sep 9, 2024
b3c5f91
Design: 리스트 스크롤 영역 높이가 상하단 요소 크기에 맞춰 조정될 수 있도록 적용
ParkSohyunee Sep 10, 2024
2c7173c
Feat: 스크롤 시 리스트 영역 상, 하단에 그라데이션 스타일 적용하는 기능 구현(Observer API)
ParkSohyunee Sep 11, 2024
c6150ff
Fix: 리스트 더보기 토글 버튼 옵션 click 안됨 이슈 해결 (ref 영역, 스타일 수정)
ParkSohyunee Sep 11, 2024
6cf61da
Fix: ListRecommendation 컴포넌트 item 없을 때 에러 수정 (옵셔널체이닝 적용)
ParkSohyunee Sep 11, 2024
9d99463
Design: 리스트 더보기버튼 가려지는 문제로 상단 그라데이션 영역 위치 조정
ParkSohyunee Sep 11, 2024
9bbba3f
Fix: 무한스크롤 감지하는 ref 태그 위치 수정
ParkSohyunee Sep 11, 2024
a7fe0e3
Feat: 마이피드 리스트 공개/비공개 기능 구현 및 mutation 후 토스트메세지 적용
ParkSohyunee Sep 11, 2024
9d87a48
Feat: 리스트 삭제 시 컨펌모달 구현
ParkSohyunee Sep 11, 2024
da3b9b2
Fix: build 에러 수정
ParkSohyunee Sep 11, 2024
aa3ab7f
Design: 마이피드 Content 컴포넌트 position style 수정
ParkSohyunee Sep 18, 2024
655c27f
Feat: 토스트 메세지 문구 수정
ParkSohyunee Sep 18, 2024
608ae27
Fix: 토스트 메세지 타입 조건문 수정
ParkSohyunee Sep 18, 2024
c92c1c5
Design: 테마 컬러 수정에 따른 스타일 수정
ParkSohyunee Sep 19, 2024
4884280
Design: 카테고리 버튼 가려짐 문제로 상단 그라데이션 div 위치에 따른 height 조정
ParkSohyunee Sep 19, 2024
880bd9f
Merge branch 'dev' into Feature/homeamend
Nahyun-Kang Sep 27, 2024
cc2a666
Feat: 헤더 로직 구현
Nahyun-Kang Sep 27, 2024
bf037c8
Feat: 최신 리스트 수정
Nahyun-Kang Sep 27, 2024
767f53a
Feat: 팔로잉 리스트 구현 완료
Nahyun-Kang Sep 27, 2024
f579dc5
Style: 일부 코드 정리
Nahyun-Kang Oct 14, 2024
3e9df90
rename: 콜렉션 페이지 Ver2.0 파일 구분
ParkSohyunee Oct 13, 2024
c1abff3
feat: mock data로 콜렉션 페이지 Ver3.0 UI 구현
ParkSohyunee Oct 13, 2024
e0621b0
Style: 폴더 추가하기 버튼 마크업
ParkSohyunee Oct 13, 2024
cbdd772
Design: 콜렉션 페이지 바텀시트 마크업
ParkSohyunee Oct 13, 2024
9225314
Design: 바텀시트 제목, 인풋, 버튼 마크업 및 스타일 구현
ParkSohyunee Oct 13, 2024
fcdc7d3
Design: content 높이 스타일 수정
ParkSohyunee Oct 13, 2024
4f53c1b
Feat: 폴더 생성하기 기능 구현 (API 연동, 에러 코드에 따른 에러 핸들링)
ParkSohyunee Oct 13, 2024
f84cf96
Feat: 폴더 조회하기 API 연동 및 폴더 생성 후 데이터 최신화
ParkSohyunee Oct 13, 2024
d9bf530
Design: 콜렉션 페이지 스타일 수정 (텍스트 줄임 적용, 뒤로가기 path 추가 등)
ParkSohyunee Oct 13, 2024
bc9e5ba
Rename: 콜렉션 상세페이지 Ver2.0 파일 구분을 위해 이름 수정
ParkSohyunee Oct 23, 2024
4b1870a
Feat: 콜렉션 폴더 Link 태그로 변경 및 href 설정
ParkSohyunee Oct 23, 2024
eb2d404
Feat: 콜렉션 리스트조회 API 연동 및 폴더 상세페이지 레이아웃 구현
ParkSohyunee Oct 24, 2024
8f1d1ab
Design: 콜렉션 상세페이지 퍼블리싱
ParkSohyunee Oct 24, 2024
582bcc3
Design: 배경이미지 유무에 따른 스타일 variants 적용
ParkSohyunee Oct 24, 2024
2897e70
Feat: Header 수정버튼 클릭시 공통 BottomSheet 나오도록 적용
ParkSohyunee Oct 24, 2024
5c8a437
Refactor: BottomSheet 컴포넌트 Compound Component 패턴으로 리팩토링
ParkSohyunee Oct 24, 2024
0eb8bad
Fix: unauthorized 에러일때 로그인 모달 대신 토스트 메세지로 변경
ParkSohyunee Oct 24, 2024
ad1827a
Feat: 폴더 이름 수정하기 기능 구현
ParkSohyunee Oct 24, 2024
39d9d97
Feat: BottomSheet Button 이름을 children으로 받도록 수정 및 삭제일때 폰트색상 수정
ParkSohyunee Oct 24, 2024
85088f5
Feat: 폴더 삭제하기 기능 구현
ParkSohyunee Oct 24, 2024
97f494d
Feat: 폴더페이지에서 뒤로가기 클릭시 경로 수정
ParkSohyunee Oct 24, 2024
99683a4
Fix: 폴더 콜렉션 리스트 배경이미지 url 값 수정
ParkSohyunee Oct 24, 2024
9d31279
Design: 콜렉션 페이지 스타일 수정
ParkSohyunee Oct 24, 2024
38504e2
Chore: 빌드 에러 수정 (기존 폴더 rename으로 인한 import 경로 오류)
ParkSohyunee Oct 25, 2024
eab8f54
Design: (코드리뷰 반영) 콜렉션 리스트 스타일 수정
ParkSohyunee Oct 25, 2024
d1823b8
Refactor: 콜렉션 심플 리스트 공통 컴포넌트로 리팩토링
ParkSohyunee Oct 27, 2024
77f65a8
Rename: BottomSheet 컴포넌트 Ver3.0 공통컴포넌트로 분리
ParkSohyunee Oct 27, 2024
332ef8a
Refactor: BottomSheet 컴포넌트에 Content 부분 추가
ParkSohyunee Oct 27, 2024
a083ac0
Refactor: BottomSheet 컴포넌트 버튼 children prop 타입 수정
ParkSohyunee Oct 27, 2024
a94a572
Merge branch 'dev' of https://github.com/8-Sprinters/ListyWave-front …
Nahyun-Kang Oct 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
{}
{
"typescript.tsdk": "node_modules/typescript/lib"
}
2 changes: 1 addition & 1 deletion public/icons/arrow_up.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions public/icons/new/add.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/new/bookmark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/new/bottom_nav_add.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/new/bottom_nav_feed.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/new/bottom_nav_home.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions public/icons/new/lock.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions public/icons/popup_menu.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 12 additions & 0 deletions public/icons/ver3/Avatar.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/add.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/bell.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/blue_heart.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/chevron_down.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/house.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions public/icons/ver3/list_create.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/search.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/share.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions public/icons/ver3/square_pencil.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
53 changes: 53 additions & 0 deletions src/app/(home)/_components/Categories.css.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
import { style } from '@vanilla-extract/css';

export const gridContainer = style({
padding: '0 16px',

width: '100%',
position: 'relative',
});

export const list = style({
display: 'inline-flex',
gap: '8px',
flexWrap: 'wrap',
listStyle: 'none',
padding: 0,
margin: 0,
});

export const item = style({
padding: '6px 12px',
flexShrink: 0,

borderRadius: '20px',
backgroundColor: '#fff',
fontWeight: '500',
fontSize: '1.4rem',
color: '#8599AD',
});

export const selectedItem = style([
item,
{
backgroundColor: '#E3EEFF',
color: '#3D95FF',
},
]);

export const alignText = style({
flexGrow: 1,
});

export const orderDropdown = style({
display: 'flex',
alignItems: 'center',
gap: '8px',
float: 'right',
});

export const order = style({
fontWeight: '400',
fontSize: '1.6rem',
color: '#3C4F76',
});
54 changes: 54 additions & 0 deletions src/app/(home)/_components/Categories.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
'use client';

import { useState } from 'react';
import { useQuery } from '@tanstack/react-query';

import { CategoryType } from '@/lib/types/categoriesType';
import { QUERY_KEYS } from '@/lib/constants/queryKeys';
import getCategories from '@/app/_api/category/getCategories';

import * as styles from './Categories.css';
import ChevronDown from '/public/icons/ver3/chevron_down.svg';

interface CategoriesType {
onClick: (name: string) => void;
}

function Categories({ onClick }: CategoriesType) {
const [selectedCategoryCode, setSelectedCategoryCode] = useState('0');

const { data, isFetching } = useQuery<CategoryType[]>({
queryKey: [QUERY_KEYS.getCategories],
queryFn: getCategories,
});

const handleClickCategory = (codeNum: string, name: string) => {
setSelectedCategoryCode(codeNum);
onClick(name);
};

return (
<div className={styles.gridContainer}>
<ul className={styles.list}>
{data?.map((el) => {
return (
<li key={el.code}>
<button
className={selectedCategoryCode === el.code ? `${styles.selectedItem}` : `${styles.item}`}
onClick={() => handleClickCategory(el.code, el.engName)}
>
{el.korName}
</button>
</li>
);
})}
</ul>
{/* <div className={styles.orderDropdown}>
<span className={styles.order}>정렬</span>
<ChevronDown />
</div> */}
</div>
);
}

export default Categories;
23 changes: 23 additions & 0 deletions src/app/(home)/_components/Feed.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
'use client';

import { useTab } from '@/store/useTab';

import HomeTab from '@/app/(home)/_components/HomeTab';
import RecommendationFeed from '@/app/(home)/_components/RecommendationFeed';
import FollowingFeed from '@/app/(home)/_components/FollowingFeed';
import RecentFeed from '@/app/(home)/_components/RecentFeed';

function Feed() {
const { currentTab } = useTab();

return (
<div>
<HomeTab />
{currentTab === 'recommendation' && <RecommendationFeed />}
{currentTab === 'recent' && <RecentFeed />}
{currentTab === 'following' && <FollowingFeed />}
</div>
);
}

export default Feed;
Loading
Loading