feat: engagement page, engagement badge on client detail, stats API integration
- New Engagement page with score cards, distribution summary, sort/filter controls - Score breakdown bars (recency, interactions, emails, events, notes) - Engagement badge widget on ClientDetailPage with click-to-expand details - Added Engagement to sidebar navigation with Zap icon - API client methods for engagement scoring and stats overview
This commit is contained in:
@@ -18,6 +18,7 @@ import EmailComposeModal from '@/components/EmailComposeModal';
|
||||
import ClientNotes from '@/components/ClientNotes';
|
||||
import LogInteractionModal from '@/components/LogInteractionModal';
|
||||
import MeetingPrepModal from '@/components/MeetingPrepModal';
|
||||
import EngagementBadge from '@/components/EngagementBadge';
|
||||
import type { Interaction } from '@/types';
|
||||
|
||||
export default function ClientDetailPage() {
|
||||
@@ -91,9 +92,12 @@ export default function ClientDetailPage() {
|
||||
{getInitials(client.firstName, client.lastName)}
|
||||
</div>
|
||||
<div className="flex-1 min-w-0">
|
||||
<h1 className="text-2xl font-bold text-slate-900 dark:text-slate-100">
|
||||
{client.firstName} {client.lastName}
|
||||
</h1>
|
||||
<div className="flex items-center gap-3">
|
||||
<h1 className="text-2xl font-bold text-slate-900 dark:text-slate-100">
|
||||
{client.firstName} {client.lastName}
|
||||
</h1>
|
||||
<EngagementBadge clientId={client.id} />
|
||||
</div>
|
||||
{client.company && (
|
||||
<p className="text-slate-500 dark:text-slate-400">
|
||||
{client.role ? `${client.role} at ` : ''}{client.company}
|
||||
|
||||
Reference in New Issue
Block a user