import type { HTMLAttributes } from "react"; import { cx } from "../../utils/cx.utils"; import { PatternOverlay } from "../pattern-overlay/pattern-overlay.component"; import "./skeleton.component.css"; /** Shapes accepted by {@link Skeleton}. Defaults to `"rectangle"`. */ export type SkeletonVariant = "rectangle" | "round" | "square"; /** Props accepted by {@link Skeleton}. */ export interface SkeletonProps extends HTMLAttributes { /** Shape of the placeholder. Defaults to `"rectangle"`. */ variant?: SkeletonVariant; } /** * Loading placeholder for content that hasn't arrived yet: a 2px solid * black border filled with diagonal black strokes. Always renders at 100% * of its parent's width; use `style` (e.g. `style={{ height: 120 }}`) or a * `className` with your own rules to size it like the content it mocks. * * @example * ```tsx * * * * ``` */ export function Skeleton({ className, variant = "rectangle", ...rest }: SkeletonProps) { return (
); }