import type React from "react"
import { cn } from "../../utils/cn"
import { OrganizationIconSkeleton } from "./organization-icon-skeleton"
export interface DeviceCardSkeletonProps {
/**
* Additional CSS classes
*/
className?: string
}
/**
* DeviceCardSkeleton - Loading skeleton matching DeviceCard exact layout
*
* Matches the structure of DeviceCard:
* - Row 1: Device icon + Device name + More button
* - Row 2: OS badge + Organization icon + Organization name
* - Row 3: Status badge + Last seen
*
* Prevents layout jumps by matching exact dimensions.
*/
export function DeviceCardSkeleton({ className }: DeviceCardSkeletonProps) {
return (
{/* Row 1: Device icon + Device name + More button */}
{/* Device type icon (8x8 container) */}
{/* Device name */}
{/* More button */}
{/* Row 2: OS badge + Organization */}
{/* OS badge */}
{/* Organization icon */}
{/* Organization name */}
{/* Row 3: Status badge + Last seen */}
{/* Status badge */}
{/* Last seen */}
)
}
/**
* DeviceCardSkeletonGrid - Grid of device card skeletons
*
* Matches DevicesGrid layout with responsive columns:
* - Mobile: 1 column
* - Tablet (md): 2 columns
* - Desktop (lg): 3 columns
* - Large (xl): 4 columns
*/
export function DeviceCardSkeletonGrid({
count = 12,
className
}: {
count?: number
className?: string
}) {
return (
{Array.from({ length: count }, (_, index) => (
))}
)
}