[feat] 질문 수정/삭제 기능 추가 및 신규 질문 UX 개선#35
Merged
SangHyun01 merged 5 commits intodevelopfrom Nov 7, 2025
Hidden character warning
The head ref may contain hidden characters: "34-feat-\uc9c8\ubb38-\uc218\uc815-\ubc0f-\uc0ad\uc81c"
Merged
Conversation
- 새로운 질문에 대한 답변을 기다리는 동안 로딩 애니메이션을 표시하여 사용자 경험을 개선했습니다. - `OptimisticAnswer` 컴포넌트를 추가하여 로딩 상태와 답변을 일관되게 처리합니다. - 질문 추가 시 낙관적 UI 업데이트를 적용하여 더 빠른 피드백을 제공합니다. - `use-question-tree` 훅에 낙관적 업데이트 로직을 구현했습니다. - `message-bubble` 및 `sub-question-list` 컴포넌트가 새로운 로딩 매커니즘을 사용하도록 업데이트했습니다.
Closed
SangHyun01
approved these changes
Nov 7, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
설명
채팅 화면의 사용자 경험을 대폭 개선합니다.
사용자가 이전에 질문했던 내용에 대해 수정 및 삭제 기능을 추가하여 편의성을 높입니다.
사용자가 새 질문을 할 때 즉각적인 피드백(낙관적 UI)과 로딩 애니메이션을 제공하여 대기 시간을 더 원활하게 만듭니다.
주요 변경 사항
사용자가 제출한 질문을 관리할 수 있도록 수정 및 삭제 기능을 구현했습니다.
공통 UI: 각 질문 메시지 버블에 '더보기(...)' 아이콘 버튼과 '수정', '삭제' 옵션이 포함된 드롭다운 메뉴를 추가했습니다.
질문 수정:
'수정' 클릭 시, 해당 메시지가 input 필드로 변경되며 기존 질문 내용이 미리 채워집니다.
'저장' (또는 Enter) 시 수정된 내용으로 질문이 다시 제출(재질문)됩니다.
'취소' 클릭 시 원래의 질문 메시지로 돌아갑니다.
질문 삭제:
'삭제' 클릭 시, "정말 삭제하시겠습니까?" 확인 모달이 나타납니다.
확인 시, 삭제 API가 호출되고 클라이언트 상태가 업데이트되어 채팅 이력에서 해당 질문이 제거됩니다.
새로운 질문에 대한 답변을 기다리는 동안의 사용자 경험을 개선했습니다.
로딩 애니메이션: OptimisticAnswer 컴포넌트를 추가하여, 답변을 기다리는 동안 "답을 찾는 중입니다...", "잠시만 기다려주세요!!" 등의 메시지를 순차적으로 보여주는 로딩 애니메이션을 구현했습니다.
낙관적 UI 업데이트: use-question-tree 훅에 새로운 질문을 즉시 UI에 반영하는 낙관적 업데이트 로직을 추가했습니다. API 응답이 오면 실제 데이터로 교체됩니다.
컴포넌트 업데이트: message-bubble 및 sub-question-list 컴포넌트가 새로운 로딩 및 답변 표시 메커니즘(OptimisticAnswer)을 사용하도록 수정했습니다.
Typewriter 효과 제거: 사용자 요청에 따라 기존 Typewriter 효과는 제거하고, 답변을 ReactMarkdown으로 바로 렌더링하도록 변경했습니다.
관련 파일
front/src/components/enhanced-breadcrumb-focus-view/OptimisticAnswer.tsx (New)
front/src/components/enhanced-breadcrumb-focus-view/use-question-tree.ts
front/src/components/message-bubble.tsx
front/src/components/enhanced-breadcrumb-focus-view/sub-question-list.tsx
front/src/components/Typewriter.tsx (Removed)
관련 이슈