{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "extends": "none",
  "name": "slider",
  "title": "slider",
  "description": "slider",
  "dependencies": [
    "react-aria-components",
    "tailwind-merge"
  ],
  "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 { twMerge } from 'tailwind-merge'\nimport { cx } from '@/lib/primitive'\n\nexport function SliderGroup({ className, ...props }: React.ComponentProps<'div'>) {\n  return (\n    <div\n      className={twMerge('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-fg/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"
}