preact
Version:
Fast 3kb React-compatible Virtual DOM library.
3 lines (2 loc) • 2.29 kB
JavaScript
var n,t,r=require("preact"),u=[],e=r.options.__r;r.options.__r=function(r){e&&e(r),n=0,(t=r.__c).__H&&(t.__H.t=x(t.__H.t))};var o=r.options.diffed;r.options.diffed=function(n){o&&o(n);var t=n.__c;if(t){var r=t.__H;r&&(r.u=(r.u.some(function(n){n.ref&&(n.ref.current=n.createHandle())}),[]),r.o=x(r.o))}};var i=r.options.unmount;function f(n){r.options.__h&&r.options.__h(t);var u=t.__H||(t.__H={i:[],t:[],o:[],u:[]});return n>=u.i.length&&u.i.push({}),u.i[n]}function c(r,u,e){var o=f(n++);return o.__c||(o.__c=t,o.v=[e?e(u):y(void 0,u),function(n){var t=r(o.v[0],n);o.v[0]!==t&&(o.v[0]=t,o.__c.setState({}))}]),o.v}function a(t,r){var u=f(n++);return m(u.s,r)?(u.s=r,u.p=t,u.v=t()):u.v}r.options.unmount=function(n){i&&i(n);var t=n.__c;if(t){var r=t.__H;r&&r.i.forEach(function(n){return n.l&&n.l()})}};var v=function(){};function s(){u.some(function(n){n.m=!1,n.__P&&(n.__H.t=x(n.__H.t))}),u=[]}if("undefined"!=typeof window){var p=r.options.requestAnimationFrame;v=function(n){(!n.m&&(n.m=!0)&&1===u.push(n)||p!==r.options.requestAnimationFrame)&&(p=r.options.requestAnimationFrame,(r.options.requestAnimationFrame||function(n){var t=function(){clearTimeout(r),cancelAnimationFrame(u),setTimeout(n)},r=setTimeout(t,100),u=requestAnimationFrame(t)})(s))}}function x(n){return n.forEach(d),n.forEach(l),[]}function d(n){n.l&&n.l()}function l(n){var t=n.v();"function"==typeof t&&(n.l=t)}function m(n,t){return!n||t.some(function(t,r){return t!==n[r]})}function y(n,t){return"function"==typeof t?t(n):t}exports.useState=function(n){return c(y,n)},exports.useReducer=c,exports.useEffect=function(r,u){var e=f(n++);m(e.s,u)&&(e.v=r,e.s=u,t.__H.t.push(e),v(t))},exports.useLayoutEffect=function(r,u){var e=f(n++);m(e.s,u)&&(e.v=r,e.s=u,t.__H.o.push(e))},exports.useRef=function(n){return a(function(){return{current:n}},[])},exports.useImperativeHandle=function(r,u,e){var o=f(n++);m(o.s,e)&&(o.s=e,t.__H.u.push({ref:r,createHandle:u}))},exports.useMemo=a,exports.useCallback=function(n,t){return a(function(){return n},t)},exports.useContext=function(r){var u=t.context[r.__c];if(!u)return r.__p;var e=f(n++);return null==e.v&&(e.v=!0,u.sub(t)),u.props.value},exports.useDebugValue=function(n,t){r.options.useDebugValue&&r.options.useDebugValue(t?t(n):n)};
//# sourceMappingURL=hooks.js.map