UNPKG

preact-missing-hooks

Version:

A lightweight, extendable collection of missing React-like hooks for Preact — plus fresh, powerful new ones designed specifically for modern Preact apps.

3 lines (2 loc) 948 B
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("preact/hooks")):"function"==typeof define&&define.amd?define(["exports","preact/hooks"],n):n((e||self).preactMissingHooks={},e.hooks)}(this,function(e,n){var t=new Map;e.useEventBus=function(){var e=n.useCallback(function(e){var n=arguments,o=t.get(e);o&&o.forEach(function(e){return e.apply(void 0,[].slice.call(n,1))})},[]);return{emit:e,on:n.useCallback(function(e,n){var o=t.get(e);return o||(o=new Set,t.set(e,o)),o.add(n),function(){o.delete(n),0===o.size&&t.delete(e)}},[])}},e.useMutationObserver=function(e,t,o){n.useEffect(function(){var n=e.current;if(n){var r=new MutationObserver(t);return r.observe(n,o),function(){return r.disconnect()}}},[e,t,o])},e.useTransition=function(){var e=n.useState(!1),t=e[0],o=e[1];return[n.useCallback(function(e){o(!0),Promise.resolve().then(function(){e(),o(!1)})},[]),t]}}); //# sourceMappingURL=index.umd.js.map