Add full-screen iOS parity screens and navigation

- Add CompleteTaskScreen for full-screen task completion (matches iOS CompleteTaskView)
- Add ManageUsersScreen for full-screen user management (matches iOS ManageUsersView)
- Add PhotoViewerScreen with swipeable gallery and pinch-to-zoom
- Add UpgradeScreen for full-screen subscription flow (matches iOS UpgradeFeatureView)
- Add navigation routes for new screens (CompleteTaskRoute, ManageUsersRoute, PhotoViewerRoute, UpgradeRoute)
- Wire navigation callbacks into AllTasksScreen, ResidenceDetailScreen, ProfileScreen
- Add overdue count with red color to Summary Card
- Add pulsing animation to residence cards when overdue
- Add property type, isPrimary star, and street address to Residence Card
- Add Edit Profile, Privacy Policy, and App Version to ProfileScreen
- Add string resources for new UI elements and localization

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Trey t
2025-12-14 17:02:08 -06:00
parent b150c20e4b
commit e44bcdd988
14 changed files with 2254 additions and 21 deletions

View File

@@ -121,3 +121,31 @@ object NotificationPreferencesRoute
// Onboarding Routes
@Serializable
object OnboardingRoute
// Task Completion Route
@Serializable
data class CompleteTaskRoute(
val taskId: Int,
val taskTitle: String,
val residenceName: String
)
// Manage Users Route
@Serializable
data class ManageUsersRoute(
val residenceId: Int,
val residenceName: String,
val isPrimaryOwner: Boolean,
val residenceOwnerId: Int
)
// Photo Viewer Route
@Serializable
data class PhotoViewerRoute(
val imageUrls: String, // JSON encoded list
val initialIndex: Int = 0
)
// Upgrade/Subscription Route
@Serializable
object UpgradeRoute