siegel
Version:
Web application development ecosystem
1 lines • 800 B
JavaScript
import e from"react";export default(t=>{let{props:{theme:n,disabled:l,step:a,valueIncrementIcon:c,valueDecrementIcon:o,disabledInput:r,onStepButtonClick:s},min:d,max:u,onStepChange:m,numberValue:i,onPickerBlur:b,onPickerFocus:_}=t,p=!1,v={className:n.value_increment_icon,children:c};l||i>=u?(v.className+=` ${n.button__disabled}`,p=!0):v.onClick=e=>{s?.(e,!0),e.defaultPrevented||m(e,!0,a)};let N=!1,f={className:n.value_decrement_icon,children:o};return l||i<=d?(f.className+=` ${n.button__disabled}`,N=!0):f.onClick=e=>{s?.(e,!1),e.defaultPrevented||m(e,!1,-a)},f.tabIndex=v.tabIndex=-1,r||(f.onBlur=v.onBlur=b,f.onFocus=v.onFocus=_),{stepperElement:e.createElement("div",{className:n.controls},e.createElement("button",{...v}),e.createElement("button",{...f})),isDisabledUp:p,isDisabledDown:N}});