From 81a9b014d44f8ebc1a1af11f4c01b182cfd000d5 Mon Sep 17 00:00:00 2001 From: MOON <50370479+jangmoonwon@users.noreply.github.com> Date: Mon, 5 Aug 2024 11:41:03 +0900 Subject: [PATCH] =?UTF-8?q?FE-29=20:recycle:=20=EB=A1=9C=EA=B7=B8=EC=9D=B8?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EB=A6=AC=ED=8C=A9=ED=86=A0?= =?UTF-8?q?=EB=A7=81=20(#199)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * :sparkles: 네이버 post api 추가 * :sparkles: 구글 post api 추가 * :wrench: 라우팅 수정 * :sparkles: 네이버 로그인 훅 추가 및 라우팅, 에러 핸들링 구현 * :sparkles: 구글 로그인 훅 추가 및 라우팅, 에러 핸들링 구현 * :sparkles: 네이버 간편 로그인 리다이렉트 설정 * :sparkles: 구글 간편 로그인 리다이렉트 설정 * :wrench: 환경 변수 적용: 네이버, 구글, 카카오 로그인 URL 업데이트 * :wrench: 가입하기 경로 수정 * :wrench: 로그인 훅 라우팅 수정 * :wrench: 로그인 훅 에러처리 로직 수정 * FE-29 :twisted_rightwards_arrows: 브랜치 최신화 (#160) * FE-46 ✨공용 컴포넌트 헤더 뒤로가기 함수 추가 (#135) (#136) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :lipstick: 회원가입 페이지 레이아웃 추가 * :lipstick: 간편 로그인 로고 추가 * :lipstick: 회원가입 ui 추가 * :sparkles: 회원가입 스키마 정의 * :heavy_plus_sign: 회원가입 페이지에 스키마 적용 * :lipstick: 에러 메시지 뜰 때 라벨, 인풋도 같은 에러 색깔 추가 * :memo: 유효성 검사를 통한 버튼의 비활성화 처리 * :memo: 유효성 검사에 따른 인풋 테두리 색상 처리 * :fire: AuthLayout 삭제 * :art: 회원가입 페이지 브라우저 확대시 ui 깨짐 수정 * :truck: 정규표현식 네이밍 변경 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :sparkles: 회원가입 응답 데이터 스키마 정의 * :sparkles: 회원가입 api 생성 * :sparkles: useRegisterMutation hook 생성 * :zap: 회원가입 폼에 mutaion hook 적용 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :zap: isAxiosError로 변경 * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :twisted_rightwards_arrows: 충돌 해결 * :bug: postSignup 함수 추가 * :bug: postSignin 내보내는 방식 수정 * :wrench: lint 수정 * :sparkles: oauth api 생성 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * :sparkles: 카카오톡 리디렉트 uri 설정 * :sparkles: useKakaoLogin mutation hook 생성 * :zap: 네이버 구글 카카오 간편 로그인 링크 설정 * :recycle: 에러처리 로직 수정 * FE-51 :twisted_rightwards_arrows: 공용 API 머지 요청 (#92) * FE-52 ✨에피그램 목록조회 API (#34) * FE-52 feat: api schema 작성 * FE-52 ✨feat: getEpigrams api 작성 * FE-522 ✨fix: default export로 변경 * FE-52 ✨test: 테스트 코드 작성 * FE-52 ✨feat: BaseUrl, TeamID 상수 추가 및 axios baseTRL 수정 * FE-52 ✨fix: schema 및 apis 파일 수정 * FE-52 ✨test: 테스트 코드 삭제 * FE-52 ✨fix: .env파일 생성 및 BaseURL 수정 * FE-52 ✨fix: limit 타입 수정(optional 삭제) * FE-52 ✨text: 테 테스트코드 삭제 * FE-52 ✨fix: api GET요청 주소 수정('epigrams' -> '/epigrams') * FE-53 :sparkles: 감정이모티콘 저장 스키마 정의 * FE-53 :sparkles: 오늘의 감정 저장 api 생성 * FE-53 :sparkles: getMe 함수를 사용해 로그인 상태 확인 기능 구현 * FE-53 :sparkles: 감정 한영 변환 함수 * FE-53 :sparkles: 감정 저장 후 토스트 알림 표시 * FE-53 :sparkles: 오늘의 감정 조회 api 생성 * FE-53 :hammer: 감정 한영 변환 함수 추가 +) post, get 함수 내부로 한영 변환 함수 이동 * FE-53 :sparkles: 오늘의 감정 스키마 추가 정의 * FE-53 :sparkles: 오늘의 감정 조회 함수 적용 * FE-53 :truck: 오늘의 감정 type 이름 변경 * FE-53 :sparkles: useMutation 훅 사용 * FE-53 :memo: EmotionSelector 주석 추가 * FE-53 :fire: api 함수 에러 처리 부분 제거 * FE-53 :hammer: useQuery를 사용해 오늘의 감정 조회 데이터를 조회할 때는 useQuery를 사용하는거라 함 * FE-56 :sparkles: 댓글 수정 API (#84) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * FE-56 :sparkles: 댓글 수정 API --------- * FE-57 :sparkles: 댓글 삭제 API (#88) * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (#93) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (충돌수정) (#98) --------- * FE-32 🔀검색 페이지 메인 머지 (#107) * 💄FE-33 검색 페이지 UI (#10) * .nvmrc 버전 수정 * 폰트 및 공용컬러 추가 (#6) * font-family 추가 * tailwind common color 추가 * color 명 변경 * lang 수정 --------- * :lipstick: 공용 컴포넌트 shadcn ui 추가 (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * ✨Feat: SearchBar UI 초안 완성 * styles: tailwind css 폰트 사이즈 추가 * feat: RecentSearches UI 초안 완성 * �styles: SearchResults UI 수정 * �styles: RecentSearches UI 수정 * ✨styles: 반응형 UI 추가 * FE-33 fix: build 오류 수정 중 * FE-33 fix: build 오류 해결 중 * FE-33 fix: build 오류 해결 중 * FE-33 fix: build 오류 해결 중 * fix: build 오류 해결 중 --------- * FE-65 ✨최근 검색어 기능 (#51) * FE-65 ✨feat: 최근 검색어 기능 구현 * FE-65 ✨feat: 검색바와 연동하여 즉시 반영되도록 수정 * FE-65 ✨feat: debounce를 위한 lodash 라이브러리 설치 * FE-65 ✨feat: debounce 기능 적용(++lodash 라이브러리) * FE-65 ✨feat: useEffectt로 debouncedSearch함수 의존성 설정 * FE-65 ✨feat: useCallback 대신 useRef로 변경 * FE-65 ✨fix:: debounce 기능 제거(불필요) * FE-65 ✨feat: focus될 때 placeholder 사라지게 수정 및 UI 수정 * FE-65 ✨feat: isInitialMount 선언 및 주석 추가 * FE-65 ✨fix: 주석 수정 * FE-65 ✨feat: 최근 검색어 클릭 시 그 검색어로 검색되는 기능 * FE-65 styles: 주석 추가 * FE-74 ✨검색 결과 기능 (#73) * FE-74 fix: 사용하지 않는 lodash 라이브러리 삭제 * FE-74 ✨feat: 테스트 용 api 코드 가져오기 * FE-74 ✨feat: 검색 결과 기능 구현 * FE-74 ✨fix: 중복된 key, href 제거 및 규칙 무시 주석 추가 * FE-74 ✨test: 테스트 데이터 추가 * FE-74 ✨feat: 검색어 하이라이팅 및 순서 기능 추가 * FE-74 ✨fix: 주석 수정 및 api 파일 삭제 * FE-74 ✨styles: 주석 추가 * FE-74 ✨fix: 멘토링 내용 주석으로 추가 * FE-32 🔀 epic브랜치 최신화 (#77) * .nvmrc 버전 수정 * 폰트 및 공용컬러 추가 (#6) * font-family 추가 * tailwind common color 추가 * color 명 변경 * lang 수정 --------- * :lipstick: 공용 컴포넌트 shadcn ui 추가 (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 📰 공용 컴포넌트 face emoji svg 파일 생성 * FE-48 :art: 감정 이모티콘 폴더 구조 변경 * FE-48 :sparkles: 감정 이모티콘 카드 컴포넌트 ui 생성 * FE-48 :sparkles: 감정 이모티콘 상태에 따른 클래스 설정 * FE-48 :lipstick: 감정 이모티콘 카드 컴포넌트 ui 수정 * FE-48 :sparkles: 감정 이모티콘 카드 클릭 이벤트 구현 - EmotionIconCardContainer를 사용해 상태관리와 이벤트 처리 (Clicked<->UnClicked) * FE-48 📝 컴포넌트 이름 변경 명확한 의미 전달을 위해 컴포넌트 이름 변경 * FE-48 :sparkles: 감정 이모티콘 상태 변화 동기화 구 감정 카드를 클릭할 때 상태가 올바르게 전환되고, 다른 카드의 상태도 동기화되는 기능 구현 * FE-48 :sparkles: EmotionSelector 컴포넌트 동적 크기 변경 구현 useMediaQuery 훅 생성: 화면의 크기가 변경될 때마다 리스너 추가 및 제거 * FE-48 :fire: 출력 확인을 위한 테스트 컴포넌트 삭제 * FE-48 :hammer: EmotionTypes 인터페이스 정의 emotion 관련 컴포넌트에서 해당 인터페이스를 import하여 사용하게 구현 * FE-59 :sparkles: 에피그램 카드 ui 구현 tailwind css를 확장해 줄무늬 배경 이미지 구현 * FE-59 :sparkles: 에피그램 카드 반응현 디자인 구현 * FE-59 :lipstick: 에피그램 카드 글씨체 적용 * FE-59 :fire: 에피그램 카드 테스트 코드 삭제 * FE-59 :fire: 테스트 흔적 삭제 * FE-58 :sparkles: 공용 컴포넌트 댓글 카드 기본 ui 구현 * FE-58 :lipstick: 공용 컴포넌트 반응형 디자인 적용 * FE-58 :fire: 댓글 카드 테스트 코드 삭제 * FE-58 :lips: 댓글 카드 관련 인터페이스, 스타일 분리 * FE-50 ✨공용컴포넌트 헤더 구현 (#19) * FE-5050✨ feat: 헤더 부분 기능 초안 * FE-50 ✨styles: 주석 추가 * FE-50 ✨styles: 주석 추추가 * FE-5050 ✨test: 테스트 코드 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨feat: 공유 이미지 추가 및 현재 URL 복사 기능 추가 * FE-50 ✨styles: U셋 중 하나가 빠지더라도 안무너지게 UI 수정 * FE-50 ✨comment: 주석 수정 및 추가 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨fix: 함수명 컨벤션에 맞게 변경 * FE-50 ✨fix: types 폴더에 interface 정의 * FE-50 fix: build 오류 수정 * FE-61 🔨 eslint 규칙 수정 * FE-61 🔥 InteractiveEmotionIconCard 삭제 단순 래핑 기능밖에 없는 컴포넌트 삭제 / emotionselector에서 emotioniconcard를 직접 사용하도록 수정 * FE-61 🔨 EpigramCard 사이즈 재정의 base -> xs로 변경 * FE-61 📝 공용 컴포넌트 테스트 텍스트 주석 추가 * FE-61 🔨 CommentCard 타입 내부 정의 * FE-61 :truck: 감정 카드 폴더 구조 변경 * FE-61 📝 감정 카드, 감정 셀렉터 주석 추가 * FE-61 :fire: 댓글 카드 디폴트 프롭 삭제 * FE-62 ✨fix: 주석 수정 및 타입 수정 (#27) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * build 오류 해결 * build 오류 해결 중 --------- * FE-75 ✨무한 스크롤, 검색 결과 URL에 저장 기능 구현 (#104) * FE-75 ✨styles: tailwind .config 파일 메인과 통합 * FE-75 ✨feat: 공용 컴포넌트 Header 추가 * FE-75 ✨refactor: useMemo 사용 * FE-75 ✨feat: URL에 검색 결과 저장 * FE-75 ✨styles: 로딩 스타일 구현 * FE-75 ✨feat: 실제 api 추가 * FE-75 ✨feat: api 기능 구현 * FE-75 ✨feat: 무한 스크롤 구현 * FE-75 ✨fix: 의존성 배열에서 로딩 상태 제거 * FE-75 ✨styles: 주석 추가 * FE-75 ✨feat:: 사용자마다 최근 검색어 관리할 수 있게 변경 * FE-75 ✨fix: 검색 전 검색 결과가 나오지 않도록 수정 * FE-32 🔀브랜치 최신화 (#105) * .nvmrc 버전 수정 * 폰트 및 공용컬러 추가 (#6) * font-family 추가 * tailwind common color 추가 * color 명 변경 * lang 수정 --------- * :lipstick: 공용 컴포넌트 shadcn ui 추가 (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 📰 공용 컴포넌트 face emoji svg 파일 생성 * FE-48 :art: 감정 이모티콘 폴더 구조 변경 * FE-48 :sparkles: 감정 이모티콘 카드 컴포넌트 ui 생성 * FE-48 :sparkles: 감정 이모티콘 상태에 따른 클래스 설정 * FE-48 :lipstick: 감정 이모티콘 카드 컴포넌트 ui 수정 * FE-48 :sparkles: 감정 이모티콘 카드 클릭 이벤트 구현 - EmotionIconCardContainer를 사용해 상태관리와 이벤트 처리 (Clicked<->UnClicked) * FE-48 📝 컴포넌트 이름 변경 명확한 의미 전달을 위해 컴포넌트 이름 변경 * FE-48 :sparkles: 감정 이모티콘 상태 변화 동기화 구 감정 카드를 클릭할 때 상태가 올바르게 전환되고, 다른 카드의 상태도 동기화되는 기능 구현 * FE-48 :sparkles: EmotionSelector 컴포넌트 동적 크기 변경 구현 useMediaQuery 훅 생성: 화면의 크기가 변경될 때마다 리스너 추가 및 제거 * FE-48 :fire: 출력 확인을 위한 테스트 컴포넌트 삭제 * FE-48 :hammer: EmotionTypes 인터페이스 정의 emotion 관련 컴포넌트에서 해당 인터페이스를 import하여 사용하게 구현 * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-59 :sparkles: 에피그램 카드 ui 구현 tailwind css를 확장해 줄무늬 배경 이미지 구현 * FE-59 :sparkles: 에피그램 카드 반응현 디자인 구현 * FE-59 :lipstick: 에피그램 카드 글씨체 적용 * FE-59 :fire: 에피그램 카드 테스트 코드 삭제 * FE-59 :fire: 테스트 흔적 삭제 * FE-58 :sparkles: 공용 컴포넌트 댓글 카드 기본 ui 구현 * FE-58 :lipstick: 공용 컴포넌트 반응형 디자인 적용 * FE-58 :fire: 댓글 카드 테스트 코드 삭제 * FE-58 :lips: 댓글 카드 관련 인터페이스, 스타일 분리 * FE-60 :sparkles: react hook form, zod 추가 * FE-50 ✨공용컴포넌트 헤더 구현 (#19) * FE-5050✨ feat: 헤더 부분 기능 초안 * FE-50 ✨styles: 주석 추가 * FE-50 ✨styles: 주석 추추가 * FE-5050 ✨test: 테스트 코드 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨feat: 공유 이미지 추가 및 현재 URL 복사 기능 추가 * FE-50 ✨styles: U셋 중 하나가 빠지더라도 안무너지게 UI 수정 * FE-50 ✨comment: 주석 수정 및 추가 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨fix: 함수명 컨벤션에 맞게 변경 * FE-50 ✨fix: types 폴더에 interface 정의 * FE-50 fix: build 오류 수정 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * FE-61 🔨 eslint 규칙 수정 * FE-61 🔥 InteractiveEmotionIconCard 삭제 단순 래핑 기능밖에 없는 컴포넌트 삭제 / emotionselector에서 emotioniconcard를 직접 사용하도록 수정 * FE-61 🔨 EpigramCard 사이즈 재정의 base -> xs로 변경 * FE-61 📝 공용 컴포넌트 테스트 텍스트 주석 추가 * FE-61 🔨 CommentCard 타입 내부 정의 * FE-61 :truck: 감정 카드 폴더 구조 변경 * FE-61 📝 감정 카드, 감정 셀렉터 주석 추가 * FE-61 :fire: 댓글 카드 디폴트 프롭 삭제 * FE-62 ✨fix: 주석 수정 및 타입 수정 (#27) * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :lipstick: 회원가입 페이지 레이아웃 추가 * :lipstick: 간편 로그인 로고 추가 * :lipstick: 회원가입 ui 추가 * :sparkles: 회원가입 스키마 정의 * :heavy_plus_sign: 회원가입 페이지에 스키마 적용 * :lipstick: 에러 메시지 뜰 때 라벨, 인풋도 같은 에러 색깔 추가 * :memo: 유효성 검사를 통한 버튼의 비활성화 처리 * :memo: 유효성 검사에 따른 인풋 테두리 색상 처리 * :fire: AuthLayout 삭제 * :art: 회원가입 페이지 브라우저 확대시 ui 깨짐 수정 * :truck: 정규표현식 네이밍 변경 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :sparkles: 회원가입 응답 데이터 스키마 정의 * :sparkles: 회원가입 api 생성 * :sparkles: useRegisterMutation hook 생성 * :zap: 회원가입 폼에 mutaion hook 적용 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :zap: isAxiosError로 변경 * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :twisted_rightwards_arrows: 충돌 해결 * :bug: postSignup 함수 추가 * :bug: postSignin 내보내는 방식 수정 * :wrench: lint 수정 * build 오류 해결 * build 오류 해결 중 * :sparkles: oauth api 생성 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * :sparkles: 카카오톡 리디렉트 uri 설정 * :sparkles: useKakaoLogin mutation hook 생성 * :zap: 네이버 구글 카카오 간편 로그인 링크 설정 * :recycle: 에러처리 로직 수정 * FE-51 :twisted_rightwards_arrows: 공용 API 머지 요청 (#92) * FE-52 ✨에피그램 목록조회 API (#34) * FE-52 feat: api schema 작성 * FE-52 ✨feat: getEpigrams api 작성 * FE-522 ✨fix: default export로 변경 * FE-52 ✨test: 테스트 코드 작성 * FE-52 ✨feat: BaseUrl, TeamID 상수 추가 및 axios baseTRL 수정 * FE-52 ✨fix: schema 및 apis 파일 수정 * FE-52 ✨test: 테스트 코드 삭제 * FE-52 ✨fix: .env파일 생성 및 BaseURL 수정 * FE-52 ✨fix: limit 타입 수정(optional 삭제) * FE-52 ✨text: 테 테스트코드 삭제 * FE-52 ✨fix: api GET요청 주소 수정('epigrams' -> '/epigrams') * FE-53 :sparkles: 감정이모티콘 저장 스키마 정의 * FE-53 :sparkles: 오늘의 감정 저장 api 생성 * FE-53 :sparkles: getMe 함수를 사용해 로그인 상태 확인 기능 구현 * FE-53 :sparkles: 감정 한영 변환 함수 * FE-53 :sparkles: 감정 저장 후 토스트 알림 표시 * FE-53 :sparkles: 오늘의 감정 조회 api 생성 * FE-53 :hammer: 감정 한영 변환 함수 추가 +) post, get 함수 내부로 한영 변환 함수 이동 * FE-53 :sparkles: 오늘의 감정 스키마 추가 정의 * FE-53 :sparkles: 오늘의 감정 조회 함수 적용 * FE-53 :truck: 오늘의 감정 type 이름 변경 * FE-53 :sparkles: useMutation 훅 사용 * FE-53 :memo: EmotionSelector 주석 추가 * FE-53 :fire: api 함수 에러 처리 부분 제거 * FE-53 :hammer: useQuery를 사용해 오늘의 감정 조회 데이터를 조회할 때는 useQuery를 사용하는거라 함 * FE-56 :sparkles: 댓글 수정 API (#84) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * FE-56 :sparkles: 댓글 수정 API --------- * FE-57 :sparkles: 댓글 삭제 API (#88) * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (#93) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (충돌수정) (#98) --------- * .http 파일 삭제 --------- * FE-32 🔀브랜치 최신화 (#110) * .nvmrc 버전 수정 * 폰트 및 공용컬러 추가 (#6) * font-family 추가 * tailwind common color 추가 * color 명 변경 * lang 수정 --------- * :lipstick: 공용 컴포넌트 shadcn ui 추가 (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 📰 공용 컴포넌트 face emoji svg 파일 생성 * FE-48 :art: 감정 이모티콘 폴더 구조 변경 * FE-48 :sparkles: 감정 이모티콘 카드 컴포넌트 ui 생성 * FE-48 :sparkles: 감정 이모티콘 상태에 따른 클래스 설정 * FE-48 :lipstick: 감정 이모티콘 카드 컴포넌트 ui 수정 * FE-48 :sparkles: 감정 이모티콘 카드 클릭 이벤트 구현 - EmotionIconCardContainer를 사용해 상태관리와 이벤트 처리 (Clicked<->UnClicked) * FE-48 📝 컴포넌트 이름 변경 명확한 의미 전달을 위해 컴포넌트 이름 변경 * FE-48 :sparkles: 감정 이모티콘 상태 변화 동기화 구 감정 카드를 클릭할 때 상태가 올바르게 전환되고, 다른 카드의 상태도 동기화되는 기능 구현 * FE-48 :sparkles: EmotionSelector 컴포넌트 동적 크기 변경 구현 useMediaQuery 훅 생성: 화면의 크기가 변경될 때마다 리스너 추가 및 제거 * FE-48 :fire: 출력 확인을 위한 테스트 컴포넌트 삭제 * FE-48 :hammer: EmotionTypes 인터페이스 정의 emotion 관련 컴포넌트에서 해당 인터페이스를 import하여 사용하게 구현 * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-59 :sparkles: 에피그램 카드 ui 구현 tailwind css를 확장해 줄무늬 배경 이미지 구현 * FE-59 :sparkles: 에피그램 카드 반응현 디자인 구현 * FE-59 :lipstick: 에피그램 카드 글씨체 적용 * FE-59 :fire: 에피그램 카드 테스트 코드 삭제 * FE-59 :fire: 테스트 흔적 삭제 * FE-58 :sparkles: 공용 컴포넌트 댓글 카드 기본 ui 구현 * FE-58 :lipstick: 공용 컴포넌트 반응형 디자인 적용 * FE-58 :fire: 댓글 카드 테스트 코드 삭제 * FE-58 :lips: 댓글 카드 관련 인터페이스, 스타일 분리 * FE-60 :sparkles: react hook form, zod 추가 * FE-50 ✨공용컴포넌트 헤더 구현 (#19) * FE-5050✨ feat: 헤더 부분 기능 초안 * FE-50 ✨styles: 주석 추가 * FE-50 ✨styles: 주석 추추가 * FE-5050 ✨test: 테스트 코드 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨feat: 공유 이미지 추가 및 현재 URL 복사 기능 추가 * FE-50 ✨styles: U셋 중 하나가 빠지더라도 안무너지게 UI 수정 * FE-50 ✨comment: 주석 수정 및 추가 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨fix: 함수명 컨벤션에 맞게 변경 * FE-50 ✨fix: types 폴더에 interface 정의 * FE-50 fix: build 오류 수정 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * FE-61 🔨 eslint 규칙 수정 * FE-61 🔥 InteractiveEmotionIconCard 삭제 단순 래핑 기능밖에 없는 컴포넌트 삭제 / emotionselector에서 emotioniconcard를 직접 사용하도록 수정 * FE-61 🔨 EpigramCard 사이즈 재정의 base -> xs로 변경 * FE-61 📝 공용 컴포넌트 테스트 텍스트 주석 추가 * FE-61 🔨 CommentCard 타입 내부 정의 * FE-61 :truck: 감정 카드 폴더 구조 변경 * FE-61 📝 감정 카드, 감정 셀렉터 주석 추가 * FE-61 :fire: 댓글 카드 디폴트 프롭 삭제 * FE-62 ✨fix: 주석 수정 및 타입 수정 (#27) * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :lipstick: 회원가입 페이지 레이아웃 추가 * :lipstick: 간편 로그인 로고 추가 * :lipstick: 회원가입 ui 추가 * :sparkles: 회원가입 스키마 정의 * :heavy_plus_sign: 회원가입 페이지에 스키마 적용 * :lipstick: 에러 메시지 뜰 때 라벨, 인풋도 같은 에러 색깔 추가 * :memo: 유효성 검사를 통한 버튼의 비활성화 처리 * :memo: 유효성 검사에 따른 인풋 테두리 색상 처리 * :fire: AuthLayout 삭제 * :art: 회원가입 페이지 브라우저 확대시 ui 깨짐 수정 * :truck: 정규표현식 네이밍 변경 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :sparkles: 회원가입 응답 데이터 스키마 정의 * :sparkles: 회원가입 api 생성 * :sparkles: useRegisterMutation hook 생성 * :zap: 회원가입 폼에 mutaion hook 적용 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :zap: isAxiosError로 변경 * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :twisted_rightwards_arrows: 충돌 해결 * :bug: postSignup 함수 추가 * :bug: postSignin 내보내는 방식 수정 * :wrench: lint 수정 * build 오류 해결 * build 오류 해결 중 * :sparkles: oauth api 생성 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * :sparkles: 카카오톡 리디렉트 uri 설정 * :sparkles: useKakaoLogin mutation hook 생성 * :zap: 네이버 구글 카카오 간편 로그인 링크 설정 * :recycle: 에러처리 로직 수정 * FE-51 :twisted_rightwards_arrows: 공용 API 머지 요청 (#92) * FE-52 ✨에피그램 목록조회 API (#34) * FE-52 feat: api schema 작성 * FE-52 ✨feat: getEpigrams api 작성 * FE-522 ✨fix: default export로 변경 * FE-52 ✨test: 테스트 코드 작성 * FE-52 ✨feat: BaseUrl, TeamID 상수 추가 및 axios baseTRL 수정 * FE-52 ✨fix: schema 및 apis 파일 수정 * FE-52 ✨test: 테스트 코드 삭제 * FE-52 ✨fix: .env파일 생성 및 BaseURL 수정 * FE-52 ✨fix: limit 타입 수정(optional 삭제) * FE-52 ✨text: 테 테스트코드 삭제 * FE-52 ✨fix: api GET요청 주소 수정('epigrams' -> '/epigrams') * FE-53 :sparkles: 감정이모티콘 저장 스키마 정의 * FE-53 :sparkles: 오늘의 감정 저장 api 생성 * FE-53 :sparkles: getMe 함수를 사용해 로그인 상태 확인 기능 구현 * FE-53 :sparkles: 감정 한영 변환 함수 * FE-53 :sparkles: 감정 저장 후 토스트 알림 표시 * FE-53 :sparkles: 오늘의 감정 조회 api 생성 * FE-53 :hammer: 감정 한영 변환 함수 추가 +) post, get 함수 내부로 한영 변환 함수 이동 * FE-53 :sparkles: 오늘의 감정 스키마 추가 정의 * FE-53 :sparkles: 오늘의 감정 조회 함수 적용 * FE-53 :truck: 오늘의 감정 type 이름 변경 * FE-53 :sparkles: useMutation 훅 사용 * FE-53 :memo: EmotionSelector 주석 추가 * FE-53 :fire: api 함수 에러 처리 부분 제거 * FE-53 :hammer: useQuery를 사용해 오늘의 감정 조회 데이터를 조회할 때는 useQuery를 사용하는거라 함 * FE-56 :sparkles: 댓글 수정 API (#84) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * FE-56 :sparkles: 댓글 수정 API --------- * FE-57 :sparkles: 댓글 삭제 API (#88) * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (#93) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (충돌수정) (#98) --------- * .http 파일 삭제 * merge main --------- * FE-32 검색페이지 메인 충돌 수정 (#112) * .nvmrc 버전 수정 * 폰트 및 공용컬러 추가 (#6) * font-family 추가 * tailwind common color 추가 * color 명 변경 * lang 수정 --------- * :lipstick: 공용 컴포넌트 shadcn ui 추가 (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 📰 공용 컴포넌트 face emoji svg 파일 생성 * FE-48 :art: 감정 이모티콘 폴더 구조 변경 * FE-48 :sparkles: 감정 이모티콘 카드 컴포넌트 ui 생성 * FE-48 :sparkles: 감정 이모티콘 상태에 따른 클래스 설정 * FE-48 :lipstick: 감정 이모티콘 카드 컴포넌트 ui 수정 * FE-48 :sparkles: 감정 이모티콘 카드 클릭 이벤트 구현 - EmotionIconCardContainer를 사용해 상태관리와 이벤트 처리 (Clicked<->UnClicked) * FE-48 📝 컴포넌트 이름 변경 명확한 의미 전달을 위해 컴포넌트 이름 변경 * FE-48 :sparkles: 감정 이모티콘 상태 변화 동기화 구 감정 카드를 클릭할 때 상태가 올바르게 전환되고, 다른 카드의 상태도 동기화되는 기능 구현 * FE-48 :sparkles: EmotionSelector 컴포넌트 동적 크기 변경 구현 useMediaQuery 훅 생성: 화면의 크기가 변경될 때마다 리스너 추가 및 제거 * FE-48 :fire: 출력 확인을 위한 테스트 컴포넌트 삭제 * FE-48 :hammer: EmotionTypes 인터페이스 정의 emotion 관련 컴포넌트에서 해당 인터페이스를 import하여 사용하게 구현 * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-59 :sparkles: 에피그램 카드 ui 구현 tailwind css를 확장해 줄무늬 배경 이미지 구현 * FE-59 :sparkles: 에피그램 카드 반응현 디자인 구현 * FE-59 :lipstick: 에피그램 카드 글씨체 적용 * FE-59 :fire: 에피그램 카드 테스트 코드 삭제 * FE-59 :fire: 테스트 흔적 삭제 * FE-58 :sparkles: 공용 컴포넌트 댓글 카드 기본 ui 구현 * FE-58 :lipstick: 공용 컴포넌트 반응형 디자인 적용 * FE-58 :fire: 댓글 카드 테스트 코드 삭제 * FE-58 :lips: 댓글 카드 관련 인터페이스, 스타일 분리 * FE-60 :sparkles: react hook form, zod 추가 * FE-50 ✨공용컴포넌트 헤더 구현 (#19) * FE-5050✨ feat: 헤더 부분 기능 초안 * FE-50 ✨styles: 주석 추가 * FE-50 ✨styles: 주석 추추가 * FE-5050 ✨test: 테스트 코드 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨feat: 공유 이미지 추가 및 현재 URL 복사 기능 추가 * FE-50 ✨styles: U셋 중 하나가 빠지더라도 안무너지게 UI 수정 * FE-50 ✨comment: 주석 수정 및 추가 * FE-50 ✨fix: 테스트 코드 삭제 * FE-50 ✨fix: 함수명 컨벤션에 맞게 변경 * FE-50 ✨fix: types 폴더에 interface 정의 * FE-50 fix: build 오류 수정 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * FE-61 🔨 eslint 규칙 수정 * FE-61 🔥 InteractiveEmotionIconCard 삭제 단순 래핑 기능밖에 없는 컴포넌트 삭제 / emotionselector에서 emotioniconcard를 직접 사용하도록 수정 * FE-61 🔨 EpigramCard 사이즈 재정의 base -> xs로 변경 * FE-61 📝 공용 컴포넌트 테스트 텍스트 주석 추가 * FE-61 🔨 CommentCard 타입 내부 정의 * FE-61 :truck: 감정 카드 폴더 구조 변경 * FE-61 📝 감정 카드, 감정 셀렉터 주석 추가 * FE-61 :fire: 댓글 카드 디폴트 프롭 삭제 * FE-62 ✨fix: 주석 수정 및 타입 수정 (#27) * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :lipstick: 회원가입 페이지 레이아웃 추가 * :lipstick: 간편 로그인 로고 추가 * :lipstick: 회원가입 ui 추가 * :sparkles: 회원가입 스키마 정의 * :heavy_plus_sign: 회원가입 페이지에 스키마 적용 * :lipstick: 에러 메시지 뜰 때 라벨, 인풋도 같은 에러 색깔 추가 * :memo: 유효성 검사를 통한 버튼의 비활성화 처리 * :memo: 유효성 검사에 따른 인풋 테두리 색상 처리 * :fire: AuthLayout 삭제 * :art: 회원가입 페이지 브라우저 확대시 ui 깨짐 수정 * :truck: 정규표현식 네이밍 변경 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :sparkles: 회원가입 응답 데이터 스키마 정의 * :sparkles: 회원가입 api 생성 * :sparkles: useRegisterMutation hook 생성 * :zap: 회원가입 폼에 mutaion hook 적용 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :zap: isAxiosError로 변경 * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :twisted_rightwards_arrows: 충돌 해결 * :bug: postSignup 함수 추가 * :bug: postSignin 내보내는 방식 수정 * :wrench: lint 수정 * :sparkles: oauth api 생성 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * :sparkles: 카카오톡 리디렉트 uri 설정 * :sparkles: useKakaoLogin mutation hook 생성 * :zap: 네이버 구글 카카오 간편 로그인 링크 설정 * :recycle: 에러처리 로직 수정 * FE-51 :twisted_rightwards_arrows: 공용 API 머지 요청 (#92) * FE-52 ✨에피그램 목록조회 API (#34) * FE-52 feat: api schema 작성 * FE-52 ✨feat: getEpigrams api 작성 * FE-522 ✨fix: default export로 변경 * FE-52 ✨test: 테스트 코드 작성 * FE-52 ✨feat: BaseUrl, TeamID 상수 추가 및 axios baseTRL 수정 * FE-52 ✨fix: schema 및 apis 파일 수정 * FE-52 ✨test: 테스트 코드 삭제 * FE-52 ✨fix: .env파일 생성 및 BaseURL 수정 * FE-52 ✨fix: limit 타입 수정(optional 삭제) * FE-52 ✨text: 테 테스트코드 삭제 * FE-52 ✨fix: api GET요청 주소 수정('epigrams' -> '/epigrams') * FE-53 :sparkles: 감정이모티콘 저장 스키마 정의 * FE-53 :sparkles: 오늘의 감정 저장 api 생성 * FE-53 :sparkles: getMe 함수를 사용해 로그인 상태 확인 기능 구현 * FE-53 :sparkles: 감정 한영 변환 함수 * FE-53 :sparkles: 감정 저장 후 토스트 알림 표시 * FE-53 :sparkles: 오늘의 감정 조회 api 생성 * FE-53 :hammer: 감정 한영 변환 함수 추가 +) post, get 함수 내부로 한영 변환 함수 이동 * FE-53 :sparkles: 오늘의 감정 스키마 추가 정의 * FE-53 :sparkles: 오늘의 감정 조회 함수 적용 * FE-53 :truck: 오늘의 감정 type 이름 변경 * FE-53 :sparkles: useMutation 훅 사용 * FE-53 :memo: EmotionSelector 주석 추가 * FE-53 :fire: api 함수 에러 처리 부분 제거 * FE-53 :hammer: useQuery를 사용해 오늘의 감정 조회 데이터를 조회할 때는 useQuery를 사용하는거라 함 * FE-56 :sparkles: 댓글 수정 API (#84) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * FE-56 :sparkles: 댓글 수정 API --------- * FE-57 :sparkles: 댓글 삭제 API (#88) * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (#93) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-51 :twisted_rightwards_arrows: 공용 API 최신화 (충돌수정) (#98) --------- --------- --------- * FE-27 :twisted_rightwards_arrows: 마이페이지 머지 요청 (#100) * FE-34 :sparkles: 마이페이지 프로필 수정 기능 (#53) * FE-34 :lipstick: 마이페이지 UI 초기작업 * FE-34 :sparkles: 내 정보 조회 API 연동 * FE-34 :lipstick: shadcn/ui Dialog 설치 * FE-34 :sparkles: 프로필 수정 API 연동 * FE-34 :sparkles: 이미지 실패 토스트 추가 * FE-36 :sparkles: 마이페이지 캘린더 출력 함수 (#58) * FE-36 :lipstick: 감정달력 UI * FE-36 :sparkles: 캘린더 함수 생성 * FE-36 :sparkles: 마이페이지 감정달력 (#65) * FE-36 :lipstick: 감정달력 UI * FE-36 :sparkles: 캘린더 함수 생성 * FE-36 :sparkles: 마이페이지 감정달력: 오늘 날짜 표시 * FE-36 :sparkles: 마이페이지 월 별 감정로그 조회 API 연동 * FE-36 :sparkles: 월별 감정 로그 해당 날짜에 출력 * FE-36 :lipstick: 달력 css 수정 * FE-36 :art: 마이페이지 캘린더 헤더 컴포넌트 분리 * FE-36 :sparkles: 마이페이지 감정달력 필터기능 * FE-27 :twisted_rightwards_arrows: 에픽 브랜치 최신화 (#81) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-27 :twisted_rightwards_arrows: 마이페이지 에픽 브랜치 최신화 (#85) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-27 :twisted_rightwards_arrows: 브랜치 최신화 (#86) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- --------- * FE-37 :sparkles: 마이페이지 감정차트 (#89) * FE-37 :recycle: 월별 감정로그 조회 코드 리팩토링 * FE-37 :sparkles: 감정 차트 * FE-37 :hammer: 상수 컨벤션 수정 * FE-27 :twisted_rightwards_arrows: 브랜치 최신화 (#99) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :lipstick: 회원가입 페이지 레이아웃 추가 * :lipstick: 간편 로그인 로고 추가 * :lipstick: 회원가입 ui 추가 * :sparkles: 회원가입 스키마 정의 * :heavy_plus_sign: 회원가입 페이지에 스키마 적용 * :lipstick: 에러 메시지 뜰 때 라벨, 인풋도 같은 에러 색깔 추가 * :memo: 유효성 검사를 통한 버튼의 비활성화 처리 * :memo: 유효성 검사에 따른 인풋 테두리 색상 처리 * :fire: AuthLayout 삭제 * :art: 회원가입 페이지 브라우저 확대시 ui 깨짐 수정 * :truck: 정규표현식 네이밍 변경 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :sparkles: 회원가입 응답 데이터 스키마 정의 * :sparkles: 회원가입 api 생성 * :sparkles: useRegisterMutation hook 생성 * :zap: 회원가입 폼에 mutaion hook 적용 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :zap: isAxiosError로 변경 * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * :twisted_rightwards_arrows: 충돌 해결 * :bug: postSignup 함수 추가 * :bug: postSignin 내보내는 방식 수정 * :wrench: lint 수정 * :sparkles: oauth api 생성 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- * :sparkles: 카카오톡 리디렉트 uri 설정 * :sparkles: useKakaoLogin mutation hook 생성 * :zap: 네이버 구글 카카오 간편 로그인 링크 설정 * :recycle: 에러처리 로직 수정 * FE-51 :twisted_rightwards_arrows: 공용 API 머지 요청 (#92) * FE-52 ✨에피그램 목록조회 API (#34) * FE-52 feat: api schema 작성 * FE-52 ✨feat: getEpigrams api 작성 * FE-522 ✨fix: default export로 변경 * FE-52 ✨test: 테스트 코드 작성 * FE-52 ✨feat: BaseUrl, TeamID 상수 추가 및 axios baseTRL 수정 * FE-52 ✨fix: schema 및 apis 파일 수정 * FE-52 ✨test: 테스트 코드 삭제 * FE-52 ✨fix: .env파일 생성 및 BaseURL 수정 * FE-52 ✨fix: limit 타입 수정(optional 삭제) * FE-52 ✨text: 테 테스트코드 삭제 * FE-52 ✨fix: api GET요청 주소 수정('epigrams' -> '/epigrams') * FE-53 :sparkles: 감정이모티콘 저장 스키마 정의 * FE-53 :sparkles: 오늘의 감정 저장 api 생성 * FE-53 :sparkles: getMe 함수를 사용해 로그인 상태 확인 기능 구현 * FE-53 :sparkles: 감정 한영 변환 함수 * FE-53 :sparkles: 감정 저장 후 토스트 알림 표시 * FE-53 :sparkles: 오늘의 감정 조회 api 생성 * FE-53 :hammer: 감정 한영 변환 함수 추가 +) post, get 함수 내부로 한영 변환 함수 이동 * FE-53 :sparkles: 오늘의 감정 스키마 추가 정의 * FE-53 :sparkles: 오늘의 감정 조회 함수 적용 * FE-53 :truck: 오늘의 감정 type 이름 변경 * FE-53 :sparkles: useMutation 훅 사용 * FE-53 :memo: EmotionSelector 주석 추가 * FE-53 :fire: api 함수 에러 처리 부분 제거 * FE-53 :hammer: useQuery를 사용해 오늘의 감정 조회 데이터를 조회할 때는 useQuery를 사용하는거라 함 * FE-56 :sparkles: 댓글 수정 API (#84) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트… Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: 우지석 Co-authored-by: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: 전유민 Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison * FE-29 :twisted_rightwards_arrows: 로그인, 간편 로그인 수정 사항 반영 요청 (#140) * :sparkles: 네이버 post api 추가 * :sparkles: 구글 post api 추가 * :wrench: 라우팅 수정 * :sparkles: 네이버 로그인 훅 추가 및 라우팅, 에러 핸들링 구현 * :sparkles: 구글 로그인 훅 추가 및 라우팅, 에러 핸들링 구현 * :sparkles: 네이버 간편 로그인 리다이렉트 설정 * :sparkles: 구글 간편 로그인 리다이렉트 설정 * :wrench: 환경 변수 적용: 네이버, 구글, 카카오 로그인 URL 업데이트 * :wrench: 가입하기 경로 수정 * :wrench: 로그인 훅 라우팅 수정 * :wrench: 로그인 훅 에러처리 로직 수정 * FE-27 :twisted_rightwards_arrows: 마이페이지 main 머지 요청 (#147) * FE-34 :sparkles: 마이페이지 프로필 수정 기능 (#53) * FE-34 :lipstick: 마이페이지 UI 초기작업 * FE-34 :sparkles: 내 정보 조회 API 연동 * FE-34 :lipstick: shadcn/ui Dialog 설치 * FE-34 :sparkles: 프로필 수정 API 연동 * FE-34 :sparkles: 이미지 실패 토스트 추가 * FE-36 :sparkles: 마이페이지 캘린더 출력 함수 (#58) * FE-36 :lipstick: 감정달력 UI * FE-36 :sparkles: 캘린더 함수 생성 * FE-36 :sparkles: 마이페이지 감정달력 (#65) * FE-36 :lipstick: 감정달력 UI * FE-36 :sparkles: 캘린더 함수 생성 * FE-36 :sparkles: 마이페이지 감정달력: 오늘 날짜 표시 * FE-36 :sparkles: 마이페이지 월 별 감정로그 조회 API 연동 * FE-36 :sparkles: 월별 감정 로그 해당 날짜에 출력 * FE-36 :lipstick: 달력 css 수정 * FE-36 :art: 마이페이지 캘린더 헤더 컴포넌트 분리 * FE-36 :sparkles: 마이페이지 감정달력 필터기능 * FE-27 :twisted_rightwards_arrows: 에픽 브랜치 최신화 (#81) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- Co-authored-by: 우지석 * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- Co-authored-by: 우지석 * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- Co-authored-by: 우지석 --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: 우지석 * FE-27 :twisted_rightwards_arrows: 마이페이지 에픽 브랜치 최신화 (#85) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- Co-authored-by: 우지석 * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- Co-authored-by: 우지석 * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- Co-authored-by: 우지석 --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: 우지석 * FE-27 :twisted_rightwards_arrows: 브랜치 최신화 (#86) * FE-29 :twisted_rightwards_arrows: 로그인 페이지 머지 요청 (#39) * :heavy_plus_sign: 이미지 파일 추가 * :lipstick: 로그인 페이지 레이아웃 생성 * :lipstick: 로그인 페이지 UI 생성 및 반응형 디자인 구현 * FE-60 :sparkles: react hook form, zod 추가 * FE-60 :lipstick: 로그인 폼 스타일 수정 - 텍스트 인풋 테두리 - 로그인 버튼 * FE-60 :recycle: 로그인 스키마 분리 * :sparkles: 로그인 응답 데이터 스키마 정의 * :sparkles: 로그인 api 생성 * :sparkles: 요청과 응답에 관한 인터셉터 추가 * :sparkles: useSignin mutation hook 생성 * :zap: useSignin hook 로그인 폼에 적용 * :fire: AuthLayout 삭제 * :art: onSubmit 함수 인라인으로 정의 * :recycle: 응답 인터셉터의 에러 처리 및 토큰 갱신 로직 개선 * :recycle: postSignin api 에러처리 로직 삭제 * :fire: useSignin hook 삭제 * :truck: useSigninMutation hook으로 이름 변경 및 파일 이동 * :sparkles: Toaster 컴포넌트 추가 * :sparkles: toast로 에러메시지 띄우기 * FE-71 🔀 에피그램 작성 페이지 (#71) * FE-64💄 글작성 페이지 UI추가 (#44) * FE-72 ✨ 에피그램 등록 api연동 (#52) * FE-72✨ 글작성페이지 스키마 추가 * FE-72✨ form태그 Form컴포넌트로 변경 * FE-72✨ 태그 저장기능 추가 * FE-72✨ 에피그램 등록 api연동 * FE-72✨ 에피그램 등록시 해당 에피그램 페이지로 이동 기능 추가 * FE-72✨ 등록 중일때의 로직추가 * FE-72✨ toast-> alert-dailog로 변경 * FE-72📝 TODO주석 추가 --------- Co-authored-by: 우지석 * FE-73✨ 유효성검사 추가 (#66) * FE-73♻️ Tag관리 함수 훅으로 분리 * FE-73✨ RadioGroup 로직 수정 * FE-73✨ 유효성검사 추가 * FE-73♻️ 저자 본인 선택시의 로직 변경 * FE-73✨ 중복 태그 검사 로직 추가 * FE-73♻️ 출처 유효성(optional)검사 수정 * FE-73✨ 필수항목 입력했을때 버튼 활성화 * FE-73🐛 태그를 입력했다가 지웠을때 버튼 활성화되있는 버그 수정 * FE-73🐛 useEffect 의존성배열 lint problem 해결 * FE-73🐛 url유효성검사 에러 메세지 안뜨는 버그 수정 --------- Co-authored-by: 우지석 * FE-71♻️ epic브랜치 코드리뷰 반영 (#76) * FE-71♻️ token,interceptor 로직 수정 * FE-71♻️ AddEpigram 코드리뷰 반영 * FE-71🔥 테스트용 상세페이지 삭제 * FE-71♻️ onKeyDown -> onKeyUp 수정 --------- Co-authored-by: 우지석 --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115… * :lipstick: 소셜 로그인 문구 추가 * :zap: 로그인 폼 개선 - 이메일, 비밀번호 인풋 앞 뒤 공백 제거 - 인풋 포커스 컬러 설정 - 프리텐다드 폰트 변경 * :lipstick: 토스트 에러 메시지 스타일 수정 * :test_tube: 구글 로그인 테스트 코드 * test: 테스트 코드 * :fire: 불필요 파일 삭제 * :wrench: 구글 간편 로그인 수정 구글 아이디 토큰 추가 * :fire: 불필요 파일 삭제 * :sparkles: 로그아웃 기능 추가 * :wrench: 환경 변수 이름 변경 * :sparkles: 리다이렉트 설정 로그인 상태일 때 에피그램 페이지로 이동 * :memo: 주석 삭제 --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: 우지석 Co-authored-by: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: 전유민 Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison --- src/apis/index.ts | 7 +++++ src/apis/postGoogleOauth.ts | 8 +++--- src/pages/auth/SignIn.tsx | 27 ++++++++----------- src/pages/auth/SignUp.tsx | 11 +++++++- src/pages/auth/callback/google/index.ts | 8 +++--- .../auth/redirect/google-callback/index.ts | 21 --------------- 6 files changed, 35 insertions(+), 47 deletions(-) delete mode 100644 src/pages/auth/redirect/google-callback/index.ts diff --git a/src/apis/index.ts b/src/apis/index.ts index a19e397a..b1786b61 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -67,3 +67,10 @@ httpClient.interceptors.response.use( ); export default httpClient; + +export const logout = () => { + localStorage.removeItem('accessToken'); + localStorage.removeItem('refreshToken'); + + window.location.href = '/auth/SignIn'; +}; diff --git a/src/apis/postGoogleOauth.ts b/src/apis/postGoogleOauth.ts index 3ae9c7e6..61aaad3f 100644 --- a/src/apis/postGoogleOauth.ts +++ b/src/apis/postGoogleOauth.ts @@ -5,9 +5,9 @@ import httpClient from '.'; const getGoogleIdToken = async (code: string) => { const response = await axios.post('https://oauth2.googleapis.com/token', { code, - client_id: process.env.NEXT_PUBLIC_GOOGLE_CLIENT_ID_TEST, - client_secret: process.env.NEXT_PUBLIC_GOOGLE_CLIENT_SECRET_TEST, - redirect_uri: process.env.NEXT_PUBLIC_GOOGLE_REDIRECT_URI_TEST, + client_id: process.env.NEXT_PUBLIC_GOOGLE_CLIENT_ID, + client_secret: process.env.NEXT_PUBLIC_GOOGLE_CLIENT_SECRET, + redirect_uri: process.env.NEXT_PUBLIC_GOOGLE_REDIRECT_URI, grant_type: 'authorization_code', }); @@ -19,7 +19,7 @@ const postGoogleOauth = async (code: string) => { const idToken = tokenResponse.id_token; const response = await httpClient.post('/auth/signIn/GOOGLE', { - redirectUri: process.env.NEXT_PUBLIC_GOOGLE_REDIRECT_URI_TEST, + redirectUri: process.env.NEXT_PUBLIC_GOOGLE_REDIRECT_URI, token: idToken, }); diff --git a/src/pages/auth/SignIn.tsx b/src/pages/auth/SignIn.tsx index 3b80eca1..7c297ab6 100644 --- a/src/pages/auth/SignIn.tsx +++ b/src/pages/auth/SignIn.tsx @@ -1,3 +1,5 @@ +import { useEffect } from 'react'; +import { useRouter } from 'next/router'; import Image from 'next/image'; import Link from 'next/link'; import { Input } from '@/components/ui/input'; @@ -7,12 +9,18 @@ import { zodResolver } from '@hookform/resolvers/zod'; import { Form, FormControl, FormField, FormItem, FormMessage } from '@/components/ui/form'; import { PostSigninRequest, PostSigninRequestType } from '@/schema/auth'; import useSigninMutation from '@/hooks/useSignInMutation'; -import { useRouter } from 'next/router'; export default function SignIn() { const mutationSignin = useSigninMutation(); const router = useRouter(); + useEffect(() => { + const accessToken = localStorage.getItem('accessToken'); + if (accessToken) { + router.push('/epigrams'); + } + }, [router]); + // 폼 정의 const form = useForm({ resolver: zodResolver(PostSigninRequest), @@ -27,19 +35,6 @@ export default function SignIn() { form.setValue(fieldName, value.trim(), { shouldValidate: true, shouldDirty: true }); }; - const handleSubmit = async (values: PostSigninRequestType) => { - try { - const result = await mutationSignin.mutateAsync(values); - localStorage.setItem('accessToken', result.accessToken); - localStorage.setItem('refreshToken', result.refreshToken); - router.push('/epigrams'); // 로그인 성공 후 이동할 페이지 - } catch (error) { - // 로그인 실패 처리 - /* eslint-disable no-console */ - console.error('로그인 실패:', error); - } - }; - return (
@@ -48,7 +43,7 @@ export default function SignIn() {
- + mutationSignin.mutate(values))} className='flex flex-col items-center lg:gap-6 gap-5 w-full px-6'>
logo-google diff --git a/src/pages/auth/SignUp.tsx b/src/pages/auth/SignUp.tsx index 3c989445..bd21425c 100644 --- a/src/pages/auth/SignUp.tsx +++ b/src/pages/auth/SignUp.tsx @@ -1,4 +1,5 @@ -import { useState } from 'react'; +import { useState, useEffect } from 'react'; +import { useRouter } from 'next/router'; import Image from 'next/image'; import Link from 'next/link'; import { zodResolver } from '@hookform/resolvers/zod'; @@ -11,6 +12,14 @@ import useRegisterMutation from '@/hooks/useRegisterMutation'; export default function SignUp() { const [focusedField, setFocusedField] = useState(null); + const router = useRouter(); + + useEffect(() => { + const accessToken = localStorage.getItem('accessToken'); + if (accessToken) { + router.push('/epigrams'); + } + }, [router]); const form = useForm({ resolver: zodResolver(PostSignUpRequest), diff --git a/src/pages/auth/callback/google/index.ts b/src/pages/auth/callback/google/index.ts index 8b9275e7..320477e4 100644 --- a/src/pages/auth/callback/google/index.ts +++ b/src/pages/auth/callback/google/index.ts @@ -1,11 +1,11 @@ import { useEffect } from 'react'; import { useSearchParams } from 'next/navigation'; -import useGoogleLogin from '@/hooks/useGoogleLogin'; // useGoogleLogin 훅을 가져옵니다 +import useGoogleLogin from '@/hooks/useGoogleLogin'; export default function Google() { const searchParams = useSearchParams(); - const code = searchParams.get('code'); // URL에서 'code' 값을 가져옵니다 - const { mutate: login } = useGoogleLogin(); // useGoogleLogin 훅에서 mutate 함수를 가져옵니다 + const code = searchParams.get('code'); + const { mutate: login } = useGoogleLogin(); useEffect(() => { if (code) { @@ -15,6 +15,4 @@ export default function Google() { console.log('No code found in URL parameters'); // code가 없을 때 콘솔에 출력 } }, [code, login]); - - return null; // 컴포넌트가 UI를 렌더링하지 않음 } diff --git a/src/pages/auth/redirect/google-callback/index.ts b/src/pages/auth/redirect/google-callback/index.ts deleted file mode 100644 index 1f925901..00000000 --- a/src/pages/auth/redirect/google-callback/index.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { useEffect } from 'react'; -import { useSearchParams } from 'next/navigation'; -import useGoogleLogin from '@/hooks/useGoogleLogin'; - -export default function Google() { - const searchParams = useSearchParams(); - const code = searchParams.get('code'); - const { mutate: login } = useGoogleLogin(); - - useEffect(() => { - if (code) { - login(code); - } else { - /* eslint-disable no-console */ - console.log(code); // code가 없을 때 콘솔에 출력 - } - }, [code, login]); -} - -// code가 없는 경우의 예시 http://localhost:3000/auth/redirect/kakao -// 토스트로 에러 메시지 띄우고, 로그인 페이지로 리다이렉트