import * as React from "react"; import { Slider as SliderPrimitive } from "@base-ui/react/slider"; import { cn } from "@/lib/utils"; /** * Slider — WealthX Design System * * Built on @base-ui/react/slider. Uses thumbAlignment="edge" so the thumb * stays fully within the control at min/max without overflowing. */ interface SliderProps { value?: number; defaultValue?: number; min?: number; max?: number; step?: number; disabled?: boolean; onValueChange?: (value: number) => void; className?: string; } const Slider = React.forwardRef( ( { className, value, defaultValue = 0, min = 0, max = 100, step = 1, disabled = false, onValueChange, }, ref, ) => { return ( onValueChange?.(val as number)} data-slot="slider" className={cn( "relative w-full touch-none select-none", disabled && "opacity-50", className, )} > ); }, ); Slider.displayName = "Slider"; export { Slider }; export type { SliderProps };