UNPKG

react-laze

Version:
2 lines (1 loc) 1.3 kB
"use strict";var l=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var v=Object.prototype.hasOwnProperty;var M=(t,e)=>{for(var n in e)l(t,n,{get:e[n],enumerable:!0})},j=(t,e,n,u)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of L(e))!v.call(t,r)&&r!==n&&l(t,r,{get:()=>e[r],enumerable:!(u=d(e,r))||u.enumerable});return t};var y=t=>j(l({},"__esModule",{value:!0}),t);var z={};M(z,{default:()=>m});module.exports=y(z);var o=require("react");var i=require("react");var R=require("react");var c=require("react");function a(t){let e=(0,c.useRef)();return e.current||(e.current={current:t()}),(0,c.useDebugValue)(e.current),e.current}function x(t){let{current:e}=a(t);return(0,R.useDebugValue)(e),e}function b(t){let[e,n]=(0,i.useState)(t),u=a(t);u.current!==e&&(u.current=e);let r=x(()=>({get current(){return u.current},set current(f){n(()=>f)}}));return(0,i.useDebugValue)(r),r}function m(t){let[e,n]=(0,o.useState)(!1),u=b(()=>null),{current:r}=u,f=t==null?void 0:t.refresh;(0,o.useEffect)(()=>{if(n(!1),r){let s=new IntersectionObserver(O=>{for(let T of O)f?n(T.isIntersecting):T.isIntersecting&&(n(!0),s.disconnect())});return s.observe(r),()=>{s.unobserve(r),s.disconnect()}}},[r,f]);let p={ref:u,visible:e};return(0,o.useDebugValue)(p),p}