You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { cn } from '@/lib/utils';
  2. function Skeleton({
  3. className,
  4. ...props
  5. }: React.HTMLAttributes<HTMLDivElement>) {
  6. return (
  7. <div
  8. className={cn('animate-pulse rounded-md bg-muted', className)}
  9. {...props}
  10. />
  11. );
  12. }
  13. function ParagraphSkeleton() {
  14. return (
  15. <div className="flex items-center space-x-4">
  16. <Skeleton className="h-12 w-12 rounded-full" />
  17. <div className="space-y-2">
  18. <Skeleton className="h-4 w-[250px]" />
  19. <Skeleton className="h-4 w-[200px]" />
  20. </div>
  21. </div>
  22. );
  23. }
  24. function CardSkeleton() {
  25. return (
  26. <div className="flex flex-col space-y-3">
  27. <Skeleton className="h-[125px] w-[250px] rounded-xl" />
  28. <div className="space-y-2">
  29. <Skeleton className="h-4 w-[250px]" />
  30. <Skeleton className="h-4 w-[200px]" />
  31. </div>
  32. </div>
  33. );
  34. }
  35. export { CardSkeleton, ParagraphSkeleton, Skeleton };