@@ -19,7 +19,9 @@ export interface StepHandlerProps {
1919  upNode ?: React . ReactNode ; 
2020  downNode ?: React . ReactNode ; 
2121  upDisabled ?: boolean ; 
22+   upHidden ?: boolean ; 
2223  downDisabled ?: boolean ; 
24+   downHidden ?: boolean ; 
2325  onStep : ( up : boolean ,  emitter : 'handler'  |  'keyboard'  |  'wheel' )  =>  void ; 
2426} 
2527
@@ -29,6 +31,8 @@ export default function StepHandler({
2931  downNode, 
3032  upDisabled, 
3133  downDisabled, 
34+   upHidden, 
35+   downHidden, 
3236  onStep, 
3337} : StepHandlerProps )  { 
3438  // ======================== Step ======================== 
@@ -98,28 +102,33 @@ export default function StepHandler({
98102
99103  return  ( 
100104    < div  className = { clsx ( `${ handlerClassName }  ,  classNames ?. actions ) }  style = { styles ?. actions } > 
101-       < span 
102-         { ...sharedHandlerProps } 
103-         onMouseDown = { ( e )  =>  { 
104-           onStepMouseDown ( e ,  true ) ; 
105-         } } 
106-         aria-label = "Increase Value" 
107-         aria-disabled = { upDisabled } 
108-         className = { upClassName } 
109-       > 
110-         { upNode  ||  < span  unselectable = "on"  className = { `${ prefixCls }  }  /> } 
111-       </ span > 
112-       < span 
113-         { ...sharedHandlerProps } 
114-         onMouseDown = { ( e )  =>  { 
115-           onStepMouseDown ( e ,  false ) ; 
116-         } } 
117-         aria-label = "Decrease Value" 
118-         aria-disabled = { downDisabled } 
119-         className = { downClassName } 
120-       > 
121-         { downNode  ||  < span  unselectable = "on"  className = { `${ prefixCls }  }  /> } 
122-       </ span > 
105+       { ! upHidden  &&  ( 
106+         < span 
107+           { ...sharedHandlerProps } 
108+           onMouseDown = { ( e )  =>  { 
109+             onStepMouseDown ( e ,  true ) ; 
110+           } } 
111+           aria-label = "Increase Value" 
112+           aria-disabled = { upDisabled } 
113+           className = { upClassName } 
114+         > 
115+           { upNode  ||  < span  unselectable = "on"  className = { `${ prefixCls }  }  /> } 
116+         </ span > 
117+       ) } 
118+ 
119+       { ! downHidden  &&  ( 
120+         < span 
121+           { ...sharedHandlerProps } 
122+           onMouseDown = { ( e )  =>  { 
123+             onStepMouseDown ( e ,  false ) ; 
124+           } } 
125+           aria-label = "Decrease Value" 
126+           aria-disabled = { downDisabled } 
127+           className = { downClassName } 
128+         > 
129+           { downNode  ||  < span  unselectable = "on"  className = { `${ prefixCls }  }  /> } 
130+         </ span > 
131+       ) } 
123132    </ div > 
124133  ) ; 
125134} 
0 commit comments