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