-
Notifications
You must be signed in to change notification settings - Fork 121
[MBL-19374][S] Add mark as done to To-do screen #3722
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
base: master
Are you sure you want to change the base?
Conversation
refs: MBL-19373 builds: Student affects: Student release note: none test plan: - Compare design with figma. - Check accessibility. - Validate proper grouping by dates.
# Conflicts: # Core/CoreTests/Features/Todos/Model/TodoInteractorLiveTests.swift
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Move API logic from view model to TodoInteractor - Inject router dependency into TodoListViewModel - Prevent multiple taps from firing duplicate API requests - Update todo badge counter when marking items done/undone - Add comprehensive unit tests for new behavior 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
refs: MBL-19374 builds: Student affects: Student release note: Added mark-as-done feature to new To-do screen. test plan: See ticket. Co-Authored-By: Claude <[email protected]>
Release Note:Added mark-as-done feature to new To-do screen. Affected Apps: StudentBuilds: Student
|
- Extract cancelDelayedRemove helper to properly cancel and remove timers - Fix UpdatePlannerOverrideRequest to return APIPlannerOverride instead of APINoContent - Remove debug-only .make() usage from production code in MarkPlannableItemDone - Simplify API request handling to use actual responses - Update test mocks to return proper APIPlannerOverride objects - Add MARK comments for better code organization 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
BuildsCommit: Remove unnecessary HStack and public modifiers. Add preview for swipe to remove. (f083389) |
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.
Code +1
|
|
||
| private struct SwipeToRemoveModifier<Label: View>: ViewModifier { | ||
| let backgroundColor: Color | ||
| let isSwiping: Binding<Bool>? |
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.
Why not using @Binding var isSwiping: Bool ?
| let onTap: (_ item: TodoItemViewModel, _ viewController: WeakViewController) -> Void | ||
| let onMarkAsDone: (_ item: TodoItemViewModel) -> Void | ||
| let onSwipeMarkAsDone: (_ item: TodoItemViewModel) -> Void | ||
| let isSwiping: Binding<Bool>? |
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.
Here as well. Why not use @Binding ?
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.
Tested on iPhone XS, iOS 18.3.1.
✅ QA +1 for the most of UI features mentioned.
One minor issue:
Checkbox doesn't fade in-out as we swipe cell as mentioned in Figma file.
See record below:
What's new?
There will be further changes to this screen in the epic, so E2E tests will be written when the screen takes its final form.
refs: MBL-19374
builds: Student
affects: Student
release note: Added mark-as-done feature to new To-do screen.
test plan: See ticket.
Screenshots
ScreenRecording_10-22-2025.10.MP4
ScreenRecording_10-22-2025.9.MP4
Checklist