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