{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "glass-spinner",
  "title": "Glass Spinner",
  "description": "A ring with a fading tail, for waiting on something short.",
  "dependencies": [
    "clsx"
  ],
  "registryDependencies": [
    "@glassyui/glass-provider"
  ],
  "files": [
    {
      "path": "registry/glassyui/glass-spinner.tsx",
      "content": "import clsx from 'clsx';\nimport { forwardRef } from 'react';\nimport type { HTMLAttributes } from 'react';\n\nexport type GlassSpinnerSize = 'sm' | 'md' | 'lg';\n\nexport type GlassSpinnerProps = Omit<HTMLAttributes<HTMLSpanElement>, 'children'> & {\n  /** Read out by screen readers. Defaults to \"Loading\". */\n  label?: string;\n  size?: GlassSpinnerSize;\n};\n\n/** A ring with a fading tail, for waiting on something short. It takes its colour from the text. */\nexport const GlassSpinner = forwardRef<HTMLSpanElement, GlassSpinnerProps>(\n  ({ className, label = 'Loading', size = 'md', ...props }, forwardedRef) => (\n    <span\n      role=\"status\"\n      {...props}\n      ref={forwardedRef}\n      className={clsx('lg-spinner', className)}\n      data-size={size}\n    >\n      <span aria-hidden className=\"lg-spinner-ring\" />\n      <span className=\"lg-visually-hidden\">{label}</span>\n    </span>\n  ),\n);\n\nGlassSpinner.displayName = 'GlassSpinner';\n",
      "type": "registry:ui",
      "target": "components/glassyui/glass-spinner.tsx"
    }
  ],
  "meta": {
    "sourceModules": [
      "spinner"
    ]
  },
  "type": "registry:ui"
}