Skip to content

fix: 1.1.0 목표 추가/수정/삭제 QA#209

Merged
jihun32 merged 9 commits intodevelopfrom
fix/#201
Mar 15, 2026
Merged

fix: 1.1.0 목표 추가/수정/삭제 QA#209
jihun32 merged 9 commits intodevelopfrom
fix/#201

Conversation

@jihun32
Copy link
Contributor

@jihun32 jihun32 commented Mar 15, 2026

🔗 관련 이슈

📙 작업 내역

@coderabbitai
Copy link

coderabbitai bot commented Mar 15, 2026

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 46bd91d9-1247-47c6-aa89-b672777f892a

📥 Commits

Reviewing files that changed from the base of the PR and between 4629aa0 and ee10227.

📒 Files selected for processing (16)
  • Projects/Feature/Home/Sources/Goal/AddGoalListView.swift
  • Projects/Feature/MakeGoal/Sources/MakeGoalReducer+Impl.swift
  • Projects/Feature/MakeGoal/Sources/MakeGoalView.swift
  • Projects/Feature/Onboarding/Sources/Connect/OnboardingConnectView.swift
  • Projects/Shared/DesignSystem/Sources/Components/Button/RoundedRectangle/Single/TXRoundedRectangleButton+Configuration.swift
  • Projects/Shared/DesignSystem/Sources/Components/Calendar/BottomSheet/TXCalendarBottomSheet.swift
  • Projects/Shared/DesignSystem/Sources/Components/Card/Goal/GoalEditCardView+Configuration.swift
  • Projects/Shared/DesignSystem/Sources/Components/Card/Goal/GoalEditCardView.swift
  • Projects/Shared/DesignSystem/Sources/Components/Card/Header/CardHeaderView+Configuration.swift
  • Projects/Shared/DesignSystem/Sources/Components/Card/Header/CardHeaderView.swift
  • Projects/Shared/DesignSystem/Sources/Components/Dropdown/TXDropdown.swift
  • Projects/Shared/DesignSystem/Sources/Components/Modal/Content/TXSelectIconModalContent.swift
  • Projects/Shared/DesignSystem/Sources/Components/Modal/TXModalView.swift
  • Projects/Shared/DesignSystem/Sources/Components/Tab/Group/TXTabGroup.swift
  • Projects/Shared/DesignSystem/Sources/Components/TextField/TXTextField.swift
  • Projects/Shared/DesignSystem/Sources/Modifiers/View+TxBottomSheet.swift

📝 Walkthrough

목표 추가/수정/삭제 QA 개선 - 아키텍처 및 UI/UX 개선사항

아키텍처 변경

CardHeaderView 액션 처리 구조 변경

  • 변경 전: Content.goalAdd(action: () -> Void) - associated value로 액션 전달
  • 변경 후: Content.goalAdd (parameterless case) - Configuration.onHeaderTapped 프로퍼티를 통해 액션 관리
  • 영향: CardHeaderView의 baseContent에 tap gesture 추가하여 헤더 탭 처리를 Configuration 레벨에서 중앙화
  • 결과: CardHeaderView 내 TXCircleButton이 config.onHeaderTapped?()를 트리거

상태 검증 강화 (MakeGoalReducer)

  • completeButtonTapped 액션에 guard 추가: completeButtonDisabled 상태 확인
  • 검증 실패 시 경고 토스트 표시: "목표 이름은 14글자 이내로 입력해 주세요!"
  • 기존 endDate 처리 및 로딩 상태 초기화 로직 유지

UI/UX 개선

TextField 개선

  • subText를 overlay 기반 렌더링으로 변경 (focused 상태에서만 표시)
  • clearButton 표시 조건 강화: !text.isEmpty && isFocused 만족 시 표시
  • 포커스 상태 시 .typography(.t2_16b) 적용

BottomSheet 리팩토링

  • dragAreaHeight 상수 도입 (CGFloat = 28)
  • 레이아웃 구조 개선: VStack으로 dragContainer 및 sheetContent 래핑
  • GeometryReader 기반 높이 측정을 background 수정자로 이전하여 측정 시점 명확화

목표 화면 레이아웃 조정

  • Emoji circle 크기 증가 (56x56 → 64x64)
  • Complete button 영역 상단 패딩 감소 (40 → 32)
  • Period sheet 상단 패딩 최소화 (36 → 8)
  • 날짜 행 간격 최적화: height constraints 제거, frame(height: 32) 적용
  • Toast에 customPadding 추가

디자인 시스템 개선

  • TXRoundedRectangleButton: small() 메서드에 font 파라미터 추가 (기본값: .b1_14b)
  • GoalEditCardView: corner radius 감소 (16 → 12)
  • TXDropdown: divider 렌더링을 insideRectEdgeBorder 기반으로 개선 (parameter-driven)
  • TXModalView: action buttons 영역 패딩 재설계 (top/horizontal spacing 조정)
  • TXTabGroup: tab item에 font 명시 추가 (.b2_14r)
  • GoalEditCardView: 수평 divider를 CardHeaderView의 bottom border로 통합

사용자 노출 변경사항

  • 목표 이름 14글자 초과 시 완료 버튼 비활성화 및 명확한 검증 메시지 표시
  • TextField 포커스 시 subText 가시성 개선
  • BottomSheet 드래그 영역 안정화
  • 목표 생성/수정 화면의 레이아웃 및 터치 영역 최적화
  • 카테고리 카드 상호작용 단순화 (CardHeaderView 내 버튼으로 일원화)

연관 이슈

  • Closes #201: 1.1.0 목표 추가/수정/삭제 QA

워크스루

1.1.0 버전 목표 추가/수정/삭제 QA 반영으로, 여러 UI 컴포넌트의 패딩, 간격, 레이아웃을 조정하고 일부 탭 제스처 처리 및 버튼 설정을 수정했으며, 카드 코너 반경을 감소시키고 디바이더 렌더링 방식을 개선했습니다.

변경 사항

Cohort / File(s) 요약
목표 추가/수정 기능
Projects/Feature/Home/Sources/Goal/AddGoalListView.swift, Projects/Feature/MakeGoal/Sources/MakeGoalReducer+Impl.swift, Projects/Feature/MakeGoal/Sources/MakeGoalView.swift
상단 패딩 제거(28pt), 이모지 버튼 크기 및 간격 조정(56x56 → 64x64), 날짜 행 간격 및 완료 버튼 영역 패딩 수정, 기간 시트 UI 레이아웃 조정, completeButtonTapped에서 비활성화 상태 검증 추가
온보딩 연결 뷰
Projects/Feature/Onboarding/Sources/Connect/OnboardingConnectView.swift
restoreCoupleSheetContent에서 상단 패딩 제거(28pt)
버튼 컴포넌트
Projects/Shared/DesignSystem/Sources/Components/Button/RoundedRectangle/Single/TXRoundedRectangleButton+Configuration.swift
small() 메서드 시그니처 변경: 기본값 .b1_14b를 갖는 font 파라미터 추가
카드 컴포넌트
Projects/Shared/DesignSystem/Sources/Components/Card/Goal/GoalEditCardView+Configuration.swift, Projects/Shared/DesignSystem/Sources/Components/Card/Goal/GoalEditCardView.swift, Projects/Shared/DesignSystem/Sources/Components/Card/Header/CardHeaderView+Configuration.swift, Projects/Shared/DesignSystem/Sources/Components/Card/Header/CardHeaderView.swift
카드 코너 반경 감소(16 → 12), 디바이더를 insideRectEdgeBorder로 변경, CardHeaderView의 goalAdd 케이스 API 변경(액션 연결 방식 수정), 탭 제스처 핸들링 위치 이동
드롭다운 및 모달 컴포넌트
Projects/Shared/DesignSystem/Sources/Components/Dropdown/TXDropdown.swift, Projects/Shared/DesignSystem/Sources/Components/Modal/Content/TXSelectIconModalContent.swift, Projects/Shared/DesignSystem/Sources/Components/Modal/TXModalView.swift
드롭다운 디바이더 렌더링 로직 파라미터화, 모달 제목 상단 패딩 조정, actionButtons 패딩 재구성
필드 및 탭 컴포넌트
Projects/Shared/DesignSystem/Sources/Components/TextField/TXTextField.swift, Projects/Shared/DesignSystem/Sources/Components/Tab/Group/TXTabGroup.swift
서브텍스트 오버레이 기반 렌더링으로 변경, 포커스 상태에서만 표시, 탭 아이템 폰트 파라미터 추가
캘린더 및 바텀시트 컴포넌트
Projects/Shared/DesignSystem/Sources/Components/Calendar/BottomSheet/TXCalendarBottomSheet.swift, Projects/Shared/DesignSystem/Sources/Modifiers/View+TxBottomSheet.swift
캘린더 콘텐츠 상단 패딩 제거, 바텀시트 레이아웃 재구성(dragContainer 추가, GeometryReader 위치 변경)

예상 코드 리뷰 노력

🎯 3 (Moderate) | ⏱️ ~20분

관련 가능성이 있는 PR

  • fix: 1.1.0 홈 QA #208: 동일한 UI 컴포넌트(AddGoalListView, CardHeaderView 및 패딩 처리)를 수정하여 코드 레벨에서 관련성 있음
✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/#201
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

CodeRabbit can use TruffleHog to scan for secrets in your code with verification capabilities.

Add a TruffleHog config file (e.g. trufflehog-config.yml, trufflehog.yml) to your project to customize detectors and scanning behavior. The tool runs only when a config file is present.

@jihun32 jihun32 marked this pull request as ready for review March 15, 2026 12:04
@clxxrlove
Copy link
Member

@coderabbitai summary

@github-actions github-actions bot requested a review from clxxrlove March 15, 2026 12:04
@coderabbitai
Copy link

coderabbitai bot commented Mar 15, 2026

✅ Actions performed

Summary regeneration triggered.

@jihun32 jihun32 merged commit f9fc036 into develop Mar 15, 2026
8 checks passed
@jihun32 jihun32 deleted the fix/#201 branch March 15, 2026 12:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants