bolt.diy / packages /bolt /app /routes /api.analytics.ts
Roberto Vidal
feat(session): encrypt data and fix renewal (#38)
44226db unverified
raw
history blame
761 Bytes
import { json, type ActionFunctionArgs } from '@remix-run/cloudflare';
import { handleWithAuth } from '~/lib/.server/login';
import { getSessionData } from '~/lib/.server/sessions';
import { sendEventInternal, type AnalyticsEvent } from '~/lib/analytics';
async function analyticsAction({ request, context }: ActionFunctionArgs) {
const event: AnalyticsEvent = await request.json();
const sessionData = await getSessionData(request, context.cloudflare.env);
const { success, error } = await sendEventInternal(sessionData, event);
if (!success) {
return json({ error }, { status: 500 });
}
return json({ success }, { status: 200 });
}
export async function action(args: ActionFunctionArgs) {
return handleWithAuth(args, analyticsAction);
}