'use client' import React, { forwardRef, InputHTMLAttributes } from 'react' import { cn } from '@/utils/helpers' export interface SliderProps extends Omit, 'type'> { label?: string min: number max: number step?: number value: number onValueChange: (value: number) => void showValue?: boolean valueFormat?: (value: number) => string } export const Slider = forwardRef( ({ className, label, min, max, step = 1, value, onValueChange, showValue = false, valueFormat, ...props }, ref) => { const sliderId = label?.toLowerCase().replace(/\s+/g, '-') return (
{label && (
{showValue && ( {valueFormat ? valueFormat(value) : value} )}
)} onValueChange(Number(e.target.value))} className={cn('clay-slider', className)} {...props} />
) ) ) Slider.displayName = 'Slider'