Skip to content

보관함 상세 화면 및 카드 물리 낙하 애니메이션 추가 - #43

Draft
soyeonLee126 wants to merge 9 commits into
developfrom
feature/archive-room
Draft

보관함 상세 화면 및 카드 물리 낙하 애니메이션 추가#43
soyeonLee126 wants to merge 9 commits into
developfrom
feature/archive-room

Conversation

@soyeonLee126

Copy link
Copy Markdown
Collaborator

Summary

  • 감정 쓰레기통 클릭 시 이동하는 보관함 상세 화면 추가 — 그 달 카드가 원 충돌 기반 경량 2D 물리 시뮬레이션(중력/벽/바닥 반발/카드 간 충돌)으로 낙하해 쌓이는 연출
  • CardRepositoryCardQueryRepository(조회) / CardWriteRepository(쓰기)로 분리하고, 날짜별 카드 조회 API(getCardsByDate) 추가
  • 메인 네비게이션에 상세 화면 라우트 연결
  • 보관함 탭을 원격설정과 무관하게 항상 노출하도록 정리 (무관 정리 커밋으로 분리)

Test plan

  • 보관함 탭 → 카드가 있는 감정 쓰레기통 진입 시 카드가 위에서 낙하해 자연스럽게 쌓이는지 확인
  • 카드가 없는 날짜/감정은 빈 상태 문구가 뜨는지 확인
  • ./gradlew test testDebugUnitTest 통과 확인

ArchiveScreen에서만 참조되던 worry_bin 시리즈가 feature/home에도 중복으로
남아있어 삭제한다.
body/note 레이어가 분리되어 있던 기존 worry_bin 에셋은 투명 캔버스 대비
그림이 작아 FillWidth 스케일링 시 깨져 보였다. Figma에서 내보낸 카드
단위 통합 이미지로 교체하고, 그리드 레이아웃/카드 크기를 디자인 실측
값에 맞춰 조정했다.
TopLevelDestinationTest가 삭제된 CalendarKey를 계속 참조해 테스트 컴파일이
깨져 있었다. 또한 바텀바 아이템만 원격 설정으로 가려지고 ArchiveKey
네비게이션 엔트리 자체는 가드가 없어, 백스택 복원 등으로 진입 시 숨겨진
화면이 그려질 수 있었다.
getCardsByDate(조회)와 createCard(쓰기)가 호출부가 완전히 갈리는데도 한 인터페이스에
묶여 있어서, 서로 무관한 화면의 테스트 더블들이 쓰지 않는 메서드를 매번 스텁해야 했다.
CardQueryRepository/CardWriteRepository로 나누고 CardRepositoryImpl이 둘 다 구현하도록
정리했다.
감정 쓰레기통을 열면 그 달 카드들이 원 충돌 기반 경량 2D 물리 시뮬레이션(중력, 벽/바닥
반발, 카드 간 충돌)으로 낙하해 쌓이는 연출을 넣었다. PaperPhysics.kt는 Compose 의존성
없는 순수 Kotlin이라 물리 로직만 따로 검증할 수 있다.

보관함 그리드에서 감정 쓰레기통을 누르면 상세 화면으로 이동하도록 클릭도 연결했다.
ArchiveDetailKey 라우트를 등록하고, 보관함 그리드의 클릭을 상세 화면 네비게이션으로
이어준다.
카드 기능을 원격 설정과 무관하게 항상 노출하기로 하면서, 타임아웃/재조회까지 갖췄던
remoteConfigGate()가 상수 true를 내보내는 용도로만 남았다. 관련 유스케이스 의존성과
불필요해진 대기 로직을 함께 정리했다.

@github-advanced-security github-advanced-security AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

detekt found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

PaperBody 생성자 파라미터 수 축소(6개로), 긴 인자 목록 줄바꿈, 최대 줄 길이 초과,
미사용 import, 상단 상수 SCREAMING_CASE 네이밍, import 정렬, 들여쓰기, 미사용
Preview 함수에 대한 @Suppress 누락을 정리했다.
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.

2 participants