Skip to content

Conversation

@Funital
Copy link
Contributor

@Funital Funital commented Dec 30, 2025

🔗 연결된 이슈

Resolved #45

✨ 주요 작업사항

이번 PR의 핵심 변경사항을 알려주세요!

이 Pull Request는 알림(Notification)과 검색(Search) 기능을 대폭 개선하며, 확장 가능한 데이터 모델, 개선된 UI 컴포넌트, 새로운 필터링 기능을 중심으로 수정되었습니다. 변경 사항은 알림 데이터 구조를 현대화하고, 신고/읽음 처리 기능을 추가하며, 검색 기능을 사용자 검색까지 확장합니다. 또한 이러한 기능을 지원하기 위해 새로운 UI 컴포넌트와 로직이 추가되었습니다.

Notification System Enhancements:

  • NotificationEntity를 리팩토링하여 새 필드(notificationId, notificationContent, redirectType, readStatus, createdAt)와
    관련 enum(RedirectType, ReadStatus)을 추가했습니다. 또한 알림 신고와 읽음 처리를 위한 엔티티를 새로 추가했습니다.
    *NotificationDataSource, NotificationRepository, NotificationUseCase를 수정하여 신고 상태 조회, 알림 읽음 처리 기능을 지원하도록 했으며, 새 알림 모델 구조를 반영한 샘플 데이터를 추가했습니다.
  • NotificationViewModel이 신고 상태를 관리하고, 알림 읽음 처리를 지원하며, 새로운 readStatus 속성에 따라 알림 목록을 갱신하도록 변경되었습니다.
  • 알림 UI(NotificationRow, NotificationView)가 새로운 엔티티 구조를 사용하도록 업데이트되었으며, 신고 안내 UI를 추가하고, 탭 시 알림을 읽음 처리하도록 변경되었습니다.
  • 신고 상태 정보를 표시하는 재사용 가능한 SwiftUI 컴포넌트 ReportSubmissionGuide가 추가되었습니다.

Search Feature Improvements:

  • 사용자 검색 기능을 추가했습니다. SearchDataSource, SearchRepository, SearchUseCase가 쿼리를 기반으로 사용자 목록을 필터링 및 반환하도록 확장되었으며, 이를 위한 더미 데이터가 추가되었습니다.
  • 검색 UI를 지원하기 위해 "account", "hashtag" 관련 새로운 다국어 문자열이 추가되었습니다.

이 변경 사항들은
알림 및 검색 모듈의 확장성, 유지보수성, 사용자 경험을 전반적으로 향상시킵니다.

📸 스크린샷 / 동영상

구현한 화면의 크기를 img width="250"로 설정해서 첨부해주세요!

🔍 리뷰어에게 (선택)

코드 리뷰 시 특별히 확인했으면 하는 부분이나, 의견을 묻고 싶은 내용을 적어주세요!

@Funital Funital requested review from Hrepay and taebin2 December 30, 2025 16:13
@Funital Funital self-assigned this Dec 30, 2025
@Funital Funital added the 📃 Feat 사용자를 위한 새로운 기능 추가 또는 개선 label Dec 30, 2025
@gemini-code-assist
Copy link

Summary of Changes

Hello @Funital, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

이 PR은 알림 및 검색 모듈의 전반적인 사용자 경험과 확장성을 향상시키기 위한 중요한 업데이트를 포함합니다. 알림 데이터 모델을 현대화하고 신고 및 읽음 처리 기능을 추가하며, 검색 기능은 사용자 검색까지 확장되어 더 유연하고 강력한 정보 탐색을 가능하게 합니다. 이러한 변경 사항은 사용자 인터페이스와 백엔드 로직 모두에서 이루어졌습니다.

Highlights

  • 알림 시스템 개선: 알림 엔티티(NotificationEntity)를 리팩토링하여 notificationId, notificationContent, redirectType, readStatus, createdAt 등의 새 필드와 RedirectType, ReadStatus 열거형을 추가했습니다. 또한 알림 신고 및 읽음 처리를 위한 ReportEntity와 NotificationReadRequestEntity를 새로 정의하고, NotificationDataSource, Repository, UseCase에 관련 기능을 구현했습니다. NotificationViewModel은 신고 상태를 관리하고 알림 읽음 처리를 지원하며, NotificationRow와 NotificationView UI 컴포넌트가 새로운 엔티티 구조를 사용하도록 업데이트되었습니다. 신고 안내 UI를 위한 ReportSubmissionGuide 컴포넌트도 추가되었습니다.
  • 검색 기능 확장: 사용자 검색 기능을 추가했습니다. SearchDataSource, SearchRepository, SearchUseCase가 쿼리를 기반으로 사용자 목록을 필터링하고 반환하도록 확장되었으며, 이를 위한 더미 데이터가 추가되었습니다. 검색 UI를 지원하기 위해 'account'와 'hashtag' 관련 새로운 다국어 문자열이 TextLiteral.swift에 추가되었습니다. SearchResultView에는 계정 및 해시태그 검색 결과를 전환할 수 있는 세그먼트 컨트롤이 도입되었고, CustomUserRow 컴포넌트는 버튼이 없는 상태를 지원하도록 개선되었습니다.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.


알림은 새롭게, 검색은 더 넓게 퍼져, 코드에 생명 불어넣네.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

이번 PR은 알림 및 검색 기능의 UI와 데이터 모델을 크게 개선하는 중요한 변경사항을 담고 있습니다. 전반적으로 코드 구조가 명확해지고 확장성이 좋아졌습니다. 특히 NotificationEntity 리팩토링, ReportSubmissionGuide와 같은 재사용 가능한 컴포넌트 추가, 검색 기능에 계정 검색 탭을 추가한 점이 인상적입니다. 몇 가지 코드 가독성 및 유지보수성, 에러 처리 방식 개선을 위한 제안 사항을 리뷰에 남겼으니 확인 부탁드립니다.

@Funital Funital changed the title [#45] 검색/알림 수정된 UI 구현 및 api 연결 준비 구현 [#45] 검색/알림 수정된 UI 구현 및 로직 수정 Dec 31, 2025
Copy link
Collaborator

@Hrepay Hrepay left a comment

Choose a reason for hiding this comment

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

  1. 여기 잘보시면 상하단 여백이 부족해서 테두리가 살짝 잘립니다! 여백1-2px씩만 추가해주세요!
image
  1. 검색창에서 엔터로는 검색이 되는데 텍스트필드 오른쪽 검색 버튼은 동작을 안합니다! <- 의도된 것인지..?!

  2. 한번 검색하면 새로운 창에서 검색이 되는데 그 상태에서 검색을 또하면 네비게이션이 계속 생깁니다!

  3. 에셋에 추가할 때 한국어.png로 저장된 이미지가 자꾸 사진처럼 튕기는 버그가 있는듯 합니다! 한번에 해결해 주실 수 있나요? 😁

Image

@Funital
Copy link
Contributor Author

Funital commented Dec 31, 2025

  1. 여기 잘보시면 상하단 여백이 부족해서 테두리가 살짝 잘립니다! 여백1-2px씩만 추가해주세요!
image 2. 검색창에서 엔터로는 검색이 되는데 텍스트필드 오른쪽 검색 버튼은 동작을 안합니다! <- 의도된 것인지..?! 3. 한번 검색하면 새로운 창에서 검색이 되는데 그 상태에서 검색을 또하면 네비게이션이 계속 생깁니다! 4. 에셋에 추가할 때 한국어.png로 저장된 이미지가 자꾸 사진처럼 튕기는 버그가 있는듯 합니다! 한번에 해결해 주실 수 있나요? 😁 Image

각 질문에 대한 답변:

  1. 넵 수정해놓겠습니다.
  2. 저거 동작도 추가해놓겠습니다
  3. 저는 무신사 검색 창 느낌으로 생각을 했었는데, 이거는 클로키때와 동일한지 다시한번 물어보고 수정해놓을게요
  4. 해결해보겠습니다

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📃 Feat 사용자를 위한 새로운 기능 추가 또는 개선

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feat] 검색/알림 2차 구현

3 participants