7 Commits

Author SHA1 Message Date
d07976c52f Merge version_7 into main
Merge version_7 into main
2026-04-08 08:03:11 +00:00
060c2aff61 Update src/app/call-history/page.tsx 2026-04-08 08:03:08 +00:00
19b4561027 Merge version_6 into main
Merge version_6 into main
2026-04-08 01:57:48 +00:00
f14777a2a7 Update src/app/page.tsx 2026-04-08 01:57:45 +00:00
0749a0273a Update src/app/call-history/page.tsx 2026-04-08 01:57:45 +00:00
131d73f418 Merge version_5 into main
Merge version_5 into main
2026-04-08 01:54:29 +00:00
a444f73c43 Merge version_5 into main
Merge version_5 into main
2026-04-08 01:54:01 +00:00
2 changed files with 45 additions and 15 deletions

View File

@@ -3,18 +3,22 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import TimelinePhoneView from '@/components/cardStack/layouts/timelines/TimelinePhoneView'; import CardStack from '@/components/cardStack/CardStack';
import { Clock } from "lucide-react";
export default function CallHistoryPage() { export default function CallHistoryPage() {
const prospectNames = [
"Sarah Jenkins", "Ahmed Al-Mansoori", "Elena Rossi", "Mark Z", "Jane Doe",
"Alice Wong", "Robert Chen", "Sophia Martinez", "David Kim", "Linda Taylor", "Kevin Patel", "Emily Johnson", "Brian O'Connor", "Rachel Green", "Tom Hiddleston"
];
const callData = Array.from({ length: 15 }).map((_, i) => ({ const callData = Array.from({ length: 15 }).map((_, i) => ({
trigger: `Prospect #${1000 + i}`, id: `call-${i}`,
content: ( name: prospectNames[i],
<div className="p-4"> timestamp: `${i + 1}h ago`,
<p className="text-sm opacity-80 mb-2">{i % 2 === 0 ? 'Lead, High-Intent' : 'Inquiry, Pricing'}</p> snippet: i % 2 === 0
<p className="text-md font-medium">Snippet: "Hello, I'm interested in the {i % 2 === 0 ? 'premium' : 'standard'} plan..."</p> ? "Interest confirmed in the premium tier, scheduling demo."
</div> : "Standard inquiry regarding service availability and pricing.", status: i % 3 === 0 ? "Booked" : i % 3 === 1 ? "Follow-up" : "Lead"
),
imageOne: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AfrrA4gAjraum2ii37r2QQ6tll/uploaded-1775612696144-jqzjl02r.png", imageAltOne: "Audio Wave Interaction UI"
})); }));
return ( return (
@@ -45,13 +49,39 @@ export default function CallHistoryPage() {
</div> </div>
<div id="call-history-list" data-section="call-history-list" className="pt-32 pb-20"> <div id="call-history-list" data-section="call-history-list" className="pt-32 pb-20">
<TimelinePhoneView <CardStack
title="Active Call Interactions" title="Call Interaction History"
description="Real-time audio wave analysis and prospect conversation snippets." description="Review your latest prospect conversations and audio analysis."
textboxLayout="split" textboxLayout="split"
animationType="blur-reveal" animationType="blur-reveal"
items={callData} className="max-w-4xl mx-auto"
/> >
<div className="space-y-4">
{callData.map((call) => (
<div key={call.id} className="flex items-center justify-between p-6 bg-card rounded-xl border border-accent/20 hover:border-accent/50 transition-colors">
<div className="flex flex-col gap-1">
<h3 className="font-semibold flex items-center gap-2">
{call.name}
<span className="text-xs font-normal px-2 py-0.5 rounded-full bg-accent/10">{call.status}</span>
</h3>
<p className="text-sm opacity-70 italic">"{call.snippet}"</p>
<p className="text-xs opacity-50 flex items-center gap-1 mt-2"><Clock className="w-3 h-3" /> {call.timestamp}</p>
</div>
<div className="flex items-center gap-1">
<div className="w-24 h-8 flex items-end gap-0.5">
{[...Array(6)].map((_, j) => (
<div
key={j}
className="w-2 bg-primary-cta rounded-full animate-pulse"
style={{ height: `${20 + (Math.random() * 60)}%`, animationDelay: `${j * 0.15}s` }}
/>
))}
</div>
</div>
</div>
))}
</div>
</CardStack>
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>