{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "checkbox",
  "files": [
    {
      "path": "src/components/ui/checkbox/checkbox.astro",
      "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = Omit<HTMLAttributes<\"input\">, \"type\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n<input\n  type=\"checkbox\"\n  role=\"checkbox\"\n  data-slot=\"checkbox\"\n  class={cn(\n    \"border-input dark:bg-input/30 checked:bg-primary dark:checked:bg-primary checked:border-primary indeterminate:bg-primary indeterminate:border-primary aria-invalid:checked:border-primary aria-invalid:indeterminate:border-primary aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 peer relative flex size-4 shrink-0 appearance-none items-center justify-center rounded-[4px] border shadow-xs transition-shadow outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 checked:[color:var(--color-primary-foreground)] indeterminate:[color:var(--color-primary-foreground)] focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3\",\n    className\n  )}\n  {...props}\n/>\n\n<style>\n  [data-slot=\"checkbox\"] {\n    color: inherit;\n  }\n\n  [data-slot=\"checkbox\"]::before {\n    content: \"\";\n    position: absolute;\n    inset: 0;\n    margin: auto;\n    width: 14px;\n    height: 14px;\n    opacity: 0;\n    background-color: currentColor;\n    background-repeat: no-repeat;\n    background-position: center;\n    background-size: 14px 14px;\n    -webkit-mask-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E\");\n    -webkit-mask-repeat: no-repeat;\n    -webkit-mask-position: center;\n    -webkit-mask-size: 14px 14px;\n    mask-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E\");\n    mask-repeat: no-repeat;\n    mask-position: center;\n    mask-size: 14px 14px;\n  }\n\n  [data-slot=\"checkbox\"]:checked,\n  [data-slot=\"checkbox\"]:indeterminate {\n    color: var(--color-primary-foreground);\n  }\n\n  [data-slot=\"checkbox\"]:checked::before {\n    opacity: 1;\n  }\n\n  [data-slot=\"checkbox\"]:indeterminate::before {\n    opacity: 1;\n    -webkit-mask-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8h9' stroke='black' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E\");\n    mask-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8h9' stroke='black' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E\");\n  }\n</style>\n",
      "type": "registry:ui"
    },
    {
      "path": "src/components/ui/checkbox/index.ts",
      "content": "export { default as Checkbox } from \"./checkbox.astro\"\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}