Skip to content

feat: MeetDetail 리디자인 + 공지(Notice) Flow 신설 #60

Description

@Dongju3079

개요

MeetDetail 화면 UI 리팩토링 + 공지(Notice) 기능을 위한 새 Flow 진입점 추가

서버 API가 pinnedNotice 필드를 포함하도록 변경되어 DTO/Entity 확장 + UI 반영 필요.

변경 사항

1. UI 리팩토링 (기존 MeetDetail)

  • 세그먼트(예정된 약속 / 지난 약속)를 카드형 박스 → 상단 알약(pill) 토글로 이동
  • 모임 이미지·이름을 본문 상단 카드 → 커스텀 네비 중앙으로 이동
  • 모임 인원수(16명) 표시 제거
  • 공지 미리보기 카드 추가 (pinnedNotice 존재 시 1줄 ellipsis로 노출)
  • 확성기 버튼에 파란 점 배지 추가 (pinnedNotice 존재 시)
  • 모임장 + 공지 없음 조건일 때 공지를 작성해보세요 툴팁

2. Notice Flow 신설 (NoticeFlowCoordinator)

  • 진입점:
    • 공지 미리보기 카드 탭 → 공지 상세 화면 (placeholder)
    • 확성기 버튼 탭 → 공지 리스트 화면 (placeholder, 작성 진입점 포함)
  • 공지 작성은 모임장만 가능
  • 이번 PR에선 placeholder VC만 연결 (실제 화면은 후속 작업)

3. DTO / Entity 변경

  • MeetResponseversion: Int?, pinnedNotice: PinnedNoticeResponse? 추가
  • PinnedNoticeResponse DTO 신규 (Modules/Data/Sources/Network/Response/Notice/)
  • Meet Entity에 version, pinnedNotice 추가
  • PinnedNotice, NoticeType(CUSTOM, SYSTEM) Entity 신규 (Modules/Domain/Sources/Entities/Notice/)

작업 범위

  • Domain / Data / Presentation 레이어 모두 영향
  • 기존 화면 수정이므로 UIKit + ReactorKit 유지 (CLAUDE.md 컨벤션)
  • 빌드 검증: tuist generate + xcodebuild Mople scheme

Figma

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions