{
  "name": "toggle",
  "title": "Toggle",
  "description": "Kura Toggle component source.",
  "type": "ui",
  "add": "when-added",
  "files": [
    {
      "type": "ui",
      "role": "file",
      "content": "import Root from './toggle.svelte';\nexport {\n  toggleVariants,\n  type ToggleSize,\n  type ToggleVariant,\n  type ToggleVariants\n} from './toggle.svelte';\n\nexport {\n  Root,\n  //\n  Root as Toggle\n};\n",
      "path": "toggle/index.ts",
      "_imports_": [
        {
          "import": "./toggle.svelte",
          "item": "toggle",
          "file": {
            "type": "ui",
            "path": "toggle/toggle.svelte"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\" module>\n  import { type VariantProps, tv } from 'tailwind-variants';\n\n  export const toggleVariants = tv({\n    base: \"hover:text-foreground aria-pressed:border-primary/60 aria-pressed:bg-primary/15 aria-pressed:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive gap-1.5 rounded-control  text-xs font-medium   transition-colors duration-200 [&_svg:not([class*='size-'])]:size-3.5 group/toggle hover:bg-muted inline-flex items-center justify-center whitespace-nowrap outline-none focus-visible:ring-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n    variants: {\n      variant: {\n        default: 'bg-transparent text-muted-foreground',\n        outline:\n          'border border-border bg-background text-muted-foreground hover:border-border hover:bg-muted'\n      },\n      size: {\n        default:\n          'h-8 min-w-8 px-5 has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4',\n        sm: 'h-7 min-w-7 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3',\n        lg: 'h-9 min-w-9 px-7 has-data-[icon=inline-end]:pr-5 has-data-[icon=inline-start]:pl-5'\n      }\n    },\n    defaultVariants: {\n      variant: 'default',\n      size: 'default'\n    }\n  });\n\n  export type ToggleVariant = VariantProps<typeof toggleVariants>['variant'];\n  export type ToggleSize = VariantProps<typeof toggleVariants>['size'];\n  export type ToggleVariants = VariantProps<typeof toggleVariants>;\n</script>\n\n<script lang=\"ts\">\n  import { Toggle as TogglePrimitive } from 'bits-ui';\n  import { cn } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    pressed = $bindable(false),\n    class: className,\n    size = 'default',\n    variant = 'default',\n    ...restProps\n  }: TogglePrimitive.RootProps & {\n    variant?: ToggleVariant;\n    size?: ToggleSize;\n  } = $props();\n</script>\n\n<TogglePrimitive.Root\n  bind:ref\n  bind:pressed\n  data-slot=\"toggle\"\n  class={cn(toggleVariants({ variant, size }), className)}\n  {...restProps}\n/>\n",
      "path": "toggle/toggle.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    }
  ],
  "registryDependencies": [
    "styles",
    "utils"
  ],
  "dependencies": [
    {
      "ecosystem": "js",
      "name": "tailwind-variants",
      "version": "^3.2.2"
    },
    {
      "ecosystem": "js",
      "name": "bits-ui",
      "version": "^2.18.1"
    }
  ],
  "devDependencies": []
}