@vielzeug/scroll 1.1.4 → 1.1.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/dist/_dev.cjs +1 -1
- package/dist/_dev.cjs.map +1 -1
- package/dist/_dev.js +1 -1
- package/dist/_dev.js.map +1 -1
- package/dist/_utils.cjs +1 -1
- package/dist/_utils.cjs.map +1 -1
- package/dist/_utils.js +1 -1
- package/dist/_utils.js.map +1 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/grid-virtualizer.cjs +1 -1
- package/dist/grid-virtualizer.cjs.map +1 -1
- package/dist/grid-virtualizer.js +1 -1
- package/dist/grid-virtualizer.js.map +1 -1
- package/dist/reactive.cjs.map +1 -1
- package/dist/scroll.cjs +1 -1
- package/dist/scroll.cjs.map +1 -1
- package/dist/scroll.iife.js +1 -1
- package/dist/scroll.iife.js.map +1 -1
- package/dist/scroll.js +1 -1
- package/dist/scroll.js.map +1 -1
- package/dist/virtualizer.cjs +1 -1
- package/dist/virtualizer.cjs.map +1 -1
- package/dist/virtualizer.js +1 -1
- package/dist/virtualizer.js.map +1 -1
- package/package.json +4 -4
package/dist/scroll.iife.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var Scroll=(function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var n=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},r=class extends n{},i=!globalThis.__SCROLL_PROD__;function a(e){i&&console.warn(`[@vielzeug/scroll] ${e}`)}function o(){return new Map}var s=36,c=3;function l(e,t=0){return Number.isFinite(e)?Math.max(0,Math.floor(e)):t}function u(e,t){return!Number.isFinite(e)||e<=0||e>1e7?t:e}function d(e){return typeof Window<`u`&&e instanceof Window||typeof e.innerHeight==`number`&&typeof e.document==`object`}function f(e,t){if(typeof e==`number`){let n=l(e,t);return{end:n,start:n}}return{end:l(e?.end??t),start:l(e?.start??t)}}function p(e,t,n){let r=new ResizeObserver(e=>{for(let t of e)n(t)});return r.observe(t),e.addEventListener(`abort`,()=>r.disconnect(),{once:!0}),()=>r.disconnect()}function m(e,t){if(typeof e==`function`)return n=>{try{return u(e(n),t)}catch(e){return a(`estimateSize threw for index ${n}: ${e}`),t}};let n=typeof e==`number`?u(e,t):t;return()=>n}function h(e,t,n){if(d(e))return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`resize`,n,{passive:!0}),{detach(){e.removeEventListener(`scroll`,t),e.removeEventListener(`resize`,n)},scrollTo:(t,n,r)=>e.scrollTo({behavior:r,left:t,top:n}),x:{readOffset:()=>e.scrollX,readViewportSize:()=>e.innerWidth,writeOffset:(t,n)=>e.scrollTo({behavior:n,left:t})},y:{readOffset:()=>e.scrollY,readViewportSize:()=>e.innerHeight,writeOffset:(t,n)=>e.scrollTo({behavior:n,top:t})}};let r=new ResizeObserver(n);return e.addEventListener(`scroll`,t,{passive:!0}),r.observe(e),{detach(){e.removeEventListener(`scroll`,t),r.disconnect()},scrollTo:(t,n,r)=>e.scrollTo({behavior:r,left:t,top:n}),x:{readOffset:()=>e.scrollLeft,readViewportSize:()=>e.clientWidth,writeOffset:(t,n)=>e.scrollTo({behavior:n,left:t})},y:{readOffset:()=>e.scrollTop,readViewportSize:()=>e.clientHeight,writeOffset:(t,n)=>e.scrollTo({behavior:n,top:t})}}}function g(e,t,n){let r=e,i=n,a=t,o=[],s=0,c=-1,l=-1,u=-1,d=!1,f=1/0;function p(e){return o[e]??0}function m(e){return p(e)+a(e)}function h(e=!1){e&&(c=-1,l=-1,u=-1);let t=[0],n=0;for(let e=0;e<r;e++)n+=a(e)+(e<r-1?i:0),t.push(n);o=t,s=n}function g(e){if(!Number.isFinite(e)||e>=r)return;c=-1,l=-1,u=-1;let t=o[e]??0;for(let n=e;n<r;n++)o[n]=t,t+=a(n)+(n<r-1?i:0);o[r]=t,s=t}function _(e){let t=0,n=r-1;for(;t<n;){let r=t+n>>1;m(r)<=e?t=r+1:n=r}return t}function v(e,t){let n=t,i=r-1;for(;n<i;){let t=n+i+1>>1;p(t)<e?n=t:i=t-1}return n}function y(e,t,n,i){let a=_(e),o=v(t,a);return{renderEnd:Math.min(r-1,o+i),renderStart:Math.max(0,a-n)}}function b(e,t){return e===c&&t===l&&s===u}function x(e,t){c=e,l=t,u=s}function S(){c=-1,l=-1,u=-1}function C(e){d||(d=!0,queueMicrotask(()=>{d=!1;let t=f;f=1/0,g(t),e()}))}function w(e){e<f&&(f=e)}function T(e){let t=p(e),n=a(e);return{end:t+n,index:e,size:n,start:t}}return{commitDedup:x,computeRange:y,consumeMinChangedIndex(){let e=f;return f=1/0,e},get count(){return r},endAt:m,findFirst:_,findLast:v,get gap(){return i},isDedupSame:b,itemAt:T,markChanged:w,get minChangedIndex(){return f},get pendingBuild(){return d},get prevEnd(){return l},get prevStart(){return c},get prevTotalSize(){return u},rebuild:h,rebuildFrom:g,resetDedup:S,scheduleBuild:C,setCount(e){r=e},setGap(e){i=e},sizeAt(e){return a(e)},startAt:p,get totalSize(){return s}}}function _(e,t){let n=!!t.horizontal,r=e=>e,i=l(t.count),a=m(t.estimateSize,36),o=l(t.gap??0),s=t.getItemKey??r,c=f(t.overscan,3),d=t.sticky??null,_=t.onChange,v=t.onScrollEnd,y=t.onScrollingChange,b=typeof t.scrollEndDelay==`number`&&t.scrollEndDelay>=0?t.scrollEndDelay:150,x=!1,S=null,C=`onscrollend`in e;function w(){x&&(x=!1,y?.(!1),v?.(M))}function T(){x||(x=!0,y?.(!0)),C||(S!==null&&clearTimeout(S),S=setTimeout(w,b))}let E=t.measurementCache??new Map,D=[],O=[],k=g(i,e=>E.get(s(e))??a(e),o),A=-1,j=0,M=0,N=0,P=-1,F=!1;function I(e){let t=Number.isFinite(e)?e:0,n=Math.max(0,k.totalSize-N);return Math.min(n,Math.max(0,t))}function L(){if(!d||i===0||M<=0)return[];let e=-1,t=0,n=i-1;for(;t<=n;){let r=t+n>>1;k.startAt(r)<M?(e=r,t=r+1):n=r-1}if(e<0)return[];let r=-1;for(let t=e;t>=0;t--)if(d(t)){r=t;break}if(r===-1)return[];let a=k.sizeAt(r),o=1/0;for(let e=r+1;e<i;e++)if(d(e)){o=k.startAt(e);break}let s=Math.min(M,o-a);return[{end:s+a,index:r,size:a,start:s}]}function R(){if(F)return;if(i===0||N<=0){(k.prevStart!==-1||k.prevTotalSize!==k.totalSize)&&(k.commitDedup(-1,-1),D=[],O=[],_&&_({items:D,stickyItems:O,totalSize:k.totalSize}));return}let{renderEnd:e,renderStart:t}=k.computeRange(M,M+N,c.start,c.end),n=d!==null&&M!==P;if(k.isDedupSame(t,e)&&!n)return;k.commitDedup(t,e),P=M;let r=[];for(let n=t;n<=e;n++)r.push(k.itemAt(n));D=r,O=d?L():[],_&&_({items:D,stickyItems:O,totalSize:k.totalSize})}function z(e,t){if(!Number.isFinite(e))return!1;let n=Math.floor(e);if(n<0||n>=i)return!1;let r=u(t,-1);if(r<=0)return!1;let a=s(n);return E.get(a)===r?!1:(E.set(a,r),k.markChanged(n),!0)}function B(){if(M<=0||i===0){A=-1;return}A=k.findFirst(M),j=M-k.startAt(A)}function V(){if(A<0)return;let e=k.startAt(A)+j-M;if(A=-1,Math.abs(e)>=1){let t=I(M+e);$.writeOffset(t,`auto`),M=t}}function H(e){if(F)return;let t=!1;for(let{index:n,size:r}of e)z(n,r)&&(t=!0);t&&(k.pendingBuild||B(),k.scheduleBuild(()=>{V(),R()}))}function U(e,t){H([{index:e,size:t}])}function W(e,t){return F?()=>{}:p(Z.signal,t,t=>{U(e,n?t.contentRect.width:t.contentRect.height)})}function G(e){let t=!1,n=!1;if(e.count!==void 0){let n=l(e.count);n!==i&&(i=n,k.setCount(i),t=!0)}if(Object.hasOwn(e,`estimateSize`)&&(a=m(e.estimateSize,36),E.clear(),t=!0),e.gap!==void 0){let n=l(e.gap);n!==o&&(o=n,k.setGap(o),t=!0)}if(Object.hasOwn(e,`getItemKey`)){let n=e.getItemKey??r;n!==s&&(s=n,E.clear(),t=!0)}if(Object.hasOwn(e,`measurementCache`)&&e.measurementCache!==void 0&&(E=e.measurementCache,t=!0),e.overscan!==void 0){let t=f(e.overscan,3);(t.start!==c.start||t.end!==c.end)&&(c=t,n=!0)}if(Object.hasOwn(e,`sticky`)){let t=e.sticky??null;t!==d&&(d=t,k.resetDedup()),n=!0}t&&(B(),k.rebuild(!0),V()),(n||t)&&R()}function K(){F||(E.clear(),k.rebuild(!0),R())}function ee(){F||(k.rebuild(!0),R())}function q(e){if(F)return;let t=l(e);if(t===0)return;i+=t,k.setCount(i),k.rebuild(!0);let n=k.startAt(t),r=I(M+n);$.writeOffset(r,`auto`),M=r,R()}function J(e){F||G(e)}function te(t,n={}){if(F||i<=0)return;let r=Math.max(0,Math.min(Number.isFinite(t)?Math.floor(t):0,i-1)),a=n.align??`auto`,o=n.behavior??`auto`,s=k.startAt(r),c=k.sizeAt(r),l=s+c,u;if(a===`start`)u=s;else if(a===`end`)u=l-N;else if(a===`center`)u=s-(N-c)/2;else{let e=M,t=e+N;if(s>=e&&l<=t){n.onComplete&&queueMicrotask(n.onComplete);return}u=s<e?s:l-N}$.writeOffset(I(u),o),n.onComplete&&(o===`smooth`&&`onscrollend`in e?e.addEventListener(`scrollend`,n.onComplete,{once:!0}):queueMicrotask(n.onComplete))}function Y(e,t={}){F||$.writeOffset(I(e),t.behavior??`auto`)}function X(e={}){Y(0,e)}function ne(e={}){Y(Math.max(0,k.totalSize-N),e)}function re(e=0){return k.totalSize-(M+N)<=e}let Z=new AbortController;function ie(){F||(F=!0,Z.abort(),S!==null&&(clearTimeout(S),S=null),C&&e.removeEventListener(`scrollend`,w),Q.detach())}function ae(){M=I($.readOffset()),T(),R()}function oe(){N=$.readViewportSize(),R()}let Q=h(e,ae,oe),$=n?Q.x:Q.y;return C&&e.addEventListener(`scrollend`,w,{passive:!0}),k.rebuild(!0),t.initialOffset!==void 0&&$.writeOffset(I(t.initialOffset),`auto`),M=I($.readOffset()),N=$.readViewportSize(),R(),{get count(){return i},get disposalSignal(){return Z.signal},dispose:ie,get disposed(){return F},invalidate:K,isAtEnd:re,get isScrolling(){return x},get items(){return D},measure:U,measureBatch:H,measureEl:W,prepend:q,refresh:ee,get scrollOffset(){return M},scrollToBottom:ne,scrollToIndex:te,scrollToOffset:Y,scrollToTop:X,get stickyItems(){return O},[Symbol.dispose]:ie,get totalSize(){return k.totalSize},update:J}}function v(){let e=new Map,t=new Map,n=[],r=!1;return{acquire(i,a){if(!r)return a();let o=e.get(i);if(o)return t.set(i,o),o;let s=n.pop()??a();return t.set(i,s),s},beginCycle(){t=new Map,r=!0},clear(){for(let t of e.values())t.remove();e.clear(),t.clear(),n.length=0,r=!1},endCycle(){if(r){r=!1;for(let[r,i]of e)t.has(r)||(i.remove(),n.push(i));e=t}}}}function y(e){let t=[],n=!1,i=new AbortController,a=e.listElement,o=v(),s=null;function c(n){let r=t[n];return r!==void 0&&e.getItemKey?e.getItemKey(n,r):n}function l(n){if(e.estimateSize===void 0)return 36;if(typeof e.estimateSize==`number`)return e.estimateSize;let r=t[n];return r===void 0?36:e.estimateSize(n,r)}function u(t){e.horizontal?(a.style.height=``,a.style.width=`${t}px`):(a.style.height=`${t}px`,a.style.width=``)}function d(e){let n=t[e.index];if(n===void 0)throw new r(`toRenderItem: index ${e.index} is out of range (currentItems.length=${t.length})`);return{...e,data:n}}function f(t){u(t.totalSize),o.beginCycle();try{e.render({items:t.items.map(d),listEl:a,recycle:(e,t)=>o.acquire(e,t),stickyItems:t.stickyItems.map(d),totalSize:t.totalSize})}finally{o.endCycle()}}function p(){o.clear(),e.clear?e.clear(a):a.textContent=``,a.style.height=``,a.style.width=``,a.style.position=``,a.style.contain=``}function m(){let t=e.stickToBottom;return t?t===!0?{enabled:!0,threshold:48}:{enabled:t.enabled??!0,threshold:t.threshold??48}:{enabled:!1,threshold:48}}function h(){let n=_(e.scrollElement,{count:t.length,estimateSize:l,gap:e.gap,getItemKey:c,horizontal:e.horizontal,measurementCache:e.measurementCache,onChange:f,overscan:e.overscan??3,sticky:e.sticky?n=>{let r=t[n];return r!==void 0&&e.sticky(n,r)}:void 0});return s=n,a.style.position=`relative`,a.style.contain=`layout`,n}function g(){n||(n=!0,i.abort(),s?.dispose(),s=null,p())}return{get count(){return s?.count??0},get disposalSignal(){return i.signal},dispose:g,get disposed(){return n},invalidate(){n||s?.invalidate()},isAtEnd(e){return s?.isAtEnd(e)??!0},get isScrolling(){return s?.isScrolling??!1},get items(){return s?.items??[]},measure(e,t){n||s?.measure(e,t)},measureBatch(e){n||s?.measureBatch(e)},measureEl(e,t){return n?()=>{}:s?.measureEl(e,t)??(()=>{})},refresh(){n||s?.refresh()},get scrollOffset(){return s?.scrollOffset??0},scrollToBottom(e){n||s?.scrollToBottom(e)},scrollToIndex(e,t){n||s?.scrollToIndex(e,t)},scrollToOffset(e,t){n||s?.scrollToOffset(e,t)},scrollToTop(e){n||s?.scrollToTop(e)},setItems(r){if(n)return;let i=m(),a=i.enabled&&(s?.isAtEnd(i.threshold)??!0);if(t=r,r.length===0){s?.dispose(),s=null,p();return}if(!s){let e=h();a&&e.scrollToBottom();return}let o=r.length!==s.count;s.update({count:r.length}),o?e.getItemKey||s.invalidate():e.getItemKey?s.refresh():s.invalidate(),a&&s.scrollToBottom()},get stickyItems(){return s?.stickyItems??[]},[Symbol.dispose]:g,get totalSize(){return s?.totalSize??0}}}function b(e,t){let n=document.createElement(`div`);n.style.cssText=t.horizontal?`overflow: auto hidden; width: 100%; height: 100%;`:`overflow: hidden auto; width: 100%; height: 100%;`,t.containerClass&&(n.className=t.containerClass);let r=document.createElement(`div`);n.appendChild(r),e.appendChild(n);let i;try{i=y({...t,listElement:r,scrollElement:n})}catch(e){throw n.remove(),e}let a=i.dispose.bind(i);return Object.assign(i,{dispose(){a(),n.remove()},[Symbol.dispose](){a(),n.remove()}})}function x(e,t,n,r,i,a){return a===`start`?e:a===`end`?t-i:a===`center`?e-(i-n)/2:e>=r&&t<=r+i?null:e<r?e:t-i}function S(e,t){let n=l(t.rowCount),r=l(t.colCount),i=m(t.estimateRowSize,36),a=m(t.estimateColSize,36),o=f(t.overscanY,3),s=f(t.overscanX,3),c=t.onChange,d=t.onRangeChange,_=t.rowMeasurementCache??new Map,v=t.colMeasurementCache??new Map,y=0,b=0,S=0,C=0,w=[],T=[],E=!1,D=g(n,e=>_.get(e)??i(e),l(t.rowGap??0)),O=g(r,e=>v.get(e)??a(e),l(t.colGap??0)),k=!1;function A(e){let t=Number.isFinite(e)?e:0;return Math.min(Math.max(0,D.totalSize-S),Math.max(0,t))}function j(e){let t=Number.isFinite(e)?e:0;return Math.min(Math.max(0,O.totalSize-C),Math.max(0,t))}function M(){if(E)return;let e=D.totalSize,t=O.totalSize;if(n===0||r===0||S<=0||C<=0){D.prevStart===-1&&D.prevTotalSize===e&&O.prevTotalSize===t||(D.commitDedup(-1,-1),O.commitDedup(-1,-1),w=[],T=[],c?.({cols:[],rows:[],totalHeight:e,totalWidth:t}));return}let{renderEnd:i,renderStart:a}=D.computeRange(y,y+S,o.start,o.end),{renderEnd:l,renderStart:u}=O.computeRange(b,b+C,s.start,s.end),f=D.isDedupSame(a,i),p=O.isDedupSame(u,l);if(f&&p)return;D.commitDedup(a,i),O.commitDedup(u,l),(!f||!p)&&d&&d({firstCol:u,firstRow:a,lastCol:l,lastRow:i});let m=[];for(let e=a;e<=i;e++)m.push(D.itemAt(e));let h=[];for(let e=u;e<=l;e++)h.push(O.itemAt(e));w=m,T=h,c?.({cols:T,rows:w,totalHeight:e,totalWidth:t})}function N(e,t){if(!Number.isFinite(e))return!1;let r=Math.floor(e);if(r<0||r>=n)return!1;let i=u(t,-1);return i<=0||_.get(r)===i?!1:(_.set(r,i),D.markChanged(r),!0)}function P(e,t){if(!Number.isFinite(e))return!1;let n=Math.floor(e);if(n<0||n>=r)return!1;let i=u(t,-1);return i<=0||v.get(n)===i?!1:(v.set(n,i),O.markChanged(n),!0)}function F(){k||(k=!0,queueMicrotask(()=>{k=!1;let e=D.consumeMinChangedIndex();e!==1/0&&D.rebuildFrom(e);let t=O.consumeMinChangedIndex();t!==1/0&&O.rebuildFrom(t),M()}))}function I(e,t){E||N(e,t)&&F()}function L(e,t){E||P(e,t)&&F()}function R(e,t){if(E)return;let n=!1;for(let{index:t,size:r}of e)N(t,r)&&(n=!0);for(let{index:e,size:r}of t)P(e,r)&&(n=!0);n&&F()}function z(e,t){return E?()=>{}:p(q.signal,t,t=>I(e,t.contentRect.height))}function B(e,t){return E?()=>{}:p(q.signal,t,t=>L(e,t.contentRect.width))}function V(){E||(_.clear(),v.clear(),D.rebuild(!0),O.rebuild(!0),M())}function H(){E||(D.rebuild(!0),O.rebuild(!0),M())}function U(e){if(E)return;let t=l(e);if(t===0)return;n+=t,D.setCount(n),D.rebuild(!0);let r=D.startAt(t),i=A(y+r);X.scrollTo(b,i,`auto`),y=i,M()}function W(e,t={}){if(E||n===0)return;let r=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),n-1)),i=t.behavior??`auto`,a=D.startAt(r),o=D.sizeAt(r),s=x(a,a+o,o,y,S,t.rowAlign??`auto`);s!==null&&X.scrollTo(b,A(s),i)}function G(e,t={}){if(E||r===0)return;let n=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),r-1)),i=t.behavior??`auto`,a=O.startAt(n),o=O.sizeAt(n),s=x(a,a+o,o,b,C,t.colAlign??`auto`);s!==null&&X.scrollTo(j(s),y,i)}function K(e,t,i={}){if(E||n===0||r===0)return;let a=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),n-1)),o=Math.max(0,Math.min(Math.floor(Number.isFinite(t)?t:0),r-1)),s=i.behavior??`auto`,c=D.startAt(a),l=D.sizeAt(a),u=O.startAt(o),d=O.sizeAt(o),f=x(c,c+l,l,y,S,i.rowAlign??`auto`),p=x(u,u+d,d,b,C,i.colAlign??`auto`);f===null&&p===null||X.scrollTo(p===null?b:j(p),f===null?y:A(f),s)}function ee(e){if(E)return;let t=!1,c=!1,u=!1;if(e.rowCount!==void 0){let r=l(e.rowCount);r!==n&&(n=r,D.setCount(n),t=!0)}if(e.colCount!==void 0){let t=l(e.colCount);t!==r&&(r=t,O.setCount(r),c=!0)}if(e.rowGap!==void 0){let n=l(e.rowGap);n!==D.gap&&(D.setGap(n),t=!0)}if(e.colGap!==void 0){let t=l(e.colGap);t!==O.gap&&(O.setGap(t),c=!0)}if(`estimateRowSize`in e&&(i=m(e.estimateRowSize,36),_.clear(),t=!0),`estimateColSize`in e&&(a=m(e.estimateColSize,36),v.clear(),c=!0),e.overscanY!==void 0){let t=f(e.overscanY,3);(t.start!==o.start||t.end!==o.end)&&(o=t,u=!0)}if(e.overscanX!==void 0){let t=f(e.overscanX,3);(t.start!==s.start||t.end!==s.end)&&(s=t,u=!0)}t&&D.rebuild(!0),c&&O.rebuild(!0),(t||c||u)&&M()}let q=new AbortController;function J(){E||(E=!0,q.abort(),X.detach())}function te(){y=A(X.y.readOffset()),b=j(X.x.readOffset()),M()}function Y(){S=X.y.readViewportSize(),C=X.x.readViewportSize(),M()}let X=h(e,te,Y);return D.rebuild(!0),O.rebuild(!0),S=X.y.readViewportSize(),C=X.x.readViewportSize(),t.initialScrollTop===void 0?t.initialScrollLeft!==void 0&&X.scrollTo(j(t.initialScrollLeft),0,`auto`):X.scrollTo(t.initialScrollLeft??0,A(t.initialScrollTop),`auto`),y=A(X.y.readOffset()),b=j(X.x.readOffset()),M(),{get cols(){return T},get disposalSignal(){return q.signal},dispose:J,get disposed(){return E},invalidate:V,measureBatch:R,measureColEl:B,measureColumn:L,measureRow:I,measureRowEl:z,prependRows:U,refresh:H,get rows(){return w},get scrollLeft(){return b},scrollToCell:K,scrollToColumn:G,get scrollTop(){return y},scrollToRow:W,[Symbol.dispose]:J,get totalHeight(){return D.totalSize},get totalWidth(){return O.totalSize},update:ee}}function C(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];t.push({isHeader:!0,itemIndex:-1,label:r.label,sectionIndex:n});for(let e=0;e<r.items.length;e++)t.push({isHeader:!1,item:r.items[e],itemIndex:e,sectionIndex:n})}return t}function w(e,t){let n=t.sections,r=C(n);function i(e){return typeof e==`function`?t=>{let i=r[t];return e(n[i.sectionIndex],i.sectionIndex)}:m(typeof e==`number`?e:void 0,36)}let a=i(t.estimateHeaderSize),o=typeof t.estimateItemSize==`function`?t.estimateItemSize:null,s=o?null:m(typeof t.estimateItemSize==`number`?t.estimateItemSize:void 0,36),c=t.getItemKey;function l(e){let t=r[e];return t?t.isHeader?a(e):o?o(t.item,t.itemIndex,t.sectionIndex):s(e):36}function u(e){let t=r[e];return t?t.isHeader?`__header_${t.sectionIndex}`:c?c(t.item,t.itemIndex,t.sectionIndex):e:e}let d=!1,f=[];function p(e){let t=[],n=[],i=null;for(let i of e.items){let e=r[i.index];e&&(e.isHeader?n.push({...i,label:e.label??``,sectionIndex:e.sectionIndex}):t.push({...i,data:e.item,itemIndex:e.itemIndex,sectionIndex:e.sectionIndex}))}if(e.stickyItems.length>0){let t=e.stickyItems[0],n=r[t.index];n?.isHeader&&(i={...t,label:n.label??``,sectionIndex:n.sectionIndex})}return f=t,{headers:n,items:t,stickyHeader:i,totalSize:e.totalSize}}let h=_(e,{count:r.length,estimateSize:l,getItemKey:u,horizontal:t.horizontal,measurementCache:t.measurementCache,onChange:e=>{let n=p(e);t.onChange?.(n)},onScrollEnd:t.onScrollEnd,onScrollingChange:t.onScrollingChange,overscan:t.overscan??3,scrollEndDelay:t.scrollEndDelay,sticky:e=>r[e]?.isHeader??!1}),g=new AbortController;function v(){d||(d=!0,g.abort(),h.dispose())}function y(e,t){if(e<0||e>=n.length)return-1;let r=0;for(let i=0;i<n.length;i++){if(i===e)return t===void 0?r:r+1+t;r+=1+n[i].items.length}return-1}return{get count(){return h.count},get disposalSignal(){return g.signal},dispose:v,get disposed(){return d},invalidate(){d||h.invalidate()},get isScrolling(){return h.isScrolling},get items(){return f},measure(e,t){d||h.measure(e,t)},measureBatch(e){d||h.measureBatch(e)},measureEl(e,t){return d?()=>{}:h.measureEl(e,t)},refresh(){d||h.refresh()},get scrollOffset(){return h.scrollOffset},scrollToBottom(e){d||h.scrollToBottom(e)},scrollToIndex(e,t){d||h.scrollToIndex(e,t)},scrollToItem(e,t,n={}){if(d)return;let r=y(e,t);r<0||h.scrollToIndex(r,n)},scrollToOffset(e,t){d||h.scrollToOffset(e,t)},scrollToSection(e,t={}){if(d)return;let n=y(e);n<0||h.scrollToIndex(n,t)},scrollToTop(e){d||h.scrollToTop(e)},get stickyItems(){return h.stickyItems},[Symbol.dispose]:v,get totalSize(){return h.totalSize},update(e,t){if(d)return;t&&(t.estimateHeaderSize!==void 0&&(a=i(t.estimateHeaderSize)),t.estimateItemSize!==void 0&&(o=typeof t.estimateItemSize==`function`?t.estimateItemSize:null,s=o?null:m(typeof t.estimateItemSize==`number`?t.estimateItemSize:void 0,36)),t.getItemKey!==void 0&&(c=t.getItemKey)),n=e;let l=r.length;r=C(n);let u={count:r.length};t?.measurementCache!==void 0&&(u.measurementCache=t.measurementCache),t?.overscan!==void 0&&(u.overscan=t.overscan),r.length!==l||t?.measurementCache!==void 0||t?.overscan!==void 0?h.update(u):h.refresh()}}}function T(e,n){let r=(0,t.signal)({headers:[],items:[],stickyHeader:null,totalSize:0}),i=w(e,{...n,onChange:e=>{r.value=e}});return new Proxy(i,{get(e,t,n){return t===`state`?r:Reflect.get(e,t,n)},getOwnPropertyDescriptor(e,t){return t===`state`?{configurable:!0,enumerable:!0,value:r}:Reflect.getOwnPropertyDescriptor(e,t)},has(e,t){return t===`state`||Reflect.has(e,t)},ownKeys(e){return[...Reflect.ownKeys(e),`state`]}})}function E(e,n){let r=(0,t.signal)({items:[],stickyItems:[],totalSize:0}),i=_(e,{...n,onChange:e=>{r.value=e}});return new Proxy(i,{get(e,t,n){return t===`state`?r:Reflect.get(e,t,n)},getOwnPropertyDescriptor(e,t){return t===`state`?{configurable:!0,enumerable:!0,value:r}:Reflect.getOwnPropertyDescriptor(e,t)},has(e,t){return t===`state`||Reflect.has(e,t)},ownKeys(e){return[...Reflect.ownKeys(e),`state`]}})}return e.DEFAULT_ESTIMATE_SIZE=s,e.DEFAULT_OVERSCAN=c,e.ScrollError=n,e.ScrollRangeError=r,e.createDomVirtualList=y,e.createGridVirtualizer=S,e.createGroupedVirtualizer=w,e.createMeasurementCache=o,e.createReactiveGroupedVirtualizer=T,e.createReactiveVirtualizer=E,e.createVirtualScroller=b,e.createVirtualizer=_,e})({},Ripple);
|
|
1
|
+
var Scroll=(function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var n=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},r=class extends n{};function i(){return new Map}var a=36,o=3;function s(e,t=0){return Number.isFinite(e)?Math.max(0,Math.floor(e)):t}function c(e,t){return!Number.isFinite(e)||e<=0||e>1e7?t:e}function l(e){return typeof Window<`u`&&e instanceof Window||typeof e.innerHeight==`number`&&typeof e.document==`object`}function u(e,t){if(typeof e==`number`){let n=s(e,t);return{end:n,start:n}}return{end:s(e?.end??t),start:s(e?.start??t)}}function d(e,t,n){let r=new ResizeObserver(e=>{for(let t of e)n(t)});return r.observe(t),e.addEventListener(`abort`,()=>r.disconnect(),{once:!0}),()=>r.disconnect()}function f(e,t){if(typeof e==`function`)return n=>{try{return c(e(n),t)}catch(e){return`${n}${e}`,t}};let n=typeof e==`number`?c(e,t):t;return()=>n}function p(e,t,n){if(l(e))return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`resize`,n,{passive:!0}),{detach(){e.removeEventListener(`scroll`,t),e.removeEventListener(`resize`,n)},scrollTo:(t,n,r)=>e.scrollTo({behavior:r,left:t,top:n}),x:{readOffset:()=>e.scrollX,readViewportSize:()=>e.innerWidth,writeOffset:(t,n)=>e.scrollTo({behavior:n,left:t})},y:{readOffset:()=>e.scrollY,readViewportSize:()=>e.innerHeight,writeOffset:(t,n)=>e.scrollTo({behavior:n,top:t})}};let r=new ResizeObserver(n);return e.addEventListener(`scroll`,t,{passive:!0}),r.observe(e),{detach(){e.removeEventListener(`scroll`,t),r.disconnect()},scrollTo:(t,n,r)=>e.scrollTo({behavior:r,left:t,top:n}),x:{readOffset:()=>e.scrollLeft,readViewportSize:()=>e.clientWidth,writeOffset:(t,n)=>e.scrollTo({behavior:n,left:t})},y:{readOffset:()=>e.scrollTop,readViewportSize:()=>e.clientHeight,writeOffset:(t,n)=>e.scrollTo({behavior:n,top:t})}}}function m(e,t,n){let r=e,i=n,a=t,o=[],s=0,c=-1,l=-1,u=-1,d=!1,f=1/0;function p(e){return o[e]??0}function m(e){return p(e)+a(e)}function h(e=!1){e&&(c=-1,l=-1,u=-1);let t=[0],n=0;for(let e=0;e<r;e++)n+=a(e)+(e<r-1?i:0),t.push(n);o=t,s=n}function g(e){if(!Number.isFinite(e)||e>=r)return;c=-1,l=-1,u=-1;let t=o[e]??0;for(let n=e;n<r;n++)o[n]=t,t+=a(n)+(n<r-1?i:0);o[r]=t,s=t}function _(e){let t=0,n=r-1;for(;t<n;){let r=t+n>>1;m(r)<=e?t=r+1:n=r}return t}function v(e,t){let n=t,i=r-1;for(;n<i;){let t=n+i+1>>1;p(t)<e?n=t:i=t-1}return n}function y(e,t,n,i){let a=_(e),o=v(t,a);return{renderEnd:Math.min(r-1,o+i),renderStart:Math.max(0,a-n)}}function b(e,t){return e===c&&t===l&&s===u}function x(e,t){c=e,l=t,u=s}function S(){c=-1,l=-1,u=-1}function C(e){d||(d=!0,queueMicrotask(()=>{d=!1;let t=f;f=1/0,g(t),e()}))}function w(e){e<f&&(f=e)}function T(e){let t=p(e),n=a(e);return{end:t+n,index:e,size:n,start:t}}return{commitDedup:x,computeRange:y,consumeMinChangedIndex(){let e=f;return f=1/0,e},get count(){return r},endAt:m,findFirst:_,findLast:v,get gap(){return i},isDedupSame:b,itemAt:T,markChanged:w,get minChangedIndex(){return f},get pendingBuild(){return d},get prevEnd(){return l},get prevStart(){return c},get prevTotalSize(){return u},rebuild:h,rebuildFrom:g,resetDedup:S,scheduleBuild:C,setCount(e){r=e},setGap(e){i=e},sizeAt(e){return a(e)},startAt:p,get totalSize(){return s}}}function h(e,t){let n=!!t.horizontal,r=e=>e,i=s(t.count),a=f(t.estimateSize,36),o=s(t.gap??0),l=t.getItemKey??r,h=u(t.overscan,3),g=t.sticky??null,_=t.onChange,v=t.onScrollEnd,y=t.onScrollingChange,b=typeof t.scrollEndDelay==`number`&&t.scrollEndDelay>=0?t.scrollEndDelay:150,x=!1,S=null,C=`onscrollend`in e;function w(){x&&(x=!1,y?.(!1),v?.(M))}function T(){x||(x=!0,y?.(!0)),C||(S!==null&&clearTimeout(S),S=setTimeout(w,b))}let E=t.measurementCache??new Map,D=[],O=[],k=m(i,e=>E.get(l(e))??a(e),o),A=-1,j=0,M=0,N=0,P=-1,F=!1;function I(e){let t=Number.isFinite(e)?e:0,n=Math.max(0,k.totalSize-N);return Math.min(n,Math.max(0,t))}function L(){if(!g||i===0||M<=0)return[];let e=-1,t=0,n=i-1;for(;t<=n;){let r=t+n>>1;k.startAt(r)<M?(e=r,t=r+1):n=r-1}if(e<0)return[];let r=-1;for(let t=e;t>=0;t--)if(g(t)){r=t;break}if(r===-1)return[];let a=k.sizeAt(r),o=1/0;for(let e=r+1;e<i;e++)if(g(e)){o=k.startAt(e);break}let s=Math.min(M,o-a);return[{end:s+a,index:r,size:a,start:s}]}function R(){if(F)return;if(i===0||N<=0){(k.prevStart!==-1||k.prevTotalSize!==k.totalSize)&&(k.commitDedup(-1,-1),D=[],O=[],_&&_({items:D,stickyItems:O,totalSize:k.totalSize}));return}let{renderEnd:e,renderStart:t}=k.computeRange(M,M+N,h.start,h.end),n=g!==null&&M!==P;if(k.isDedupSame(t,e)&&!n)return;k.commitDedup(t,e),P=M;let r=[];for(let n=t;n<=e;n++)r.push(k.itemAt(n));D=r,O=g?L():[],_&&_({items:D,stickyItems:O,totalSize:k.totalSize})}function ee(e,t){if(!Number.isFinite(e))return!1;let n=Math.floor(e);if(n<0||n>=i)return!1;let r=c(t,-1);if(r<=0)return!1;let a=l(n);return E.get(a)!==r&&(E.set(a,r),k.markChanged(n),!0)}function z(){if(M<=0||i===0){A=-1;return}A=k.findFirst(M),j=M-k.startAt(A)}function B(){if(A<0)return;let e=k.startAt(A)+j-M;if(A=-1,Math.abs(e)>=1){let t=I(M+e);$.writeOffset(t,`auto`),M=t}}function V(e){if(F)return;let t=!1;for(let{index:n,size:r}of e)ee(n,r)&&(t=!0);t&&(k.pendingBuild||z(),k.scheduleBuild(()=>{B(),R()}))}function H(e,t){V([{index:e,size:t}])}function U(e,t){return F?()=>{}:d(Z.signal,t,t=>{H(e,n?t.contentRect.width:t.contentRect.height)})}function W(e){let t=!1,n=!1;if(e.count!==void 0){let n=s(e.count);n!==i&&(i=n,k.setCount(i),t=!0)}if(Object.hasOwn(e,`estimateSize`)&&(a=f(e.estimateSize,36),E.clear(),t=!0),e.gap!==void 0){let n=s(e.gap);n!==o&&(o=n,k.setGap(o),t=!0)}if(Object.hasOwn(e,`getItemKey`)){let n=e.getItemKey??r;n!==l&&(l=n,E.clear(),t=!0)}if(Object.hasOwn(e,`measurementCache`)&&e.measurementCache!==void 0&&(E=e.measurementCache,t=!0),e.overscan!==void 0){let t=u(e.overscan,3);(t.start!==h.start||t.end!==h.end)&&(h=t,n=!0)}if(Object.hasOwn(e,`sticky`)){let t=e.sticky??null;t!==g&&(g=t,k.resetDedup()),n=!0}t&&(z(),k.rebuild(!0),B()),(n||t)&&R()}function G(){F||(E.clear(),k.rebuild(!0),R())}function K(){F||(k.rebuild(!0),R())}function q(e){if(F)return;let t=s(e);if(t===0)return;i+=t,k.setCount(i),k.rebuild(!0);let n=k.startAt(t),r=I(M+n);$.writeOffset(r,`auto`),M=r,R()}function J(e){F||W(e)}function te(t,n={}){if(F||i<=0)return;let r=Math.max(0,Math.min(Number.isFinite(t)?Math.floor(t):0,i-1)),a=n.align??`auto`,o=n.behavior??`auto`,s=k.startAt(r),c=k.sizeAt(r),l=s+c,u;if(a===`start`)u=s;else if(a===`end`)u=l-N;else if(a===`center`)u=s-(N-c)/2;else{let e=M,t=e+N;if(s>=e&&l<=t){n.onComplete&&queueMicrotask(n.onComplete);return}u=s<e?s:l-N}$.writeOffset(I(u),o),n.onComplete&&(o===`smooth`&&`onscrollend`in e?e.addEventListener(`scrollend`,n.onComplete,{once:!0}):queueMicrotask(n.onComplete))}function Y(e,t={}){F||$.writeOffset(I(e),t.behavior??`auto`)}function X(e={}){Y(0,e)}function ne(e={}){Y(Math.max(0,k.totalSize-N),e)}function re(e=0){return k.totalSize-(M+N)<=e}let Z=new AbortController;function ie(){F||(F=!0,Z.abort(),S!==null&&(clearTimeout(S),S=null),C&&e.removeEventListener(`scrollend`,w),Q.detach())}function ae(){M=I($.readOffset()),T(),R()}function oe(){N=$.readViewportSize(),R()}let Q=p(e,ae,oe),$=n?Q.x:Q.y;return C&&e.addEventListener(`scrollend`,w,{passive:!0}),k.rebuild(!0),t.initialOffset!==void 0&&$.writeOffset(I(t.initialOffset),`auto`),M=I($.readOffset()),N=$.readViewportSize(),R(),{get count(){return i},get disposalSignal(){return Z.signal},dispose:ie,get disposed(){return F},invalidate:G,isAtEnd:re,get isScrolling(){return x},get items(){return D},measure:H,measureBatch:V,measureEl:U,prepend:q,refresh:K,get scrollOffset(){return M},scrollToBottom:ne,scrollToIndex:te,scrollToOffset:Y,scrollToTop:X,get stickyItems(){return O},[Symbol.dispose]:ie,get totalSize(){return k.totalSize},update:J}}function g(){let e=new Map,t=new Map,n=[],r=!1;return{acquire(i,a){if(!r)return a();let o=e.get(i);if(o)return t.set(i,o),o;let s=n.pop()??a();return t.set(i,s),s},beginCycle(){t=new Map,r=!0},clear(){for(let t of e.values())t.remove();e.clear(),t.clear(),n.length=0,r=!1},endCycle(){if(r){r=!1;for(let[r,i]of e)t.has(r)||(i.remove(),n.push(i));e=t}}}}function _(e){let t=[],n=!1,i=new AbortController,a=e.listElement,o=g(),s=null;function c(n){let r=t[n];return r!==void 0&&e.getItemKey?e.getItemKey(n,r):n}function l(n){if(e.estimateSize===void 0)return 36;if(typeof e.estimateSize==`number`)return e.estimateSize;let r=t[n];return r===void 0?36:e.estimateSize(n,r)}function u(t){e.horizontal?(a.style.height=``,a.style.width=`${t}px`):(a.style.height=`${t}px`,a.style.width=``)}function d(e){let n=t[e.index];if(n===void 0)throw new r(`toRenderItem: index ${e.index} is out of range (currentItems.length=${t.length})`);return{...e,data:n}}function f(t){u(t.totalSize),o.beginCycle();try{e.render({items:t.items.map(d),listEl:a,recycle:(e,t)=>o.acquire(e,t),stickyItems:t.stickyItems.map(d),totalSize:t.totalSize})}finally{o.endCycle()}}function p(){o.clear(),e.clear?e.clear(a):a.textContent=``,a.style.height=``,a.style.width=``,a.style.position=``,a.style.contain=``}function m(){let t=e.stickToBottom;return t?t===!0?{enabled:!0,threshold:48}:{enabled:t.enabled??!0,threshold:t.threshold??48}:{enabled:!1,threshold:48}}function _(){let n=h(e.scrollElement,{count:t.length,estimateSize:l,gap:e.gap,getItemKey:c,horizontal:e.horizontal,measurementCache:e.measurementCache,onChange:f,overscan:e.overscan??3,sticky:e.sticky?n=>{let r=t[n];return r!==void 0&&e.sticky(n,r)}:void 0});return s=n,a.style.position=`relative`,a.style.contain=`layout`,n}function v(){n||(n=!0,i.abort(),s?.dispose(),s=null,p())}return{get count(){return s?.count??0},get disposalSignal(){return i.signal},dispose:v,get disposed(){return n},invalidate(){n||s?.invalidate()},isAtEnd(e){return s?.isAtEnd(e)??!0},get isScrolling(){return s?.isScrolling??!1},get items(){return s?.items??[]},measure(e,t){n||s?.measure(e,t)},measureBatch(e){n||s?.measureBatch(e)},measureEl(e,t){return n?()=>{}:s?.measureEl(e,t)??(()=>{})},refresh(){n||s?.refresh()},get scrollOffset(){return s?.scrollOffset??0},scrollToBottom(e){n||s?.scrollToBottom(e)},scrollToIndex(e,t){n||s?.scrollToIndex(e,t)},scrollToOffset(e,t){n||s?.scrollToOffset(e,t)},scrollToTop(e){n||s?.scrollToTop(e)},setItems(r){if(n)return;let i=m(),a=i.enabled&&(s?.isAtEnd(i.threshold)??!0);if(t=r,r.length===0){s?.dispose(),s=null,p();return}if(!s){let e=_();a&&e.scrollToBottom();return}let o=r.length!==s.count;s.update({count:r.length}),o?e.getItemKey||s.invalidate():e.getItemKey?s.refresh():s.invalidate(),a&&s.scrollToBottom()},get stickyItems(){return s?.stickyItems??[]},[Symbol.dispose]:v,get totalSize(){return s?.totalSize??0}}}function v(e,t){let n=document.createElement(`div`);n.style.cssText=t.horizontal?`overflow: auto hidden; width: 100%; height: 100%;`:`overflow: hidden auto; width: 100%; height: 100%;`,t.containerClass&&(n.className=t.containerClass);let r=document.createElement(`div`);n.appendChild(r),e.appendChild(n);let i;try{i=_({...t,listElement:r,scrollElement:n})}catch(e){throw n.remove(),e}let a=i.dispose.bind(i);return Object.assign(i,{dispose(){a(),n.remove()},[Symbol.dispose](){a(),n.remove()}})}function y(e,t,n,r,i,a){return a===`start`?e:a===`end`?t-i:a===`center`?e-(i-n)/2:e>=r&&t<=r+i?null:e<r?e:t-i}function b(e,t){let n=s(t.rowCount),r=s(t.colCount),i=f(t.estimateRowSize,36),a=f(t.estimateColSize,36),o=u(t.overscanY,3),l=u(t.overscanX,3),h=t.onChange,g=t.onRangeChange,_=t.rowMeasurementCache??new Map,v=t.colMeasurementCache??new Map,b=0,x=0,S=0,C=0,w=[],T=[],E=!1,D=m(n,e=>_.get(e)??i(e),s(t.rowGap??0)),O=m(r,e=>v.get(e)??a(e),s(t.colGap??0)),k=!1;function A(e){let t=Number.isFinite(e)?e:0;return Math.min(Math.max(0,D.totalSize-S),Math.max(0,t))}function j(e){let t=Number.isFinite(e)?e:0;return Math.min(Math.max(0,O.totalSize-C),Math.max(0,t))}function M(){if(E)return;let e=D.totalSize,t=O.totalSize;if(n===0||r===0||S<=0||C<=0){(D.prevStart!==-1||D.prevTotalSize!==e||O.prevTotalSize!==t)&&(D.commitDedup(-1,-1),O.commitDedup(-1,-1),w=[],T=[],h?.({cols:[],rows:[],totalHeight:e,totalWidth:t}));return}let{renderEnd:i,renderStart:a}=D.computeRange(b,b+S,o.start,o.end),{renderEnd:s,renderStart:c}=O.computeRange(x,x+C,l.start,l.end),u=D.isDedupSame(a,i),d=O.isDedupSame(c,s);if(u&&d)return;D.commitDedup(a,i),O.commitDedup(c,s),(!u||!d)&&g&&g({firstCol:c,firstRow:a,lastCol:s,lastRow:i});let f=[];for(let e=a;e<=i;e++)f.push(D.itemAt(e));let p=[];for(let e=c;e<=s;e++)p.push(O.itemAt(e));w=f,T=p,h?.({cols:T,rows:w,totalHeight:e,totalWidth:t})}function N(e,t){if(!Number.isFinite(e))return!1;let r=Math.floor(e);if(r<0||r>=n)return!1;let i=c(t,-1);return i<=0||_.get(r)===i?!1:(_.set(r,i),D.markChanged(r),!0)}function P(e,t){if(!Number.isFinite(e))return!1;let n=Math.floor(e);if(n<0||n>=r)return!1;let i=c(t,-1);return i<=0||v.get(n)===i?!1:(v.set(n,i),O.markChanged(n),!0)}function F(){k||(k=!0,queueMicrotask(()=>{k=!1;let e=D.consumeMinChangedIndex();e!==1/0&&D.rebuildFrom(e);let t=O.consumeMinChangedIndex();t!==1/0&&O.rebuildFrom(t),M()}))}function I(e,t){E||N(e,t)&&F()}function L(e,t){E||P(e,t)&&F()}function R(e,t){if(E)return;let n=!1;for(let{index:t,size:r}of e)N(t,r)&&(n=!0);for(let{index:e,size:r}of t)P(e,r)&&(n=!0);n&&F()}function ee(e,t){return E?()=>{}:d(q.signal,t,t=>I(e,t.contentRect.height))}function z(e,t){return E?()=>{}:d(q.signal,t,t=>L(e,t.contentRect.width))}function B(){E||(_.clear(),v.clear(),D.rebuild(!0),O.rebuild(!0),M())}function V(){E||(D.rebuild(!0),O.rebuild(!0),M())}function H(e){if(E)return;let t=s(e);if(t===0)return;n+=t,D.setCount(n),D.rebuild(!0);let r=D.startAt(t),i=A(b+r);X.scrollTo(x,i,`auto`),b=i,M()}function U(e,t={}){if(E||n===0)return;let r=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),n-1)),i=t.behavior??`auto`,a=D.startAt(r),o=D.sizeAt(r),s=y(a,a+o,o,b,S,t.rowAlign??`auto`);s!==null&&X.scrollTo(x,A(s),i)}function W(e,t={}){if(E||r===0)return;let n=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),r-1)),i=t.behavior??`auto`,a=O.startAt(n),o=O.sizeAt(n),s=y(a,a+o,o,x,C,t.colAlign??`auto`);s!==null&&X.scrollTo(j(s),b,i)}function G(e,t,i={}){if(E||n===0||r===0)return;let a=Math.max(0,Math.min(Math.floor(Number.isFinite(e)?e:0),n-1)),o=Math.max(0,Math.min(Math.floor(Number.isFinite(t)?t:0),r-1)),s=i.behavior??`auto`,c=D.startAt(a),l=D.sizeAt(a),u=O.startAt(o),d=O.sizeAt(o),f=y(c,c+l,l,b,S,i.rowAlign??`auto`),p=y(u,u+d,d,x,C,i.colAlign??`auto`);(f!==null||p!==null)&&X.scrollTo(p===null?x:j(p),f===null?b:A(f),s)}function K(e){if(E)return;let t=!1,c=!1,d=!1;if(e.rowCount!==void 0){let r=s(e.rowCount);r!==n&&(n=r,D.setCount(n),t=!0)}if(e.colCount!==void 0){let t=s(e.colCount);t!==r&&(r=t,O.setCount(r),c=!0)}if(e.rowGap!==void 0){let n=s(e.rowGap);n!==D.gap&&(D.setGap(n),t=!0)}if(e.colGap!==void 0){let t=s(e.colGap);t!==O.gap&&(O.setGap(t),c=!0)}if(`estimateRowSize`in e&&(i=f(e.estimateRowSize,36),_.clear(),t=!0),`estimateColSize`in e&&(a=f(e.estimateColSize,36),v.clear(),c=!0),e.overscanY!==void 0){let t=u(e.overscanY,3);(t.start!==o.start||t.end!==o.end)&&(o=t,d=!0)}if(e.overscanX!==void 0){let t=u(e.overscanX,3);(t.start!==l.start||t.end!==l.end)&&(l=t,d=!0)}t&&D.rebuild(!0),c&&O.rebuild(!0),(t||c||d)&&M()}let q=new AbortController;function J(){E||(E=!0,q.abort(),X.detach())}function te(){b=A(X.y.readOffset()),x=j(X.x.readOffset()),M()}function Y(){S=X.y.readViewportSize(),C=X.x.readViewportSize(),M()}let X=p(e,te,Y);return D.rebuild(!0),O.rebuild(!0),S=X.y.readViewportSize(),C=X.x.readViewportSize(),t.initialScrollTop===void 0?t.initialScrollLeft!==void 0&&X.scrollTo(j(t.initialScrollLeft),0,`auto`):X.scrollTo(t.initialScrollLeft??0,A(t.initialScrollTop),`auto`),b=A(X.y.readOffset()),x=j(X.x.readOffset()),M(),{get cols(){return T},get disposalSignal(){return q.signal},dispose:J,get disposed(){return E},invalidate:B,measureBatch:R,measureColEl:z,measureColumn:L,measureRow:I,measureRowEl:ee,prependRows:H,refresh:V,get rows(){return w},get scrollLeft(){return x},scrollToCell:G,scrollToColumn:W,get scrollTop(){return b},scrollToRow:U,[Symbol.dispose]:J,get totalHeight(){return D.totalSize},get totalWidth(){return O.totalSize},update:K}}function x(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];t.push({isHeader:!0,itemIndex:-1,label:r.label,sectionIndex:n});for(let e=0;e<r.items.length;e++)t.push({isHeader:!1,item:r.items[e],itemIndex:e,sectionIndex:n})}return t}function S(e,t){let n=t.sections,r=x(n);function i(e){return typeof e==`function`?t=>{let i=r[t];return e(n[i.sectionIndex],i.sectionIndex)}:f(typeof e==`number`?e:void 0,36)}let a=i(t.estimateHeaderSize),o=typeof t.estimateItemSize==`function`?t.estimateItemSize:null,s=o?null:f(typeof t.estimateItemSize==`number`?t.estimateItemSize:void 0,36),c=t.getItemKey;function l(e){let t=r[e];return t?t.isHeader?a(e):o?o(t.item,t.itemIndex,t.sectionIndex):s(e):36}function u(e){let t=r[e];return t?t.isHeader?`__header_${t.sectionIndex}`:c?c(t.item,t.itemIndex,t.sectionIndex):e:e}let d=!1,p=[];function m(e){let t=[],n=[],i=null;for(let i of e.items){let e=r[i.index];e&&(e.isHeader?n.push({...i,label:e.label??``,sectionIndex:e.sectionIndex}):t.push({...i,data:e.item,itemIndex:e.itemIndex,sectionIndex:e.sectionIndex}))}if(e.stickyItems.length>0){let t=e.stickyItems[0],n=r[t.index];n?.isHeader&&(i={...t,label:n.label??``,sectionIndex:n.sectionIndex})}return p=t,{headers:n,items:t,stickyHeader:i,totalSize:e.totalSize}}let g=h(e,{count:r.length,estimateSize:l,getItemKey:u,horizontal:t.horizontal,measurementCache:t.measurementCache,onChange:e=>{let n=m(e);t.onChange?.(n)},onScrollEnd:t.onScrollEnd,onScrollingChange:t.onScrollingChange,overscan:t.overscan??3,scrollEndDelay:t.scrollEndDelay,sticky:e=>r[e]?.isHeader??!1}),_=new AbortController;function v(){d||(d=!0,_.abort(),g.dispose())}function y(e,t){if(e<0||e>=n.length)return-1;let r=0;for(let i=0;i<n.length;i++){if(i===e)return t===void 0?r:r+1+t;r+=1+n[i].items.length}return-1}return{get count(){return g.count},get disposalSignal(){return _.signal},dispose:v,get disposed(){return d},invalidate(){d||g.invalidate()},get isScrolling(){return g.isScrolling},get items(){return p},measure(e,t){d||g.measure(e,t)},measureBatch(e){d||g.measureBatch(e)},measureEl(e,t){return d?()=>{}:g.measureEl(e,t)},refresh(){d||g.refresh()},get scrollOffset(){return g.scrollOffset},scrollToBottom(e){d||g.scrollToBottom(e)},scrollToIndex(e,t){d||g.scrollToIndex(e,t)},scrollToItem(e,t,n={}){if(d)return;let r=y(e,t);r<0||g.scrollToIndex(r,n)},scrollToOffset(e,t){d||g.scrollToOffset(e,t)},scrollToSection(e,t={}){if(d)return;let n=y(e);n<0||g.scrollToIndex(n,t)},scrollToTop(e){d||g.scrollToTop(e)},get stickyItems(){return g.stickyItems},[Symbol.dispose]:v,get totalSize(){return g.totalSize},update(e,t){if(d)return;t&&(t.estimateHeaderSize!==void 0&&(a=i(t.estimateHeaderSize)),t.estimateItemSize!==void 0&&(o=typeof t.estimateItemSize==`function`?t.estimateItemSize:null,s=o?null:f(typeof t.estimateItemSize==`number`?t.estimateItemSize:void 0,36)),t.getItemKey!==void 0&&(c=t.getItemKey)),n=e;let l=r.length;r=x(n);let u={count:r.length};t?.measurementCache!==void 0&&(u.measurementCache=t.measurementCache),t?.overscan!==void 0&&(u.overscan=t.overscan),r.length!==l||t?.measurementCache!==void 0||t?.overscan!==void 0?g.update(u):g.refresh()}}}function C(e,n){let r=(0,t.signal)({headers:[],items:[],stickyHeader:null,totalSize:0}),i=S(e,{...n,onChange:e=>{r.value=e}});return new Proxy(i,{get(e,t,n){return t===`state`?r:Reflect.get(e,t,n)},getOwnPropertyDescriptor(e,t){return t===`state`?{configurable:!0,enumerable:!0,value:r}:Reflect.getOwnPropertyDescriptor(e,t)},has(e,t){return t===`state`||Reflect.has(e,t)},ownKeys(e){return[...Reflect.ownKeys(e),`state`]}})}function w(e,n){let r=(0,t.signal)({items:[],stickyItems:[],totalSize:0}),i=h(e,{...n,onChange:e=>{r.value=e}});return new Proxy(i,{get(e,t,n){return t===`state`?r:Reflect.get(e,t,n)},getOwnPropertyDescriptor(e,t){return t===`state`?{configurable:!0,enumerable:!0,value:r}:Reflect.getOwnPropertyDescriptor(e,t)},has(e,t){return t===`state`||Reflect.has(e,t)},ownKeys(e){return[...Reflect.ownKeys(e),`state`]}})}return e.DEFAULT_ESTIMATE_SIZE=a,e.DEFAULT_OVERSCAN=o,e.ScrollError=n,e.ScrollRangeError=r,e.createDomVirtualList=_,e.createGridVirtualizer=b,e.createGroupedVirtualizer=S,e.createMeasurementCache=i,e.createReactiveGroupedVirtualizer=C,e.createReactiveVirtualizer=w,e.createVirtualScroller=v,e.createVirtualizer=h,e})({},Ripple);
|
|
2
2
|
//# sourceMappingURL=scroll.iife.js.map
|