import { Skeleton } from "@/components/ui/skeleton";
interface PageSkeletonProps {
variant?:
| "list"
| "issues-list"
| "detail"
| "dashboard"
| "approvals"
| "costs"
| "inbox"
| "org-chart";
}
export function PageSkeleton({ variant = "list" }: PageSkeletonProps) {
if (variant === "dashboard") {
return (
{Array.from({ length: 4 }).map((_, i) => (
))}
{Array.from({ length: 4 }).map((_, i) => (
))}
);
}
if (variant === "approvals") {
return (
{Array.from({ length: 3 }).map((_, i) => (
))}
);
}
if (variant === "costs") {
return (
{Array.from({ length: 6 }).map((_, i) => (
))}
);
}
if (variant === "inbox") {
return (
{Array.from({ length: 3 }).map((_, section) => (
{Array.from({ length: 3 }).map((_, row) => (
))}
))}
);
}
if (variant === "org-chart") {
return (
);
}
if (variant === "detail") {
return (
);
}
if (variant === "issues-list") {
return (
{Array.from({ length: 8 }).map((_, i) => (
))}
);
}
return (
{Array.from({ length: 7 }).map((_, i) => (
))}
);
}