monday-ui-react-core
Version:
Official monday.com UI resources for application development in React.js
3 lines (2 loc) • 673 B
JavaScript
import{slicedToArray as t}from"../../../_virtual/_rollupPluginBabelHelpers.js";import{useState as i,useCallback as n}from"react";function r(r){var e=r.initialStep,o=void 0===e?0:e,a=r.stepCount,l=r.onStepChange,p=r.onFinish,u=a-1,s=i(0>o||o>u?0:o),c=t(s,2),f=c[0],d=c[1],S=i(),v=t(S,2),m=v[0],b=v[1],g=0===f,h=f===u,k=u>=f,w=f>0,x=n((function(t){if(t>=0&&a>t){var i=f;d(t),b(t>i?"forward":"backward"),null==l||l(t,i)}}),[a,f,l]),C=n((function(){k&&(f!==u?x(f+1):null==p||p())}),[k,f,u,x,p]),F=n((function(){w&&x(f-1)}),[w,f,x]);return{activeStep:f,direction:m,next:C,back:F,goToStep:x,isFirstStep:g,isLastStep:h}}export{r as default};
//# sourceMappingURL=useWizard.js.map