All files / src/app/admin/users loading.tsx

0% Statements 0/34
100% Branches 0/0
0% Functions 0/1
0% Lines 0/34

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35                                                                     
/**
 * Users Loading State
 *
 * Skeleton UI displayed while user management pages are loading.
 */

export default function UsersLoading() {
  return (
    <div className="p-6 space-y-6">
      {/* Header skeleton */}
      <div className="flex justify-between items-center">
        <div className="h-8 w-36 bg-gray-200 dark:bg-gray-700 rounded animate-pulse" />
        <div className="h-10 w-28 bg-gray-200 dark:bg-gray-700 rounded animate-pulse" />
      </div>

      {/* Search and filters skeleton */}
      <div className="flex gap-4">
        <div className="h-10 w-80 bg-gray-200 dark:bg-gray-700 rounded animate-pulse" />
        <div className="h-10 w-32 bg-gray-200 dark:bg-gray-700 rounded animate-pulse" />
      </div>

      {/* Table skeleton */}
      <div className="bg-white dark:bg-gray-800 rounded-lg shadow-sm overflow-hidden">
        <div className="h-12 bg-gray-100 dark:bg-gray-700 animate-pulse" />
        {[1, 2, 3, 4, 5, 6].map((i) => (
          <div
            key={i}
            className="h-14 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 animate-pulse"
          />
        ))}
      </div>
    </div>
  );
}