Data Layer medium complexity mobilebackend
0
Dependencies
0
Dependents
4
Entities
0
Integrations

Description

Data access layer managing all CRUD operations for activity records and activity logs in Supabase. Implements RLS-policy-compliant queries scoped to the authenticated user and organization. Handles partial draft storage in a separate drafts table and exposes reactive streams for real-time status updates.

Feature: Activity Logging Wizard

activity-repository

Responsibilities

  • Create, read, update, and delete activity records with RLS-compliant Supabase queries
  • Persist and retrieve partial registration drafts
  • Provide reactive streams for activity status changes via Supabase real-time subscriptions
  • Map raw Supabase rows to typed Activity domain models

Interfaces

createActivity(activity)
getActivityById(activityId)
getActivitiesByUser(userId, filters)
updateActivity(activityId, updates)
deleteActivity(activityId)
saveDraft(draft)
getDraft(userId)
deleteDraft(draftId)
watchActivity(activityId)
getActivityLogs(activityId)