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