@bizhermit/react-sdk
Version:
React SDK
1 lines • 504 B
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});const react_1=require("react"),useTimer=e=>{const r=(0,react_1.useRef)(),t=(0,react_1.useCallback)((()=>{null!=r.current&&(clearInterval(r.current),r.current=null)}),[]),c=(0,react_1.useCallback)((c=>{t();const a=c?.callback??e?.callback;if(null==a)return;const l=c?.interval??e?.interval??0;r.current=setInterval((()=>{!1===a()&&t()}),l)}),[]);return(0,react_1.useEffect)((()=>()=>{t()}),[]),{start:c,stop:t}};exports.default=useTimer;