virtua 0.37.0 → 0.37.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +1 -1
- package/lib/index.mjs.map +1 -1
- package/lib/react/Virtualizer.d.ts +4 -4
- package/lib/react/WindowVirtualizer.d.ts +4 -4
- package/lib/solid/Virtualizer.d.ts +4 -4
- package/lib/solid/WindowVirtualizer.d.ts +4 -4
- package/lib/solid/index.js +1 -1
- package/lib/solid/index.js.map +1 -1
- package/lib/solid/index.mjs +1 -1
- package/lib/solid/index.mjs.map +1 -1
- package/lib/svelte/VList.svelte +4 -4
- package/lib/svelte/VList.svelte.d.ts +2 -2
- package/lib/svelte/Virtualizer.svelte +8 -8
- package/lib/svelte/Virtualizer.svelte.d.ts +2 -2
- package/lib/svelte/Virtualizer.type.d.ts +4 -4
- package/lib/svelte/WindowVirtualizer.svelte +8 -8
- package/lib/svelte/WindowVirtualizer.svelte.d.ts +2 -2
- package/lib/svelte/WindowVirtualizer.type.d.ts +4 -4
- package/lib/svelte/core.d.ts +2 -2
- package/lib/svelte/core.js +1 -1
- package/lib/vue/Virtualizer.d.ts +4 -4
- package/lib/vue/WindowVirtualizer.d.ts +4 -4
- package/lib/vue/index.js +1 -1
- package/lib/vue/index.js.map +1 -1
- package/lib/vue/index.mjs +1 -1
- package/lib/vue/index.mjs.map +1 -1
- package/package.json +2 -2
package/lib/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
var e=require("react/jsx-runtime"),t=require("react"),r=require("react-dom");const n=null,{min:o,max:i,abs:s,floor:l}=Math,c=Array.isArray,d=setTimeout,u=(e,t,r)=>o(r,i(t,e)),f=e=>[...e].sort(((e,t)=>e-t)),a="function"==typeof queueMicrotask?queueMicrotask:e=>{Promise.resolve().then(e)},h=e=>{let t,r;return()=>(t||(t=!0,r=e()),r)},_=-1,v=(e,t,r)=>{const n=r?"unshift":"push";for(let r=0;r<t;r++)e[n](_);return e},p=(e,t)=>{const r=e.t[t];return r===_?e.o:r},g=(e,t,r)=>{const n=e.t[t]===_;return e.t[t]=r,e.i=o(t,e.i),n},m=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let r=e.i,n=e.u[r];for(;r<t;)n+=p(e,r),e.u[++r]=n;return e.i=t,n},w=(e,t,r=0,n=e.l-1)=>{for(;r<=n;){const o=l((r+n)/2),i=m(e,o);if(i<=t){if(i+p(e,o)>t)return o;r=o+1}else n=o-1}return u(r,0,e.l-1)},S=(e,t,r)=>{const n=t-e.l;return e.i=r?-1:o(t-1,e.i),e.l=t,n>0?(v(e.u,n),v(e.t,n,r),e.o*n):(e.u.splice(n),(r?e.t.splice(0,-n):e.t.splice(n)).reduce(((t,r)=>t-(r===_?e.o:r)),0))},x="undefined"!=typeof window,y=()=>document.documentElement,b=e=>e.ownerDocument,I=e=>e.defaultView,z=/*#__PURE__*/h((()=>!!x&&"rtl"===getComputedStyle(y()).direction)),k=/*#__PURE__*/h((()=>/iP(hone|od|ad)/.test(navigator.userAgent))),R=/*#__PURE__*/h((()=>"scrollBehavior"in y().style)),T=e=>i(e.h(),e._()),M=(e,t=40,r=4,l=0,c,d=!1)=>{let u=!!l,a=[],h=0,x=0,y=0,b=0,I=0,z=0,R=0,T=0,M=0,C=u?[0,i(l-1,0)]:n,H=[0,0],E=0;const W=((e,t,r)=>({o:r?r[1]:t,t:r&&r[0]?v(r[0].slice(0,o(e,r[0].length)),i(0,e-r[0].length)):v([],e),l:e,i:-1,u:v([],e)}))(e,t,c),J=new Set,q=()=>y-x,B=()=>q()+z+I,O=e=>((e,t,r,n)=>{if(n=o(n,e.l-1),m(e,n)<=t){const o=w(e,t+r,n);return[w(e,t,n,o),o]}{const o=w(e,t,void 0,n);return[o,w(e,t+r,o)]}})(W,e,h,H[0]),L=()=>(e=>e.l?m(e,e.l-1)+p(e,e.l-1):0)(W),$=e=>m(W,e)-z,A=e=>p(W,e),P=e=>{e&&(k()&&0!==T?z+=e:(I+=e,b++))};return{v:()=>a,p:()=>(e=>[e.t.slice(),e.o])(W),m:()=>{if(R)return H;let[e,t]=O(i(0,B()));return C&&(e=o(e,C[0]),t=i(t,C[1])),1!==T&&(e-=i(0,r)),2!==T&&(t+=i(0,r)),H=[i(e,0),o(t,W.l-1)]},S:()=>w(W,B()),I:()=>w(W,B()+h),k:e=>W.t[e]===_,R:()=>!!C&&W.t.slice(i(0,C[0]-1),o(W.l-1,C[1]+1)+1).includes(_),T:$,M:A,C:()=>W.l,H:()=>y,W:()=>0!==T,_:()=>h,J:()=>x,h:L,q:()=>b,B:()=>(R=I,I=0,[R,2===M||q()+h>=L()]),O:(e,t)=>{const r=[e,t];return J.add(r),()=>{J.delete(r)}},L:(e,t)=>{let r,o,l=0;switch(e){case 1:{const e=R;R=0;const r=t-y,i=s(r);e&&i<s(e)+1||0!==M||(T=r<0?2:1),u&&(C=n,u=!1),y=t,l=4;const c=q();c>=-h&&c<=L()&&(l+=1,o=i>h);break}case 2:l=8,0!==T&&(r=!0,l+=1),T=0,M=0,C=n;break;case 3:{const e=t.filter((([e,t])=>W.t[e]!==t));if(!e.length)break;P(e.reduce(((e,[t,r])=>((2===M||(C?t<C[0]:$(t)+(0===T&&0===M?A(t):0)<q()))&&(e+=r-A(t)),e)),0));for(const[t,r]of e){const e=A(t),n=g(W,t,r);d&&(E+=n?r:r-e)}d&&h&&E>h&&(P(((e,t)=>{let r=0;const n=e.t.filter(((e,n)=>{const o=e!==_;return o&&n<t&&r++,o})),o=e.o;return e.i=-1,((e.o=(e=>{const t=f(e),r=e.length/2|0;return t.length%2==0?(t[r-1]+t[r])/2:t[r]})(n))-o)*i(t-r,0)})(W,w(W,B()))),d=!1),l=3,o=!0;break}case 4:h!==t&&(h=t,l=3);break;case 5:t[1]?(P(S(W,t[0],!0)),M=2,l=1):S(W,t[0]);break;case 6:x=t;break;case 7:M=1;break;case 8:C=O(t),l=1}l&&(a=[],r&&z&&(I+=z,z=0,b++),J.forEach((([e,t])=>{l&e&&t(o)})))}}},C=x?t.useLayoutEffect:t.useEffect,H=(e,t)=>t&&z()?-e:e,E=(e,t,r,o,i,s)=>{const l=Date.now;let c=0,u=!1,f=!1,a=!1,h=!1;const _=(()=>{let t;const r=()=>{t!=n&&clearTimeout(t)},o=()=>{r(),t=d((()=>{t=n,(()=>{if(u||f)return u=!1,void _();a=!1,e.L(2)})()}),150)};return o.$=r,o})(),v=()=>{c=l(),a&&(h=!0),s&&e.L(6,s()),e.L(1,o()),_()},p=t=>{if(u||!e.W()||t.ctrlKey)return;const n=l()-c;150>n&&50<n&&(r?t.deltaX:t.deltaY)&&(u=!0)},g=()=>{f=!0,a=h=!1},m=()=>{f=!1,k()&&(a=!0)};return t.addEventListener("scroll",v),t.addEventListener("wheel",p,{passive:!0}),t.addEventListener("touchstart",g,{passive:!0}),t.addEventListener("touchend",m,{passive:!0}),{A:()=>{t.removeEventListener("scroll",v),t.removeEventListener("wheel",p),t.removeEventListener("touchstart",g),t.removeEventListener("touchend",m),_.$()},P:()=>{const[t,n]=e.B();t&&(i(H(t,r),n,h),h=!1,n&&e._()>e.h()&&e.L(1,o()))}}},W=(e,t)=>{let r,n,o;const i=t?"scrollLeft":"scrollTop",s=t?"overflowX":"overflowY",l=async(n,s)=>{if(!r)return void a((()=>l(n,s)));o&&o();const c=()=>{let t;return[new Promise(((r,n)=>{t=r,o=n,(e=>!!e._())(e)&&d(n,150)})),e.O(2,(()=>{t&&t()}))]};if(s&&R()){for(;e.L(8,n()),e.R();){const[e,t]=c();try{await e}catch(e){return}finally{t()}}r.scrollTo({[t?"left":"top"]:H(n(),t),behavior:"smooth"})}else for(;;){const[o,s]=c();try{r[i]=H(n(),t),e.L(7),await o}catch(e){return}finally{s()}}};return{X(l){r=l,n=E(e,l,t,(()=>H(l[i],t)),((t,r,n)=>{if(n){const e=l.style,t=e[s];e[s]="hidden",d((()=>{e[s]=t}))}r?(l[i]=e.H()+t,o&&o()):l[i]+=t}))},A(){n&&n.A()},Y(e){l((()=>e))},j(t){t+=e.H(),l((()=>t))},D(t,{align:r,smooth:n,offset:o=0}={}){if(t=u(t,0,e.C()-1),"nearest"===r){const n=e.T(t),o=e.H();if(n<o)r="start";else{if(!(n+e.M(t)>o+e._()))return;r="end"}}l((()=>o+e.J()+e.T(t)+("end"===r?e.M(t)-e._():"center"===r?(e.M(t)-e._())/2:0)),n)},P:()=>{n&&n.P()}}},J=(e,t)=>{let r;return{X(n){const o=t?"scrollX":"scrollY",i=b(n),s=I(i),l=i.body,c=(e,t,r,n=0)=>{const o=r?"offsetLeft":"offsetTop",i=n+(r&&z()?s.innerWidth-e[o]-e.offsetWidth:e[o]),l=e.offsetParent;return e!==t&&l?c(l,t,r,i):i};r=E(e,s,t,(()=>H(s[o],t)),((r,n)=>{n?s.scroll({[t?"left":"top"]:e.H()+r}):s.scrollBy(t?r:0,t?0:r)}),(()=>c(n,l,t)))},A(){r&&r.A()},P:()=>{r&&r.P()}}},q=(e,t)=>{const r=W(e,!1),n=W(t,!0);return{X(e){r.X(e),n.X(e)},A(){r.A(),n.A()},Y(e,t){r.Y(t),n.Y(e)},j(e,t){r.j(t),n.j(e)},D(e,t){r.D(t),n.D(e)},P(){r.P(),n.P()}}},B="current",O=(e,t)=>{if(c(e))for(const r of e)O(r,t);else e==n||"boolean"==typeof e||t.push(e)},L=(e,t)=>{const r=e.key;return r!=n?r:"_"+t},$=e=>{const r=t.useRef();return r[B]||(r[B]=e())},A=e=>{const r=t.useRef(e);return C((()=>{r[B]=e}),[e]),r},P=e=>{let t;return{X(r){(t||(t=new(I(b(r)).ResizeObserver)(e))).observe(r)},U(e){t.unobserve(e)},A(){t&&t.disconnect()}}},X=(e,t)=>{let r;const o=t?"width":"height",i=new WeakMap,s=P((t=>{const s=[];for(const{target:l,contentRect:c}of t)if(l.offsetParent)if(l===r)e.L(4,c[o]);else{const e=i.get(l);e!=n&&s.push([e,c[o]])}s.length&&e.L(3,s)}));return{V(e){s.X(r=e)},F:(e,t)=>(i.set(e,t),s.X(e),()=>{i.delete(e),s.U(e)}),A:s.A}},Y=(e,t)=>{const r=t?"width":"height",o=t?"innerWidth":"innerHeight",i=new WeakMap,s=P((t=>{const o=[];for(const{target:e,contentRect:s}of t){if(!e.offsetParent)continue;const t=i.get(e);t!=n&&o.push([t,s[r]])}o.length&&e.L(3,o)}));let l;return{V(t){const r=I(b(t)),n=()=>{e.L(4,r[o])};r.addEventListener("resize",n),n(),l=()=>{r.removeEventListener("resize",n)}},F:(e,t)=>(i.set(e,t),s.X(e),()=>{i.delete(e),s.U(e)}),A(){l&&l(),s.A()}}},j=(e,t)=>{let r;const n="height",o="width",s=new WeakMap,l=new Set,c=new Set,d=new Map,u=(e,t)=>`${e}-${t}`,f=P((f=>{const a=new Set,h=new Set;for(const{target:i,contentRect:l}of f)if(i.offsetParent)if(i===r)e.L(4,l[n]),t.L(4,l[o]);else{const e=s.get(i);if(e){const[t,r]=e,i=u(t,r),s=d.get(i),c=[l[n],l[o]];let f,_;s?(s[0]!==c[0]&&(f=!0),s[1]!==c[1]&&(_=!0)):f=_=!0,f&&a.add(t),_&&h.add(r),(f||_)&&d.set(i,c)}}if(a.size){const t=[];a.forEach((e=>{let r=0;c.forEach((t=>{const n=d.get(u(e,t));n&&(r=i(r,n[0]))})),r&&t.push([e,r])})),e.L(3,t)}if(h.size){const e=[];h.forEach((t=>{let r=0;l.forEach((e=>{const n=d.get(u(e,t));n&&(r=i(r,n[1]))})),r&&e.push([t,r])})),t.L(3,e)}}));return{V(e){f.X(r=e)},F:(e,t,r)=>(s.set(e,[t,r]),l.add(t),c.add(r),f.X(e),()=>{s.delete(e),f.U(e)}),A:f.A}},D=t.memo((({G:r,K:o,N:i,Z:s,ee:l,te:c,re:d,ne:u})=>{const f=t.useRef(n);C((()=>o(f[B],i)),[i]);const a=t.useMemo((()=>{const e={position:l&&u?void 0:"absolute",[d?"height":"width"]:"100%",[d?"top":"left"]:0,[d?z()?"right":"left":"top"]:s,visibility:!l||u?"visible":"hidden"};return d&&(e.display="flex"),e}),[s,l,u,d]);return"string"==typeof c?e.jsx(c,{ref:f,style:a,children:r}):e.jsx(c,{ref:f,style:a,index:i,children:r})})),U=e=>t.useReducer(e.v,void 0,e.v)[1],V=(e,r)=>t.useMemo((()=>{if("function"==typeof e)return[e,r||0];const t=(e=>{const t=[];return O(e,t),t})(e);return[e=>t[e],t.length]}),[e,r]),F=t.forwardRef((({children:o,count:i,overscan:s,itemSize:l,shift:c,horizontal:d,keepMounted:u,cache:h,startMargin:_=0,ssrCount:v,as:p="div",item:g="div",scrollRef:m,onScroll:w,onScrollEnd:S},x)=>{const[y,b]=V(o,i),I=t.useRef(n),z=t.useRef(!!v),k=A(w),R=A(S),[H,E,J,q]=$((()=>{const e=!!d,t=M(b,l,s,v,h,!l);return[t,X(t,e),W(t,e),e]}));b!==H.C()&&H.L(5,[b,c]),_!==H.J()&&H.L(6,_);const O=U(H),[P,Y]=H.m(),j=H.W(),F=H.q(),G=H.h(),K=[],N=t=>{const r=y(t);return e.jsx(D,{K:E.F,N:t,Z:H.T(t),ee:H.k(t),te:g,G:r,re:q,ne:z[B]},L(r,t))};C((()=>{z[B]=!1;const e=H.O(1,(e=>{e?r.flushSync(O):O()})),t=H.O(4,(()=>{k[B]&&k[B](H.H())})),n=H.O(8,(()=>{R[B]&&R[B]()})),o=e=>{E.V(e),J.X(e)};return m?a((()=>o(m[B]))):o(I[B].parentElement),()=>{e(),t(),n(),E.A(),J.A()}}),[]),C((()=>{J.P()}),[F]),t.useImperativeHandle(x,(()=>({get cache(){return H.p()},get scrollOffset(){return H.H()},get scrollSize(){return T(H)},get viewportSize(){return H._()},get startIndex(){return H.S()},get endIndex(){return H.I()},getItemOffset:H.T,getItemSize:H.M,scrollToIndex:J.D,scrollTo:J.Y,scrollBy:J.j})),[]);for(let e=P,t=Y;e<=t;e++)K.push(N(e));if(u){const e=[],t=[];f(u).forEach((r=>{r<P&&e.push(N(r)),r>Y&&t.push(N(r))})),K.unshift(...e),K.push(...t)}return e.jsx(p,{ref:I,style:{overflowAnchor:"none",flex:"none",position:"relative",visibility:"hidden",width:q?G:"100%",height:q?"100%":G,pointerEvents:j?"none":void 0},children:K})})),G=t.forwardRef((({children:r,count:o,overscan:i,itemSize:s,shift:l,horizontal:c,keepMounted:d,reverse:u,cache:f,ssrCount:a,item:h,onScroll:_,onScrollEnd:v,style:p,...g},m)=>{const w=t.useRef(n),S=u&&!c;let x=e.jsx(F,{ref:m,scrollRef:S?w:void 0,count:o,overscan:i,itemSize:s,shift:l,horizontal:c,keepMounted:d,cache:f,ssrCount:a,item:h,onScroll:_,onScrollEnd:v,children:r});return S&&(x=e.jsx("div",{style:{visibility:"hidden",display:"flex",flexDirection:"column",justifyContent:"flex-end",minHeight:"100%"},children:x})),e.jsx("div",{ref:w,...g,style:{display:c?"inline-block":"block",[c?"overflowX":"overflowY"]:"auto",contain:"strict",width:"100%",height:"100%",...p},children:x})})),K=t.forwardRef((({children:o,count:i,overscan:s,itemSize:l,shift:c,horizontal:d,cache:u,ssrCount:f,as:a="div",item:h="div",onScroll:_,onScrollEnd:v},p)=>{const[g,m]=V(o,i),w=t.useRef(n),S=A(_),x=A(v),y=t.useRef(!!f),[b,I,z,k]=$((()=>{const e=!!d,t=M(m,l,s,f,u,!l);return[t,Y(t,e),J(t,e),e]}));m!==b.C()&&b.L(5,[m,c]);const R=U(b),[T,H]=b.m(),E=b.W(),W=b.q(),q=b.h(),O=[];C((()=>{y[B]=!1;const e=b.O(1,(e=>{e?r.flushSync(R):R()})),t=b.O(4,(()=>{S[B]&&S[B](b.H())})),n=b.O(8,(()=>{x[B]&&x[B]()})),o=w[B];return I.V(o),z.X(o),()=>{e(),t(),n(),I.A(),z.A()}}),[]),C((()=>{z.P()}),[W]),t.useImperativeHandle(p,(()=>({get cache(){return b.p()},get startIndex(){return b.S()},get endIndex(){return b.I()}})),[]);for(let t=T,r=H;t<=r;t++){const r=g(t);O.push(e.jsx(D,{K:I.F,N:t,Z:b.T(t),ee:b.k(t),te:h,G:r,re:k,ne:y[B]},L(r,t)))}return e.jsx(a,{ref:w,style:{flex:"none",position:"relative",visibility:"hidden",width:k?q:"100%",height:k?"100%":q,pointerEvents:E?"none":void 0},children:O})})),N=(e,t)=>`${e}-${t}`,Q=t.memo((({G:r,K:o,oe:i,ie:s,se:l,le:c,ce:d,de:u,ee:f,ue:a})=>{const h=t.useRef(n);return C((()=>o.F(h[B],i,s)),[s,i]),e.jsx(a,{ref:h,style:t.useMemo((()=>({display:"grid",position:"absolute",top:l,[z()?"right":"left"]:c,visibility:f?"hidden":"visible",minHeight:d,minWidth:u})),[l,c,u,d,f]),children:r})})),Z=t.forwardRef((({children:o,row:i,col:s,cellHeight:l=40,cellWidth:c=100,overscan:d=2,initialRowCount:u,initialColCount:f,item:a="div",style:h,..._},v)=>{const[p,g,m,w]=$((()=>{const e=M(i,l,d,u),t=M(s,c,d,f);return[e,t,j(e,t),q(e,t)]}));i!==p.C()&&p.L(5,[i]),s!==g.C()&&g.L(5,[s]);const S=U(p),x=U(g),[y,b]=p.m(),[I,z]=g.m(),k=p.W(),R=g.W(),H=p.q(),E=g.q(),W=T(p),J=T(g),O=t.useRef(n);C((()=>{const e=O[B],t=p.O(1,(e=>{e?r.flushSync(S):S()})),n=g.O(1,(e=>{e?r.flushSync(x):x()}));return m.V(e),w.X(e),()=>{t(),n(),m.A(),w.A()}}),[]),C((()=>{w.P()}),[H,E]),t.useImperativeHandle(v,(()=>({get scrollTop(){return p.H()},get scrollLeft(){return g.H()},get scrollHeight(){return T(p)},get scrollWidth(){return T(g)},get viewportHeight(){return p._()},get viewportWidth(){return g._()},scrollToIndex:w.D,scrollTo:w.Y,scrollBy:w.j})),[]);const L=t.useMemo((()=>{const e=new Map;return(t,r)=>{let n=e.get(N(t,r));return n||e.set(N(t,r),n=o({rowIndex:t,colIndex:r})),n}}),[o]),A=[];for(let t=y;t<=b;t++)for(let r=I;r<=z;r++)A.push(e.jsx(Q,{K:m,oe:t,ie:r,se:p.T(t),le:g.T(r),ce:p.M(t),de:g.M(r),ee:p.k(t)||g.k(r),ue:a,G:L(t,r)},N(t,r)));return e.jsx("div",{ref:O,..._,style:{overflow:"auto",contain:"strict",width:"100%",height:"100%",...h},children:e.jsx("div",{style:{overflowAnchor:"none",flex:"none",position:"relative",visibility:"hidden",width:J,height:W,pointerEvents:k||R?"none":void 0},children:A})})}));exports.VList=G,exports.Virtualizer=F,exports.WindowVirtualizer=K,exports.experimental_VGrid=Z;
|
|
2
|
+
var e=require("react/jsx-runtime"),t=require("react"),n=require("react-dom");const r=null,{min:o,max:i,abs:s,floor:l}=Math,c=Array.isArray,d=setTimeout,f=(e,t,n)=>o(n,i(t,e)),u=e=>[...e].sort(((e,t)=>e-t)),a="function"==typeof queueMicrotask?queueMicrotask:e=>{Promise.resolve().then(e)},h=e=>{let t,n;return()=>(t||(t=!0,n=e()),n)},_=-1,v=(e,t,n)=>{const r=n?"unshift":"push";for(let n=0;n<t;n++)e[r](_);return e},p=(e,t)=>{const n=e.t[t];return n===_?e.o:n},g=(e,t,n)=>{const r=e.t[t]===_;return e.t[t]=n,e.i=o(t,e.i),r},m=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=p(e,n),e.u[++n]=r;return e.i=t,r},w=(e,t,n=0,r=e.l-1)=>{for(;n<=r;){const o=l((n+r)/2),i=m(e,o);if(i<=t){if(i+p(e,o)>t)return o;n=o+1}else r=o-1}return f(n,0,e.l-1)},S=(e,t,n)=>{const r=t-e.l;return e.i=n?-1:o(t-1,e.i),e.l=t,r>0?(v(e.u,r),v(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce(((t,n)=>t-(n===_?e.o:n)),0))},x="undefined"!=typeof window,y=()=>document.documentElement,b=e=>e.ownerDocument,I=e=>e.defaultView,z=/*#__PURE__*/h((()=>!!x&&"rtl"===getComputedStyle(y()).direction)),k=/*#__PURE__*/h((()=>/iP(hone|od|ad)/.test(navigator.userAgent))),R=/*#__PURE__*/h((()=>"scrollBehavior"in y().style)),T=e=>i(e.h(),e._()),M=(e,t=40,n=4,l=0,c,d=!1)=>{let f=!!l,a=[],h=0,x=0,y=0,b=0,I=0,z=0,R=0,T=0,M=0,C=f?[0,i(l-1,0)]:r,E=[0,0],H=0;const W=((e,t,n)=>({o:n?n[1]:t,t:n&&n[0]?v(n[0].slice(0,o(e,n[0].length)),i(0,e-n[0].length)):v([],e),l:e,i:-1,u:v([],e)}))(e,t,c),J=new Set,q=()=>y-x,B=()=>q()+z+I,O=e=>((e,t,n,r)=>{if(r=o(r,e.l-1),m(e,r)<=t){const o=w(e,t+n,r);return[w(e,t,r,o),o]}{const o=w(e,t,void 0,r);return[o,w(e,t+n,o)]}})(W,e,h,E[0]),L=()=>(e=>e.l?m(e,e.l-1)+p(e,e.l-1):0)(W),$=e=>m(W,e)-z,A=e=>p(W,e),P=e=>{e&&(k()&&0!==T?z+=e:(I+=e,b++))};return{v:()=>a,p:()=>(e=>[e.t.slice(),e.o])(W),m:()=>{if(R)return E;let[e,t]=O(i(0,B()));return C&&(e=o(e,C[0]),t=i(t,C[1])),1!==T&&(e-=i(0,n)),2!==T&&(t+=i(0,n)),E=[i(e,0),o(t,W.l-1)]},S:()=>w(W,B()),I:()=>w(W,B()+h),k:e=>W.t[e]===_,R:()=>!!C&&W.t.slice(i(0,C[0]-1),o(W.l-1,C[1]+1)+1).includes(_),T:$,M:A,C:()=>W.l,H:()=>y,W:()=>0!==T,_:()=>h,J:()=>x,h:L,q:()=>b,B:()=>(R=I,I=0,[R,2===M||q()+h>=L()]),O:(e,t)=>{const n=[e,t];return J.add(n),()=>{J.delete(n)}},L:(e,t)=>{let n,o,l=0;switch(e){case 1:{const e=R;R=0;const n=t-y,i=s(n);e&&i<s(e)+1||0!==M||(T=n<0?2:1),f&&(C=r,f=!1),y=t,l=4;const c=q();c>=-h&&c<=L()&&(l+=1,o=i>h);break}case 2:l=8,0!==T&&(n=!0,l+=1),T=0,M=0,C=r;break;case 3:{const e=t.filter((([e,t])=>W.t[e]!==t));if(!e.length)break;P(e.reduce(((e,[t,n])=>((2===M||(C?t<C[0]:$(t)+(0===T&&0===M?A(t):0)<q()))&&(e+=n-A(t)),e)),0));for(const[t,n]of e){const e=A(t),r=g(W,t,n);d&&(H+=r?n:n-e)}d&&h&&H>h&&(P(((e,t)=>{let n=0;const r=e.t.filter(((e,r)=>{const o=e!==_;return o&&r<t&&n++,o})),o=e.o;return e.i=-1,((e.o=(e=>{const t=u(e),n=e.length/2|0;return t.length%2==0?(t[n-1]+t[n])/2:t[n]})(r))-o)*i(t-n,0)})(W,w(W,B()))),d=!1),l=3,o=!0;break}case 4:h!==t&&(h=t,l=3);break;case 5:t[1]?(P(S(W,t[0],!0)),M=2,l=1):S(W,t[0]);break;case 6:x=t;break;case 7:M=1;break;case 8:C=O(t),l=1}l&&(a=[],n&&z&&(I+=z,z=0,b++),J.forEach((([e,t])=>{l&e&&t(o)})))}}},C=x?t.useLayoutEffect:t.useEffect,E=(e,t)=>t&&z()?-e:e,H=(e,t,n,o,i,s)=>{const l=Date.now;let c=0,f=!1,u=!1,a=!1,h=!1;const _=(()=>{let t;const n=()=>{t!=r&&clearTimeout(t)},o=()=>{n(),t=d((()=>{t=r,(()=>{if(f||u)return f=!1,void _();a=!1,e.L(2)})()}),150)};return o.$=n,o})(),v=()=>{c=l(),a&&(h=!0),s&&e.L(6,s()),e.L(1,o()),_()},p=t=>{if(f||!e.W()||t.ctrlKey)return;const r=l()-c;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(f=!0)},g=()=>{u=!0,a=h=!1},m=()=>{u=!1,k()&&(a=!0)};return t.addEventListener("scroll",v),t.addEventListener("wheel",p,{passive:!0}),t.addEventListener("touchstart",g,{passive:!0}),t.addEventListener("touchend",m,{passive:!0}),{A:()=>{t.removeEventListener("scroll",v),t.removeEventListener("wheel",p),t.removeEventListener("touchstart",g),t.removeEventListener("touchend",m),_.$()},P:()=>{const[t,r]=e.B();t&&(i(E(t,n),r,h),h=!1,r&&e._()>e.h()&&e.L(1,o()))}}},W=(e,t)=>{let n,r,o;const i=t?"scrollLeft":"scrollTop",s=t?"overflowX":"overflowY",l=async(r,s)=>{if(!n)return void a((()=>l(r,s)));o&&o();const c=()=>{let t;return[new Promise(((n,r)=>{t=n,o=r,(e=>!!e._())(e)&&d(r,150)})),e.O(2,(()=>{t&&t()}))]};if(s&&R()){for(;e.L(8,r()),e.R();){const[e,t]=c();try{await e}catch(e){return}finally{t()}}n.scrollTo({[t?"left":"top"]:E(r(),t),behavior:"smooth"})}else for(;;){const[o,s]=c();try{n[i]=E(r(),t),e.L(7),await o}catch(e){return}finally{s()}}};return{X(l){n=l,r=H(e,l,t,(()=>E(l[i],t)),((t,n,r)=>{if(r){const e=l.style,t=e[s];e[s]="hidden",d((()=>{e[s]=t}))}n?(l[i]=e.H()+t,o&&o()):l[i]+=t}))},A(){r&&r.A()},Y(e){l((()=>e))},j(t){t+=e.H(),l((()=>t))},D(t,{align:n,smooth:r,offset:o=0}={}){if(t=f(t,0,e.C()-1),"nearest"===n){const r=e.T(t),o=e.H();if(r<o)n="start";else{if(!(r+e.M(t)>o+e._()))return;n="end"}}l((()=>o+e.J()+e.T(t)+("end"===n?e.M(t)-e._():"center"===n?(e.M(t)-e._())/2:0)),r)},P:()=>{r&&r.P()}}},J=(e,t)=>{let n;return{X(r){const o=t?"scrollX":"scrollY",i=b(r),s=I(i),l=i.body,c=(e,t,n,r=0)=>{const o=n?"offsetLeft":"offsetTop",i=r+(n&&z()?s.innerWidth-e[o]-e.offsetWidth:e[o]),l=e.offsetParent;return e!==t&&l?c(l,t,n,i):i};n=H(e,s,t,(()=>E(s[o],t)),((n,r)=>{r?s.scroll({[t?"left":"top"]:e.H()+n}):s.scrollBy(t?n:0,t?0:n)}),(()=>c(r,l,t)))},A(){n&&n.A()},P:()=>{n&&n.P()}}},q=(e,t)=>{const n=W(e,!1),r=W(t,!0);return{X(e){n.X(e),r.X(e)},A(){n.A(),r.A()},Y(e,t){n.Y(t),r.Y(e)},j(e,t){n.j(t),r.j(e)},D(e,t){n.D(t),r.D(e)},P(){n.P(),r.P()}}},B="current",O=(e,t)=>{if(c(e))for(const n of e)O(n,t);else e==r||"boolean"==typeof e||t.push(e)},L=(e,t)=>{const n=e.key;return n!=r?n:"_"+t},$=e=>{const n=t.useRef();return n[B]||(n[B]=e())},A=e=>{const n=t.useRef(e);return C((()=>{n[B]=e}),[e]),n},P=e=>{let t;return{X(n){(t||(t=new(I(b(n)).ResizeObserver)(e))).observe(n)},U(e){t.unobserve(e)},A(){t&&t.disconnect()}}},X=(e,t)=>{let n;const o=t?"width":"height",i=new WeakMap,s=P((t=>{const s=[];for(const{target:l,contentRect:c}of t)if(l.offsetParent)if(l===n)e.L(4,c[o]);else{const e=i.get(l);e!=r&&s.push([e,c[o]])}s.length&&e.L(3,s)}));return{V(e){s.X(n=e)},F:(e,t)=>(i.set(e,t),s.X(e),()=>{i.delete(e),s.U(e)}),A:s.A}},Y=(e,t)=>{const n=t?"width":"height",o=t?"innerWidth":"innerHeight",i=new WeakMap,s=P((t=>{const o=[];for(const{target:e,contentRect:s}of t){if(!e.offsetParent)continue;const t=i.get(e);t!=r&&o.push([t,s[n]])}o.length&&e.L(3,o)}));let l;return{V(t){const n=I(b(t)),r=()=>{e.L(4,n[o])};n.addEventListener("resize",r),r(),l=()=>{n.removeEventListener("resize",r)}},F:(e,t)=>(i.set(e,t),s.X(e),()=>{i.delete(e),s.U(e)}),A(){l&&l(),s.A()}}},j=(e,t)=>{let n;const r="height",o="width",s=new WeakMap,l=new Set,c=new Set,d=new Map,f=(e,t)=>`${e}-${t}`,u=P((u=>{const a=new Set,h=new Set;for(const{target:i,contentRect:l}of u)if(i.offsetParent)if(i===n)e.L(4,l[r]),t.L(4,l[o]);else{const e=s.get(i);if(e){const[t,n]=e,i=f(t,n),s=d.get(i),c=[l[r],l[o]];let u,_;s?(s[0]!==c[0]&&(u=!0),s[1]!==c[1]&&(_=!0)):u=_=!0,u&&a.add(t),_&&h.add(n),(u||_)&&d.set(i,c)}}if(a.size){const t=[];a.forEach((e=>{let n=0;c.forEach((t=>{const r=d.get(f(e,t));r&&(n=i(n,r[0]))})),n&&t.push([e,n])})),e.L(3,t)}if(h.size){const e=[];h.forEach((t=>{let n=0;l.forEach((e=>{const r=d.get(f(e,t));r&&(n=i(n,r[1]))})),n&&e.push([t,n])})),t.L(3,e)}}));return{V(e){u.X(n=e)},F:(e,t,n)=>(s.set(e,[t,n]),l.add(t),c.add(n),u.X(e),()=>{s.delete(e),u.U(e)}),A:u.A}},D=t.memo((({G:n,K:o,N:i,Z:s,ee:l,te:c,ne:d,re:f})=>{const u=t.useRef(r);C((()=>o(u[B],i)),[i]);const a=t.useMemo((()=>{const e={position:l&&f?void 0:"absolute",[d?"height":"width"]:"100%",[d?"top":"left"]:0,[d?z()?"right":"left":"top"]:s,visibility:!l||f?"visible":"hidden"};return d&&(e.display="flex"),e}),[s,l,f,d]);return"string"==typeof c?e.jsx(c,{ref:u,style:a,children:n}):e.jsx(c,{ref:u,style:a,index:i,children:n})})),U=e=>t.useReducer(e.v,void 0,e.v)[1],V=(e,n)=>t.useMemo((()=>{if("function"==typeof e)return[e,n||0];const t=(e=>{const t=[];return O(e,t),t})(e);return[e=>t[e],t.length]}),[e,n]),F=t.forwardRef((({children:o,count:i,overscan:s,itemSize:l,shift:c,horizontal:d,keepMounted:f,cache:h,startMargin:_=0,ssrCount:v,as:p="div",item:g="div",scrollRef:m,onScroll:w,onScrollEnd:S},x)=>{const[y,b]=V(o,i),I=t.useRef(r),z=t.useRef(!!v),k=A(w),R=A(S),[E,H,J,q]=$((()=>{const e=!!d,t=M(b,l,s,v,h,!l);return[t,X(t,e),W(t,e),e]}));b!==E.C()&&E.L(5,[b,c]),_!==E.J()&&E.L(6,_);const O=U(E),[P,Y]=E.m(),j=E.W(),F=E.q(),G=E.h(),K=[],N=t=>{const n=y(t);return e.jsx(D,{K:H.F,N:t,Z:E.T(t),ee:E.k(t),te:g,G:n,ne:q,re:z[B]},L(n,t))};C((()=>{z[B]=!1;const e=E.O(1,(e=>{e?n.flushSync(O):O()})),t=E.O(4,(()=>{k[B]&&k[B](E.H())})),r=E.O(8,(()=>{R[B]&&R[B]()})),o=e=>{H.V(e),J.X(e)};return m?a((()=>o(m[B]))):o(I[B].parentElement),()=>{e(),t(),r(),H.A(),J.A()}}),[]),C((()=>{J.P()}),[F]),t.useImperativeHandle(x,(()=>({get cache(){return E.p()},get scrollOffset(){return E.H()},get scrollSize(){return T(E)},get viewportSize(){return E._()},findStartIndex:E.S,findEndIndex:E.I,getItemOffset:E.T,getItemSize:E.M,scrollToIndex:J.D,scrollTo:J.Y,scrollBy:J.j})),[]);for(let e=P,t=Y;e<=t;e++)K.push(N(e));if(f){const e=[],t=[];u(f).forEach((n=>{n<P&&e.push(N(n)),n>Y&&t.push(N(n))})),K.unshift(...e),K.push(...t)}return e.jsx(p,{ref:I,style:{overflowAnchor:"none",flex:"none",position:"relative",visibility:"hidden",width:q?G:"100%",height:q?"100%":G,pointerEvents:j?"none":void 0},children:K})})),G=t.forwardRef((({children:n,count:o,overscan:i,itemSize:s,shift:l,horizontal:c,keepMounted:d,reverse:f,cache:u,ssrCount:a,item:h,onScroll:_,onScrollEnd:v,style:p,...g},m)=>{const w=t.useRef(r),S=f&&!c;let x=e.jsx(F,{ref:m,scrollRef:S?w:void 0,count:o,overscan:i,itemSize:s,shift:l,horizontal:c,keepMounted:d,cache:u,ssrCount:a,item:h,onScroll:_,onScrollEnd:v,children:n});return S&&(x=e.jsx("div",{style:{visibility:"hidden",display:"flex",flexDirection:"column",justifyContent:"flex-end",minHeight:"100%"},children:x})),e.jsx("div",{ref:w,...g,style:{display:c?"inline-block":"block",[c?"overflowX":"overflowY"]:"auto",contain:"strict",width:"100%",height:"100%",...p},children:x})})),K=t.forwardRef((({children:o,count:i,overscan:s,itemSize:l,shift:c,horizontal:d,cache:f,ssrCount:u,as:a="div",item:h="div",onScroll:_,onScrollEnd:v},p)=>{const[g,m]=V(o,i),w=t.useRef(r),S=A(_),x=A(v),y=t.useRef(!!u),[b,I,z,k]=$((()=>{const e=!!d,t=M(m,l,s,u,f,!l);return[t,Y(t,e),J(t,e),e]}));m!==b.C()&&b.L(5,[m,c]);const R=U(b),[T,E]=b.m(),H=b.W(),W=b.q(),q=b.h(),O=[];C((()=>{y[B]=!1;const e=b.O(1,(e=>{e?n.flushSync(R):R()})),t=b.O(4,(()=>{S[B]&&S[B](b.H())})),r=b.O(8,(()=>{x[B]&&x[B]()})),o=w[B];return I.V(o),z.X(o),()=>{e(),t(),r(),I.A(),z.A()}}),[]),C((()=>{z.P()}),[W]),t.useImperativeHandle(p,(()=>({get cache(){return b.p()},findStartIndex:b.S,findEndIndex:b.I})),[]);for(let t=T,n=E;t<=n;t++){const n=g(t);O.push(e.jsx(D,{K:I.F,N:t,Z:b.T(t),ee:b.k(t),te:h,G:n,ne:k,re:y[B]},L(n,t)))}return e.jsx(a,{ref:w,style:{flex:"none",position:"relative",visibility:"hidden",width:k?q:"100%",height:k?"100%":q,pointerEvents:H?"none":void 0},children:O})})),N=(e,t)=>`${e}-${t}`,Q=t.memo((({G:n,K:o,oe:i,ie:s,se:l,le:c,ce:d,de:f,ee:u,fe:a})=>{const h=t.useRef(r);return C((()=>o.F(h[B],i,s)),[s,i]),e.jsx(a,{ref:h,style:t.useMemo((()=>({display:"grid",position:"absolute",top:l,[z()?"right":"left"]:c,visibility:u?"hidden":"visible",minHeight:d,minWidth:f})),[l,c,f,d,u]),children:n})})),Z=t.forwardRef((({children:o,row:i,col:s,cellHeight:l=40,cellWidth:c=100,overscan:d=2,initialRowCount:f,initialColCount:u,item:a="div",style:h,..._},v)=>{const[p,g,m,w]=$((()=>{const e=M(i,l,d,f),t=M(s,c,d,u);return[e,t,j(e,t),q(e,t)]}));i!==p.C()&&p.L(5,[i]),s!==g.C()&&g.L(5,[s]);const S=U(p),x=U(g),[y,b]=p.m(),[I,z]=g.m(),k=p.W(),R=g.W(),E=p.q(),H=g.q(),W=T(p),J=T(g),O=t.useRef(r);C((()=>{const e=O[B],t=p.O(1,(e=>{e?n.flushSync(S):S()})),r=g.O(1,(e=>{e?n.flushSync(x):x()}));return m.V(e),w.X(e),()=>{t(),r(),m.A(),w.A()}}),[]),C((()=>{w.P()}),[E,H]),t.useImperativeHandle(v,(()=>({get scrollTop(){return p.H()},get scrollLeft(){return g.H()},get scrollHeight(){return T(p)},get scrollWidth(){return T(g)},get viewportHeight(){return p._()},get viewportWidth(){return g._()},scrollToIndex:w.D,scrollTo:w.Y,scrollBy:w.j})),[]);const L=t.useMemo((()=>{const e=new Map;return(t,n)=>{let r=e.get(N(t,n));return r||e.set(N(t,n),r=o({rowIndex:t,colIndex:n})),r}}),[o]),A=[];for(let t=y;t<=b;t++)for(let n=I;n<=z;n++)A.push(e.jsx(Q,{K:m,oe:t,ie:n,se:p.T(t),le:g.T(n),ce:p.M(t),de:g.M(n),ee:p.k(t)||g.k(n),fe:a,G:L(t,n)},N(t,n)));return e.jsx("div",{ref:O,..._,style:{overflow:"auto",contain:"strict",width:"100%",height:"100%",...h},children:e.jsx("div",{style:{overflowAnchor:"none",flex:"none",position:"relative",visibility:"hidden",width:J,height:W,pointerEvents:k||R?"none":void 0},children:A})})}));exports.VList=G,exports.Virtualizer=F,exports.WindowVirtualizer=K,exports.experimental_VGrid=Z;
|
|
3
3
|
//# sourceMappingURL=index.js.map
|