import usePrevious from 'hooks/usePrevious' import { useEffect, useState } from 'react' import RangeSlider from 'react-range-slider-input' const LeverageSlider = ({ leverageMax, onChange, step, }: { leverageMax: number onChange: (x: number) => void step: number }) => { const [value, setValue] = useState([0, 1]) const prevMax = usePrevious(leverageMax) // if leverageMax changes, force rerender useEffect(() => { if (prevMax !== leverageMax) { window.dispatchEvent(new Event('resize')) } }, [leverageMax, prevMax]) const handleSliderChange = (v: number[]) => { setValue(v) onChange(v[1]) } return ( ) } export default LeverageSlider