Skip to content

Conversation

@HANTAEDONG
Copy link
Member

#️⃣연관된 이슈

#141

📝작업 내용

  1. 허브 및 피드 폴더 구조 정리 -> 아토믹 디자인패턴에 부합하도록 폴더 구조 변경
  • 아직 변경해야할 부분이 많지만 atom과 molecule, organism에 맞게 파일들을 분리했습니다.
  • 주로 atom과 molecule에 있는 contents 폴더 안에 있는 파일들을 본래 역할에 맞게 분리했습니다. atom, molecule, organism 폴더 안에서 허브와 피드 도메인을 분리하여 그 안에 각각 해당하는 파일들을 넣었습니다.
  1. tiptap 에디터 고도화
  • tiptap editor의 기본 폰트 크기가 14px이었는데 velog와 notion은 각각 데스크톱 환경에서 27px과 20px로 저희 서비스에 비해서 매우 컸습니다. 따라서 1rem인 16px로 변경했습니다. 하지만 추후 크기를 더 키울 필요성이 있습니다.
  • 피드에서 태그 드롭다운이 input 바로 밑으로 오도록 수정했습니다.
  • tiptap editor에서 placeholder를 클릭해야 에디터가 포커스되었는데 이제 tiptap editor 영역 중 어느 곳을 클릭해도 포커스가 되도록 수정했습니다.

스크린샷 (선택)

💬리뷰 요구사항(선택)

리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요

ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?

JaeHye0k and others added 12 commits February 5, 2025 14:05
* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Copy link
Member

@chaeyun-sim chaeyun-sim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

작업 마무리되면 머지해주세요!

@HANTAEDONG HANTAEDONG force-pushed the feature/141/tiptap_refactor branch from 739f2b1 to 5fe44fc Compare March 2, 2025 05:13
@HANTAEDONG HANTAEDONG marked this pull request as ready for review March 2, 2025 05:14
@chaeyun-sim chaeyun-sim changed the base branch from main to develop March 3, 2025 07:03
@HANTAEDONG HANTAEDONG merged commit 2d41119 into develop Mar 3, 2025
1 check passed
@HANTAEDONG HANTAEDONG deleted the feature/141/tiptap_refactor branch March 3, 2025 07:03
HANTAEDONG added a commit that referenced this pull request Mar 5, 2025
* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>
HANTAEDONG added a commit that referenced this pull request Mar 5, 2025
* [Style] LogInputBox 디자인 구현

* [Refactor] 피드 리스트 호버효과 추가

* [Refactor] 홈페이지 디자인 변경

* [Refactor] 피드 상세 수정중

* [Refactor] 피드 페이지에서 아바타 팝업의 위치를 조정

* [Feat] 수정중

* Feature/141/tiptap refactor (#144)

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>

* [Refactor] .

* [Style] 모바일 사이즈 레이아웃 구현

---------

Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>
Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
HANTAEDONG added a commit that referenced this pull request Mar 5, 2025
* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>
@JaeHye0k JaeHye0k mentioned this pull request Mar 17, 2025
JaeHye0k added a commit that referenced this pull request Mar 17, 2025
* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

* Feature/141/tiptap refactor (#144)

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>

* Feature/146/log input box (#149)

* [Style] LogInputBox 디자인 구현

* [Refactor] 피드 리스트 호버효과 추가

* [Refactor] 홈페이지 디자인 변경

* [Refactor] 피드 상세 수정중

* [Refactor] 피드 페이지에서 아바타 팝업의 위치를 조정

* [Feat] 수정중

* Feature/141/tiptap refactor (#144)

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>

* [Refactor] .

* [Style] 모바일 사이즈 레이아웃 구현

---------

Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>
Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] 홈페이지 디자인 변경

* [Feat] 수정중

* Feature/141/tiptap refactor (#144)

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Refactor] tiptap감싸는 div 클릭시 포커스되도록 수정

* [Refactor] tiptap에디터 왼쪽 마진 제거

* [Refactor] 태그 드롭다운이 input바로 밑에 오도록 조정

* [Remove] 안쓰이는 파일제거

* [Refactor] atomic design을 위한 폴더 정리

* [Refactor] atomic design을 위한 폴더 정리

* [Remove] 안쓰이는 파일제거

* [Move] Select를 atom에서 molecule로 이동

* [Move] Select를 atom에서 molecule로 이동

* [Refactor] tiptap editor의 기본 폰트 크기를 1rem으로 키움 원래는 14px이었음

* [Fix] Menu의 key를 label로 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>

* [Style] 모바일 레이아웃 hub에 적용

* Feature/148 hub designfix (#150)

* [Fix] 반응형을 위한 버튼 옵셔널 체이닝

* [Fix] md사이즈 이하일때는 푸터 히든

* [Fix] 허브 썸네일 과 피드 썸네일 분리

* [Fix] 사용자 이름 크기 수정

* [Fix] 허브 정보에서 md 사이즈 이하면 직무 col

* [Fix] 반응형을 위한 css 수정

* [Fix] 버튼 크기 수정

* [Fix] 반응형을 고려한 썸네일 위치 이동

* [Fix] 반응형을 고려한 허브 탑 크기 수정

* [Fix] 직군 태그 많아지면 ... 으로 수정

* [Fix] 반응형을 고려한 지원, 지원 수락 허브 상세페이지에 추가

* [Refactor] 마이페이지, 계정 설정 페이지, 검색 페이지 레이아웃 (#153)

* [Fix] 버튼 컴포넌트 width, height 옵션화

* [Fix] 컨트리뷰션 박스 디자인 수정

* [Fix] 모바일 스크린일 때 텍스트 숨김처리

* [Fix] 모바일 스크린일 때 추가적인 유저 정보 숨김처리

* [Refactor] 모바일 스크린에서 커넥션 허브 -> 허브로 표시

* [Fix] 모바일 내비게이션 검색 기능 수정

* [Fix] 계정 설정 페이지에 불필요한 아이콘 삭제

* [Refactor] 데이터 없을 시 표시 문구 수정

* [Refactor] 모바일 스크린 디자인 수정

* [Refactor] 검색 사용성 개선

* [Fix] 테스트용 컬러 삭제

* [Fix] 검색 모달에서 더 보기 클릭 시 로직 수정

* [Refactor] 탭 스크린 이하에 검색 모달 숨김 처리

* [Fix] 검색바 텍스트 크기 변경

* [Feat] 네비게이션 구현완료 (#152)

* [Feat] 네비게이션 구현중

* [Feat] 모바일 네비게이션에 알림 연동

* [Style] 모바일 네비게이션 드롭다운 구현

* [Feat] 모바일 네비게이션 드롭다운 구현 완료

* [Refactor] 피드 메인 모바일 사이즈에 대응

* [Feat] 모바일 네비게이션 구현 완료

* [Refactor] 모바일 사이즈에 맞도록 tiptapEditor 모달 수정

* [Refactor] 피드 상세 페이지 모바일 사이즈에 맞도록 수정

* [Refactor] 피드 디테일 페이지 모바일 사이즈에 맞도록 수정

* [Feat] 올라가는 버튼 구현중

* [Fix] 메이페이지 돌아왔을 때 네비게이션 사라지는 문제 해결

* [Refactor] tiptap editor ul, ol 마진 수정

* [Refactor] 피드 메인 모바일 디자인 수정

* [Refactor] FeedFooter 아이템간 간격 조정

---------

Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>

* [Fix] 모바일 헤더 수정

* [Merge] feature/154-hub-refactor -> develop

* [Refactor] 이미지 최적화

* [Refactor] 이미지개선 함수, 및 작성시 이미지 개선

* [Merge] refactor/156-seo-a11y -> develop

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>

* [Deploy] develop -> main

* [Fix] SSE 연결 안되는 문제 해결

* [Fix] 알림창 열였을 때 key 중복 에러 뜨는 문제 해결

* [Fix] 알림 중복 문제 해결

* [Remove] 필요없는 컴포넌트 삭제

* [Refactor] 패드 contact 수정

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* docs: update README.md

* [Fix] img 태그에 alt 추가

* [Refactor] 메타태그 설정

* [Refactor] 작은 모바일 화면에서 Feed Role 숨김 처리

* [Feat] 피드 태그 선택 컴포넌트에 패딩 추가

* [Fix] 검색어 없이 검색한 경우 alert 표시

* [Fix] 검색 페이지 패딩 추가

* [Refactor] 버튼에 접근 가능한 이름 표시

* [Refactor] 접근성 개선을 위해 색상 변경

* [Refactor] 접근성 개선을 위해 aria 속성 추가

* [Refactor] UI 라이브러리 컴포넌트에 aria 속성 추가

* [Feat] 태그 필터링 선택 aria-hidden 추가

* [Refactor] 접근성 개선을 위해 텍스트 색상 변경

* [Style] 주석 처리된 코드 삭제

* [Refactor] autoFocus 추가 및 API 요청 최적화

* [Fix] 검색 모달 로딩, 에러 문구 수정

* [Fix] 텍스트 드래그 방지 처리

* [Fix] 오타 수정

* [Fix] FeedTagSelect aria-label 수정

* [Feat] robots.txt 파일 작성

* [Fix] favicon 수정

* [Fix] eslint 검사

* [Fix] 불필요한 호출 방지

* [Fix] 검색 페이지 무한 스크롤 수정

* [Fix] 중복 컴포넌트 삭제

* [Fix] 조건 위치 수정

* [Fix] 모바일 내비게이션 이동 url 수정

* [Feat] 로그인 후 이전 페이지로 이동하도록 수정

* [Fix] 프로젝트 이동 url 수정

---------

Co-authored-by: JaeHye0k <55015406+JaeHye0k@users.noreply.github.com>
Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>

* [Merge] feature/78-chatting-search -> develop

* [Feat] 채팅방 제목 검색 기능

* [Refactor] 이벤트 핸들러 등록 리팩토링

* [Refactor] 채널 이동 리팩토링

* [Test] 테스트

* [Fix] 웹 소켓 메시지와 Http 메시지를 통합하는 과정에서 발생했던 문제 해결

* [Feat] 채팅방 메시지 검색 기능 초안

* [Feat] 채널 대표 이미지 표시(임시)

* [Feat] 그룹 채팅 기능

* [Fix] 채팅 입력시 스크롤 아래로 조정

* [Feat] Nullish 타입 검사 유틸리티 함수 추가

* [Refactor] 메시지 검색 기능 구현을 위한 useInfiniteQuery 리팩토링 및 mock 데이터 리팩토링

* [Refactor] 컴포넌트 분리

* [Feat] 채팅 메시지 검색 기능 초안 (검색 이후 무한 스크롤 기능 안됨)

* [Fix] skeleton import 경로 변경

* [Style] UI 수정

* [Refactor] 메시지 검색 기능 리팩토링

* [Refactor] 메시지 검색 기능 리팩토링

* [Refactor] 메시지 검색 기능 리팩토링

* [Fix] pnpm 충돌 해결

* [Fix] pnpm 충돌 해결

* [Refactor] ChannelId 를 URL pathParam에 저장

* [Feat] 검색 결과 화면 중앙에 표시되도록 스크롤 조정

* [Fix] 검색 후 무한스크롤 가능하도록 수정, 화살표 클릭 해서 이전 메시지, 다음 메시지 탐색 할 수 있고 이후에도 무한 스크롤 가능하도록 수정

* [Refactor] 채널 선택 페이지 & 채팅방 페이지 분리 & 메시지 검색 기능 추가

* [Fix] 소켓 채널이 두 개 생성되는 문제 해결

ChannelSelectPage 와 ChatPage 에서 useChat 을 호출함으로 인해 두 개의 소켓 채널이 열리는 문제가 발생함.
두 페이지에서 공통으로 사용하는 레이아웃(ChatLayout)을 만들어서 그 안에서 useChat을 호출함으로써 두 개의 페이지에서 동일한 소켓 채널을 이용할 수 있도록 함

* [Refactor] 채팅 로직 리팩토링

- 소켓 이벤트 이름 상수화
- 웹소켓과 리액트 쿼리를 함께 사용하기 위해 invalidateQueries 사용하는 방식으로 수정

* [Refactor] api 요청 방식 수정

- 기존 cursor 값을 두 개(prev, next) 사용하던 방식은 커서의 개수가 늘어난 만큼 관리가 불편함. 따라서 한 개의 커서값만 관리하도록 수정

* [Feat] CloseButton 생성

* [Chore] 이름 수정

- jaehyuk -> jaehyeok

* [Fix] 이벤트 전파 차단

- 이벤트 전파를 막지 않으면 이벤트 버블링 단계에서 ChannelList 의 리스트 아이템에 클릭 이벤트가 전파되어 채팅방이 나가지는게 아니라 채팅방에 들어가짐.

* [Refactor] searchMessageId 를 props 로 받음으로서 코드 복잡성 개선

* [Remove] 파일 삭제

- 별도의 컴포넌트로 분리하기엔 코드가 너무 단순함

* [Feat] '새로운 메시지가 왔습니다' 버튼 추가

- 스크롤이 위로 올라가 있을 때 새로운 메시지가 오면 해당 버튼을 클릭함으로써 바로 새 메시지를 확인할 수 있음

* [Refactor] 단일 책임 원칙에 맞게 컴포넌트 분리

- 메시지 입력 로직과 폼 제출로직을 SearchForm 컴포넌트로 이동

* [Refactor] 스크롤 로직 리팩토링

- 파일 이름을 useScroll 에서 useMessageScroll 로 변경함으로써 조금 더 명확한 의미 부여.
- 단일 책임 원칙에 맞게 스크롤에 관련된 로직을 한 곳에서 관리하도록 함

* [Refactor] 채팅 무한스크롤 리팩토링

- 한쪽 방향만 무한스크롤이 가능하도록 수정.
- 검색 이후 무한 스크롤을 사용하려는 경우 검색 창에 x 버튼을 클릭 후 사용할 수 있음.

* [Feat] 모든 페이지에서 chatStore 의 currentChannelId 만 변경하면 채팅방에 접속할 수 있도록함.

* [Refactor] lazy load 를 통한 code splitting으로 lighthouse 점수 6점 개선

* [Refactor] joinChannel 을 별도로 실행해주는 것이 아닌, currentChannelId 를 변경해줌으로써 채팅방에 접속하도록 함

* [Refactor] 메시지 기능 리팩토링

- 메시지 관련 로직을 useMessageState 훅에 묶어 가독성 및 유지보수성 개선
- 메시지 메모이제이션을 통해 불필요한 리렌더링 방지

* [Refactor] 메시지 검색 폼, 채널 검색 폼 공통 컴포넌트화

* [Refactor] 커서값 두 개에서 한 개로 변경

* [Feat] 새 메시지가 왔는지 판별하기 위한 상태 추가

* [Refactor] 불필요한 console.log 제거

* [Refactor] 메시지 응답 데이터 형식 수정

- cursor 두 개에서 한 개로 변경

* [Fix] '새로운 메시지가 있습니다' 버그 수정

- 내가 문자를 보냈을 때도 '새로운 메시지가 있습니다' 버튼이 뜨는 버그 해결

* [Refactor] message.type 에 따라 switch 문으로 분기 처리

* [Merge] refactor/solid -> develop

* [Feat] 채팅방 제목 검색 기능

* [Refactor] 이벤트 핸들러 등록 리팩토링

* [Refactor] 채널 이동 리팩토링

* [Test] 테스트

* [Fix] 웹 소켓 메시지와 Http 메시지를 통합하는 과정에서 발생했던 문제 해결

* [Feat] 채팅방 메시지 검색 기능 초안

* [Feat] 채널 대표 이미지 표시(임시)

* [Feat] 그룹 채팅 기능

* [Fix] 채팅 입력시 스크롤 아래로 조정

* [Feat] Nullish 타입 검사 유틸리티 함수 추가

* [Refactor] 메시지 검색 기능 구현을 위한 useInfiniteQuery 리팩토링 및 mock 데이터 리팩토링

* [Refactor] 컴포넌트 분리

* [Feat] 채팅 메시지 검색 기능 초안 (검색 이후 무한 스크롤 기능 안됨)

* [Fix] skeleton import 경로 변경

* [Style] UI 수정

* [Refactor] 메시지 검색 기능 리팩토링

* [Refactor] 메시지 검색 기능 리팩토링

* [Refactor] 메시지 검색 기능 리팩토링

* [Fix] pnpm 충돌 해결

* [Fix] pnpm 충돌 해결

* [Refactor] ChannelId 를 URL pathParam에 저장

* [Feat] 검색 결과 화면 중앙에 표시되도록 스크롤 조정

* [Fix] 검색 후 무한스크롤 가능하도록 수정, 화살표 클릭 해서 이전 메시지, 다음 메시지 탐색 할 수 있고 이후에도 무한 스크롤 가능하도록 수정

* [Refactor] 채널 선택 페이지 & 채팅방 페이지 분리 & 메시지 검색 기능 추가

* [Fix] 소켓 채널이 두 개 생성되는 문제 해결

ChannelSelectPage 와 ChatPage 에서 useChat 을 호출함으로 인해 두 개의 소켓 채널이 열리는 문제가 발생함.
두 페이지에서 공통으로 사용하는 레이아웃(ChatLayout)을 만들어서 그 안에서 useChat을 호출함으로써 두 개의 페이지에서 동일한 소켓 채널을 이용할 수 있도록 함

* [Refactor] 채팅 로직 리팩토링

- 소켓 이벤트 이름 상수화
- 웹소켓과 리액트 쿼리를 함께 사용하기 위해 invalidateQueries 사용하는 방식으로 수정

* [Refactor] api 요청 방식 수정

- 기존 cursor 값을 두 개(prev, next) 사용하던 방식은 커서의 개수가 늘어난 만큼 관리가 불편함. 따라서 한 개의 커서값만 관리하도록 수정

* [Feat] CloseButton 생성

* [Chore] 이름 수정

- jaehyuk -> jaehyeok

* [Fix] 이벤트 전파 차단

- 이벤트 전파를 막지 않으면 이벤트 버블링 단계에서 ChannelList 의 리스트 아이템에 클릭 이벤트가 전파되어 채팅방이 나가지는게 아니라 채팅방에 들어가짐.

* [Refactor] searchMessageId 를 props 로 받음으로서 코드 복잡성 개선

* [Remove] 파일 삭제

- 별도의 컴포넌트로 분리하기엔 코드가 너무 단순함

* [Feat] '새로운 메시지가 왔습니다' 버튼 추가

- 스크롤이 위로 올라가 있을 때 새로운 메시지가 오면 해당 버튼을 클릭함으로써 바로 새 메시지를 확인할 수 있음

* [Refactor] 단일 책임 원칙에 맞게 컴포넌트 분리

- 메시지 입력 로직과 폼 제출로직을 SearchForm 컴포넌트로 이동

* [Refactor] 스크롤 로직 리팩토링

- 파일 이름을 useScroll 에서 useMessageScroll 로 변경함으로써 조금 더 명확한 의미 부여.
- 단일 책임 원칙에 맞게 스크롤에 관련된 로직을 한 곳에서 관리하도록 함

* [Refactor] 채팅 무한스크롤 리팩토링

- 한쪽 방향만 무한스크롤이 가능하도록 수정.
- 검색 이후 무한 스크롤을 사용하려는 경우 검색 창에 x 버튼을 클릭 후 사용할 수 있음.

* [Feat] 모든 페이지에서 chatStore 의 currentChannelId 만 변경하면 채팅방에 접속할 수 있도록함.

* [Refactor] lazy load 를 통한 code splitting으로 lighthouse 점수 6점 개선

* [Refactor] joinChannel 을 별도로 실행해주는 것이 아닌, currentChannelId 를 변경해줌으로써 채팅방에 접속하도록 함

* [Refactor] 메시지 기능 리팩토링

- 메시지 관련 로직을 useMessageState 훅에 묶어 가독성 및 유지보수성 개선
- 메시지 메모이제이션을 통해 불필요한 리렌더링 방지

* [Refactor] 메시지 검색 폼, 채널 검색 폼 공통 컴포넌트화

* [Refactor] 커서값 두 개에서 한 개로 변경

* [Feat] 새 메시지가 왔는지 판별하기 위한 상태 추가

* [Refactor] 불필요한 console.log 제거

* [Refactor] 메시지 응답 데이터 형식 수정

- cursor 두 개에서 한 개로 변경

* [Fix] '새로운 메시지가 있습니다' 버그 수정

- 내가 문자를 보냈을 때도 '새로운 메시지가 있습니다' 버튼이 뜨는 버그 해결

* [Refactor] message.type 에 따라 switch 문으로 분기 처리

* [Refactor] SOLID 원칙에 따른 MobileNav 컴포넌트 리팩토링

- 단일 책임 원칙(SRP)에 따라 컴포넌트 분리
  - NavLogo: 로고 렌더링 담당
  - NavActions: 메뉴/알림 액션 버튼 담당
  - MobileSearchBar: 검색 기능 담당
  - MobileNotification: 알림 UI/로직 담당

- 코드 품질 개선
  - useOutsideClick 커스텀 훅으로 외부 영역 클릭 시 처리 로직 분리

* [Refactor] MobileNav 합성컴포넌트화 및 채팅 페이지 반응형 수정

- 채팅 페이지에서는 MobileNav의 검색창이 필요 없음.
- 합성 컴포넌트로 만들어서 컴포넌트를 사용하는 곳에서 검색창을 주입할 수 있도록 수정함.

* [Merge] hotfix/build-error -> develop

* [Fix] 대소문자 수정

* [Fix] 대소문자 수정

* [Fix] 항상 참인 조건 수정

* [Fix] 불필요한 코드 삭제

* [Fix] dangeroulySetInnerHTML 에러 수정

* [Fix] build 에러 수정

* [Fix] 중복 파일 삭제

* [Chore] html-react-parser 추가

---------

Co-authored-by: Simune <111689342+chaeyun-sim@users.noreply.github.com>

* [Fix] 메인 레이아웃에 모달 관련 코드 추가

* [Docs] CHANGELOG 작성

---------

Co-authored-by: HANTAEDONG <htd0913@gmail.com>
Co-authored-by: leechan <dlcks0601@gmail.com>
Co-authored-by: HANTAEDONG <132195232+HANTAEDONG@users.noreply.github.com>
Co-authored-by: 한태동 <hantaedong@hantaedong-ui-MacBookAir.local>
Co-authored-by: leechan <51065636+dlcks0601@users.noreply.github.com>
Co-authored-by: chaeyun-sim <111689342+chaeyun-sim@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants