{
  "name": "badge",
  "title": "Badge",
  "description": "Kura Badge component source.",
  "type": "ui",
  "add": "when-added",
  "files": [
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\" module>\n  import { type VariantProps, tv } from 'tailwind-variants';\n\n  export const badgeVariants = tv({\n    base: 'h-5 gap-1 rounded-control border border-transparent px-2 py-0.5 text-xs font-medium transition-all has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&>svg]:size-3! group/badge inline-flex w-fit shrink-0 items-center justify-center overflow-hidden whitespace-nowrap [&>svg]:pointer-events-none',\n    variants: {\n      variant: {\n        default: 'bg-primary/15 border-primary/45 text-foreground [a]:hover:bg-primary/25',\n        secondary: 'bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80',\n        destructive:\n          'bg-destructive/10 border-destructive/30 text-destructive [a]:hover:bg-destructive/20 dark:bg-destructive/20 dark:border-destructive/40',\n        outline: 'border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground',\n        ghost: 'hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50',\n        link: 'border-transparent bg-transparent px-0 text-link underline-offset-4 hover:text-foreground hover:underline'\n      }\n    },\n    defaultVariants: {\n      variant: 'default'\n    }\n  });\n\n  export type BadgeVariant = VariantProps<typeof badgeVariants>['variant'];\n</script>\n\n<script lang=\"ts\">\n  import type { HTMLAnchorAttributes } from 'svelte/elements';\n  import { cn, type WithElementRef } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    href,\n    class: className,\n    variant = 'default',\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAnchorAttributes> & {\n    variant?: BadgeVariant;\n  } = $props();\n</script>\n\n<svelte:element\n  this={href ? 'a' : 'span'}\n  bind:this={ref}\n  data-slot=\"badge\"\n  {href}\n  class={cn(badgeVariants({ variant }), className)}\n  {...restProps}\n>\n  {@render children?.()}\n</svelte:element>\n",
      "path": "badge/badge.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "export { default as Badge } from './badge.svelte';\nexport { badgeVariants, type BadgeVariant } from './badge.svelte';\n",
      "path": "badge/index.ts",
      "_imports_": [
        {
          "import": "./badge.svelte",
          "item": "badge",
          "file": {
            "type": "ui",
            "path": "badge/badge.svelte"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    }
  ],
  "registryDependencies": [
    "styles",
    "utils"
  ],
  "dependencies": [
    {
      "ecosystem": "js",
      "name": "tailwind-variants",
      "version": "^3.2.2"
    }
  ],
  "devDependencies": []
}