import { db } from "@/lib/db" import { activity_log } from "@/lib/db/schema" export type ActivityType = | "rent_paid" | "rent_overdue" | "tenant_added" | "tenant_removed" | "maintenance_opened" | "maintenance_resolved" | "lease_created" | "lease_expiring" | "expense_added" | "property_added" | "inspection_completed" | "vendor_added" | "ai_action" export async function logActivity({ userId, type, title, description, entityType, entityId, metadata, }: { userId: string type: ActivityType title: string description?: string entityType?: string entityId?: string metadata?: Record }) { try { await db.insert(activity_log).values({ user_id: userId, type, title, description: description ?? null, entity_type: entityType ?? null, entity_id: entityId ?? null, metadata: metadata ?? {}, }) } catch { // Activity logging should never break the main flow } }