Activity Repository
Component Detail
Data Layer
medium complexity
Shared Component
mobile
0
Dependencies
1
Dependents
2
Entities
0
Integrations
Description
Data access layer for activity records supporting both online REST API writes and offline local SQLite reads. Shared with the simple activity logging feature. Manages optimistic writes, conflict resolution during sync, and activity query filtering by user, date range, and contact.
activity-repository
Responsibilities
- Create and update activity records via REST API
- Cache activities in local SQLite for offline access
- Queue writes when offline and flush on reconnection
- Provide filtered activity queries by user, date, and contact
- Handle conflict resolution on sync
Interfaces
createActivity(Activity activity)
updateActivity(String id, Activity activity)
deleteActivity(String id)
getById(String id)
getByUser(String userId, {DateRange? range})
getByContact(String contactId)
getByDateRange(DateRange range)
syncPendingActivities()
getPendingCount()
Relationships
Related Data Entities (2)
Data entities managed by this component