"use client"; import "rc-slider/assets/index.css"; import "./range.css"; import Slider from "rc-slider"; export type RangeValue = { start: number; end: number }; export interface RangeSliderProps { min?: number; max?: number; isMultiple: boolean; value: RangeValue | number; /** * * @description - if isMultiple is true, value is RangeValue, else value is number */ onChange?: (value: RangeValue | number) => void; onChangeComplete?: (value: RangeValue | number) => void; } const RangeSlider: React.FC = ({ value, min, max, isMultiple, onChange, onChangeComplete, ...props }) => { return ( { if (isMultiple && Array.isArray(_value)) { onChange?.({ end: _value[1]!, start: _value[0]! }); } else { onChange?.(_value as number); } }} onChangeComplete={(_value: number | number[]) => { if (isMultiple && Array.isArray(_value)) { onChangeComplete?.({ end: _value[1]!, start: _value[0]! }); } else { onChangeComplete?.(_value as number); } }} {...props} /> ); }; export { RangeSlider };