feat: post-call workflow — disposition, appointment booking, follow-up creation

ActiveCallCard now handles the full post-call flow:
- Call ends → Disposition form appears (6 options + notes)
- "Appointment Booked" → Opens appointment booking slideout
- "Follow-up Needed" → Auto-creates follow-up in platform
- Other dispositions → Logs call and returns to worklist
- "Book Appt" button available during active call too
- Creates Call record in platform on disposition submit
- Removed auto-reset to idle (ActiveCallCard manages lifecycle)
- "Back to Worklist" resets SIP state via Jotai atoms

Also fixes:
- All 7 GraphQL queries corrected (LINKS subfields, field renames)
- Campaign edit button moved to bottom-right
- Avg Response Time uses Math.abs for seed data edge case

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-19 17:24:46 +05:30
parent f341433c8f
commit edd2aa689d
5 changed files with 171 additions and 51 deletions

View File

@@ -115,7 +115,7 @@ export const CampaignsPage = () => {
leads={leadsByCampaign.get(campaign.id) ?? []}
/>
</Link>
<div className="absolute top-4 right-14">
<div className="absolute bottom-4 right-4 z-10">
<Button
size="sm"
color="secondary"