virtua 0.48.3 → 0.48.5
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/core/index.cjs +473 -1
- package/lib/core/index.cjs.map +1 -1
- package/lib/core/index.js +470 -1
- package/lib/core/index.js.map +1 -1
- package/lib/index.cjs +802 -1
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +806 -1
- package/lib/index.js.map +1 -1
- package/lib/solid/index.cjs +692 -1
- package/lib/solid/index.cjs.map +1 -1
- package/lib/solid/index.js +698 -1
- package/lib/solid/index.js.map +1 -1
- package/lib/solid/index.jsx.map +1 -1
- package/lib/svelte/VList.svelte +8 -6
- package/lib/svelte/VList.type.d.ts +1 -1
- package/lib/svelte/Virtualizer.svelte +5 -4
- package/lib/svelte/Virtualizer.type.d.ts +4 -0
- package/lib/svelte/WindowVirtualizer.svelte +2 -2
- package/lib/svelte/utils.js.map +1 -1
- package/lib/vue/index.cjs +769 -1
- package/lib/vue/index.cjs.map +1 -1
- package/lib/vue/index.js +769 -1
- package/lib/vue/index.js.map +1 -1
- package/package.json +6 -2
package/lib/index.js
CHANGED
|
@@ -1,3 +1,808 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{jsx as e}from"react/jsx-runtime";import{useLayoutEffect as t,useEffect as o,useRef as n,memo as r,useMemo as i,forwardRef as s,useReducer as l,useImperativeHandle as c,useCallback as f}from"react";import{flushSync as u}from"react-dom";const d=null,{min:a,max:h,abs:p,floor:g}=Math,v=(e,t,o)=>a(o,h(t,e)),m=e=>[...e].sort(((e,t)=>e-t)),_="function"==typeof queueMicrotask?queueMicrotask:e=>{Promise.resolve().then(e)},w=()=>{let e;return[new Promise((t=>{e=t})),e]},S=e=>{let t;return()=>(e&&(t=e(),e=void 0),t)},$=(e,t,o)=>{const n=o?"unshift":"push";for(let o=0;o<t;o++)e[n](-1);return e},z=(e,t)=>{const o=e.t[t];return-1===o?e.o:o},y=(e,t,o)=>{const n=-1===e.t[t];return e.t[t]=o,e.i=a(t,e.i),n},b=(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 o=e.i,n=e.u[o];for(;o<t;)n+=z(e,o),e.u[++o]=n;return e.i=t,n},x=(e,t,o=0,n=e.l-1)=>{let r=o;for(;o<=n;){const i=g((o+n)/2);b(e,i)<=t?(r=i,o=i+1):n=i-1}return v(r,0,e.l-1)},I=(e,t,o)=>{const n=t-e.l;return e.i=o?-1:a(t-1,e.i),e.l=t,n>0?($(e.u,n),$(e.t,n,o),e.o*n):(e.u.splice(n),(o?e.t.splice(0,-n):e.t.splice(n)).reduce(((t,o)=>t-(-1===o?e.o:o)),0))},k="undefined"!=typeof window,R=e=>e.documentElement,T=e=>e.ownerDocument,C=e=>e.defaultView,M=/*#__PURE__*/S((()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>0)),O=/*#__PURE__*/S((()=>"scrollBehavior"in R(document).style)),E=e=>h(e.h(),e.p()),H=(e,t=40,o=0,n,r=!1)=>{let i=!!o,s=1,l=0,c=0,f=0,u=0,g=0,v=0,_=0,w=0,S=d,k=[0,i?h(o-1,0):-1],R=0,T=!1;const C=((e,t,o)=>({o:t,t:o?$(o.slice(0,a(e,o.length)),h(0,e-o.length)):$([],e),l:e,i:-1,u:$([],e+1)}))(e,n?n[1]:t,n&&n[0]),O=new Set,E=()=>f-c,H=()=>E()+g+u,W=(e,t)=>((e,t,o,n)=>{if(n=a(n,e.l-1),b(e,n)<=t){const r=x(e,o,n);return[x(e,t,n,r),r]}{const r=x(e,t,void 0,n);return[r,x(e,o,r)]}})(C,e,t,k[0]),B=()=>b(C,C.l),J=(e,t)=>{const o=b(C,e)-g;return t?B()-o-A(e):o},A=e=>z(C,e),L=(e,t=-1)=>C.t[e]===t,N=e=>{e&&(M()&&0!==_||S&&1===w?g+=e:u+=e)};return{v:()=>{O.clear()},m:()=>s,_:()=>(e=>[e.t.slice(),e.o])(C),S:(e=200)=>{if(!T||i)return k;let t,o;if(v)[t,o]=k;else{let n=h(0,H()),i=n+l;r||(e=h(0,e),1!==_&&(n-=e),2!==_&&(i+=e)),[t,o]=k=W(h(0,n),h(0,i)),S&&(t=a(t,S[0]),o=h(o,S[1]))}return[h(t,0),a(o,C.l-1)]},$:e=>x(C,e-c),I:L,k:J,R:A,T:()=>C.l,C:()=>f,M:()=>0!==_,p:()=>l,O:()=>c,h:B,H:()=>(v=u,u=0,[v,2===w]),W:(e,t)=>{const o=[e,t];return O.add(o),()=>{O.delete(o)}},B:(e,t)=>{let o,n,a=0;switch(e){case 1:{if(t===f&&0===w)break;const e=v;v=0;const o=t-f,r=p(o);e&&r<p(e)+1||0!==w||(_=o<0?2:1),i&&(i=!1),f=t,a=4;const s=E();s>=-l&&s<=B()&&(a+=1,n=r>l);break}case 2:a=8,0!==_&&(o=!0,a+=1),_=0,w=0,S=d;break;case 3:{const e=t.filter((([e,t])=>!L(e,t)));if(!e.length)break;N(e.reduce(((e,[t,o])=>((2===w||(S&&1===w?t<S[0]:J(t+(0===_&&0===w?1:0))<E()))&&(e+=o-A(t)),e)),0));for(const[t,o]of e){const e=A(t),n=y(C,t,o);r&&(R+=n?o:o-e)}r&&l&&R>l&&(N(((e,t)=>{let o=0;const n=[];e.t.forEach(((e,r)=>{-1!==e&&(n.push(e),r<t&&o++)})),e.i=-1;const r=m(n),i=r.length,s=i/2|0,l=i%2==0?(r[s-1]+r[s])/2:r[s],c=e.o;return((e.o=l)-c)*h(t-o,0)})(C,x(C,H()))),r=!1),a=3,n=!0;break}case 4:l!==t&&(l||(T=n=!0),l=t,a=3);break;case 5:t[1]?(N(I(C,t[0],!0)),w=2,a=1):(I(C,t[0]),a=1);break;case 6:c=t;break;case 7:w=1;break;case 8:S=W(t,t+l),a=1}a&&(s=1+(2147483647&s),o&&g&&(u+=g,g=0),O.forEach((([e,t])=>{a&e&&t(n)})))}}},W=setTimeout,B=(e,t)=>t?-e:e,J=(e,t,o,n,r,i)=>{const s=Date.now;let l=0,c=!1,f=!1,u=!1,a=!1;const h=(()=>{let t;const o=()=>{t!=d&&clearTimeout(t)},n=()=>{o(),t=W((()=>{t=d,(()=>{if(c||f)return c=!1,void h();u=!1,e.B(2)})()}),150)};return n.J=o,n})(),p=()=>{l=s(),u&&(a=!0),i&&e.B(6,i()),e.B(1,n()),h()},g=t=>{if(c||!e.M()||t.ctrlKey)return;const n=s()-l;150>n&&50<n&&(o?t.deltaX:t.deltaY)&&(c=!0)},v=()=>{f=!0,u=a=!1},m=()=>{f=!1,M()&&(u=!0)};return t.addEventListener("scroll",p),t.addEventListener("wheel",g,{passive:!0}),t.addEventListener("touchstart",v,{passive:!0}),t.addEventListener("touchend",m,{passive:!0}),{A:()=>{t.removeEventListener("scroll",p),t.removeEventListener("wheel",g),t.removeEventListener("touchstart",v),t.removeEventListener("touchend",m),h.J()},L:()=>{const[t,o]=e.H();t&&(r(t,o,a),a=!1,o&&e.p()>e.h()&&e.B(1,n()))}}},A=(e,t,o)=>{let n;return[async(r,i)=>{if(!await t())return;n&&n();const s=()=>{const[t,o]=w();return n=()=>{o(!1)},e.p()&&W(n,150),[t,e.W(2,(()=>{o(!0)}))]};if(i&&O())e.B(8,r()),_((async()=>{for(;;){let t=!0;for(let[o,n]=e.S();o<=n;o++)if(e.I(o)){t=!1;break}if(t)break;const[o,n]=s();try{if(!await o)return}finally{n()}}e.B(7),o(r(),i)}));else for(;;){const[t,n]=s();try{if(e.B(7),o(r()),!await t)return}finally{n()}}},()=>{n&&n()}]},L=(e,t)=>{let o,n,r=w(),i=!1;const s=t?"scrollLeft":"scrollTop",l=t?"overflowX":"overflowY",[c,f]=A(e,(()=>r[0]),((e,n)=>{e=B(e,i),n?o.scrollTo({[t?"left":"top"]:e,behavior:"smooth"}):o[s]=e}));return{N(c,u){o=u,t&&(i="rtl"===getComputedStyle(u).direction),n=J(e,u,t,(()=>B(u[s],i)),((t,o,n)=>{if(n){const e=u.style,t=e[l];e[l]="hidden",W((()=>{e[l]=t}))}u[s]=B(e.C()+t,i),o&&f()})),r[1](!0)},v(){n&&n.A(),r[1](!1),r=w()},P:()=>i,V(e){c((()=>e))},X(t){t+=e.C(),c((()=>t))},Y(t,{align:o,smooth:n,offset:r=0}={}){if(t=v(t,0,e.T()-1),"nearest"===o){const n=e.k(t),r=e.C();if(n<r)o="start";else{if(!(n+e.R(t)>r+e.p()))return;o="end"}}c((()=>r+e.O()+e.k(t)+("end"===o?e.R(t)-e.p():"center"===o?(e.R(t)-e.p())/2:0)),n)},q:()=>{n&&n.L()}}},N=(e,t)=>{let o,n,r=w(),i=!1;const s=t?"left":"top",[l]=A(e,(()=>r[0]),((e,t)=>{e=B(e,i);const n=C(T(o));t?n.scroll({[s]:e,behavior:"smooth"}):n.scroll({[s]:e})})),c=(e,t,o,n,r=0)=>{const s=n?"offsetLeft":"offsetTop",l=r+(n&&i?o.innerWidth-e[s]-e.offsetWidth:e[s]),f=e.offsetParent;return e!==t&&f?c(f,t,o,n,l):l};return{N(l){o=l;const f=t?"scrollX":"scrollY",u=T(l),d=C(u);t&&(i="rtl"===getComputedStyle(R(u)).direction),n=J(e,d,t,(()=>B(d[f],i)),((t,o)=>{o?d.scroll({[s]:B(e.C()+t,i)}):d.scrollBy({[s]:B(t,i)})}),(()=>c(l,u.body,d,t))),r[1](!0)},v(){n&&n.A(),o=void 0,r[1](!1),r=w()},P:()=>i,q:()=>{n&&n.L()},Y(n,{align:r,smooth:i,offset:s=0}={}){if(!o)return;if(n=v(n,0,e.T()-1),"nearest"===r){const t=e.k(n),o=e.C();if(t<o)r="start";else{if(!(t+e.R(n)>o+e.p()))return;r="end"}}const f=T(o),u=C(f),d=R(f),a=()=>e.p()-(t?d.clientWidth:d.clientHeight);l((()=>s+c(o,f.body,u,t)+e.k(n)+("end"===r?e.R(n)-(e.p()-a()):"center"===r?(e.R(n)-(e.p()-a()))/2:0)),i)}}},P=(e,t)=>{const o=L(e,!1),n=L(t,!0);return{N(e,t){o.N(e,t),n.N(e,t)},v(){o.v(),n.v()},P:n.P,V(e,t){null!=e&&o.V(e),null!=t&&n.V(t)},X(e,t){null!=e&&o.X(e),null!=t&&n.X(t)},Y(e,t){null!=e&&o.Y(e),null!=t&&n.Y(t)},q(){o.q(),n.q()}}},V=e=>{let t;return{D(o){(t||(t=new(C(T(o)).ResizeObserver)(e))).observe(o)},j(e){t.unobserve(e)},A(){t&&t.disconnect()}}},X=(e,t)=>{let o;const n=t?"width":"height",r=new WeakMap,i=V((t=>{const i=[];for(const{target:s,contentRect:l}of t)if(s.offsetParent)if(s===o)e.B(4,l[n]);else{const e=r.get(s);e!=d&&i.push([e,l[n]])}i.length&&e.B(3,i)}));return{G(e){i.D(o=e)},U:(e,t)=>(r.set(e,t),i.D(e),()=>{r.delete(e),i.j(e)}),v:i.A}},Y=(e,t)=>{const o=t?"width":"height",n=t?"innerWidth":"innerHeight",r=new WeakMap,i=V((t=>{const n=[];for(const{target:e,contentRect:i}of t){if(!e.offsetParent)continue;const t=r.get(e);t!=d&&n.push([t,i[o]])}n.length&&e.B(3,n)}));let s;return{G(t){const o=C(T(t)),r=()=>{e.B(4,o[n])};o.addEventListener("resize",r),_(r),s=()=>{o.removeEventListener("resize",r)}},U:(e,t)=>(r.set(e,t),i.D(e),()=>{r.delete(e),i.j(e)}),v(){s&&s(),i.A()}}},q=(e,t)=>{let o;const n=new WeakMap,r=new Set,i=new Set,s=new Map,l=(e,t)=>`${e}-${t}`,c=V((c=>{const f=new Set,u=new Set;for(const{target:r,contentRect:{width:i,height:d}}of c)if(r.offsetParent)if(r===o)e.B(4,d),t.B(4,i);else{const e=n.get(r);if(e){const[t,o]=e,n=l(t,o),r=s.get(n);let c,a;r?(r[0]!==d&&(c=!0),r[1]!==i&&(a=!0)):c=a=!0,c&&f.add(t),a&&u.add(o),(c||a)&&s.set(n,[d,i])}}if(f.size){const t=[];f.forEach((e=>{let o=0;i.forEach((t=>{const n=s.get(l(e,t));n&&(o=h(o,n[0]))})),o&&t.push([e,o])})),e.B(3,t)}if(u.size){const e=[];u.forEach((t=>{let o=0;r.forEach((e=>{const n=s.get(l(e,t));n&&(o=h(o,n[1]))})),o&&e.push([t,o])})),t.B(3,e)}}));return{G(e){c.D(o=e)},U:(e,t,o)=>(n.set(e,[t,o]),r.add(t),i.add(o),c.D(e),()=>{n.delete(e),c.j(e)}),F(o){for(const[t]of o)for(let o=0;o<e.T();o++)s.delete(l(o,t));t.B(3,o)},K(o){for(const[e]of o)for(let o=0;o<t.T();o++)s.delete(l(e,o));e.B(3,o)},v:c.A}},D=k?t:o,j="current",G=(e,t)=>{if(Array.isArray(e))for(const o of e)G(o,t);else null==e||"boolean"==typeof e||t.push(e)},U=(e,t)=>{const o=e.key;return null!=o?o:"_"+t},F=e=>{const t=n(null);return t[j]||(t[j]=e())},K=e=>{const t=n(e);return D((()=>{t[j]=e}),[e]),t},Q=/*#__PURE__*/r((({Z:t,ee:o,te:r,oe:s,ne:l,re:c,ie:f,se:u})=>{const d=n(null);D((()=>o(d[j],r)),[r]);const a=i((()=>{const e={contain:"layout style",position:l&&u?void 0:"absolute",[f?"height":"width"]:"100%",[f?"top":"left"]:0,[f?"left":"top"]:s,visibility:!l||u?void 0:"hidden"};return f&&(e.display="inline-flex"),e}),[s,l,u,f]);return e(c,"string"==typeof c?{ref:d,style:a,children:t}:{ref:d,style:a,index:r,children:t})})),Z=(e,t)=>i((()=>{if("function"==typeof e)return[o=>e(t[o],o),t.length];const o=(e=>{const t=[];return G(e,t),t})(e);return[e=>o[e],o.length]}),[e,t]),ee=/*#__PURE__*/s((({children:t,data:o,bufferSize:r,itemSize:i,shift:s,horizontal:f,keepMounted:d,cache:a,startMargin:h=0,ssrCount:p,as:g="div",item:v="div",scrollRef:w,onScroll:S,onScrollEnd:$},z)=>{const[y,b]=Z(t,o),x=n(null),I=n(!!p),k=K(S),R=K($),[T,C,M,O]=F((()=>{const e=!!f,t=H(b,i,p,a,!i);return[t,X(t,e),L(t,e),e]}));b!==T.T()&&T.B(5,[b,s]),h!==T.O()&&T.B(6,h);const[W,B]=l(T.m,void 0,T.m),J=T.M(),A=T.h(),N=M.P(),P=[],V=t=>{const o=y(t);return e(Q,{ee:C.U,te:t,oe:T.k(t,N),ne:T.I(t),re:v,Z:o,ie:O,se:I[j]},U(o,t))};if(D((()=>{I[j]=!1,T.W(1,(e=>{e?u(B):B()})),T.W(4,(()=>{k[j]&&k[j](T.C())})),T.W(8,(()=>{R[j]&&R[j]()}));const e=x[j],t=t=>{C.G(t),M.N(e,t)};return w?_((()=>{w[j]&&t(w[j])})):t(e.parentElement),()=>{T.v(),C.v(),M.v()}}),[]),D((()=>{M.q()}),[W]),c(z,(()=>({get cache(){return T._()},get scrollOffset(){return T.C()},get scrollSize(){return E(T)},get viewportSize(){return T.p()},findItemIndex:T.$,getItemOffset:T.k,getItemSize:T.R,scrollToIndex:M.Y,scrollTo:M.V,scrollBy:M.X})),[]),d){const e=new Set(d);for(let[t,o]=T.S(r);t<=o;t++)e.add(t);m([...e]).forEach((e=>{P.push(V(e))}))}else for(let[e,t]=T.S(r);e<=t;e++)P.push(V(e));return e(g,{ref:x,style:{contain:"size style",overflowAnchor:"none",flex:"none",position:"relative",width:O?A:"100%",height:O?"100%":A,pointerEvents:J?"none":void 0},children:P})})),te=/*#__PURE__*/s((({children:t,data:o,bufferSize:n,itemSize:r,shift:i,horizontal:s,keepMounted:l,cache:c,ssrCount:f,item:u,onScroll:d,onScrollEnd:a,style:h,...p},g)=>e("div",{...p,style:{display:s?"inline-block":"block",[s?"overflowX":"overflowY"]:"auto",contain:"strict",width:"100%",height:"100%",...h},children:e(ee,{ref:g,data:o,bufferSize:n,itemSize:r,shift:i,horizontal:s,keepMounted:l,cache:c,ssrCount:f,item:u,onScroll:d,onScrollEnd:a,children:t})}))),oe=/*#__PURE__*/s((({children:t,data:o,bufferSize:r,itemSize:i,shift:s,horizontal:f,cache:d,ssrCount:a,as:h="div",item:p="div",onScroll:g,onScrollEnd:v},m)=>{const[_,w]=Z(t,o),S=n(null),$=K(g),z=K(v),y=n(!!a),[b,x,I,k]=F((()=>{const e=!!f,t=H(w,i,a,d,!i);return[t,Y(t,e),N(t,e),e]}));w!==b.T()&&b.B(5,[w,s]);const[R,T]=l(b.m,void 0,b.m),C=b.M(),M=b.h(),O=I.P(),E=[];D((()=>{y[j]=!1,b.W(1,(e=>{e?u(T):T()})),b.W(4,(()=>{$[j]&&$[j]()})),b.W(8,(()=>{z[j]&&z[j]()}));const e=S[j];return x.G(e),I.N(e),()=>{b.v(),x.v(),I.v()}}),[]),D((()=>{I.q()}),[R]),c(m,(()=>({get cache(){return b._()},get scrollOffset(){return b.C()},get viewportSize(){return b.p()},findItemIndex:b.$,getItemOffset:b.k,getItemSize:b.R,scrollToIndex:I.Y})),[]);for(let[t,o]=b.S(r);t<=o;t++){const o=_(t);E.push(e(Q,{ee:x.U,te:t,oe:b.k(t,O),ne:b.I(t),re:p,Z:o,ie:k,se:y[j]},U(o,t)))}return e(h,{ref:S,style:{contain:"size style",overflowAnchor:"none",flex:"none",position:"relative",width:k?M:"100%",height:k?"100%":M,pointerEvents:C?"none":void 0},children:E})})),ne=(e,t)=>`${e}-${t}`,re=/*#__PURE__*/r((({Z:t,ee:o,le:r,ce:s,fe:l,ue:c,de:f,ae:u,ne:d,he:a})=>{const h=n(null);return D((()=>o.U(h[j],r,s)),[s,r]),e(a,{ref:h,style:i((()=>({contain:"layout style",display:"grid",position:"absolute",top:l,left:c,visibility:d?"hidden":void 0,minHeight:f,minWidth:u})),[l,c,u,f,d]),children:t})})),ie=/*#__PURE__*/s((({children:t,row:o,col:r,cellHeight:s=40,cellWidth:d=100,bufferSize:a,ssrRowCount:h,ssrColCount:p,item:g="div",domRef:v,innerDomRef:m,onScroll:_,onScrollEnd:w,style:S,...$},z)=>{const[y,b,x,I]=F((()=>{const e=H(o,s,h),t=H(r,d,p);return[e,t,q(e,t),P(e,t)]}));o!==y.T()&&y.B(5,[o]),r!==b.T()&&b.B(5,[r]);const[k,R]=l(y.m,void 0,y.m),[T,C]=l(b.m,void 0,b.m),M=y.M(),O=b.M(),W=E(y),B=E(b),J=n(null),A=K(_),L=K(w);D((()=>{y.W(1,(e=>{e?u(R):R()})),b.W(1,(e=>{e?u(C):C()})),y.W(4,(()=>{A[j]&&A[j](y.C())})),y.W(8,(()=>{L[j]&&L[j]()}));const e=J[j],t=e.parentElement;return x.G(t),I.N(e,t),()=>{y.v(),b.v(),x.v(),I.v()}}),[]),D((()=>{I.q()}),[k,T]),c(z,(()=>({get scrollTop(){return y.C()},get scrollLeft(){return b.C()},get scrollHeight(){return E(y)},get scrollWidth(){return E(b)},get viewportHeight(){return y.p()},get viewportWidth(){return b.p()},findRowIndex:y.$,findColIndex:b.$,getRowOffset:y.k,getColOffset:b.k,getRowSize:y.R,getColSize:b.R,resizeCols(e){x.F(e)},resizeRows(e){x.K(e)},scrollToIndex:I.Y,scrollTo:I.V,scrollBy:I.X})),[]);const N=i((()=>{const e=new Map;return(o,n)=>{let r=e.get(ne(o,n));return r||e.set(ne(o,n),r=t({rowIndex:o,colIndex:n})),r}}),[t]),V=I.P(),[X,Y]=y.S(a),[G,U]=b.S(a),Q=[];for(let t=X;t<=Y;t++)for(let o=G;o<=U;o++)Q.push(e(re,{ee:x,le:t,ce:o,fe:y.k(t),ue:b.k(o,V),de:y.R(t),ae:b.R(o),ne:y.I(t)||b.I(o),he:g,Z:N(t,o)},ne(t,o)));return e("div",{ref:v,...$,style:{overflow:"auto",contain:"strict",width:"100%",height:"100%",...S},children:e("div",{ref:(Z=[J,m],f((e=>{for(const t of Z)t&&("function"==typeof t?t(e):t&&(t.current=e))}),Z)),style:{contain:"size style",overflowAnchor:"none",flex:"none",position:"relative",width:B,height:W,pointerEvents:M||O?"none":void 0},children:Q})});var Z}));export{te as VList,ee as Virtualizer,oe as WindowVirtualizer,ie as experimental_VGrid};
|
|
2
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
import { useLayoutEffect as t, useEffect as o, useRef as n, memo as r, useMemo as i, forwardRef as s, useReducer as l, useImperativeHandle as c, useCallback as f } from "react";
|
|
5
|
+
|
|
6
|
+
import { flushSync as u } from "react-dom";
|
|
7
|
+
|
|
8
|
+
const d = null, {min: a, max: h, abs: p, floor: g} = Math, v = (e, t, o) => a(o, h(t, e)), m = e => [ ...e ].sort(((e, t) => e - t)), _ = "function" == typeof queueMicrotask ? queueMicrotask : e => {
|
|
9
|
+
Promise.resolve().then(e);
|
|
10
|
+
}, w = () => {
|
|
11
|
+
let e;
|
|
12
|
+
return [ new Promise((t => {
|
|
13
|
+
e = t;
|
|
14
|
+
})), e ];
|
|
15
|
+
}, S = e => {
|
|
16
|
+
let t;
|
|
17
|
+
return () => (e && (t = e(), e = void 0), t);
|
|
18
|
+
}, $ = (e, t, o) => {
|
|
19
|
+
const n = o ? "unshift" : "push";
|
|
20
|
+
for (let o = 0; o < t; o++) e[n](-1);
|
|
21
|
+
return e;
|
|
22
|
+
}, z = (e, t) => {
|
|
23
|
+
const o = e.t[t];
|
|
24
|
+
return -1 === o ? e.o : o;
|
|
25
|
+
}, y = (e, t, o) => {
|
|
26
|
+
const n = -1 === e.t[t];
|
|
27
|
+
return e.t[t] = o, e.i = a(t, e.i), n;
|
|
28
|
+
}, b = (e, t) => {
|
|
29
|
+
if (!e.l) return 0;
|
|
30
|
+
if (e.i >= t) return e.u[t];
|
|
31
|
+
e.i < 0 && (e.u[0] = 0, e.i = 0);
|
|
32
|
+
let o = e.i, n = e.u[o];
|
|
33
|
+
for (;o < t; ) n += z(e, o), e.u[++o] = n;
|
|
34
|
+
return e.i = t, n;
|
|
35
|
+
}, x = (e, t, o = 0, n = e.l - 1) => {
|
|
36
|
+
let r = o;
|
|
37
|
+
for (;o <= n; ) {
|
|
38
|
+
const i = g((o + n) / 2);
|
|
39
|
+
b(e, i) <= t ? (r = i, o = i + 1) : n = i - 1;
|
|
40
|
+
}
|
|
41
|
+
return v(r, 0, e.l - 1);
|
|
42
|
+
}, I = (e, t, o) => {
|
|
43
|
+
const n = t - e.l;
|
|
44
|
+
return e.i = o ? -1 : a(t - 1, e.i), e.l = t, n > 0 ? ($(e.u, n), $(e.t, n, o),
|
|
45
|
+
e.o * n) : (e.u.splice(n), (o ? e.t.splice(0, -n) : e.t.splice(n)).reduce(((t, o) => t - (-1 === o ? e.o : o)), 0));
|
|
46
|
+
}, k = "undefined" != typeof window, R = e => e.documentElement, T = e => e.ownerDocument, C = e => e.defaultView, M = /*#__PURE__*/ S((() => !!/iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0)), O = /*#__PURE__*/ S((() => "scrollBehavior" in R(document).style)), E = e => h(e.h(), e.p()), H = (e, t = 40, o = 0, n, r = !1) => {
|
|
47
|
+
let i = !!o, s = 1, l = 0, c = 0, f = 0, u = 0, g = 0, v = 0, _ = 0, w = 0, S = d, k = [ 0, i ? h(o - 1, 0) : -1 ], R = 0, T = !1;
|
|
48
|
+
const C = ((e, t, o) => ({
|
|
49
|
+
o: t,
|
|
50
|
+
t: o ? $(o.slice(0, a(e, o.length)), h(0, e - o.length)) : $([], e),
|
|
51
|
+
l: e,
|
|
52
|
+
i: -1,
|
|
53
|
+
u: $([], e + 1)
|
|
54
|
+
}))(e, n ? n[1] : t, n && n[0]), O = new Set, E = () => f - c, H = () => E() + g + u, W = (e, t) => ((e, t, o, n) => {
|
|
55
|
+
if (n = a(n, e.l - 1), b(e, n) <= t) {
|
|
56
|
+
const r = x(e, o, n);
|
|
57
|
+
return [ x(e, t, n, r), r ];
|
|
58
|
+
}
|
|
59
|
+
{
|
|
60
|
+
const r = x(e, t, void 0, n);
|
|
61
|
+
return [ r, x(e, o, r) ];
|
|
62
|
+
}
|
|
63
|
+
})(C, e, t, k[0]), B = () => b(C, C.l), J = (e, t) => {
|
|
64
|
+
const o = b(C, e) - g;
|
|
65
|
+
return t ? B() - o - A(e) : o;
|
|
66
|
+
}, A = e => z(C, e), L = (e, t = -1) => C.t[e] === t, N = e => {
|
|
67
|
+
e && (M() && 0 !== _ || S && 1 === w ? g += e : u += e);
|
|
68
|
+
};
|
|
69
|
+
return {
|
|
70
|
+
v: () => {
|
|
71
|
+
O.clear();
|
|
72
|
+
},
|
|
73
|
+
m: () => s,
|
|
74
|
+
_: () => (e => [ e.t.slice(), e.o ])(C),
|
|
75
|
+
S: (e = 200) => {
|
|
76
|
+
if (!T || i) return k;
|
|
77
|
+
let t, o;
|
|
78
|
+
if (v) [t, o] = k; else {
|
|
79
|
+
let n = h(0, H()), i = n + l;
|
|
80
|
+
r || (e = h(0, e), 1 !== _ && (n -= e), 2 !== _ && (i += e)), [t, o] = k = W(h(0, n), h(0, i)),
|
|
81
|
+
S && (t = a(t, S[0]), o = h(o, S[1]));
|
|
82
|
+
}
|
|
83
|
+
return [ h(t, 0), a(o, C.l - 1) ];
|
|
84
|
+
},
|
|
85
|
+
$: e => x(C, e - c),
|
|
86
|
+
I: L,
|
|
87
|
+
k: J,
|
|
88
|
+
R: A,
|
|
89
|
+
T: () => C.l,
|
|
90
|
+
C: () => f,
|
|
91
|
+
M: () => 0 !== _,
|
|
92
|
+
p: () => l,
|
|
93
|
+
O: () => c,
|
|
94
|
+
h: B,
|
|
95
|
+
H: () => (v = u, u = 0, [ v, 2 === w ]),
|
|
96
|
+
W: (e, t) => {
|
|
97
|
+
const o = [ e, t ];
|
|
98
|
+
return O.add(o), () => {
|
|
99
|
+
O.delete(o);
|
|
100
|
+
};
|
|
101
|
+
},
|
|
102
|
+
B: (e, t) => {
|
|
103
|
+
let o, n, a = 0;
|
|
104
|
+
switch (e) {
|
|
105
|
+
case 1:
|
|
106
|
+
{
|
|
107
|
+
if (t === f && 0 === w) break;
|
|
108
|
+
const e = v;
|
|
109
|
+
v = 0;
|
|
110
|
+
const o = t - f, r = p(o);
|
|
111
|
+
e && r < p(e) + 1 || 0 !== w || (_ = o < 0 ? 2 : 1), i && (i = !1), f = t, a = 4;
|
|
112
|
+
const s = E();
|
|
113
|
+
s >= -l && s <= B() && (a += 1, n = r > l);
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
case 2:
|
|
118
|
+
a = 8, 0 !== _ && (o = !0, a += 1), _ = 0, w = 0, S = d;
|
|
119
|
+
break;
|
|
120
|
+
|
|
121
|
+
case 3:
|
|
122
|
+
{
|
|
123
|
+
const e = t.filter((([e, t]) => !L(e, t)));
|
|
124
|
+
if (!e.length) break;
|
|
125
|
+
N(e.reduce(((e, [t, o]) => ((2 === w || (S && 1 === w ? t < S[0] : J(t + (0 === _ && 0 === w ? 1 : 0)) < E())) && (e += o - A(t)),
|
|
126
|
+
e)), 0));
|
|
127
|
+
for (const [t, o] of e) {
|
|
128
|
+
const e = A(t), n = y(C, t, o);
|
|
129
|
+
r && (R += n ? o : o - e);
|
|
130
|
+
}
|
|
131
|
+
r && l && R > l && (N(((e, t) => {
|
|
132
|
+
let o = 0;
|
|
133
|
+
const n = [];
|
|
134
|
+
e.t.forEach(((e, r) => {
|
|
135
|
+
-1 !== e && (n.push(e), r < t && o++);
|
|
136
|
+
})), e.i = -1;
|
|
137
|
+
const r = m(n), i = r.length, s = i / 2 | 0, l = i % 2 == 0 ? (r[s - 1] + r[s]) / 2 : r[s], c = e.o;
|
|
138
|
+
return ((e.o = l) - c) * h(t - o, 0);
|
|
139
|
+
})(C, x(C, H()))), r = !1), a = 3, n = !0;
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
case 4:
|
|
144
|
+
l !== t && (l || (T = n = !0), l = t, a = 3);
|
|
145
|
+
break;
|
|
146
|
+
|
|
147
|
+
case 5:
|
|
148
|
+
t[1] ? (N(I(C, t[0], !0)), w = 2, a = 1) : (I(C, t[0]), a = 1);
|
|
149
|
+
break;
|
|
150
|
+
|
|
151
|
+
case 6:
|
|
152
|
+
c = t;
|
|
153
|
+
break;
|
|
154
|
+
|
|
155
|
+
case 7:
|
|
156
|
+
w = 1;
|
|
157
|
+
break;
|
|
158
|
+
|
|
159
|
+
case 8:
|
|
160
|
+
S = W(t, t + l), a = 1;
|
|
161
|
+
}
|
|
162
|
+
a && (s = 1 + (2147483647 & s), o && g && (u += g, g = 0), O.forEach((([e, t]) => {
|
|
163
|
+
a & e && t(n);
|
|
164
|
+
})));
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
}, W = setTimeout, B = (e, t) => t ? -e : e, J = (e, t, o, n, r, i) => {
|
|
168
|
+
const s = Date.now;
|
|
169
|
+
let l = 0, c = !1, f = !1, u = !1, a = !1;
|
|
170
|
+
const h = (() => {
|
|
171
|
+
let t;
|
|
172
|
+
const o = () => {
|
|
173
|
+
t != d && clearTimeout(t);
|
|
174
|
+
}, n = () => {
|
|
175
|
+
o(), t = W((() => {
|
|
176
|
+
t = d, (() => {
|
|
177
|
+
if (c || f) return c = !1, void h();
|
|
178
|
+
u = !1, e.B(2);
|
|
179
|
+
})();
|
|
180
|
+
}), 150);
|
|
181
|
+
};
|
|
182
|
+
return n.J = o, n;
|
|
183
|
+
})(), p = () => {
|
|
184
|
+
l = s(), u && (a = !0), i && e.B(6, i()), e.B(1, n()), h();
|
|
185
|
+
}, g = t => {
|
|
186
|
+
if (c || !e.M() || t.ctrlKey) return;
|
|
187
|
+
const n = s() - l;
|
|
188
|
+
150 > n && 50 < n && (o ? t.deltaX : t.deltaY) && (c = !0);
|
|
189
|
+
}, v = () => {
|
|
190
|
+
f = !0, u = a = !1;
|
|
191
|
+
}, m = () => {
|
|
192
|
+
f = !1, M() && (u = !0);
|
|
193
|
+
};
|
|
194
|
+
return t.addEventListener("scroll", p), t.addEventListener("wheel", g, {
|
|
195
|
+
passive: !0
|
|
196
|
+
}), t.addEventListener("touchstart", v, {
|
|
197
|
+
passive: !0
|
|
198
|
+
}), t.addEventListener("touchend", m, {
|
|
199
|
+
passive: !0
|
|
200
|
+
}), {
|
|
201
|
+
A: () => {
|
|
202
|
+
t.removeEventListener("scroll", p), t.removeEventListener("wheel", g), t.removeEventListener("touchstart", v),
|
|
203
|
+
t.removeEventListener("touchend", m), h.J();
|
|
204
|
+
},
|
|
205
|
+
L: () => {
|
|
206
|
+
const [t, o] = e.H();
|
|
207
|
+
t && (r(t, o, a), a = !1, o && e.p() > e.h() && e.B(1, n()));
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
}, A = (e, t, o) => {
|
|
211
|
+
let n;
|
|
212
|
+
return [ async (r, i) => {
|
|
213
|
+
if (!await t()) return;
|
|
214
|
+
n && n();
|
|
215
|
+
const s = () => {
|
|
216
|
+
const [t, o] = w();
|
|
217
|
+
return n = () => {
|
|
218
|
+
o(!1);
|
|
219
|
+
}, e.p() && W(n, 150), [ t, e.W(2, (() => {
|
|
220
|
+
o(!0);
|
|
221
|
+
})) ];
|
|
222
|
+
};
|
|
223
|
+
if (i && O()) e.B(8, r()), _((async () => {
|
|
224
|
+
for (;;) {
|
|
225
|
+
let t = !0;
|
|
226
|
+
for (let [o, n] = e.S(); o <= n; o++) if (e.I(o)) {
|
|
227
|
+
t = !1;
|
|
228
|
+
break;
|
|
229
|
+
}
|
|
230
|
+
if (t) break;
|
|
231
|
+
const [o, n] = s();
|
|
232
|
+
try {
|
|
233
|
+
if (!await o) return;
|
|
234
|
+
} finally {
|
|
235
|
+
n();
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
e.B(7), o(r(), i);
|
|
239
|
+
})); else for (;;) {
|
|
240
|
+
const [t, n] = s();
|
|
241
|
+
try {
|
|
242
|
+
if (e.B(7), o(r()), !await t) return;
|
|
243
|
+
} finally {
|
|
244
|
+
n();
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}, () => {
|
|
248
|
+
n && n();
|
|
249
|
+
} ];
|
|
250
|
+
}, L = (e, t) => {
|
|
251
|
+
let o, n, r = w(), i = !1;
|
|
252
|
+
const s = t ? "scrollLeft" : "scrollTop", l = t ? "overflowX" : "overflowY", [c, f] = A(e, (() => r[0]), ((e, n) => {
|
|
253
|
+
e = B(e, i), n ? o.scrollTo({
|
|
254
|
+
[t ? "left" : "top"]: e,
|
|
255
|
+
behavior: "smooth"
|
|
256
|
+
}) : o[s] = e;
|
|
257
|
+
}));
|
|
258
|
+
return {
|
|
259
|
+
N(c, u) {
|
|
260
|
+
o = u, t && (i = "rtl" === getComputedStyle(u).direction), n = J(e, u, t, (() => B(u[s], i)), ((t, o, n) => {
|
|
261
|
+
if (n) {
|
|
262
|
+
const e = u.style, t = e[l];
|
|
263
|
+
e[l] = "hidden", W((() => {
|
|
264
|
+
e[l] = t;
|
|
265
|
+
}));
|
|
266
|
+
}
|
|
267
|
+
u[s] = B(e.C() + t, i), o && f();
|
|
268
|
+
})), r[1](!0);
|
|
269
|
+
},
|
|
270
|
+
v() {
|
|
271
|
+
n && n.A(), r[1](!1), r = w();
|
|
272
|
+
},
|
|
273
|
+
P: () => i,
|
|
274
|
+
V(e) {
|
|
275
|
+
c((() => e));
|
|
276
|
+
},
|
|
277
|
+
X(t) {
|
|
278
|
+
t += e.C(), c((() => t));
|
|
279
|
+
},
|
|
280
|
+
Y(t, {align: o, smooth: n, offset: r = 0} = {}) {
|
|
281
|
+
if (t = v(t, 0, e.T() - 1), "nearest" === o) {
|
|
282
|
+
const n = e.k(t), r = e.C();
|
|
283
|
+
if (n < r) o = "start"; else {
|
|
284
|
+
if (!(n + e.R(t) > r + e.p())) return;
|
|
285
|
+
o = "end";
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
c((() => r + e.O() + e.k(t) + ("end" === o ? e.R(t) - e.p() : "center" === o ? (e.R(t) - e.p()) / 2 : 0)), n);
|
|
289
|
+
},
|
|
290
|
+
q: () => {
|
|
291
|
+
n && n.L();
|
|
292
|
+
}
|
|
293
|
+
};
|
|
294
|
+
}, N = (e, t) => {
|
|
295
|
+
let o, n, r = w(), i = !1;
|
|
296
|
+
const s = t ? "left" : "top", [l] = A(e, (() => r[0]), ((e, t) => {
|
|
297
|
+
e = B(e, i);
|
|
298
|
+
const n = C(T(o));
|
|
299
|
+
t ? n.scroll({
|
|
300
|
+
[s]: e,
|
|
301
|
+
behavior: "smooth"
|
|
302
|
+
}) : n.scroll({
|
|
303
|
+
[s]: e
|
|
304
|
+
});
|
|
305
|
+
})), c = (e, t, o, n, r = 0) => {
|
|
306
|
+
const s = n ? "offsetLeft" : "offsetTop", l = r + (n && i ? o.innerWidth - e[s] - e.offsetWidth : e[s]), f = e.offsetParent;
|
|
307
|
+
return e !== t && f ? c(f, t, o, n, l) : l;
|
|
308
|
+
};
|
|
309
|
+
return {
|
|
310
|
+
N(l) {
|
|
311
|
+
o = l;
|
|
312
|
+
const f = t ? "scrollX" : "scrollY", u = T(l), d = C(u);
|
|
313
|
+
t && (i = "rtl" === getComputedStyle(R(u)).direction), n = J(e, d, t, (() => B(d[f], i)), ((t, o) => {
|
|
314
|
+
o ? d.scroll({
|
|
315
|
+
[s]: B(e.C() + t, i)
|
|
316
|
+
}) : d.scrollBy({
|
|
317
|
+
[s]: B(t, i)
|
|
318
|
+
});
|
|
319
|
+
}), (() => c(l, u.body, d, t))), r[1](!0);
|
|
320
|
+
},
|
|
321
|
+
v() {
|
|
322
|
+
n && n.A(), o = void 0, r[1](!1), r = w();
|
|
323
|
+
},
|
|
324
|
+
P: () => i,
|
|
325
|
+
q: () => {
|
|
326
|
+
n && n.L();
|
|
327
|
+
},
|
|
328
|
+
Y(n, {align: r, smooth: i, offset: s = 0} = {}) {
|
|
329
|
+
if (!o) return;
|
|
330
|
+
if (n = v(n, 0, e.T() - 1), "nearest" === r) {
|
|
331
|
+
const t = e.k(n), o = e.C();
|
|
332
|
+
if (t < o) r = "start"; else {
|
|
333
|
+
if (!(t + e.R(n) > o + e.p())) return;
|
|
334
|
+
r = "end";
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
const f = T(o), u = C(f), d = R(f), a = () => e.p() - (t ? d.clientWidth : d.clientHeight);
|
|
338
|
+
l((() => s + c(o, f.body, u, t) + e.k(n) + ("end" === r ? e.R(n) - (e.p() - a()) : "center" === r ? (e.R(n) - (e.p() - a())) / 2 : 0)), i);
|
|
339
|
+
}
|
|
340
|
+
};
|
|
341
|
+
}, P = (e, t) => {
|
|
342
|
+
const o = L(e, !1), n = L(t, !0);
|
|
343
|
+
return {
|
|
344
|
+
N(e, t) {
|
|
345
|
+
o.N(e, t), n.N(e, t);
|
|
346
|
+
},
|
|
347
|
+
v() {
|
|
348
|
+
o.v(), n.v();
|
|
349
|
+
},
|
|
350
|
+
P: n.P,
|
|
351
|
+
V(e, t) {
|
|
352
|
+
null != e && o.V(e), null != t && n.V(t);
|
|
353
|
+
},
|
|
354
|
+
X(e, t) {
|
|
355
|
+
null != e && o.X(e), null != t && n.X(t);
|
|
356
|
+
},
|
|
357
|
+
Y(e, t) {
|
|
358
|
+
null != e && o.Y(e), null != t && n.Y(t);
|
|
359
|
+
},
|
|
360
|
+
q() {
|
|
361
|
+
o.q(), n.q();
|
|
362
|
+
}
|
|
363
|
+
};
|
|
364
|
+
}, V = e => {
|
|
365
|
+
let t;
|
|
366
|
+
return {
|
|
367
|
+
D(o) {
|
|
368
|
+
(t || (t = new (C(T(o)).ResizeObserver)(e))).observe(o);
|
|
369
|
+
},
|
|
370
|
+
j(e) {
|
|
371
|
+
t.unobserve(e);
|
|
372
|
+
},
|
|
373
|
+
A() {
|
|
374
|
+
t && t.disconnect();
|
|
375
|
+
}
|
|
376
|
+
};
|
|
377
|
+
}, X = (e, t) => {
|
|
378
|
+
let o;
|
|
379
|
+
const n = t ? "width" : "height", r = new WeakMap, i = V((t => {
|
|
380
|
+
const i = [];
|
|
381
|
+
for (const {target: s, contentRect: l} of t) if (s.offsetParent) if (s === o) e.B(4, l[n]); else {
|
|
382
|
+
const e = r.get(s);
|
|
383
|
+
e != d && i.push([ e, l[n] ]);
|
|
384
|
+
}
|
|
385
|
+
i.length && e.B(3, i);
|
|
386
|
+
}));
|
|
387
|
+
return {
|
|
388
|
+
G(e) {
|
|
389
|
+
i.D(o = e);
|
|
390
|
+
},
|
|
391
|
+
U: (e, t) => (r.set(e, t), i.D(e), () => {
|
|
392
|
+
r.delete(e), i.j(e);
|
|
393
|
+
}),
|
|
394
|
+
v: i.A
|
|
395
|
+
};
|
|
396
|
+
}, Y = (e, t) => {
|
|
397
|
+
const o = t ? "width" : "height", n = t ? "innerWidth" : "innerHeight", r = new WeakMap, i = V((t => {
|
|
398
|
+
const n = [];
|
|
399
|
+
for (const {target: e, contentRect: i} of t) {
|
|
400
|
+
if (!e.offsetParent) continue;
|
|
401
|
+
const t = r.get(e);
|
|
402
|
+
t != d && n.push([ t, i[o] ]);
|
|
403
|
+
}
|
|
404
|
+
n.length && e.B(3, n);
|
|
405
|
+
}));
|
|
406
|
+
let s;
|
|
407
|
+
return {
|
|
408
|
+
G(t) {
|
|
409
|
+
const o = C(T(t)), r = () => {
|
|
410
|
+
e.B(4, o[n]);
|
|
411
|
+
};
|
|
412
|
+
o.addEventListener("resize", r), _(r), s = () => {
|
|
413
|
+
o.removeEventListener("resize", r);
|
|
414
|
+
};
|
|
415
|
+
},
|
|
416
|
+
U: (e, t) => (r.set(e, t), i.D(e), () => {
|
|
417
|
+
r.delete(e), i.j(e);
|
|
418
|
+
}),
|
|
419
|
+
v() {
|
|
420
|
+
s && s(), i.A();
|
|
421
|
+
}
|
|
422
|
+
};
|
|
423
|
+
}, q = (e, t) => {
|
|
424
|
+
let o;
|
|
425
|
+
const n = new WeakMap, r = new Set, i = new Set, s = new Map, l = (e, t) => `${e}-${t}`, c = V((c => {
|
|
426
|
+
const f = new Set, u = new Set;
|
|
427
|
+
for (const {target: r, contentRect: {width: i, height: d}} of c) if (r.offsetParent) if (r === o) e.B(4, d),
|
|
428
|
+
t.B(4, i); else {
|
|
429
|
+
const e = n.get(r);
|
|
430
|
+
if (e) {
|
|
431
|
+
const [t, o] = e, n = l(t, o), r = s.get(n);
|
|
432
|
+
let c, a;
|
|
433
|
+
r ? (r[0] !== d && (c = !0), r[1] !== i && (a = !0)) : c = a = !0, c && f.add(t),
|
|
434
|
+
a && u.add(o), (c || a) && s.set(n, [ d, i ]);
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
if (f.size) {
|
|
438
|
+
const t = [];
|
|
439
|
+
f.forEach((e => {
|
|
440
|
+
let o = 0;
|
|
441
|
+
i.forEach((t => {
|
|
442
|
+
const n = s.get(l(e, t));
|
|
443
|
+
n && (o = h(o, n[0]));
|
|
444
|
+
})), o && t.push([ e, o ]);
|
|
445
|
+
})), e.B(3, t);
|
|
446
|
+
}
|
|
447
|
+
if (u.size) {
|
|
448
|
+
const e = [];
|
|
449
|
+
u.forEach((t => {
|
|
450
|
+
let o = 0;
|
|
451
|
+
r.forEach((e => {
|
|
452
|
+
const n = s.get(l(e, t));
|
|
453
|
+
n && (o = h(o, n[1]));
|
|
454
|
+
})), o && e.push([ t, o ]);
|
|
455
|
+
})), t.B(3, e);
|
|
456
|
+
}
|
|
457
|
+
}));
|
|
458
|
+
return {
|
|
459
|
+
G(e) {
|
|
460
|
+
c.D(o = e);
|
|
461
|
+
},
|
|
462
|
+
U: (e, t, o) => (n.set(e, [ t, o ]), r.add(t), i.add(o), c.D(e), () => {
|
|
463
|
+
n.delete(e), c.j(e);
|
|
464
|
+
}),
|
|
465
|
+
F(o) {
|
|
466
|
+
for (const [t] of o) for (let o = 0; o < e.T(); o++) s.delete(l(o, t));
|
|
467
|
+
t.B(3, o);
|
|
468
|
+
},
|
|
469
|
+
K(o) {
|
|
470
|
+
for (const [e] of o) for (let o = 0; o < t.T(); o++) s.delete(l(e, o));
|
|
471
|
+
e.B(3, o);
|
|
472
|
+
},
|
|
473
|
+
v: c.A
|
|
474
|
+
};
|
|
475
|
+
}, D = k ? t : o, j = "current", G = (e, t) => {
|
|
476
|
+
if (Array.isArray(e)) for (const o of e) G(o, t); else null == e || "boolean" == typeof e || t.push(e);
|
|
477
|
+
}, U = (e, t) => {
|
|
478
|
+
const o = e.key;
|
|
479
|
+
return null != o ? o : "_" + t;
|
|
480
|
+
}, F = e => {
|
|
481
|
+
const t = n(null);
|
|
482
|
+
return t[j] || (t[j] = e());
|
|
483
|
+
}, K = e => {
|
|
484
|
+
const t = n(e);
|
|
485
|
+
return D((() => {
|
|
486
|
+
t[j] = e;
|
|
487
|
+
}), [ e ]), t;
|
|
488
|
+
}, Q = /*#__PURE__*/ r((({Z: t, ee: o, te: r, oe: s, ne: l, re: c, ie: f, se: u}) => {
|
|
489
|
+
const d = n(null);
|
|
490
|
+
D((() => o(d[j], r)), [ r ]);
|
|
491
|
+
const a = i((() => {
|
|
492
|
+
const e = {
|
|
493
|
+
contain: "layout style",
|
|
494
|
+
position: l && u ? void 0 : "absolute",
|
|
495
|
+
[f ? "height" : "width"]: "100%",
|
|
496
|
+
[f ? "top" : "left"]: 0,
|
|
497
|
+
[f ? "left" : "top"]: s,
|
|
498
|
+
visibility: !l || u ? void 0 : "hidden"
|
|
499
|
+
};
|
|
500
|
+
return f && (e.display = "inline-flex"), e;
|
|
501
|
+
}), [ s, l, u, f ]);
|
|
502
|
+
return e(c, "string" == typeof c ? {
|
|
503
|
+
ref: d,
|
|
504
|
+
style: a,
|
|
505
|
+
children: t
|
|
506
|
+
} : {
|
|
507
|
+
ref: d,
|
|
508
|
+
style: a,
|
|
509
|
+
index: r,
|
|
510
|
+
children: t
|
|
511
|
+
});
|
|
512
|
+
})), Z = (e, t) => i((() => {
|
|
513
|
+
if ("function" == typeof e) return [ o => e(t[o], o), t.length ];
|
|
514
|
+
const o = (e => {
|
|
515
|
+
const t = [];
|
|
516
|
+
return G(e, t), t;
|
|
517
|
+
})(e);
|
|
518
|
+
return [ e => o[e], o.length ];
|
|
519
|
+
}), [ e, t ]), ee = /*#__PURE__*/ s((({children: t, data: o, bufferSize: r, itemSize: i, shift: s, horizontal: f, keepMounted: d, cache: a, startMargin: h = 0, ssrCount: p, as: g = "div", item: v = "div", scrollRef: w, onScroll: S, onScrollEnd: $}, z) => {
|
|
520
|
+
const [y, b] = Z(t, o), x = n(null), I = n(!!p), k = K(S), R = K($), [T, C, M, O] = F((() => {
|
|
521
|
+
const e = !!f, t = H(b, i, p, a, !i);
|
|
522
|
+
return [ t, X(t, e), L(t, e), e ];
|
|
523
|
+
}));
|
|
524
|
+
b !== T.T() && T.B(5, [ b, s ]), h !== T.O() && T.B(6, h);
|
|
525
|
+
const [W, B] = l(T.m, void 0, T.m), J = T.M(), A = T.h(), N = M.P(), P = [], V = t => {
|
|
526
|
+
const o = y(t);
|
|
527
|
+
return e(Q, {
|
|
528
|
+
ee: C.U,
|
|
529
|
+
te: t,
|
|
530
|
+
oe: T.k(t, N),
|
|
531
|
+
ne: T.I(t),
|
|
532
|
+
re: v,
|
|
533
|
+
Z: o,
|
|
534
|
+
ie: O,
|
|
535
|
+
se: I[j]
|
|
536
|
+
}, U(o, t));
|
|
537
|
+
};
|
|
538
|
+
if (D((() => {
|
|
539
|
+
I[j] = !1, T.W(1, (e => {
|
|
540
|
+
e ? u(B) : B();
|
|
541
|
+
})), T.W(4, (() => {
|
|
542
|
+
k[j] && k[j](T.C());
|
|
543
|
+
})), T.W(8, (() => {
|
|
544
|
+
R[j] && R[j]();
|
|
545
|
+
}));
|
|
546
|
+
const e = x[j], t = t => {
|
|
547
|
+
C.G(t), M.N(e, t);
|
|
548
|
+
};
|
|
549
|
+
return w ? _((() => {
|
|
550
|
+
w[j] && t(w[j]);
|
|
551
|
+
})) : t(e.parentElement), () => {
|
|
552
|
+
T.v(), C.v(), M.v();
|
|
553
|
+
};
|
|
554
|
+
}), []), D((() => {
|
|
555
|
+
M.q();
|
|
556
|
+
}), [ W ]), c(z, (() => ({
|
|
557
|
+
get cache() {
|
|
558
|
+
return T._();
|
|
559
|
+
},
|
|
560
|
+
get scrollOffset() {
|
|
561
|
+
return T.C();
|
|
562
|
+
},
|
|
563
|
+
get scrollSize() {
|
|
564
|
+
return E(T);
|
|
565
|
+
},
|
|
566
|
+
get viewportSize() {
|
|
567
|
+
return T.p();
|
|
568
|
+
},
|
|
569
|
+
findItemIndex: T.$,
|
|
570
|
+
getItemOffset: T.k,
|
|
571
|
+
getItemSize: T.R,
|
|
572
|
+
scrollToIndex: M.Y,
|
|
573
|
+
scrollTo: M.V,
|
|
574
|
+
scrollBy: M.X
|
|
575
|
+
})), []), d) {
|
|
576
|
+
const e = new Set(d);
|
|
577
|
+
for (let [t, o] = T.S(r); t <= o; t++) e.add(t);
|
|
578
|
+
m([ ...e ]).forEach((e => {
|
|
579
|
+
P.push(V(e));
|
|
580
|
+
}));
|
|
581
|
+
} else for (let [e, t] = T.S(r); e <= t; e++) P.push(V(e));
|
|
582
|
+
return e(g, {
|
|
583
|
+
ref: x,
|
|
584
|
+
style: {
|
|
585
|
+
contain: "size style",
|
|
586
|
+
overflowAnchor: "none",
|
|
587
|
+
flex: "none",
|
|
588
|
+
position: "relative",
|
|
589
|
+
width: O ? A : "100%",
|
|
590
|
+
height: O ? "100%" : A,
|
|
591
|
+
pointerEvents: J ? "none" : void 0
|
|
592
|
+
},
|
|
593
|
+
children: P
|
|
594
|
+
});
|
|
595
|
+
})), te = /*#__PURE__*/ s((({children: t, data: o, bufferSize: n, itemSize: r, shift: i, horizontal: s, keepMounted: l, cache: c, ssrCount: f, item: u, onScroll: d, onScrollEnd: a, style: h, ...p}, g) => e("div", {
|
|
596
|
+
...p,
|
|
597
|
+
style: {
|
|
598
|
+
display: s ? "inline-block" : "block",
|
|
599
|
+
[s ? "overflowX" : "overflowY"]: "auto",
|
|
600
|
+
contain: "strict",
|
|
601
|
+
width: "100%",
|
|
602
|
+
height: "100%",
|
|
603
|
+
...h
|
|
604
|
+
},
|
|
605
|
+
children: e(ee, {
|
|
606
|
+
ref: g,
|
|
607
|
+
data: o,
|
|
608
|
+
bufferSize: n,
|
|
609
|
+
itemSize: r,
|
|
610
|
+
shift: i,
|
|
611
|
+
horizontal: s,
|
|
612
|
+
keepMounted: l,
|
|
613
|
+
cache: c,
|
|
614
|
+
ssrCount: f,
|
|
615
|
+
item: u,
|
|
616
|
+
onScroll: d,
|
|
617
|
+
onScrollEnd: a,
|
|
618
|
+
children: t
|
|
619
|
+
})
|
|
620
|
+
}))), oe = /*#__PURE__*/ s((({children: t, data: o, bufferSize: r, itemSize: i, shift: s, horizontal: f, cache: d, ssrCount: a, as: h = "div", item: p = "div", onScroll: g, onScrollEnd: v}, m) => {
|
|
621
|
+
const [_, w] = Z(t, o), S = n(null), $ = K(g), z = K(v), y = n(!!a), [b, x, I, k] = F((() => {
|
|
622
|
+
const e = !!f, t = H(w, i, a, d, !i);
|
|
623
|
+
return [ t, Y(t, e), N(t, e), e ];
|
|
624
|
+
}));
|
|
625
|
+
w !== b.T() && b.B(5, [ w, s ]);
|
|
626
|
+
const [R, T] = l(b.m, void 0, b.m), C = b.M(), M = b.h(), O = I.P(), E = [];
|
|
627
|
+
D((() => {
|
|
628
|
+
y[j] = !1, b.W(1, (e => {
|
|
629
|
+
e ? u(T) : T();
|
|
630
|
+
})), b.W(4, (() => {
|
|
631
|
+
$[j] && $[j]();
|
|
632
|
+
})), b.W(8, (() => {
|
|
633
|
+
z[j] && z[j]();
|
|
634
|
+
}));
|
|
635
|
+
const e = S[j];
|
|
636
|
+
return x.G(e), I.N(e), () => {
|
|
637
|
+
b.v(), x.v(), I.v();
|
|
638
|
+
};
|
|
639
|
+
}), []), D((() => {
|
|
640
|
+
I.q();
|
|
641
|
+
}), [ R ]), c(m, (() => ({
|
|
642
|
+
get cache() {
|
|
643
|
+
return b._();
|
|
644
|
+
},
|
|
645
|
+
get scrollOffset() {
|
|
646
|
+
return b.C();
|
|
647
|
+
},
|
|
648
|
+
get viewportSize() {
|
|
649
|
+
return b.p();
|
|
650
|
+
},
|
|
651
|
+
findItemIndex: b.$,
|
|
652
|
+
getItemOffset: b.k,
|
|
653
|
+
getItemSize: b.R,
|
|
654
|
+
scrollToIndex: I.Y
|
|
655
|
+
})), []);
|
|
656
|
+
for (let [t, o] = b.S(r); t <= o; t++) {
|
|
657
|
+
const o = _(t);
|
|
658
|
+
E.push(e(Q, {
|
|
659
|
+
ee: x.U,
|
|
660
|
+
te: t,
|
|
661
|
+
oe: b.k(t, O),
|
|
662
|
+
ne: b.I(t),
|
|
663
|
+
re: p,
|
|
664
|
+
Z: o,
|
|
665
|
+
ie: k,
|
|
666
|
+
se: y[j]
|
|
667
|
+
}, U(o, t)));
|
|
668
|
+
}
|
|
669
|
+
return e(h, {
|
|
670
|
+
ref: S,
|
|
671
|
+
style: {
|
|
672
|
+
contain: "size style",
|
|
673
|
+
overflowAnchor: "none",
|
|
674
|
+
flex: "none",
|
|
675
|
+
position: "relative",
|
|
676
|
+
width: k ? M : "100%",
|
|
677
|
+
height: k ? "100%" : M,
|
|
678
|
+
pointerEvents: C ? "none" : void 0
|
|
679
|
+
},
|
|
680
|
+
children: E
|
|
681
|
+
});
|
|
682
|
+
})), ne = (e, t) => `${e}-${t}`, re = /*#__PURE__*/ r((({Z: t, ee: o, le: r, ce: s, fe: l, ue: c, de: f, ae: u, ne: d, he: a}) => {
|
|
683
|
+
const h = n(null);
|
|
684
|
+
return D((() => o.U(h[j], r, s)), [ s, r ]), e(a, {
|
|
685
|
+
ref: h,
|
|
686
|
+
style: i((() => ({
|
|
687
|
+
contain: "layout style",
|
|
688
|
+
display: "grid",
|
|
689
|
+
position: "absolute",
|
|
690
|
+
top: l,
|
|
691
|
+
left: c,
|
|
692
|
+
visibility: d ? "hidden" : void 0,
|
|
693
|
+
minHeight: f,
|
|
694
|
+
minWidth: u
|
|
695
|
+
})), [ l, c, u, f, d ]),
|
|
696
|
+
children: t
|
|
697
|
+
});
|
|
698
|
+
})), ie = /*#__PURE__*/ s((({children: t, row: o, col: r, cellHeight: s = 40, cellWidth: d = 100, bufferSize: a, ssrRowCount: h, ssrColCount: p, item: g = "div", domRef: v, innerDomRef: m, onScroll: _, onScrollEnd: w, style: S, ...$}, z) => {
|
|
699
|
+
const [y, b, x, I] = F((() => {
|
|
700
|
+
const e = H(o, s, h), t = H(r, d, p);
|
|
701
|
+
return [ e, t, q(e, t), P(e, t) ];
|
|
702
|
+
}));
|
|
703
|
+
o !== y.T() && y.B(5, [ o ]), r !== b.T() && b.B(5, [ r ]);
|
|
704
|
+
const [k, R] = l(y.m, void 0, y.m), [T, C] = l(b.m, void 0, b.m), M = y.M(), O = b.M(), W = E(y), B = E(b), J = n(null), A = K(_), L = K(w);
|
|
705
|
+
D((() => {
|
|
706
|
+
y.W(1, (e => {
|
|
707
|
+
e ? u(R) : R();
|
|
708
|
+
})), b.W(1, (e => {
|
|
709
|
+
e ? u(C) : C();
|
|
710
|
+
})), y.W(4, (() => {
|
|
711
|
+
A[j] && A[j](y.C());
|
|
712
|
+
})), y.W(8, (() => {
|
|
713
|
+
L[j] && L[j]();
|
|
714
|
+
}));
|
|
715
|
+
const e = J[j], t = e.parentElement;
|
|
716
|
+
return x.G(t), I.N(e, t), () => {
|
|
717
|
+
y.v(), b.v(), x.v(), I.v();
|
|
718
|
+
};
|
|
719
|
+
}), []), D((() => {
|
|
720
|
+
I.q();
|
|
721
|
+
}), [ k, T ]), c(z, (() => ({
|
|
722
|
+
get scrollTop() {
|
|
723
|
+
return y.C();
|
|
724
|
+
},
|
|
725
|
+
get scrollLeft() {
|
|
726
|
+
return b.C();
|
|
727
|
+
},
|
|
728
|
+
get scrollHeight() {
|
|
729
|
+
return E(y);
|
|
730
|
+
},
|
|
731
|
+
get scrollWidth() {
|
|
732
|
+
return E(b);
|
|
733
|
+
},
|
|
734
|
+
get viewportHeight() {
|
|
735
|
+
return y.p();
|
|
736
|
+
},
|
|
737
|
+
get viewportWidth() {
|
|
738
|
+
return b.p();
|
|
739
|
+
},
|
|
740
|
+
findRowIndex: y.$,
|
|
741
|
+
findColIndex: b.$,
|
|
742
|
+
getRowOffset: y.k,
|
|
743
|
+
getColOffset: b.k,
|
|
744
|
+
getRowSize: y.R,
|
|
745
|
+
getColSize: b.R,
|
|
746
|
+
resizeCols(e) {
|
|
747
|
+
x.F(e);
|
|
748
|
+
},
|
|
749
|
+
resizeRows(e) {
|
|
750
|
+
x.K(e);
|
|
751
|
+
},
|
|
752
|
+
scrollToIndex: I.Y,
|
|
753
|
+
scrollTo: I.V,
|
|
754
|
+
scrollBy: I.X
|
|
755
|
+
})), []);
|
|
756
|
+
const N = i((() => {
|
|
757
|
+
const e = new Map;
|
|
758
|
+
return (o, n) => {
|
|
759
|
+
let r = e.get(ne(o, n));
|
|
760
|
+
return r || e.set(ne(o, n), r = t({
|
|
761
|
+
rowIndex: o,
|
|
762
|
+
colIndex: n
|
|
763
|
+
})), r;
|
|
764
|
+
};
|
|
765
|
+
}), [ t ]), V = I.P(), [X, Y] = y.S(a), [G, U] = b.S(a), Q = [];
|
|
766
|
+
for (let t = X; t <= Y; t++) for (let o = G; o <= U; o++) Q.push(e(re, {
|
|
767
|
+
ee: x,
|
|
768
|
+
le: t,
|
|
769
|
+
ce: o,
|
|
770
|
+
fe: y.k(t),
|
|
771
|
+
ue: b.k(o, V),
|
|
772
|
+
de: y.R(t),
|
|
773
|
+
ae: b.R(o),
|
|
774
|
+
ne: y.I(t) || b.I(o),
|
|
775
|
+
he: g,
|
|
776
|
+
Z: N(t, o)
|
|
777
|
+
}, ne(t, o)));
|
|
778
|
+
return e("div", {
|
|
779
|
+
ref: v,
|
|
780
|
+
...$,
|
|
781
|
+
style: {
|
|
782
|
+
overflow: "auto",
|
|
783
|
+
contain: "strict",
|
|
784
|
+
width: "100%",
|
|
785
|
+
height: "100%",
|
|
786
|
+
...S
|
|
787
|
+
},
|
|
788
|
+
children: e("div", {
|
|
789
|
+
ref: (Z = [ J, m ], f((e => {
|
|
790
|
+
for (const t of Z) t && ("function" == typeof t ? t(e) : t && (t.current = e));
|
|
791
|
+
}), Z)),
|
|
792
|
+
style: {
|
|
793
|
+
contain: "size style",
|
|
794
|
+
overflowAnchor: "none",
|
|
795
|
+
flex: "none",
|
|
796
|
+
position: "relative",
|
|
797
|
+
width: B,
|
|
798
|
+
height: W,
|
|
799
|
+
pointerEvents: M || O ? "none" : void 0
|
|
800
|
+
},
|
|
801
|
+
children: Q
|
|
802
|
+
})
|
|
803
|
+
});
|
|
804
|
+
var Z;
|
|
805
|
+
}));
|
|
806
|
+
|
|
807
|
+
export { te as VList, ee as Virtualizer, oe as WindowVirtualizer, ie as experimental_VGrid };
|
|
3
808
|
//# sourceMappingURL=index.js.map
|