jb-core
Version:
jb design system core modules
2 lines • 494 B
JavaScript
import{useCallback as e,useEffect as t,useRef as n}from"react";function r(n,u,c,l=!1){let o=e(e=>{n.current&&"function"==typeof c&&c(e)},[n,c]);t(()=>{let e=n.current;return e&&e.addEventListener(u,o,{passive:l,capture:!1}),function(){e&&e.removeEventListener(u,o,{passive:l,capture:!1})}},[n,u,c,l])}let u=e=>{let t=n(null);return null===t.current&&(t.current=e()),t},c=(e,t)=>u(()=>new e(...t)).current;export{r as useEvent,c as useInstance,u as useLazyRef};
//# sourceMappingURL=index.js.map