24 lines
506 B
TypeScript
24 lines
506 B
TypeScript
import React from 'react';
|
|
import { Box } from './primitives/Box';
|
|
|
|
interface SkeletonProps {
|
|
width?: string | number;
|
|
height?: string | number;
|
|
circle?: boolean;
|
|
className?: string;
|
|
}
|
|
|
|
export function Skeleton({ width, height, circle, className = '' }: SkeletonProps) {
|
|
return (
|
|
<Box
|
|
w={width}
|
|
h={height}
|
|
rounded={circle ? 'full' : 'md'}
|
|
bg="bg-white/5"
|
|
className={`animate-pulse ${className}`}
|
|
role="status"
|
|
aria-label="Loading..."
|
|
/>
|
|
);
|
|
}
|