[Chore] 짤막 QA 처리#191
Conversation
Walkthrough만료된 QR 알림의 문구를 변경하고, 알림의 배경 탭으로 닫을 수 있도록 수정했으며, 알림 확인(갤러리에서 추가하기) 동작이 알림 닫힘 후 갤러리 추가 액션을 트리거하도록 흐름을 변경했습니다. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 분 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 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.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@Neki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift`:
- Line 40: The background tap currently calls isPresented.toggle() which
bypasses the onCancel() closure and direct-binding semantics; change the
.onTapGesture handler in NekiAlertModifier to invoke the same onCancel() closure
used by the cancel button (instead of toggling isPresented) so any cancel logic
and TCA action flow runs consistently; after this change ensure every consumer
of nekiAlert provides an onCancel implementation that sets isPresented = false
(or dispatches the appropriate action) so dismissal still updates state.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 0e7f76d9-c90e-4a91-b834-e9b9197fe88f
📒 Files selected for processing (3)
Neki-iOS/Features/QRCodeScanner/Sources/Presentation/Sources/Features/QRCodeScanFeature.swiftNeki-iOS/Features/QRCodeScanner/Sources/Presentation/Sources/Views/QRCodeScannerView.swiftNeki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift
There was a problem hiding this comment.
♻️ Duplicate comments (1)
Neki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift (1)
40-45:⚠️ Potential issue | 🟠 Major
onCancel이 없을 때 취소 버튼이 얼럿을 닫지 못합니다.현재 구현은
nilfallback 경로에서 배경 탭과 취소 버튼이 다시 갈립니다. Line 40-45는onCancel == nil이면 dismiss fallback을 타지만, Line 105-106은 그대로 no-op이라style: .cancelable+ 기본 인자 조합에서 배경 탭으로만 닫히고 취소 버튼은 먹지 않습니다. Line 143의 기본값 때문에 이 경로는 실제로 열려 있으니, 취소 버튼도 동일한 fallback을 타게 맞추고 dismiss 의도는toggle()보다isPresented = false로 고정하는 편이 안전합니다.🔧 제안 수정
.onTapGesture { if let onCancel = onCancel { onCancel() } else { - isPresented.toggle() + isPresented = false } } @@ private var cancelButton: some View { Button { - onCancel?() + if let onCancel = onCancel { + onCancel() + } else { + isPresented = false + } } label: {Also applies to: 104-106, 142-144
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@Neki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift` around lines 40 - 45, The cancel action currently toggles isPresented in some places and is a no-op in others when onCancel is nil; update all cancel paths (the .onTapGesture closure, the cancel button action, and any other cancel-style handlers in NekiAlertModifier) to call onCancel() when non-nil otherwise set isPresented = false (do not use toggle()), so background-tap and cancel-button behavior share the same fallback dismiss logic.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@Neki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift`:
- Around line 40-45: The cancel action currently toggles isPresented in some
places and is a no-op in others when onCancel is nil; update all cancel paths
(the .onTapGesture closure, the cancel button action, and any other cancel-style
handlers in NekiAlertModifier) to call onCancel() when non-nil otherwise set
isPresented = false (do not use toggle()), so background-tap and cancel-button
behavior share the same fallback dismiss logic.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 00366e2e-0e8d-4447-94a7-0866781ea8d7
📒 Files selected for processing (1)
Neki-iOS/Shared/DesignSystem/Sources/Modifier/NekiAlertModifier.swift
🌴 작업한 브랜치
✅ 작업한 내용
❗️PR Point
얼럿에 따라
onCancel()클로저로 얼럿을 닫을 때 상태의 변경이 같이 이루어져야 하는 것들도 있을텐데 단순히isPresented.toggle()을 해도 무방한지 모르겠습니다!📸 스크린샷
생략합니다!
📟 관련 이슈
Summary by CodeRabbit
릴리스 노트