/opt/canhelp/apps/api/src/lib
Edit: /opt/canhelp/apps/api/src/lib/plan-history.ts (1020B)
import { db } from '../db.js'
import { planHistory } from '@canhelp/db'
export type PlanHistoryEvent =
| 'activated'
| 'renewed'
| 'downgraded'
| 'referral_reward'
| 'admin_change'
| 'expired'
export async function logPlanHistory(input: {
userId: string
event: PlanHistoryEvent
planId: string
planName: string
previousPlanId?: string | null
previousPlanName?: string | null
expiresAt?: Date | null
daysAdded?: number | null
referralRewardId?: string | null
note?: string | null
}): Promise
{
await db.insert(planHistory).values({
userId: input.userId,
event: input.event,
planId: input.planId,
planName: input.planName,
previousPlanId: input.previousPlanId ?? null,
previousPlanName: input.previousPlanName ?? null,
expiresAt: input.expiresAt ?? null,
daysAdded: input.daysAdded ?? null,
referralRewardId: input.referralRewardId ?? null,
note: input.note ?? null,
}).catch((err) => console.error('[planHistory] failed to log:', err))
}