Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f14777a2a7 | |||
| 0749a0273a | |||
| 131d73f418 | |||
| e75b933c6a | |||
| a444f73c43 | |||
| 65f4abd0fc | |||
| f158d6baa0 | |||
| 9574a73e1b | |||
| e2a3d704e0 | |||
| 63728d296b | |||
| 7a82845411 | |||
| e483d9fced | |||
| 9af763013d | |||
| 4a3cb052fb | |||
| be738d81ca | |||
| db043957d0 | |||
| 209f07249d | |||
| de666f624f | |||
| e25896fb73 | |||
| 24ab002ebf |
82
src/app/call-history/page.tsx
Normal file
82
src/app/call-history/page.tsx
Normal file
@@ -0,0 +1,82 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||
import CardStack from '@/components/cardStack/CardStack';
|
||||
import { Mic, CheckCircle2, Clock } from "lucide-react";
|
||||
|
||||
export default function CallHistoryPage() {
|
||||
const callData = Array.from({ length: 15 }).map((_, i) => ({
|
||||
id: `call-${i}`,
|
||||
name: ["Sarah Jenkins", "Ahmed Al-Mansoori", "Elena Rossi", "Mark Z", "Jane Doe"][i % 5],
|
||||
timestamp: "2h ago", snippet: i % 2 === 0
|
||||
? "Interest confirmed in the premium tier, scheduling demo."
|
||||
: "Standard inquiry regarding service availability.", status: i % 3 === 0 ? "Booked" : "Lead"}));
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="background-highlight"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumSmall"
|
||||
sizing="mediumLargeSizeMediumTitles"
|
||||
background="none"
|
||||
cardStyle="gradient-radial"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="layered"
|
||||
headingFontWeight="light"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarLayoutFloatingInline
|
||||
navItems={[
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Features", id: "/#features" },
|
||||
{ name: "Live Feed", id: "/#live-feed" },
|
||||
{ name: "Call History", id: "/call-history" },
|
||||
]}
|
||||
brandName="ReceptionistAI"
|
||||
button={{ text: "Get Started", href: "/contact" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="call-history-list" data-section="call-history-list" className="pt-32 pb-20">
|
||||
<CardStack
|
||||
title="Call Interaction History"
|
||||
description="Review your latest prospect conversations and audio analysis."
|
||||
textboxLayout="split"
|
||||
animationType="blur-reveal"
|
||||
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">{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.1}s` }}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</CardStack>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
@@ -33,6 +33,8 @@ export default function LandingPage() {
|
||||
name: "Features", id: "#features"},
|
||||
{
|
||||
name: "Live Feed", id: "#live-feed"},
|
||||
{
|
||||
name: "Call History", id: "/call-history"},
|
||||
]}
|
||||
brandName="ReceptionistAI"
|
||||
/>
|
||||
@@ -134,4 +136,4 @@ export default function LandingPage() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user