@@ -19,7 +19,10 @@ export enum GradientSliderTypes {
19
19
SATURATION = 'saturation'
20
20
}
21
21
22
- export type GradientSliderProps = Omit < SliderProps , 'onValueChange' > & {
22
+ export type GradientSliderProps = Omit <
23
+ SliderProps ,
24
+ 'onValueChange' | 'value' | 'minimumValue' | 'maximumValue' | 'step' | 'thumbHitSlop' | 'useGap'
25
+ > & {
23
26
/**
24
27
* The gradient color
25
28
*/
@@ -48,24 +51,17 @@ export type GradientSliderProps = Omit<SliderProps, 'onValueChange'> & {
48
51
* If true the Slider will be disabled and will appear in disabled color
49
52
*/
50
53
disabled ?: boolean ;
51
- } ;
54
+ } & Partial < Pick < SliderProps , 'value' | 'minimumValue' | 'maximumValue' | 'step' | 'thumbHitSlop' | 'useGap' > > ; // Fixes typing errors with the old slider.
52
55
53
56
type GradientSliderComponentProps = {
54
57
/**
55
58
* Context of the slider group
56
59
*/
57
60
sliderContext : SliderContextProps ;
58
- } & GradientSliderProps &
59
- typeof defaultProps ;
61
+ } & GradientSliderProps ;
60
62
61
63
type Props = GradientSliderComponentProps & ForwardRefInjectedProps ;
62
64
63
- const defaultProps = {
64
- type : GradientSliderTypes . DEFAULT ,
65
- gradientSteps : 120 ,
66
- color : Colors . $backgroundPrimaryHeavy
67
- } ;
68
-
69
65
/**
70
66
* @description : A Gradient Slider component
71
67
* @example : https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/componentScreens/SliderScreen.tsx
@@ -93,10 +89,6 @@ const GradientSlider = (props: Props) => {
93
89
setColor ( Colors . getHSL ( propsColors ) ) ;
94
90
} , [ propsColors ] ) ;
95
91
96
- const reset = ( ) => {
97
- updateColor ( initialColor ) ;
98
- } ;
99
-
100
92
const getColor = useCallback ( ( ) => {
101
93
return color || sliderContext . value ;
102
94
} , [ color , sliderContext . value ] ) ;
@@ -138,6 +130,10 @@ const GradientSlider = (props: Props) => {
138
130
} ,
139
131
[ sliderContext , onValueChange ] ) ;
140
132
133
+ const reset = useCallback ( ( ) => {
134
+ updateColor ( initialColor ) ;
135
+ } , [ initialColor , updateColor ] ) ;
136
+
141
137
const updateAlpha = useCallback ( ( a : number ) => {
142
138
const color = getColor ( ) ;
143
139
updateColor ( { ...color , a} ) ;
@@ -217,4 +213,4 @@ GradientSlider.displayName = 'GradientSlider';
217
213
GradientSlider . types = GradientSliderTypes ;
218
214
219
215
// eslint-disable-next-line max-len
220
- export default asBaseComponent < GradientSliderComponentProps , typeof GradientSlider > ( forwardRef ( asSliderGroupChild ( forwardRef ( GradientSlider ) ) ) ) ;
216
+ export default asBaseComponent < GradientSliderProps , typeof GradientSlider > ( forwardRef ( asSliderGroupChild ( forwardRef ( GradientSlider ) ) ) ) ;
0 commit comments