virtua 0.45.2 → 0.45.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/core/index.cjs +1 -1
- package/lib/core/index.cjs.map +1 -1
- package/lib/core/index.js +1 -1
- package/lib/core/index.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/react/Virtualizer.d.ts +2 -2
- package/lib/react/WindowVirtualizer.d.ts +1 -1
- package/lib/solid/Virtualizer.d.ts +2 -2
- package/lib/solid/WindowVirtualizer.d.ts +1 -1
- package/lib/solid/index.cjs +1 -1
- package/lib/solid/index.cjs.map +1 -1
- package/lib/solid/index.js +1 -1
- package/lib/solid/index.js.map +1 -1
- package/lib/solid/index.jsx +8 -7
- package/lib/solid/index.jsx.map +1 -1
- package/lib/svelte/Virtualizer.type.d.ts +2 -2
- package/lib/svelte/WindowVirtualizer.type.d.ts +1 -1
- package/lib/vue/VList.d.ts +2 -2
- package/lib/vue/Virtualizer.d.ts +4 -4
- package/lib/vue/WindowVirtualizer.d.ts +2 -2
- package/lib/vue/index.cjs +1 -1
- package/lib/vue/index.cjs.map +1 -1
- package/lib/vue/index.js +1 -1
- package/lib/vue/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -76,7 +76,7 @@ export interface VirtualizerProps<T = unknown> {
|
|
|
76
76
|
*/
|
|
77
77
|
overscan?: number;
|
|
78
78
|
/**
|
|
79
|
-
* Item size hint for unmeasured items. It will help to reduce scroll jump when items are measured if used properly.
|
|
79
|
+
* Item size hint for unmeasured items in pixels. It will help to reduce scroll jump when items are measured if used properly.
|
|
80
80
|
*
|
|
81
81
|
* - If not set, initial item sizes will be automatically estimated from measured sizes. This is recommended for most cases.
|
|
82
82
|
* - If set, you can opt out estimation and use the value as initial item size.
|
|
@@ -101,7 +101,7 @@ export interface VirtualizerProps<T = unknown> {
|
|
|
101
101
|
*/
|
|
102
102
|
cache?: CacheSnapshot;
|
|
103
103
|
/**
|
|
104
|
-
* If you put an element before virtualizer, you have to
|
|
104
|
+
* The offset to the scrollable parent before virtualizer in pixels. If you put an element before virtualizer, you have to set its height to this prop.
|
|
105
105
|
*/
|
|
106
106
|
startMargin?: number;
|
|
107
107
|
/**
|
|
@@ -44,7 +44,7 @@ export interface WindowVirtualizerProps<T = unknown> {
|
|
|
44
44
|
*/
|
|
45
45
|
overscan?: number;
|
|
46
46
|
/**
|
|
47
|
-
* Item size hint for unmeasured items. It will help to reduce scroll jump when items are measured if used properly.
|
|
47
|
+
* Item size hint for unmeasured items in pixels. It will help to reduce scroll jump when items are measured if used properly.
|
|
48
48
|
*
|
|
49
49
|
* - If not set, initial item sizes will be automatically estimated from measured sizes. This is recommended for most cases.
|
|
50
50
|
* - If set, you can opt out estimation and use the value as initial item size.
|
|
@@ -94,7 +94,7 @@ export interface VirtualizerProps<T> {
|
|
|
94
94
|
*/
|
|
95
95
|
scrollRef?: HTMLElement;
|
|
96
96
|
/**
|
|
97
|
-
* Item size hint for unmeasured items. It will help to reduce scroll jump when items are measured if used properly.
|
|
97
|
+
* Item size hint for unmeasured items in pixels. It will help to reduce scroll jump when items are measured if used properly.
|
|
98
98
|
*
|
|
99
99
|
* - If not set, initial item sizes will be automatically estimated from measured sizes. This is recommended for most cases.
|
|
100
100
|
* - If set, you can opt out estimation and use the value as initial item size.
|
|
@@ -119,7 +119,7 @@ export interface VirtualizerProps<T> {
|
|
|
119
119
|
*/
|
|
120
120
|
cache?: CacheSnapshot;
|
|
121
121
|
/**
|
|
122
|
-
* If you put an element before virtualizer, you have to
|
|
122
|
+
* The offset to the scrollable parent before virtualizer in pixels. If you put an element before virtualizer, you have to set its height to this prop.
|
|
123
123
|
*/
|
|
124
124
|
startMargin?: number;
|
|
125
125
|
/**
|
|
@@ -48,7 +48,7 @@ export interface WindowVirtualizerProps<T> {
|
|
|
48
48
|
*/
|
|
49
49
|
overscan?: number;
|
|
50
50
|
/**
|
|
51
|
-
* Item size hint for unmeasured items. It will help to reduce scroll jump when items are measured if used properly.
|
|
51
|
+
* Item size hint for unmeasured items in pixels. It will help to reduce scroll jump when items are measured if used properly.
|
|
52
52
|
*
|
|
53
53
|
* - If not set, initial item sizes will be automatically estimated from measured sizes. This is recommended for most cases.
|
|
54
54
|
* - If set, you can opt out estimation and use the value as initial item size.
|
package/lib/solid/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=require("solid-js/web"),t=require("solid-js");const r=null,{min:n,max:o,abs:s,floor:i}=Math,c=(e,t,r)=>n(r,o(t,e)),l=e=>[...e].sort(((e,t)=>e-t)),a="function"==typeof queueMicrotask?queueMicrotask:e=>{Promise.resolve().then(e)},u=()=>{let e;return[new Promise((t=>{e=t})),e]},f=e=>{let t;return()=>(e&&(t=e(),e=void 0),t)},d=-1,h=(e,t,r)=>{const n=r?"unshift":"push";for(let r=0;r<t;r++)e[n](d);return e},g=(e,t)=>{const r=e.o[t];return r===d?e.i:r},v=(e,t,r)=>{const o=e.o[t]===d;return e.o[t]=r,e.l=n(t,e.l),o},p=(e,t)=>{if(!e.u)return 0;if(e.l>=t)return e.h[t];e.l<0&&(e.h[0]=0,e.l=0);let r=e.l,n=e.h[r];for(;r<t;)n+=g(e,r),e.h[++r]=n;return e.l=t,n},m=(e,t,r=0,n=e.u-1)=>{for(;r<=n;){const o=i((r+n)/2),s=p(e,o);if(s<=t){if(s+g(e,o)>t)return o;r=o+1}else n=o-1}return c(r,0,e.u-1)},x=(e,t,r)=>{const o=t-e.u;return e.l=r?-1:n(t-1,e.l),e.u=t,o>0?(h(e.h,o),h(e.o,o,r),e.i*o):(e.h.splice(o),(r?e.o.splice(0,-o):e.o.splice(o)).reduce(((t,r)=>t-(r===d?e.i:r)),0))},S="undefined"!=typeof window,$=()=>document.documentElement,w=e=>e.ownerDocument,b=e=>e.defaultView,y=/*#__PURE__*/f((()=>!!S&&"rtl"===getComputedStyle($()).direction)),_=/*#__PURE__*/f((()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>0)),z=/*#__PURE__*/f((()=>"scrollBehavior"in $().style)),I=(e,t=40,i=4,c=0,a,u=!1)=>{let f=!!c,S=1,$=0,w=0,b=0,y=0,z=0,I=0,k=0,T=0,M=f?[0,o(c-1,0)]:r,E=[0,0],O=0;const R=((e,t,r)=>({i:r?r[1]:t,o:r&&r[0]?h(r[0].slice(0,n(e,r[0].length)),o(0,e-r[0].length)):h([],e),u:e,l:-1,h:h([],e)}))(e,t,a),q=new Set,J=()=>b-w,B=()=>J()+z+y,H=e=>((e,t,r,o)=>{if(o=n(o,e.u-1),p(e,o)<=t){const n=m(e,t+r,o);return[m(e,t,o,n),n]}{const n=m(e,t,void 0,o);return[n,m(e,t+r,n)]}})(R,e,$,E[0]),L=()=>(e=>e.u?p(e,e.u-1)+g(e,e.u-1):0)(R),P=e=>p(R,e)-z,W=e=>g(R,e),j=e=>{e&&(_()&&0!==k||M&&1===T?z+=e:y+=e)};return{v:()=>S,p:()=>(e=>[e.o.slice(),e.i])(R),m:()=>{let e,t;return I?[e,t]=E:([e,t]=E=H(o(0,B())),M&&(e=n(e,M[0]),t=o(t,M[1]))),1!==k&&(e-=o(0,i)),2!==k&&(t+=o(0,i)),[o(e,0),n(t,R.u-1)]},S:()=>m(R,B()),$:()=>m(R,B()+$),_:e=>R.o[e]===d,I:P,k:W,T:()=>R.u,M:()=>b,O:()=>0!==k,R:()=>$,q:()=>w,J:L,B:()=>(I=y,y=0,[I,2===T]),H:(e,t)=>{const r=[e,t];return q.add(r),()=>{q.delete(r)}},L:(e,t)=>{let n,i,c=0;switch(e){case 1:{const e=I;I=0;const n=t-b,o=s(n);e&&o<s(e)+1||0!==T||(k=n<0?2:1),f&&(M=r,f=!1),b=t,c=4;const l=J();l>=-$&&l<=L()&&(c+=1,i=o>$);break}case 2:c=8,0!==k&&(n=!0,c+=1),k=0,T=0,M=r;break;case 3:{const e=t.filter((([e,t])=>R.o[e]!==t));if(!e.length)break;j(e.reduce(((e,[t,r])=>((2===T||(M&&1===T?t<M[0]:P(t)+(0===k&&0===T?W(t):0)<J()))&&(e+=r-W(t)),e)),0));for(const[t,r]of e){const e=W(t),n=v(R,t,r);u&&(O+=n?r:r-e)}u&&$&&O>$&&(j(((e,t)=>{let r=0;const n=[];e.o.forEach(((e,o)=>{e!==d&&(n.push(e),o<t&&r++)})),e.l=-1;const s=l(n),i=s.length,c=i/2|0,a=i%2==0?(s[c-1]+s[c])/2:s[c],u=e.i;return((e.i=a)-u)*o(t-r,0)})(R,m(R,B()))),u=!1),c=3,i=!0;break}case 4:$!==t&&($=t,c=3);break;case 5:t[1]?(j(x(R,t[0],!0)),T=2,c=1):(x(R,t[0]),c=1);break;case 6:w=t;break;case 7:T=1;break;case 8:M=H(t),c=1}c&&(S=1+(2147483647&S),n&&z&&(y+=z,z=0),q.forEach((([e,t])=>{c&e&&t(i)})))}}},k=setTimeout,T=(e,t)=>t&&y()?-e:e,M=(e,t,n,o,s,i)=>{const c=Date.now;let l=0,a=!1,u=!1,f=!1,d=!1;const h=(()=>{let t;const n=()=>{t!=r&&clearTimeout(t)},o=()=>{n(),t=k((()=>{t=r,(()=>{if(a||u)return a=!1,void h();f=!1,e.L(2)})()}),150)};return o.P=n,o})(),g=()=>{l=c(),f&&(d=!0),i&&e.L(6,i()),e.L(1,o()),h()},v=t=>{if(a||!e.O()||t.ctrlKey)return;const r=c()-l;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(a=!0)},p=()=>{u=!0,f=d=!1},m=()=>{u=!1,_()&&(f=!0)};return t.addEventListener("scroll",g),t.addEventListener("wheel",v,{passive:!0}),t.addEventListener("touchstart",p,{passive:!0}),t.addEventListener("touchend",m,{passive:!0}),{W:()=>{t.removeEventListener("scroll",g),t.removeEventListener("wheel",v),t.removeEventListener("touchstart",p),t.removeEventListener("touchend",m),h.P()},j:()=>{const[t,r]=e.B();t&&(s(T(t,n),r,d),d=!1,r&&e.R()>e.J()&&e.L(1,o()))}}},E=(e,t,r)=>{let n;return[async(o,s)=>{if(!await t())return;n&&n();const i=()=>{const[t,r]=u();return n=()=>{r(!1)},e.R()&&k(n,150),[t,e.H(2,(()=>{r(!0)}))]};if(s&&z())e.L(8,o()),a((async()=>{for(;;){let t=!0;for(let[r,n]=e.m();r<=n;r++)if(e._(r)){t=!1;break}if(t)break;const[r,n]=i();try{if(!await r)return}finally{n()}}e.L(7),r(o(),s)}));else for(;;){const[t,n]=i();try{if(e.L(7),r(o()),!await t)return}finally{n()}}},()=>{n&&n()}]},O=e=>{let t;return{C(r){(t||(t=new(b(w(r)).ResizeObserver)(e))).observe(r)},V(e){t.unobserve(e)},W(){t&&t.disconnect()}}},R=r=>{let n;r=t.mergeProps({X:"div"},r),t.createEffect((()=>{n&&t.onCleanup(r.Y(n,r.D))}));const o=t.createMemo((()=>{const e=r.U,t={contain:"layout style",position:"absolute",[e?"height":"width"]:"100%",[e?"top":"left"]:"0px",[e?y()?"right":"left":"top"]:r.A+"px",visibility:r.F?"hidden":"visible"};return e&&(t.display="inline-flex"),t}));return e.createComponent(e.Dynamic,{get component(){return r.X},get index(){return r.D},ref(e){"function"==typeof n?n(e):n=e},get style(){return o()},get children(){return r.G}})},q=(e,t)=>e[0]===t[0]&&e[1]===t[1],J=n=>{let s;const{itemSize:i,horizontal:a=!1,overscan:f,cache:d}=n;n=t.mergeProps({as:"div"},n);const h=I(n.data.length,i,f,void 0,d,!i),g=((e,t)=>{let n;const o=t?"width":"height",s=new WeakMap,i=O((t=>{const i=[];for(const{target:c,contentRect:l}of t)if(c.offsetParent)if(c===n)e.L(4,l[o]);else{const e=s.get(c);e!=r&&i.push([e,l[o]])}i.length&&e.L(3,i)}));return{K(e){i.C(n=e)},N:(e,t)=>(s.set(e,t),i.C(e),()=>{s.delete(e),i.V(e)}),Z:i.W}})(h,a),v=((e,t)=>{let r,n,o=u();const s=t?"scrollLeft":"scrollTop",i=t?"overflowX":"overflowY",[l,a]=E(e,(()=>o[0]),((e,n)=>{e=T(e,t),n?r.scrollTo({[t?"left":"top"]:e,behavior:"smooth"}):r[s]=e}));return{ee(c){r=c,n=M(e,c,t,(()=>T(c[s],t)),((t,r,n)=>{if(n){const e=c.style,t=e[i];e[i]="hidden",k((()=>{e[i]=t}))}c[s]=e.M()+t,r&&a()})),o[1](!0)},Z(){n&&n.W(),o[1](!1),o=u()},te(e){l((()=>e))},re(t){t+=e.M(),l((()=>t))},ne(t,{align:r,smooth:n,offset:o=0}={}){if(t=c(t,0,e.T()-1),"nearest"===r){const n=e.I(t),o=e.M();if(n<o)r="start";else{if(!(n+e.k(t)>o+e.R()))return;r="end"}}l((()=>o+e.q()+e.I(t)+("end"===r?e.k(t)-e.R():"center"===r?(e.k(t)-e.R())/2:0)),n)},oe:()=>{n&&n.j()}}})(h,a),[p,m]=t.createSignal(h.v()),x=h.H(1,(()=>{m(h.v())})),S=h.H(4,(()=>{var e;null===(e=n.onScroll)||void 0===e||e.call(n,h.M())})),$=h.H(8,(()=>{var e;null===(e=n.onScrollEnd)||void 0===e||e.call(n)})),w=t.createMemo((e=>{p();const t=h.m();return e&&q(e,t)?e:t})),b=t.createMemo((()=>p()&&h.O())),y=t.createMemo((()=>p()&&h.J()));t.onMount((()=>{n.ref&&n.ref({get cache(){return h.p()},get scrollOffset(){return h.M()},get scrollSize(){return(e=>o(e.J(),e.R()))(h)},get viewportSize(){return h.R()},findStartIndex:h.S,findEndIndex:h.$,getItemOffset:h.I,getItemSize:h.k,scrollToIndex:v.ne,scrollTo:v.te,scrollBy:v.re});const e=n.scrollRef||s.parentElement;g.K(e),v.ee(e),t.onCleanup((()=>{n.ref&&n.ref(),x(),S(),$(),g.Z(),v.Z()}))})),t.createComputed(t.on((()=>n.startMargin||0),(e=>{e!==h.q()&&h.L(6,e)}))),t.createEffect(t.on(p,(()=>{v.oe()})));const _=t.createMemo((()=>{const e=n.data.length;t.untrack((()=>{e!==h.T()&&h.L(5,[e,n.shift])}));const[r,o]=w(),s=[],i=[];if(n.keepMounted){const e=new Set(n.keepMounted);for(let t=r,n=o;t<=n;t++)e.add(t);l([...e]).forEach((e=>{s.push(n.data[e]),i.push(e)}))}else for(let e=r,t=o;e<=t;e++)s.push(n.data[e]),i.push(e);return{se:s,ie:i}}));return e.createComponent(e.Dynamic,{get component(){return n.as},ref(e){"function"==typeof s?s(e):s=e},get style(){return{contain:"size paint style","overflow-anchor":"none",overflow:"clip",flex:"none",position:"relative",width:a?y()+"px":"100%",height:a?"100%":y()+"px","pointer-events":b()?"none":void 0}},get children(){return e.createComponent(t.For,{get each(){return _().se},children:(r,o)=>((r,o)=>{const s=t.createMemo((()=>(p(),h.I(o())))),i=t.createMemo((()=>(p(),h._(o())))),c=t.createMemo((()=>t.untrack((()=>n.children(r,o)))));return e.createComponent(R,{get X(){return n.item},get D(){return o()},get Y(){return g.N},get A(){return s()},get F(){return i()},get G(){return c()},U:a})})(r,t.createMemo((()=>_().ie[o()])))})}})};var B=/*#__PURE__*/e.template("<div>"),H=/*#__PURE__*/e.template("<div style=overflow-anchor:none>");exports.VList=r=>{const[n,o]=t.splitProps(r,["ref","data","children","overscan","itemSize","shift","horizontal","keepMounted","cache","item","onScroll","onScrollEnd","style"]);return s=B(),e.spread(s,e.mergeProps(o,{get style(){return{display:n.horizontal?"inline-block":"block",[n.horizontal?"overflow-x":"overflow-y"]:"auto",contain:"strict",width:"100%",height:"100%",...n.style}}}),!1,!0),e.insert(s,e.createComponent(J,{ref(e){var t=n.ref;"function"==typeof t?t(e):n.ref=e},get data(){return n.data},get overscan(){return n.overscan},get itemSize(){return n.itemSize},get shift(){return n.shift},get horizontal(){return n.horizontal},get keepMounted(){return n.keepMounted},get cache(){return n.cache},get item(){return n.item},get onScroll(){return n.onScroll},get onScrollEnd(){return n.onScrollEnd},get children(){return n.children}})),s;var s},exports.Virtualizer=J,exports.WindowVirtualizer=n=>{let o;const{ref:s,data:i,children:l,overscan:a,itemSize:f,shift:d,horizontal:h=!1,cache:g,onScrollEnd:v}=n,p=I(n.data.length,f,a,void 0,g,!f),m=((e,t)=>{const n=t?"width":"height",o=t?"innerWidth":"innerHeight",s=new WeakMap,i=O((t=>{const o=[];for(const{target:e,contentRect:i}of t){if(!e.offsetParent)continue;const t=s.get(e);t!=r&&o.push([t,i[n]])}o.length&&e.L(3,o)}));let c;return{K(t){const r=b(w(t)),n=()=>{e.L(4,r[o])};r.addEventListener("resize",n),n(),c=()=>{r.removeEventListener("resize",n)}},N:(e,t)=>(s.set(e,t),i.C(e),()=>{s.delete(e),i.V(e)}),Z(){c&&c(),i.W()}}})(p,h),x=((e,t)=>{let r,n,o=u();const s=t?"left":"top",[i]=E(e,(()=>o[0]),((e,n)=>{e=T(e,t);const o=b(w(r));n?o.scroll({[s]:e,behavior:"smooth"}):o.scroll({[s]:e})})),l=(e,t,r,n,o=0)=>{const s=n?"offsetLeft":"offsetTop",i=o+(n&&y()?r.innerWidth-e[s]-e.offsetWidth:e[s]),c=e.offsetParent;return e!==t&&c?l(c,t,r,n,i):i};return{ee(i){r=i;const c=t?"scrollX":"scrollY",a=w(i),u=b(a);n=M(e,u,t,(()=>T(u[c],t)),(t=>{u.scroll({[s]:e.M()+t})}),(()=>l(i,a.body,u,t))),o[1](!0)},Z(){n&&n.W(),r=void 0,o[1](!1),o=u()},oe:()=>{n&&n.j()},ne(n,{align:o,smooth:s,offset:a=0}={}){if(!r)return;if(n=c(n,0,e.T()-1),"nearest"===o){const t=e.I(n),r=e.M();if(t<r)o="start";else{if(!(t+e.k(n)>r+e.R()))return;o="end"}}const u=w(r),f=b(u),d=u.documentElement,h=()=>e.R()-(t?d.clientWidth:d.clientHeight);i((()=>a+l(r,u.body,f,t)+e.I(n)+("end"===o?e.k(n)-(e.R()-h()):"center"===o?(e.k(n)-(e.R()-h()))/2:0)),s)}}})(p,h),[S,$]=t.createSignal(p.v()),_=p.H(1,(()=>{$(p.v())})),z=p.H(4,(()=>{var e;null===(e=n.onScroll)||void 0===e||e.call(n)})),k=p.H(8,(()=>{var e;null===(e=n.onScrollEnd)||void 0===e||e.call(n)})),J=t.createMemo((e=>{S();const t=p.m();return e&&q(e,t)?e:t})),B=t.createMemo((()=>S()&&p.O())),L=t.createMemo((()=>S()&&p.J()));t.onMount((()=>{n.ref&&n.ref({get cache(){return p.p()},findStartIndex:p.S,findEndIndex:p.$,scrollToIndex:x.ne}),m.K(o),x.ee(o),t.onCleanup((()=>{n.ref&&n.ref(),_(),z(),k(),m.Z(),x.Z()}))})),t.createEffect(t.on(S,(()=>{x.oe()})));const P=t.createMemo((()=>{const e=n.data.length;t.untrack((()=>{e!==p.T()&&p.L(5,[e,n.shift])}));const[r,o]=J(),s=[];for(let e=r,t=o;e<=t;e++)s.push(n.data[e]);return s}));return W=H(),"function"==typeof(j=o)?e.use(j,W):o=W,e.setStyleProperty(W,"contain","size paint style"),e.setStyleProperty(W,"overflow","clip"),e.setStyleProperty(W,"flex","none"),e.setStyleProperty(W,"position","relative"),e.insert(W,e.createComponent(t.For,{get each(){return P()},children:(r,o)=>{const s=t.createMemo((()=>J()[0]+o())),i=t.createMemo((()=>(S(),p.I(s())))),c=t.createMemo((()=>(S(),p._(s())))),l=t.createMemo((()=>t.untrack((()=>n.children(r,s)))));return e.createComponent(R,{get D(){return s()},get Y(){return m.N},get A(){return i()},get F(){return c()},get G(){return l()},U:h})}})),e.effect((t=>{var r=h?L()+"px":"100%",n=h?"100%":L()+"px",o=B()?"none":void 0;return r!==t.e&&e.setStyleProperty(W,"width",t.e=r),n!==t.t&&e.setStyleProperty(W,"height",t.t=n),o!==t.a&&e.setStyleProperty(W,"pointer-events",t.a=o),t}),{e:void 0,t:void 0,a:void 0}),W;var W,j};
|
|
1
|
+
var e=require("solid-js/web"),t=require("solid-js");const r=null,{min:n,max:o,abs:s,floor:i}=Math,c=(e,t,r)=>n(r,o(t,e)),l=e=>[...e].sort(((e,t)=>e-t)),a="function"==typeof queueMicrotask?queueMicrotask:e=>{Promise.resolve().then(e)},u=()=>{let e;return[new Promise((t=>{e=t})),e]},f=e=>{let t;return()=>(e&&(t=e(),e=void 0),t)},d=(e,t,r)=>{const n=r?"unshift":"push";for(let r=0;r<t;r++)e[n](-1);return e},h=(e,t)=>{const r=e.o[t];return-1===r?e.i:r},g=(e,t,r)=>{const o=-1===e.o[t];return e.o[t]=r,e.l=n(t,e.l),o},v=(e,t)=>{if(!e.u)return 0;if(e.l>=t)return e.h[t];e.l<0&&(e.h[0]=0,e.l=0);let r=e.l,n=e.h[r];for(;r<t;)n+=h(e,r),e.h[++r]=n;return e.l=t,n},p=(e,t,r=0,n=e.u-1)=>{for(;r<=n;){const o=i((r+n)/2),s=v(e,o);if(s<=t){if(s+h(e,o)>t)return o;r=o+1}else n=o-1}return c(r,0,e.u-1)},m=(e,t,r)=>{const o=t-e.u;return e.l=r?-1:n(t-1,e.l),e.u=t,o>0?(d(e.h,o),d(e.o,o,r),e.i*o):(e.h.splice(o),(r?e.o.splice(0,-o):e.o.splice(o)).reduce(((t,r)=>t-(-1===r?e.i:r)),0))},x="undefined"!=typeof window,S=()=>document.documentElement,$=e=>e.ownerDocument,w=e=>e.defaultView,b=/*#__PURE__*/f((()=>!!x&&"rtl"===getComputedStyle(S()).direction)),y=/*#__PURE__*/f((()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>0)),_=/*#__PURE__*/f((()=>"scrollBehavior"in S().style)),z=(e,t=40,i=4,c=0,a,u=!1)=>{let f=!!c,x=1,S=0,$=0,w=0,b=0,_=0,z=0,I=0,k=0,T=f?[0,o(c-1,0)]:r,M=[0,0],E=0;const O=((e,t,r)=>({i:r?r[1]:t,o:r&&r[0]?d(r[0].slice(0,n(e,r[0].length)),o(0,e-r[0].length)):d([],e),u:e,l:-1,h:d([],e)}))(e,t,a),R=new Set,q=()=>w-$,J=()=>q()+_+b,B=e=>((e,t,r,o)=>{if(o=n(o,e.u-1),v(e,o)<=t){const n=p(e,t+r,o);return[p(e,t,o,n),n]}{const n=p(e,t,void 0,o);return[n,p(e,t+r,n)]}})(O,e,S,M[0]),H=()=>(e=>e.u?v(e,e.u-1)+h(e,e.u-1):0)(O),L=e=>v(O,e)-_,P=e=>h(O,e),W=(e,t=-1)=>O.o[e]===t,j=e=>{e&&(y()&&0!==I||T&&1===k?_+=e:b+=e)};return{v:()=>x,p:()=>(e=>[e.o.slice(),e.i])(O),m:()=>{let e,t;return z?[e,t]=M:([e,t]=M=B(o(0,J())),T&&(e=n(e,T[0]),t=o(t,T[1]))),1!==I&&(e-=o(0,i)),2!==I&&(t+=o(0,i)),[o(e,0),n(t,O.u-1)]},S:()=>p(O,J()),$:()=>p(O,J()+S),_:W,I:L,k:P,T:()=>O.u,M:()=>w,O:()=>0!==I,R:()=>S,q:()=>$,J:H,B:()=>(z=b,b=0,[z,2===k]),H:(e,t)=>{const r=[e,t];return R.add(r),()=>{R.delete(r)}},L:(e,t)=>{let n,i,c=0;switch(e){case 1:{const e=z;z=0;const n=t-w,o=s(n);e&&o<s(e)+1||0!==k||(I=n<0?2:1),f&&(T=r,f=!1),w=t,c=4;const l=q();l>=-S&&l<=H()&&(c+=1,i=o>S);break}case 2:c=8,0!==I&&(n=!0,c+=1),I=0,k=0,T=r;break;case 3:{const e=t.filter((([e,t])=>!W(e,t)));if(!e.length)break;j(e.reduce(((e,[t,r])=>((2===k||(T&&1===k?t<T[0]:L(t)+(0===I&&0===k?P(t):0)<q()))&&(e+=r-P(t)),e)),0));for(const[t,r]of e){const e=P(t),n=g(O,t,r);u&&(E+=n?r:r-e)}u&&S&&E>S&&(j(((e,t)=>{let r=0;const n=[];e.o.forEach(((e,o)=>{-1!==e&&(n.push(e),o<t&&r++)})),e.l=-1;const s=l(n),i=s.length,c=i/2|0,a=i%2==0?(s[c-1]+s[c])/2:s[c],u=e.i;return((e.i=a)-u)*o(t-r,0)})(O,p(O,J()))),u=!1),c=3,i=!0;break}case 4:S!==t&&(S=t,c=3);break;case 5:t[1]?(j(m(O,t[0],!0)),k=2,c=1):(m(O,t[0]),c=1);break;case 6:$=t;break;case 7:k=1;break;case 8:T=B(t),c=1}c&&(x=1+(2147483647&x),n&&_&&(b+=_,_=0),R.forEach((([e,t])=>{c&e&&t(i)})))}}},I=setTimeout,k=(e,t)=>t&&b()?-e:e,T=(e,t,n,o,s,i)=>{const c=Date.now;let l=0,a=!1,u=!1,f=!1,d=!1;const h=(()=>{let t;const n=()=>{t!=r&&clearTimeout(t)},o=()=>{n(),t=I((()=>{t=r,(()=>{if(a||u)return a=!1,void h();f=!1,e.L(2)})()}),150)};return o.P=n,o})(),g=()=>{l=c(),f&&(d=!0),i&&e.L(6,i()),e.L(1,o()),h()},v=t=>{if(a||!e.O()||t.ctrlKey)return;const r=c()-l;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(a=!0)},p=()=>{u=!0,f=d=!1},m=()=>{u=!1,y()&&(f=!0)};return t.addEventListener("scroll",g),t.addEventListener("wheel",v,{passive:!0}),t.addEventListener("touchstart",p,{passive:!0}),t.addEventListener("touchend",m,{passive:!0}),{W:()=>{t.removeEventListener("scroll",g),t.removeEventListener("wheel",v),t.removeEventListener("touchstart",p),t.removeEventListener("touchend",m),h.P()},j:()=>{const[t,r]=e.B();t&&(s(k(t,n),r,d),d=!1,r&&e.R()>e.J()&&e.L(1,o()))}}},M=(e,t,r)=>{let n;return[async(o,s)=>{if(!await t())return;n&&n();const i=()=>{const[t,r]=u();return n=()=>{r(!1)},e.R()&&I(n,150),[t,e.H(2,(()=>{r(!0)}))]};if(s&&_())e.L(8,o()),a((async()=>{for(;;){let t=!0;for(let[r,n]=e.m();r<=n;r++)if(e._(r)){t=!1;break}if(t)break;const[r,n]=i();try{if(!await r)return}finally{n()}}e.L(7),r(o(),s)}));else for(;;){const[t,n]=i();try{if(e.L(7),r(o()),!await t)return}finally{n()}}},()=>{n&&n()}]},E=e=>{let t;return{C(r){(t||(t=new(w($(r)).ResizeObserver)(e))).observe(r)},V(e){t.unobserve(e)},W(){t&&t.disconnect()}}},O=r=>{let n;r=t.mergeProps({X:"div"},r),t.createEffect((()=>{n&&t.onCleanup(r.Y(n,r.D))}));const o=t.createMemo((()=>{const e=r.U,t={contain:"layout style",position:"absolute",[e?"height":"width"]:"100%",[e?"top":"left"]:"0px",[e?b()?"right":"left":"top"]:r.A+"px",visibility:r.F?"hidden":"visible"};return e&&(t.display="inline-flex"),t}));return e.createComponent(e.Dynamic,{get component(){return r.X},get index(){return r.D},ref(e){"function"==typeof n?n(e):n=e},get style(){return o()},get children(){return r.G}})},R=(e,t)=>e[0]===t[0]&&e[1]===t[1],q=n=>{let s;const{itemSize:i,horizontal:a=!1,overscan:f,cache:d}=n;n=t.mergeProps({as:"div"},n);const h=z(n.data.length,i,f,void 0,d,!i),g=((e,t)=>{let n;const o=t?"width":"height",s=new WeakMap,i=E((t=>{const i=[];for(const{target:c,contentRect:l}of t)if(c.offsetParent)if(c===n)e.L(4,l[o]);else{const e=s.get(c);e!=r&&i.push([e,l[o]])}i.length&&e.L(3,i)}));return{K(e){i.C(n=e)},N:(e,t)=>(s.set(e,t),i.C(e),()=>{s.delete(e),i.V(e)}),Z:i.W}})(h,a),v=((e,t)=>{let r,n,o=u();const s=t?"scrollLeft":"scrollTop",i=t?"overflowX":"overflowY",[l,a]=M(e,(()=>o[0]),((e,n)=>{e=k(e,t),n?r.scrollTo({[t?"left":"top"]:e,behavior:"smooth"}):r[s]=e}));return{ee(c){r=c,n=T(e,c,t,(()=>k(c[s],t)),((t,r,n)=>{if(n){const e=c.style,t=e[i];e[i]="hidden",I((()=>{e[i]=t}))}c[s]=e.M()+t,r&&a()})),o[1](!0)},Z(){n&&n.W(),o[1](!1),o=u()},te(e){l((()=>e))},re(t){t+=e.M(),l((()=>t))},ne(t,{align:r,smooth:n,offset:o=0}={}){if(t=c(t,0,e.T()-1),"nearest"===r){const n=e.I(t),o=e.M();if(n<o)r="start";else{if(!(n+e.k(t)>o+e.R()))return;r="end"}}l((()=>o+e.q()+e.I(t)+("end"===r?e.k(t)-e.R():"center"===r?(e.k(t)-e.R())/2:0)),n)},oe:()=>{n&&n.j()}}})(h,a),[p,m]=t.createSignal(h.v()),x=h.H(1,(()=>{m(h.v())})),S=h.H(4,(()=>{var e;null===(e=n.onScroll)||void 0===e||e.call(n,h.M())})),$=h.H(8,(()=>{var e;null===(e=n.onScrollEnd)||void 0===e||e.call(n)})),w=t.createMemo((e=>{p();const t=h.m();return e&&R(e,t)?e:t})),b=t.createMemo((()=>p()&&h.O())),y=t.createMemo((()=>p()&&h.J()));t.onMount((()=>{n.ref&&n.ref({get cache(){return h.p()},get scrollOffset(){return h.M()},get scrollSize(){return(e=>o(e.J(),e.R()))(h)},get viewportSize(){return h.R()},findStartIndex:h.S,findEndIndex:h.$,getItemOffset:h.I,getItemSize:h.k,scrollToIndex:v.ne,scrollTo:v.te,scrollBy:v.re});const e=n.scrollRef||s.parentElement;g.K(e),v.ee(e),t.onCleanup((()=>{n.ref&&n.ref(),x(),S(),$(),g.Z(),v.Z()}))})),t.createComputed(t.on((()=>n.startMargin||0),(e=>{e!==h.q()&&h.L(6,e)}))),t.createEffect(t.on(p,(()=>{v.oe()})));const _=t.createMemo((()=>{const e=n.data.length;t.untrack((()=>{e!==h.T()&&h.L(5,[e,n.shift])}));const r=[],o=[];if(n.keepMounted){const e=new Set(n.keepMounted);for(let[t,r]=w();t<=r;t++)e.add(t);l([...e]).forEach((e=>{r.push(n.data[e]),o.push(e)}))}else for(let[e,t]=w();e<=t;e++)r.push(n.data[e]),o.push(e);return{se:r,ie:o}}));return e.createComponent(e.Dynamic,{get component(){return n.as},ref(e){"function"==typeof s?s(e):s=e},get style(){return{contain:"size paint style","overflow-anchor":"none",overflow:"clip",flex:"none",position:"relative",width:a?y()+"px":"100%",height:a?"100%":y()+"px","pointer-events":b()?"none":void 0}},get children(){return e.createComponent(t.For,{get each(){return _().se},children:(r,o)=>((r,o)=>{const s=t.createMemo((()=>(p(),h.I(o())))),i=t.createMemo((()=>(p(),h._(o())))),c=t.createMemo((()=>t.untrack((()=>n.children(r,o)))));return e.createComponent(O,{get X(){return n.item},get D(){return o()},get Y(){return g.N},get A(){return s()},get F(){return i()},get G(){return c()},U:a})})(r,t.createMemo((()=>_().ie[o()])))})}})};var J=/*#__PURE__*/e.template("<div>"),B=/*#__PURE__*/e.template("<div style=overflow-anchor:none>");exports.VList=r=>{const[n,o]=t.splitProps(r,["ref","data","children","overscan","itemSize","shift","horizontal","keepMounted","cache","item","onScroll","onScrollEnd","style"]);return s=J(),e.spread(s,e.mergeProps(o,{get style(){return{display:n.horizontal?"inline-block":"block",[n.horizontal?"overflow-x":"overflow-y"]:"auto",contain:"strict",width:"100%",height:"100%",...n.style}}}),!1,!0),e.insert(s,e.createComponent(q,{ref(e){var t=n.ref;"function"==typeof t?t(e):n.ref=e},get data(){return n.data},get overscan(){return n.overscan},get itemSize(){return n.itemSize},get shift(){return n.shift},get horizontal(){return n.horizontal},get keepMounted(){return n.keepMounted},get cache(){return n.cache},get item(){return n.item},get onScroll(){return n.onScroll},get onScrollEnd(){return n.onScrollEnd},get children(){return n.children}})),s;var s},exports.Virtualizer=q,exports.WindowVirtualizer=n=>{let o;const{ref:s,data:i,children:l,overscan:a,itemSize:f,shift:d,horizontal:h=!1,cache:g,onScrollEnd:v}=n,p=z(n.data.length,f,a,void 0,g,!f),m=((e,t)=>{const n=t?"width":"height",o=t?"innerWidth":"innerHeight",s=new WeakMap,i=E((t=>{const o=[];for(const{target:e,contentRect:i}of t){if(!e.offsetParent)continue;const t=s.get(e);t!=r&&o.push([t,i[n]])}o.length&&e.L(3,o)}));let c;return{K(t){const r=w($(t)),n=()=>{e.L(4,r[o])};r.addEventListener("resize",n),n(),c=()=>{r.removeEventListener("resize",n)}},N:(e,t)=>(s.set(e,t),i.C(e),()=>{s.delete(e),i.V(e)}),Z(){c&&c(),i.W()}}})(p,h),x=((e,t)=>{let r,n,o=u();const s=t?"left":"top",[i]=M(e,(()=>o[0]),((e,n)=>{e=k(e,t);const o=w($(r));n?o.scroll({[s]:e,behavior:"smooth"}):o.scroll({[s]:e})})),l=(e,t,r,n,o=0)=>{const s=n?"offsetLeft":"offsetTop",i=o+(n&&b()?r.innerWidth-e[s]-e.offsetWidth:e[s]),c=e.offsetParent;return e!==t&&c?l(c,t,r,n,i):i};return{ee(i){r=i;const c=t?"scrollX":"scrollY",a=$(i),u=w(a);n=T(e,u,t,(()=>k(u[c],t)),(t=>{u.scroll({[s]:e.M()+t})}),(()=>l(i,a.body,u,t))),o[1](!0)},Z(){n&&n.W(),r=void 0,o[1](!1),o=u()},oe:()=>{n&&n.j()},ne(n,{align:o,smooth:s,offset:a=0}={}){if(!r)return;if(n=c(n,0,e.T()-1),"nearest"===o){const t=e.I(n),r=e.M();if(t<r)o="start";else{if(!(t+e.k(n)>r+e.R()))return;o="end"}}const u=$(r),f=w(u),d=u.documentElement,h=()=>e.R()-(t?d.clientWidth:d.clientHeight);i((()=>a+l(r,u.body,f,t)+e.I(n)+("end"===o?e.k(n)-(e.R()-h()):"center"===o?(e.k(n)-(e.R()-h()))/2:0)),s)}}})(p,h),[S,y]=t.createSignal(p.v()),_=p.H(1,(()=>{y(p.v())})),I=p.H(4,(()=>{var e;null===(e=n.onScroll)||void 0===e||e.call(n)})),q=p.H(8,(()=>{var e;null===(e=n.onScrollEnd)||void 0===e||e.call(n)})),J=t.createMemo((e=>{S();const t=p.m();return e&&R(e,t)?e:t})),H=t.createMemo((()=>S()&&p.O())),L=t.createMemo((()=>S()&&p.J()));t.onMount((()=>{n.ref&&n.ref({get cache(){return p.p()},findStartIndex:p.S,findEndIndex:p.$,scrollToIndex:x.ne}),m.K(o),x.ee(o),t.onCleanup((()=>{n.ref&&n.ref(),_(),I(),q(),m.Z(),x.Z()}))})),t.createEffect(t.on(S,(()=>{x.oe()})));const P=t.createMemo((()=>{const e=n.data.length;t.untrack((()=>{e!==p.T()&&p.L(5,[e,n.shift])}));const r=[];for(let[e,t]=J();e<=t;e++)r.push(n.data[e]);return r}));return W=B(),"function"==typeof(j=o)?e.use(j,W):o=W,e.setStyleProperty(W,"contain","size paint style"),e.setStyleProperty(W,"overflow","clip"),e.setStyleProperty(W,"flex","none"),e.setStyleProperty(W,"position","relative"),e.insert(W,e.createComponent(t.For,{get each(){return P()},children:(r,o)=>{const s=t.createMemo((()=>J()[0]+o())),i=t.createMemo((()=>(S(),p.I(s())))),c=t.createMemo((()=>(S(),p._(s())))),l=t.createMemo((()=>t.untrack((()=>n.children(r,s)))));return e.createComponent(O,{get D(){return s()},get Y(){return m.N},get A(){return i()},get F(){return c()},get G(){return l()},U:h})}})),e.effect((t=>{var r=h?L()+"px":"100%",n=h?"100%":L()+"px",o=H()?"none":void 0;return r!==t.e&&e.setStyleProperty(W,"width",t.e=r),n!==t.t&&e.setStyleProperty(W,"height",t.t=n),o!==t.a&&e.setStyleProperty(W,"pointer-events",t.a=o),t}),{e:void 0,t:void 0,a:void 0}),W;var W,j};
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|