import { request } from '../../lib/api' import type { RActivity, RActivityList, RActivitySummary } from '../../lib/types' const NS = '/recruiting' const body = (v: unknown) => ({ body: JSON.stringify(v) }) export const activityApi = { list: (p: { candidate_id?: string; requisition_id?: string; application_id?: string; actor?: string; include_captured?: boolean }) => { const s = new URLSearchParams() if (p.candidate_id) s.set('candidate_id', p.candidate_id) if (p.requisition_id) s.set('requisition_id', p.requisition_id) if (p.application_id) s.set('application_id', p.application_id) if (p.actor) s.set('actor', p.actor) if (p.include_captured) s.set('include_captured', 'true') const qs = s.toString() return request(`${NS}/activities${qs ? `?${qs}` : ''}`) }, // No auto_captured field exists here, deliberately. Only the platform can produce a captured row. log: (v: Record) => request(`${NS}/activities`, { method: 'POST', ...body(v) }), correctNote: (id: string, note: string) => request(`${NS}/activities/${encodeURIComponent(id)}/note`, { method: 'PATCH', ...body({ body: note }) }), summary: (since?: string) => request(`${NS}/activities/summary${since ? `?since=${encodeURIComponent(since)}` : ''}`), }