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