{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "extends": "none",
  "name": "slider",
  "title": "slider",
  "description": "slider",
  "dependencies": [
    "react-aria-components",
    "cn"
  ],
  "registryDependencies": [
    "https://intentui.com/r/primitive"
  ],
  "files": [
    {
      "path": "src/components/ui/slider.tsx",
      "content": "\"use client\"\n\nimport type { ComponentProps } from \"react\"\nimport {\n  Slider as PrimitiveSlider,\n  SliderFill as PrimitiveSliderFill,\n  type SliderFillProps,\n  SliderOutput as PrimitiveSliderOutput,\n  SliderThumb as PrimitiveSliderThumb,\n  SliderTrack as PrimitiveSliderTrack,\n} from \"react-aria-components/Slider\"\nimport { cn } from \"cn\"\nimport { cx } from \"@/lib/primitive\"\n\nexport function SliderGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n  return (\n    <div\n      className={cn(\"flex items-center gap-x-3 *:data-[slot=icon]:size-5\", className)}\n      {...props}\n    />\n  )\n}\n\nexport function Slider({ className, ...props }: ComponentProps<typeof PrimitiveSlider>) {\n  return (\n    <PrimitiveSlider\n      data-slot=\"control\"\n      className={cx(\n        \"group relative flex touch-none select-none flex-col disabled:opacity-50\",\n        \"orientation-horizontal:w-full orientation-horizontal:min-w-fit orientation-horizontal:gap-y-2\",\n        \"orientation-vertical:h-full orientation-vertical:min-h-fit orientation-vertical:w-1.5 orientation-vertical:items-center orientation-vertical:gap-y-2\",\n        className\n      )}\n      {...props}\n    />\n  )\n}\n\nexport function SliderOutput({\n  className,\n  ...props\n}: ComponentProps<typeof PrimitiveSliderOutput>) {\n  return (\n    <PrimitiveSliderOutput\n      className={cx(\"font-medium text-base/6 sm:text-sm/6\", className)}\n      {...props}\n    />\n  )\n}\n\nexport function SliderThumb({ className, ...props }: ComponentProps<typeof PrimitiveSliderThumb>) {\n  return (\n    <PrimitiveSliderThumb\n      className={cx(\n        \"top-[50%] left-[50%] size-5 rounded-full bg-white outline-hidden ring ring-muted-foreground/30 transition-[width,height] dark:ring-white\",\n        className\n      )}\n      {...props}\n    />\n  )\n}\n\nexport function SliderTrack({\n  className,\n  children,\n  ...props\n}: ComponentProps<typeof PrimitiveSliderTrack>) {\n  return (\n    <PrimitiveSliderTrack\n      className={cx(\n        \"bg-(--slider-track-bg,var(--color-secondary))\",\n        \"group/track relative cursor-default rounded-full\",\n        \"grow group-orientation-horizontal:h-1.5 group-orientation-horizontal:w-full group-orientation-vertical:w-1.5 group-orientation-vertical:flex-1\",\n        \"disabled:cursor-default disabled:opacity-60\",\n        className\n      )}\n      {...props}\n    >\n      {(values) => (\n        <>\n          {typeof children === \"function\"\n            ? children(values)\n            : (children ?? (\n                <>\n                  <SliderFill />\n                  <SliderThumb />\n                </>\n              ))}\n        </>\n      )}\n    </PrimitiveSliderTrack>\n  )\n}\n\nexport function SliderFill({ className, ...props }: SliderFillProps) {\n  return (\n    <PrimitiveSliderFill\n      className={cx(\"pointer-events-none rounded-full bg-primary disabled:opacity-60\", className)}\n      {...props}\n    />\n  )\n}\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}