import { ArrowRight, ChevronLeft, ChevronRight, ArrowUpRight } from "lucide-react"; import { useState, useRef, useEffect } from "react"; import svgPaths from "../imports/svg-ec87ex3oms"; import { PrimaryCTAButton } from "./PrimaryCTAButton"; import { navigateTo } from "./Router"; import { sharedWebinarsData, type WebinarData } from "../data/webinarsData"; // WebinarCard Component with unified data structure and navigation interface WebinarCardProps { webinar: WebinarData; } function WebinarCard({ webinar }: WebinarCardProps) { const handleCardClick = () => { // All webinar cards now navigate to the same route for consistency navigateTo(`/webinar/${webinar.slug}`); }; const handleKeyDown = (event: React.KeyboardEvent) => { if (event.key === 'Enter' || event.key === ' ') { event.preventDefault(); handleCardClick(); } }; // Format date for display const formatDate = (dateString: string) => { return new Date(dateString).toLocaleDateString('en-US', { month: 'long', day: 'numeric', year: 'numeric' }); }; // Get status badge styling const getStatusBadge = () => { switch (webinar.status) { case 'live': return ( LIVE ); case 'upcoming': return ( UPCOMING ); case 'recorded': return ( RECORDED ); default: return null; } }; // Get action text based on status const getActionText = () => { switch (webinar.status) { case 'live': return 'Join Now'; case 'upcoming': return 'Register'; case 'recorded': return 'Watch Recording'; default: return 'Learn More'; } }; return (
{webinar.presenter}
{formatDate(webinar.date)} at {webinar.time} {webinar.timezone}
{webinar.duration}
{webinar.attendees}
Join live sessions led by leadership experts designed for professionals looking to elevate strategic thinking, decision-making, and people leadership.
{/* Navigation Controls */}