'use client' import React from 'react' import { useLHSession } from '@components/Contexts/LHSessionContext' import { useOrg } from '@components/Contexts/OrgContext' import { getAllUserCertificates } from '@services/courses/certifications' import { getUriWithOrg } from '@services/config/config' import { Award, ExternalLink, Calendar, Hash, Building } from 'lucide-react' import Link from 'next/link' import useSWR from 'swr' import { swrFetcher } from '@services/utils/ts/requests' import { getAPIUrl } from '@services/config/config' interface UserCertificatesProps { orgslug: string } const UserCertificates: React.FC = ({ orgslug }) => { const session = useLHSession() as any const access_token = session?.data?.tokens?.access_token const org = useOrg() as any const { data: certificates, error, isLoading } = useSWR( access_token ? `${getAPIUrl()}certifications/user/all` : null, (url) => swrFetcher(url, access_token) ) if (isLoading) { return (

My Certificates

{[1, 2, 3].map((i) => (
))}
) } if (error) { return (

My Certificates

Failed to load certificates

) } // Handle the actual API response structure - certificates are returned as an array directly const certificatesData = Array.isArray(certificates) ? certificates : certificates?.data || [] if (!certificatesData || certificatesData.length === 0) { return (

My Certificates

No certificates earned yet

Complete courses to earn certificates

) } return (

My Certificates

{certificatesData.length}
{certificatesData.map((certificate: any) => { const verificationLink = getUriWithOrg(orgslug, `/certificates/${certificate.certificate_user.user_certification_uuid}/verify`) const awardedDate = new Date(certificate.certificate_user.created_at).toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }) return (

{certificate.certification.config.certification_name}

{certificate.course.name}
Awarded {awardedDate}
{certificate.certificate_user.user_certification_uuid}
{certificate.certification.config.certification_type.replace('_', ' ')}
Verify
) })}
) } export default UserCertificates