Conversation
Walkthrough새로운 온보딩 이미지 에셋을 추가하고 온보딩 결과 화면을 확장합니다. 감정 결과 뷰를 도입하고, 조건부 텍스트 로직을 수정하며, 레이아웃 제약 조건을 재구성하여 확장된 결과 표시를 지원합니다. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ 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 |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
Projects/Presentation/Sources/Onboarding/View/OnboardingResultViewController.swift (1)
254-299: 표시 문자열을 레이아웃 상태로 재사용하지 마세요.
,개수,contains("4"), 그리고""/" "센티널로 확장 여부를 정하면 결과 문구 포맷이 바뀔 때 레이아웃과 suffix 조합이 같이 깨집니다. 선택 결과는 ViewModel/도메인에서 이미 알고 있으니, 여기서는 명시적인 확장 상태나 case를 넘겨서 분기하는 편이 안전합니다. 지금 구조는Projects/Presentation/Sources/Onboarding/View/Component/OnboardingResultSummaryView.swift도 같은 문자열 규칙에 묶여 있어서 두 군데를 함께 유지보수해야 합니다.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@Projects/Presentation/Sources/Onboarding/View/OnboardingResultViewController.swift` around lines 254 - 299, The code is using display strings (feelingResult, outdoorResult, highlightText "") to decide layout/expansion which is brittle; instead compute and pass an explicit expansion flag or enum from the ViewModel/domain and use that to build the UI. Update the creation of OnboardingResultSummaryView (and its initializer) to accept an isExpanded: Bool or a ResultLayoutCase enum and stop relying on highlightText sentinels; replace string-based checks (ifNeedExpandFeelingResult = feelingResult.filter { $0 == "," }.count >= 2 and ifNeedExpandOutdoorResult = outdoorResult.contains("4")) with booleans computed from the view model or selection model and use those booleans in the rectangle sizing logic (references: feelingResultStackView, outdoorResultStackView, ifNeedExpandFeelingResult, ifNeedExpandOutdoorResult, OnboardingResultSummaryView, rectangleHeightConstraint, resultGraphicViewTopConstraint). Ensure OnboardingResultSummaryView is updated to render differently based on the explicit flag/enum rather than parsing its input text.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In
`@Projects/Presentation/Sources/Onboarding/View/OnboardingResultViewController.swift`:
- Around line 254-299: The code is using display strings (feelingResult,
outdoorResult, highlightText "") to decide layout/expansion which is brittle;
instead compute and pass an explicit expansion flag or enum from the
ViewModel/domain and use that to build the UI. Update the creation of
OnboardingResultSummaryView (and its initializer) to accept an isExpanded: Bool
or a ResultLayoutCase enum and stop relying on highlightText sentinels; replace
string-based checks (ifNeedExpandFeelingResult = feelingResult.filter { $0 ==
"," }.count >= 2 and ifNeedExpandOutdoorResult = outdoorResult.contains("4"))
with booleans computed from the view model or selection model and use those
booleans in the rectangle sizing logic (references: feelingResultStackView,
outdoorResultStackView, ifNeedExpandFeelingResult, ifNeedExpandOutdoorResult,
OnboardingResultSummaryView, rectangleHeightConstraint,
resultGraphicViewTopConstraint). Ensure OnboardingResultSummaryView is updated
to render differently based on the explicit flag/enum rather than parsing its
input text.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 0705ffcf-71f0-452a-beed-0a7b44363e4a
⛔ Files ignored due to path filters (3)
Projects/Presentation/Resources/Images.xcassets/Onboarding/rounded_max_rectangle.imageset/rounded_max_rectangle.pngis excluded by!**/*.pngProjects/Presentation/Resources/Images.xcassets/Onboarding/rounded_max_rectangle.imageset/rounded_max_rectangle@2x.pngis excluded by!**/*.pngProjects/Presentation/Resources/Images.xcassets/Onboarding/rounded_max_rectangle.imageset/rounded_max_rectangle@3x.pngis excluded by!**/*.png
📒 Files selected for processing (4)
Projects/Presentation/Resources/Images.xcassets/Onboarding/rounded_max_rectangle.imageset/Contents.jsonProjects/Presentation/Sources/Common/DesignSystem/BitnagilGraphic.swiftProjects/Presentation/Sources/Onboarding/View/Component/OnboardingResultSummaryView.swiftProjects/Presentation/Sources/Onboarding/View/OnboardingResultViewController.swift
🌁 Background
나가봐요 선택지 중 주 4회 이상 외출을 선택했을 시, Label이 밑줄을 벗어가게 되는 상황 발생
그 경우에 대한 뷰를 디자이너들이 새로 만들어줬어요 ~~
📱 Screenshot
👩💻 Contents
OnboardingResultViewController)📝 Review Note
⭐️⭐️⭐️⭐️⭐️ @taipaise 어제 말씀드린 탭바 문제는 고민하고 바로 다음 PR에 수정해서 올리겠심니다 !!!!
아직 온보딩 마지막 결과 화면에서 탭바가 살아나는 문제 해결 XXX
Summary by CodeRabbit
릴리스 노트