{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "separator",
  "title": "Separator",
  "description": "Solid and dashed rules, with an optional label.",
  "dependencies": [
    "radix-ui"
  ],
  "registryDependencies": [
    "utils",
    "https://ui.cuelark.com/r/theme.json"
  ],
  "files": [
    {
      "path": "src/registry/cuelark/ui/separator.tsx",
      "content": "\"use client\";\n\nimport * as React from \"react\";\nimport { Separator as SeparatorPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\ntype SeparatorProps = React.ComponentProps<typeof SeparatorPrimitive.Root> & {\n  variant?: \"solid\" | \"dashed\";\n  /** Text in the middle of a horizontal rule, e.g. \"or\" between sign-in options. */\n  label?: React.ReactNode;\n};\n\nfunction Separator({ className, orientation = \"horizontal\", decorative = true, variant = \"solid\", label, ...props }: SeparatorProps) {\n  const line = cn(\n    \"shrink-0\",\n    orientation === \"horizontal\" ? \"h-px w-full\" : \"h-full w-px self-stretch\",\n    variant === \"solid\" ? \"bg-border\" : orientation === \"horizontal\" ? \"cue-dash-b\" : \"bg-[linear-gradient(to_bottom,var(--border)_55%,transparent_0)] bg-[length:1px_7px] bg-repeat-y\",\n  );\n\n  if (label != null && orientation === \"horizontal\") {\n    return (\n      <div data-slot=\"separator-labeled\" className={cn(\"flex w-full items-center gap-3\", className)}>\n        <SeparatorPrimitive.Root decorative={decorative} className={cn(line, \"flex-1 w-auto\")} {...props} />\n        <span className=\"cue-label shrink-0\">{label}</span>\n        <SeparatorPrimitive.Root decorative className={cn(line, \"flex-1 w-auto\")} />\n      </div>\n    );\n  }\n\n  return <SeparatorPrimitive.Root data-slot=\"separator\" decorative={decorative} orientation={orientation} className={cn(line, className)} {...props} />;\n}\n\nexport { Separator };\nexport type { SeparatorProps };\n",
      "type": "registry:ui"
    }
  ],
  "docs": "Docs and examples: https://ui.cuelark.com/components/separator",
  "categories": [
    "display"
  ],
  "type": "registry:ui"
}