{
  "name": "checkbox-group",
  "type": "registry:ui",
  "dependencies": [
    "cn",
    "@diceui/checkbox-group"
  ],
  "files": [
    {
      "path": "ui/checkbox-group.tsx",
      "type": "registry:ui",
      "content": "import type * as React from \"react\";\n\nimport * as CheckboxGroupPrimitive from \"@diceui/checkbox-group\";\nimport { cn } from \"cn\";\n\nimport { IconPlaceholder } from \"@/registry/icons/icon-placeholder\";\n\nfunction CheckboxGroup({\n  className,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.Root>) {\n  return (\n    <CheckboxGroupPrimitive.Root\n      data-slot=\"checkbox-group\"\n      className={cn(\"peer flex flex-col gap-3.5\", className)}\n      {...props}\n    />\n  );\n}\n\nfunction CheckboxGroupLabel({\n  className,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.Label>) {\n  return (\n    <CheckboxGroupPrimitive.Label\n      data-slot=\"checkbox-group-label\"\n      className={cn(\n        \"text-sm leading-none text-foreground/70 peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\nfunction CheckboxGroupList({\n  className,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.List>) {\n  return (\n    <CheckboxGroupPrimitive.List\n      data-slot=\"checkbox-group-list\"\n      className={cn(\n        \"flex gap-3 data-[orientation=horizontal]:flex-row data-[orientation=vertical]:flex-col\",\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\nfunction CheckboxGroupItem({\n  className,\n  children,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.Item>) {\n  return (\n    <label className=\"flex w-fit items-center gap-2 text-sm leading-none select-none has-data-disabled:cursor-not-allowed has-data-disabled:opacity-50 has-data-invalid:text-destructive\">\n      <CheckboxGroupPrimitive.Item\n        data-slot=\"checkbox-group-item\"\n        className={cn(\n          \"size-4 shrink-0 rounded-sm border border-primary shadow-sm focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-hidden data-invalid:border-destructive [&[data-state=checked]:not([data-invalid])]:bg-primary [&[data-state=checked]:not([data-invalid])]:text-primary-foreground [&[data-state=checked][data-invalid]]:bg-destructive [&[data-state=checked][data-invalid]]:text-primary-foreground [&[data-state=unchecked][data-invalid]]:bg-transparent\",\n          className,\n        )}\n        {...props}\n      >\n        <CheckboxGroupPrimitive.Indicator\n          className=\"flex items-center justify-center text-current\"\n          asChild\n        >\n          <IconPlaceholder\n            lucide=\"Check\"\n            tabler=\"IconCheck\"\n            hugeicons=\"Tick02Icon\"\n            phosphor=\"CheckIcon\"\n            remixicon=\"RiCheckLine\"\n            className=\"size-3.5\"\n          />\n        </CheckboxGroupPrimitive.Indicator>\n      </CheckboxGroupPrimitive.Item>\n      {children}\n    </label>\n  );\n}\n\nfunction CheckboxGroupDescription({\n  className,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.Description>) {\n  return (\n    <CheckboxGroupPrimitive.Description\n      data-slot=\"checkbox-group-description\"\n      className={cn(\n        \"text-[0.8rem] leading-none text-muted-foreground data-invalid:text-destructive\",\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\nfunction CheckboxGroupMessage({\n  className,\n  ...props\n}: React.ComponentProps<typeof CheckboxGroupPrimitive.Message>) {\n  return (\n    <CheckboxGroupPrimitive.Message\n      data-slot=\"checkbox-group-message\"\n      className={cn(\n        \"text-[0.8rem] leading-none text-muted-foreground data-invalid:text-destructive\",\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\nexport {\n  CheckboxGroup,\n  CheckboxGroupDescription,\n  CheckboxGroupItem,\n  CheckboxGroupLabel,\n  CheckboxGroupList,\n  CheckboxGroupMessage,\n};\n",
      "target": ""
    }
  ]
}