{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "spinner",
  "title": "TIS Spinner",
  "author": "TIS Experience Engineering",
  "description": "Spinner React com tamanhos e tratamento on-color públicos do DS TIS.",
  "dependencies": [
    "clsx@2.1.1",
    "tailwind-merge@3.6.0",
    "ds-tis@github:tis-experience/ds-tis#dd4c906943847cb7664a72a0c7637a378b39adcc"
  ],
  "files": [
    {
      "path": "registry/tis/spinner.tsx",
      "content": "import * as React from \"react\"\n\nimport { cn } from \"./tis-utils\"\n\ntype SpinnerSize = \"sm\" | \"md\" | \"lg\"\n\ntype SpinnerProps = React.ComponentProps<\"span\"> & {\n  onColor?: boolean\n  size?: SpinnerSize\n}\n\nfunction Spinner({\n  className,\n  onColor = false,\n  size = \"md\",\n  role = \"status\",\n  \"aria-label\": ariaLabel = \"Loading\",\n  ...props\n}: SpinnerProps) {\n  return (\n    <span\n      data-slot=\"spinner\"\n      data-size={size}\n      data-on-color={onColor || undefined}\n      role={role}\n      aria-label={ariaLabel}\n      className={cn(\n        \"ds-spinner\",\n        `ds-spinner--${size}`,\n        onColor && \"ds-spinner--on-color\",\n        className,\n      )}\n      {...props}\n    />\n  )\n}\n\nexport { Spinner, type SpinnerProps, type SpinnerSize }\n",
      "type": "registry:ui",
      "target": "@ui/spinner.tsx"
    },
    {
      "path": "registry/tis/tis-utils.ts",
      "content": "import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n  return twMerge(clsx(inputs))\n}\n",
      "type": "registry:lib",
      "target": "@ui/tis-utils.ts"
    }
  ],
  "css": {
    "@import \"ds-tis/css\"": {}
  },
  "meta": {
    "provider": "React presentation",
    "status": "beta",
    "wave": "presentation"
  },
  "docs": "Forneça aria-label contextual quando Loading não for suficiente. Mantenha @import \"ds-tis/css\" como o primeiro import do CSS global.",
  "type": "registry:ui"
}