{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "icon-tile",
  "title": "Icon Tile",
  "description": "The colored rounded-square icons used in System Settings and other lists.",
  "dependencies": [
    "class-variance-authority"
  ],
  "registryDependencies": [
    "@cupertinoui/macos-theme"
  ],
  "files": [
    {
      "path": "registry/macos/ui/icon-tile.tsx",
      "content": "import * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\n// The small rounded-square icon used in System Settings and similar lists:\n// a white symbol on a colored tile.\nconst iconTileVariants = cva(\n  \"inline-flex shrink-0 items-center justify-center bg-linear-to-b from-white/12 to-black/4 text-white shadow-[inset_0_0_0_0.5px_rgb(0_0_0/0.08)] [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n  {\n    variants: {\n      color: {\n        blue: \"bg-mac-blue\",\n        gray: \"bg-mac-gray\",\n        graphite: \"bg-[#5d5d62]\",\n        green: \"bg-mac-green\",\n        indigo: \"bg-mac-indigo\",\n        orange: \"bg-mac-orange\",\n        pink: \"bg-mac-pink\",\n        purple: \"bg-mac-purple\",\n        red: \"bg-mac-red\",\n        teal: \"bg-mac-teal\",\n        yellow: \"bg-mac-yellow\",\n        black: \"bg-[#1c1c1e] shadow-[inset_0_0_0_0.5px_rgb(255_255_255/0.2)]\",\n        white: \"bg-white text-mac-label shadow-[inset_0_0_0_0.5px_rgb(0_0_0/0.15)]\",\n      },\n      size: {\n        sm: \"size-4 rounded-[4px] [&_svg:not([class*='size-'])]:size-2.5\",\n        default: \"size-5 rounded-[5px] [&_svg:not([class*='size-'])]:size-3.5\",\n        lg: \"size-8 rounded-[8px] [&_svg:not([class*='size-'])]:size-5\",\n      },\n    },\n    defaultVariants: {\n      color: \"blue\",\n      size: \"default\",\n    },\n  }\n)\n\nfunction IconTile({\n  className,\n  color,\n  size,\n  ...props\n}: Omit<React.ComponentProps<\"span\">, \"color\"> &\n  VariantProps<typeof iconTileVariants>) {\n  return (\n    <span\n      data-slot=\"icon-tile\"\n      className={cn(iconTileVariants({ color, size }), className)}\n      {...props}\n    />\n  )\n}\n\nexport { IconTile, iconTileVariants }\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}