'use client'; /* EngagementProfileSkeleton — phase 08 (D-23). * Purpose: Full-page loading skeleton matching the final layout — * header skeleton + 4 metric-card skeletons (2×2) + breakdown card skeleton + * 2 list-section skeletons. Period chips render OUTSIDE this skeleton (they * drive the fetch). */ import { Card, CardContent } from '@/components/ui/card'; import { Skeleton } from '@/components/ui/skeleton'; export function EngagementProfileSkeleton() { return (
{/* Identity header skeleton */}
{/* 2×2 metric grid skeleton */}
{[0, 1, 2, 3].map((i) => ( ))}
{/* Breakdown card skeleton */}
{/* Two list skeletons */} {[0, 1].map((i) => ( {[0, 1, 2].map((j) => (
))}
))}
); }