From 9fdb64fdf5e2a55f61e8faffc7280cfa8002cb90 Mon Sep 17 00:00:00 2001 From: Robel Tekle Date: Wed, 30 Aug 2023 10:25:30 +0200 Subject: [PATCH] refactor(Slider): rename var & refactor Slider handlers --- packages/Slider/src/Range.tsx | 12 ++++++------ packages/Slider/src/index.tsx | 29 +++++++++++++---------------- 2 files changed, 19 insertions(+), 22 deletions(-) diff --git a/packages/Slider/src/Range.tsx b/packages/Slider/src/Range.tsx index 1e62fa1f1a..5581fb1ad7 100644 --- a/packages/Slider/src/Range.tsx +++ b/packages/Slider/src/Range.tsx @@ -37,9 +37,9 @@ const ensureMin = ({ step: number min: number }) => { - let cleanValue = Math.min(value, toCompare - 1 * step) - cleanValue = Math.max(cleanValue, min) - return round(cleanValue, step) + let ensuredValue = Math.min(value, toCompare - 1 * step) + ensuredValue = Math.max(ensuredValue, min) + return round(ensuredValue, step) } /** @@ -56,9 +56,9 @@ const ensureMax = ({ step: number max: number }) => { - let cleanValue = Math.max(value, toCompare + 1 * step) - cleanValue = Math.min(cleanValue, max) - return round(cleanValue, step) + let ensuredValue = Math.max(value, toCompare + 1 * step) + ensuredValue = Math.min(ensuredValue, max) + return round(ensuredValue, step) } /** diff --git a/packages/Slider/src/index.tsx b/packages/Slider/src/index.tsx index b55a955bdf..54eff2183c 100644 --- a/packages/Slider/src/index.tsx +++ b/packages/Slider/src/index.tsx @@ -70,7 +70,7 @@ export const SliderComponent = forwardRef<'div', SliderProps>( } // Handle enter key - const handleKeyDown = (e: React.KeyboardEvent) => { + const handleSliderKeyDown = (e: React.KeyboardEvent) => { e.preventDefault() let value = localValue @@ -93,22 +93,19 @@ export const SliderComponent = forwardRef<'div', SliderProps>( setInputValue(value) } - const handleInput = (e: React.KeyboardEvent) => { - if (e.key === 'Enter') { - const value = ensureMinMax(inputValue, min, max, step) - setInputValue(value) - setLocalValue(value) - onChange(value) - } - } - - const handleBlur = () => { + const handleInput = () => { const value = ensureMinMax(inputValue, min, max, step) setInputValue(value) setLocalValue(value) onChange(value) } + const handleInputKeyDown = (e: React.KeyboardEvent) => { + if (e.key === 'Enter') { + handleInput() + } + } + const getPercent = useCallback( (value: number) => Math.round(((value - min) / (max - min)) * 100), [min, max] @@ -150,9 +147,9 @@ export const SliderComponent = forwardRef<'div', SliderProps>( disabled={disabled} max={max} min={min} - onBlur={handleBlur} + onBlur={handleInput} onChange={handleInputChange} - onKeyDown={handleInput} + onKeyDown={handleInputKeyDown} size="sm" type="number" value={inputValue.toString()} @@ -176,7 +173,7 @@ export const SliderComponent = forwardRef<'div', SliderProps>( _setLocalValue(value) setInputValue(value) }} - onKeyDown={handleKeyDown} + onKeyDown={handleSliderKeyDown} onMouseDown={() => { tooltip && tooltipVisible === false && setTooltipVisible(true) }} @@ -216,9 +213,9 @@ export const SliderComponent = forwardRef<'div', SliderProps>( disabled={disabled} max={max} min={min} - onBlur={handleBlur} + onBlur={handleInput} onChange={handleInputChange} - onKeyDown={handleInput} + onKeyDown={handleInputKeyDown} size="sm" type="number" value={inputValue.toString()}