Move Easy Share (.casera file) section above Share Code section in the invite users dialog. Both platforms now have consistent UI with both buttons using the same filled button style. iOS changes: - Move share functionality into ManageUsersView - Remove share button from ResidenceDetailView toolbar - Redesign ShareCodeCard with Easy Share on top Android changes: - Update ManageUsersDialog with matching layout - Connect share package callback to existing share function 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
iOS Subviews
This folder contains all reusable SwiftUI view components, organized by feature area. Each file contains exactly one view with its own preview.
📁 Folder Structure
Subviews/
├── Common/ (Shared UI components)
├── Auth/ (Login/Register components)
├── Residence/ (Property-related components)
└── Task/ (Task-related components)
📋 Component List
Common (2 components)
- ErrorView.swift - Full-screen error display with retry button
- ErrorMessageView.swift - Inline error message with dismiss button
Auth (2 components)
- LoginHeader.swift - App logo and title for login screen
- RegisterHeader.swift - Icon and welcome text for registration
Residence (7 components)
- SummaryCard.swift - Overview card with property/task statistics
- SummaryStatView.swift - Individual stat display (icon, value, label)
- ResidenceCard.swift - Property card with address and task summary
- TaskStatChip.swift - Small chip showing task count by status
- EmptyResidencesView.swift - Empty state for no properties
- PropertyHeaderCard.swift - Detailed property header with address
- PropertyDetailItem.swift - Small property detail (beds, baths, sqft)
Task (6 components)
- TaskPill.swift - Small colored pill showing task counts
- StatusBadge.swift - Task status badge (pending, in progress, etc.)
- PriorityBadge.swift - Task priority badge (high, medium, low)
- EmptyTasksView.swift - Empty state for no tasks
- TaskCard.swift - Full task card with all details and actions
- TasksSection.swift - Complete tasks section with cancelled tasks
🎨 Preview Support
Every component includes a #Preview for easy testing in Xcode Canvas.
✅ Adding to Xcode Project
IMPORTANT: These files need to be added to the Xcode project to compile.
Steps:
- Open
iosApp.xcodeprojin Xcode - Right-click the
iosAppfolder in Project Navigator - Select "Add Files to 'iosApp'..."
- Navigate to and select the entire
Subviewsfolder - Make sure:
- ✅ "Create groups" is selected (NOT "Create folder references")
- ✅ "Add to targets: iosApp" is checked
- ❌ "Copy items if needed" is UNchecked
- Click "Add"
Verify
Build the project (⌘+B). All 17 subview files should compile successfully.
🗑️ Old Files to Delete
Delete these consolidated files from the root iosApp directory:
- ❌
AuthSubviews.swift - ❌
CommonSubviews.swift - ❌
ResidenceSubviews.swift - ❌
TaskSubviews.swift - ❌
DELETE_THESE_FILES.txt
These were temporary files and have been replaced by the individual files in this Subviews folder.
📝 Usage
All main views (LoginView, ResidencesListView, ResidenceDetailView, etc.) have already been updated to use these subviews. The components are automatically available once added to the Xcode project.
Example:
import SwiftUI
struct MyView: View {
var body: some View {
VStack {
LoginHeader() // Automatically available
ErrorMessageView(message: "Error", onDismiss: {})
}
}
}
Total Components: 17 individual view files Total Previews: 17 (one per file) Organization: Feature-based folder structure