-
Notifications
You must be signed in to change notification settings - Fork 0
feat: 디데이 등록 UI 구현 #95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the
📝 WalkthroughWalkthrough온보딩 플로우(연결, 코드 입력, 프로필, 기념일)를 ComposableArchitecture로 완전 구현하고, 디자인 시스템을 확장(네비게이션 바, 토스트, 텍스트필드)한 후, 라우트 기반 네비게이션 패턴을 정의합니다. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant OnboardingCoordinatorView as OnboardingCoordinator<br/>View
participant OnboardingConnectView as Connect<br/>View
participant OnboardingCodeInputView as CodeInput<br/>View
participant OnboardingProfileView as Profile<br/>View
participant OnboardingDdayView as Dday<br/>View
participant OnboardingCoordinator as OnboardingCoordinator<br/>Reducer
User->>OnboardingCoordinatorView: 온보딩 시작
OnboardingCoordinatorView->>OnboardingCoordinator: 초기 상태 생성
OnboardingCoordinator-->>OnboardingCoordinatorView: connect 화면 표시
OnboardingCoordinatorView->>OnboardingConnectView: Store 제공
rect rgba(100, 150, 255, 0.5)
Note over User,OnboardingCoordinator: Connect 화면
User->>OnboardingConnectView: 직접 연결 선택
OnboardingConnectView->>OnboardingCoordinator: directConnectCardTapped
OnboardingCoordinator->>OnboardingCoordinator: routes.append(.codeInput)<br/>codeInput 상태 생성
OnboardingCoordinator-->>OnboardingCoordinatorView: 경로 업데이트
OnboardingCoordinatorView->>OnboardingCodeInputView: navigationDestination로 표시
end
rect rgba(100, 200, 150, 0.5)
Note over User,OnboardingCoordinator: CodeInput 화면
User->>OnboardingCodeInputView: 코드 입력/복사
OnboardingCodeInputView->>OnboardingCoordinator: codeInputChanged / copyMyCodeButtonTapped
User->>OnboardingCodeInputView: 완료 버튼
OnboardingCodeInputView->>OnboardingCoordinator: completeButtonTapped
OnboardingCoordinator->>OnboardingCoordinator: routes.append(.profile)<br/>profile 상태 생성
OnboardingCoordinator-->>OnboardingCoordinatorView: 경로 업데이트
OnboardingCoordinatorView->>OnboardingProfileView: navigationDestination로 표시
end
rect rgba(150, 200, 100, 0.5)
Note over User,OnboardingCoordinator: Profile 화면
User->>OnboardingProfileView: 닉네임 입력
OnboardingProfileView->>OnboardingCoordinator: binding / codeInputChanged
OnboardingProfileView->>OnboardingCoordinator: 욕설 검증
User->>OnboardingProfileView: 완료 버튼
OnboardingProfileView->>OnboardingCoordinator: completeButtonTapped
OnboardingCoordinator->>OnboardingCoordinator: routes.append(.dday)<br/>dday 상태 생성
OnboardingCoordinator-->>OnboardingCoordinatorView: 경로 업데이트
OnboardingCoordinatorView->>OnboardingDdayView: navigationDestination로 표시
end
rect rgba(200, 150, 100, 0.5)
Note over User,OnboardingCoordinator: Dday 화면
User->>OnboardingDdayView: 날짜 선택
OnboardingDdayView->>OnboardingCoordinator: dateSelectorTapped / calendarCompleted
User->>OnboardingDdayView: 완료 버튼
OnboardingDdayView->>OnboardingCoordinator: completeButtonTapped
OnboardingCoordinator->>OnboardingCoordinator: delegate(.onboardingCompleted)
OnboardingCoordinator-->>User: 온보딩 완료
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes ✨ Finishing touches🧪 Generate unit tests (beta)
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. Comment |
|
@coderabbitai summary |
|
The PR description images show three iPhone screens demonstrating a D-Day registration flow: Image 1 displays an initial date input screen with the question "우리 커플의 기념일은?" (What is our couple's anniversary?), featuring a text field with placeholder "YYYY-MM-DD" and a calendar icon, plus a disabled button labeled "완료" (Complete) at the bottom. Image 2 shows the same screen with an interactive calendar picker opened, displaying "2026.01" with the 6th day selected (highlighted in black), and the "완료" button now appears active (black background). Image 3 displays the final state where the selected date "2026-01-06" is filled in the input field, with the active "완료" button ready for submission.
✅ Actions performedSummary regeneration triggered. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생해써 이전 pr들 다 승인 해놓을게 toast binding 부분만 확인해줘!
| get: { store.showToast }, | ||
| set: { _ in store.send(.toastDismissed) } | ||
| set: { newValue in | ||
| if !newValue { | ||
| store.send(.toastDismissed) | ||
| } | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
여기 isPresented: $store.showToast
이렇게 하면 안돼? BindingReducer 붙여서 될 거 같은데
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이거 확인은 했던거 같은데 다시 한번 확인해볼게
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ea7f22d 반영 완료
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
굿굿 너무 좋다
🔗 관련 이슈
📙 작업 내역
🎨 스크린샷 또는 시연 영상 (선택)
💬 추가 설명 or 리뷰 포인트 (선택)