{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "skeleton",
  "title": "Skeleton",
  "author": "SAASTRO <https://saastro.io>",
  "description": "El hueco de lo que está cargando, con la forma que va a tener.",
  "dependencies": [],
  "registryDependencies": [],
  "files": [
    {
      "path": "registry/default/ui/skeleton.tsx",
      "content": "import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Markup puro: no lleva primitivo. Marca el hueco de lo que está cargando con\n * la forma que va a tener, no con un spinner centrado — la página no salta\n * cuando llegan los datos.\n */\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n  return (\n    <div\n      data-slot=\"skeleton\"\n      aria-hidden\n      className={cn(\"animate-pulse rounded-md bg-muted\", className)}\n      {...props}\n    />\n  );\n}\n\nexport { Skeleton };\n",
      "type": "registry:ui",
      "target": "@ui/skeleton.tsx"
    }
  ],
  "meta": {
    "group": "Display",
    "iframeHeight": "240px"
  },
  "docs": "Markup puro: no lleva primitivo externo. Se instala y se edita como cualquier otro fichero copy-in; en .astro se usa tal cual.",
  "categories": [
    "ui",
    "display"
  ],
  "type": "registry:ui"
}