vlist 2.5.1 → 2.6.1
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/README.github.md +1 -1
- package/README.md +1 -1
- package/dist/config.d.ts +72 -0
- package/dist/config.js +1 -0
- package/dist/core/types.d.ts +3 -33
- package/dist/index.js +1 -1
- package/dist/size.json +1 -1
- package/dist/types.d.ts +17 -0
- package/dist/utils/grid-nav.d.ts +16 -0
- package/package.json +6 -1
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var Q0=3,n0="vlist";var j0=50;var t0=50,e0=2,J1=15,$1=6,H0=2000,Q1=30000,a2=16000000,x2=150,i2=1,Z0=($)=>$<0.5?2*$*$:1-(-2*$+2)**2/2,j1=300,Z1=2,U1=1.5,K1=0.25,q1=0.75;var Y1="x",B1=20,D0="_isPlaceholder",I2="__placeholder_";var U0={top:0,right:0,bottom:0,left:0},_1=($)=>{if($==null)return U0;if(typeof $==="number")return $===0?U0:{top:$,right:$,bottom:$,left:$};if($.length===2){let[Z,q]=$;return Z===0&&q===0?U0:{top:Z,right:q,bottom:Z,left:q}}let[J,Q,j,U]=$;return J===0&&Q===0&&j===0&&U===0?U0:{top:J,right:Q,bottom:j,left:U}},W1=($,J)=>J?$.left+$.right:$.top+$.bottom,N1=($,J)=>J?$.top+$.bottom:$.left+$.right;function V1($){let J={visibleIndices:new Int32Array($),visibleOffsets:new Float64Array($),visibleSizes:new Float64Array($),visibleCount:0,startIndex:0,totalSize:0,capacity:$,scrollPosition:0,prevScrollPosition:0,scrollDirection:0,baseOffset:0,containerSize:0,crossSize:0,totalItems:0,prevRangeStart:0,prevRangeEnd:-1,renderPending:!1,initialized:!1,destroyed:!1,prevAriaTotal:-1,resizeCapacity(Q,j,U=Q0){if(j<=0||Q<=0)return;let Z=Math.ceil(Q/j)+U*2;if(Z<=J.capacity)return;let q=Z+8,K=new Int32Array(q),D=new Float64Array(q),N=new Float64Array(q);K.set(J.visibleIndices),D.set(J.visibleOffsets),N.set(J.visibleSizes),J.visibleIndices=K,J.visibleOffsets=D,J.visibleSizes=N,J.capacity=q},clear(){J.visibleCount=0,J.startIndex=0}};return J}var j4=($,J)=>{let Q=J;return{getOffset:(j)=>j*$,getSize:(j)=>$,indexAtOffset:(j)=>{if(Q===0||$===0)return 0;return Math.max(0,Math.min(Math.floor(j/$),Q-1))},getTotalSize:()=>Q*$,getTotal:()=>Q,rebuild:(j)=>{Q=j},isVariable:()=>!1}},Z4=($,J)=>{let Q=J,j=new Float64Array(0),U=(q)=>{Q=q,j=new Float64Array(q+1),j[0]=0;for(let K=0;K<q;K++)j[K+1]=j[K]+$(K)};U(J);let Z=(q)=>{if(Q===0)return 0;if(q<=0)return 0;if(q>=j[Q])return Q-1;let K=0,D=Q-1;while(K<D){let N=K+D+1>>>1;if(j[N]<=q)K=N;else D=N-1}return K};return{getOffset:(q)=>{if(q<=0)return 0;if(q>=Q)return j[Q];return j[q]},getSize:(q)=>$(q),indexAtOffset:(q)=>Z(q),getTotalSize:()=>j[Q]??0,getTotal:()=>Q,rebuild:(q)=>U(q),isVariable:()=>!0}},K0=($,J)=>{if(typeof $==="number")return j4($,J);return Z4($,J)};function X1($){let J=[],Q=`${$}-item`,j=document.createElement("div");return j.className=Q,{acquire(){if(J.length>0)return J.pop();return j.cloneNode(!1)},release(U){if(U.className=Q,U.removeAttribute("style"),U.removeAttribute("id"),U.removeAttribute("role"),U.removeAttribute("aria-selected"),U.removeAttribute("aria-posinset"),U.removeAttribute("aria-setsize"),U.removeAttribute("data-index"),U.removeAttribute("data-id"),U.textContent="",J.length<100)J.push(U)},get size(){return J.length},clear(){J.length=0}}}function u2($){let J=$.querySelectorAll("a[href],button,input,select,textarea,[tabindex]");for(let Q=0;Q<J.length;Q++)J[Q].setAttribute("tabindex","-1")}function M1($){if(typeof $==="string"){let J=document.querySelector($);if(!J)throw Error(`[vlist] Container not found: ${$}`);return J}return $}function G1($,J,Q,j){let U=Q?`${J} ${J}--horizontal`:J,Z=Q?"overflow-x:auto;overflow-y:hidden;height:100%;width:100%":"overflow:auto;height:100%;width:100%",q=Q?"position:relative;height:100%;overflow-anchor:none":"position:relative;width:100%;overflow-anchor:none",K=' role="list"';if(j)K+=` aria-label="${j.replace(/"/g,""")}"`;if(Q)K+=' aria-orientation="horizontal"';$.insertAdjacentHTML("beforeend",`<div class="${U}"><div class="${J}-viewport" style="${Z}" tabindex="-1"><div class="${J}-content" style="${q}"${K}></div></div></div>`);let D=$.lastElementChild,N=D.firstElementChild,_=N.firstElementChild,A=document.createElement("div");return A.className=`${J}-live`,A.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",A.setAttribute("aria-live","polite"),A.setAttribute("aria-atomic","true"),A.setAttribute("role","status"),D.appendChild(A),{root:D,viewport:N,content:_,liveRegion:A}}function A1($){let{state:J,viewport:Q,isX:j,wheelEnabled:U,onFrame:Z,onIdle:q}=$,K=$.idleTimeout||x2,D=$.scrollTarget??Q,N=null,_=null;function A(){let P=j?Q.scrollLeft:Q.scrollTop;if(Math.abs(P-J.scrollPosition)<0.5)return;J.prevScrollPosition=J.scrollPosition,J.scrollPosition=P,J.scrollDirection=P>J.prevScrollPosition?1:P<J.prevScrollPosition?-1:0,Z(),O()}function F(P){let M;if(j){if(Math.abs(P.deltaX)>Math.abs(P.deltaY))return;let T=Q.scrollLeft,G=Q.scrollWidth-Q.clientWidth;if(M=Math.max(0,Math.min(T+P.deltaY*i2,G)),Math.abs(M-T)<1)return;P.preventDefault(),Q.scrollLeft=M}else{let T=Q.scrollWidth>Q.clientWidth;if(T&&Math.abs(P.deltaX)>Math.abs(P.deltaY))return;if(T&&P.deltaX!==0)P.preventDefault(),Q.scrollLeft+=P.deltaX;let G=Q.scrollTop,Y=Q.scrollHeight-Q.clientHeight;if(M=Math.max(0,Math.min(G+P.deltaY*i2,Y)),Math.abs(M-G)<1)return;P.preventDefault(),Q.scrollTop=M}J.prevScrollPosition=J.scrollPosition,J.scrollPosition=M,J.scrollDirection=M>J.prevScrollPosition?1:-1,Z(),O()}function O(){if(N!==null)clearTimeout(N);N=setTimeout(()=>{N=null,J.scrollDirection=0,q()},K)}function C(){if(_!==null)cancelAnimationFrame(_),_=null}function B(P,M,T,G=Z0,Y){C();let w=J.scrollPosition,L=typeof P==="function"?P:()=>P,X=L();if(Math.abs(X-w)<1){if(T)T(X);else if(j)Q.scrollLeft=X;else Q.scrollTop=X;Y?.();return}let h=performance.now();function u(E){X=L();let m=E-h,o=Math.min(m/M,1),g=w+(X-w)*G(o);if(T)T(g);else if(j)Q.scrollLeft=g;else Q.scrollTop=g;if(!T)J.scrollPosition=g;if(Z(),o<1)_=requestAnimationFrame(u);else _=null,O(),Y?.()}_=requestAnimationFrame(u)}return{attach(){if(D.addEventListener("scroll",A,{passive:!0}),U)D.addEventListener("wheel",F,{passive:!1})},detach(){if(D.removeEventListener("scroll",A),U)D.removeEventListener("wheel",F);if(C(),N!==null)clearTimeout(N),N=null},cancelScroll:C,smoothScrollTo:B}}function s2($,J,Q){if($<J)return J;if($>Q)return Q;return $}function H1($){let{state:J,viewport:Q,content:j,isX:U,wheelEnabled:Z,onFrame:q,onIdle:K,mainAxisPadding:D}=$,N=$.idleTimeout||x2,_=$.runwayFactor??Z1,A=$.wrap??null,F=A!==null,O=$.scrollTarget??Q,C=0,B=0,P=0,M=null,T=null;function G(){return U?Q.scrollLeft:Q.scrollTop}function Y(S){if(U)Q.scrollLeft=S;else Q.scrollTop=S}function w(S){let l=F?S:s2(S,0,B);J.prevScrollPosition=J.scrollPosition,J.scrollPosition=l,J.scrollDirection=l>J.prevScrollPosition?1:l<J.prevScrollPosition?-1:0;let r=C/2;if(F){J.baseOffset=l-r,Y(r);return}let z=s2(l-r,0,P);J.baseOffset=z,Y(s2(l-z,0,C))}function L(S){w(S),q(),m()}function X(){let S=G(),l=J.baseOffset+S;if(Math.abs(l-J.scrollPosition)<0.5)return;if(J.prevScrollPosition=J.scrollPosition,J.scrollPosition=l,J.scrollDirection=l>J.prevScrollPosition?1:l<J.prevScrollPosition?-1:0,h(S),F)u();q(),m()}function h(S){let l=C*K1,r=C*q1,z=C/2;if(F){if(S>=l&&S<=r)return;J.baseOffset=J.scrollPosition-z,Y(z);return}if(P<=0)return;let f=J.baseOffset,V=S<l&&f>0,b=S>r&&f<P;if(!V&&!b)return;let i=J.scrollPosition,n=s2(i-z,0,P);if(n===f)return;J.baseOffset=n,Y(s2(i-n,0,C))}function u(){let S=A.lapSize();if(S<=0)return;let l=J.scrollPosition-A.home(),r=Math.trunc(l/S);if(Math.abs(r)<A.thresholdLaps)return;let z=r*S;J.scrollPosition-=z,J.prevScrollPosition-=z,J.baseOffset-=z}function E(S){let l;if(U)if(Math.abs(S.deltaX)>Math.abs(S.deltaY)){if(!F)return;l=S.deltaX}else l=S.deltaY;else{let V=Q.scrollWidth>Q.clientWidth;if(V&&Math.abs(S.deltaX)>Math.abs(S.deltaY))return;if(V&&S.deltaX!==0)S.preventDefault(),Q.scrollLeft+=S.deltaX;l=S.deltaY}let r=J.scrollPosition,z=r+l*i2,f=F?z:s2(z,0,B);if(Math.abs(f-r)<1)return;if(S.preventDefault(),L(f),F)u()}function m(){if(M!==null)clearTimeout(M);M=setTimeout(()=>{M=null,J.scrollDirection=0,K()},N)}function o(){if(T!==null)cancelAnimationFrame(T),T=null}function g(S,l,r,z=Z0,f){o();let V=J.scrollPosition,b=typeof S==="function"?S:()=>S,i=b();if(Math.abs(i-V)<1){L(i),f?.();return}let n=performance.now();function I(H){i=b();let d=Math.min((H-n)/l,1);if(w(V+(i-V)*z(d)),q(),d<1)T=requestAnimationFrame(I);else T=null,m(),f?.()}T=requestAnimationFrame(I)}function j2(S){let l=J.containerSize,r=S+D,z=l*_,f=F?z:Math.min(r,z);C=Math.max(0,f-l),B=Math.max(0,r-l),P=Math.max(0,r-f),J.totalSize=S,j.style[U?"width":"height"]=f+"px",w(J.scrollPosition)}return{attach(){if(O.addEventListener("scroll",X,{passive:!0}),Z)O.addEventListener("wheel",E,{passive:!1})},detach(){if(O.removeEventListener("scroll",X),Z)O.removeEventListener("wheel",E);if(o(),M!==null)clearTimeout(M),M=null},cancelScroll:o,smoothScrollTo:g,setLogical:L,getLogical(){return J.scrollPosition},getMaxLogical(){return B},refresh:j2}}function U4($,J){if($.getTotal()<=0)return{index:0,offsetPx:0};let j=J<=0?0:J,U=$.indexAtOffset(j),Z=j-$.getOffset(U);return{index:U,offsetPx:Z>0?Z:0}}function K4($,J){let Q=q4($,J);return $.getOffset(Q.index)+Q.offsetPx}function q4($,J){let Q=$.getTotal();if(Q<=0)return{index:0,offsetPx:0};let{index:j,offsetPx:U}=J;if(j<0)return{index:0,offsetPx:0};if(j>Q-1)j=Q-1;while(U>0&&j<Q-1){let Z=$.getSize(j);if(U<Z)break;U-=Z,j++}while(U<0&&j>0)j--,U+=$.getSize(j);if(U<0)U=0;return{index:j,offsetPx:U}}function D1($){let{sizeCache:J,getPixel:Q,setPixel:j,getContainerSize:U}=$;function Z(){let K=J.getTotalSize()-U();return K>0?K:0}function q(K){if(K<=0)return 0;let D=Z();return K>D?D:K}return{getLogical(){return U4(J,Q())},setLogical(K){j(q(K4(J,K)))},getPixelEquivalent(){return Q()},setPixelEquivalent(K){j(q(K))},getMaxPixelEquivalent:Z,scrollByPx(K){j(q(Q()+K))}}}var n2=[],Y4={calculate:n2,commit:n2,afterScroll:n2,idle:n2,resize:n2};function L1($){if($.length===0)return Y4;let J=[],Q=[],j=[],U=[],Z=[];for(let q=0;q<$.length;q++){let K=$[q].hooks;if(K===void 0)continue;if(K.onCalculate!==void 0)J.push(K.onCalculate);if(K.onCommit!==void 0)Q.push(K.onCommit);if(K.onAfterScroll!==void 0)j.push(K.onAfterScroll);if(K.onIdle!==void 0)U.push(K.onIdle);if(K.onResize!==void 0)Z.push(K.onResize)}return{calculate:J,commit:Q,afterScroll:j,idle:U,resize:Z}}function O1($,J){for(let Q=0;Q<$.length;Q++)$[Q](J)}function F1($,J){for(let Q=0;Q<$.length;Q++)$[Q](J)}function L0($,J,Q){for(let j=0;j<$.length;j++)$[j](J,Q)}function R1($){for(let J=0;J<$.length;J++)$[J]()}function E1($,J,Q){for(let j=0;j<$.length;j++)$[j](J,Q)}function k1($,J,Q,j,U,Z,q,K){let D=j!==0||U!==0;return{prefix:$,selectedClass:`${$}-item--selected`,focusedClass:`${$}-item--focused`,placeholderClass:`${$}-item--placeholder`,replacedClass:`${$}-item--replaced`,translateProp:J?"translateX(":"translateY(",sizeProp:J?"width":"height",itemRole:"listitem",interactive:!1,startPadding:Q,gap:q,hasCrossPad:D,crossStartProp:D?J?"top":"left":"",crossEndProp:D?J?"bottom":"right":"",crossStartVal:D?j+"px":"",crossEndVal:D?U+"px":"",oddClass:Z,emitter:K??null,indexMap:null,ariaTotalFn:null}}function B4($,J,Q,j,U){if($.containerSize<=0||$.totalItems===0)return $.clear(),!0;let{scrollPosition:Z,containerSize:q,totalItems:K}=$,D=U??0;$.totalSize=J.getTotalSize();let N=J.indexAtOffset(D>0?Math.max(0,Z-D):Z),_=J.indexAtOffset(Z+q);if(_<K-1)_++;N=Math.max(0,N),_=Math.min(K-1,Math.max(0,_));let A=Math.max(0,N-Q),F=Math.min(K-1,_+Q),O=Math.ceil(q/1)+Q*2+10,C=F-A+1,B=Math.min(C,$.capacity,O);if(A===$.prevRangeStart&&F===$.prevRangeEnd&&!$.renderPending)return!1;$.visibleCount=B,$.startIndex=A;for(let P=0;P<B;P++){let M=A+P;$.visibleIndices[P]=M,$.visibleOffsets[P]=J.getOffset(M),$.visibleSizes[P]=J.getSize(M)}return O1(j.calculate,$),$.prevRangeStart=A,$.prevRangeEnd=F,$.renderPending=!1,!0}var S2={selected:!1,focused:!1};function _4($,J,Q){for(let j=0;j<J;j++)if($[j]===Q)return!0;return!1}function W4($,J){if(J<=1)return!0;let Q=$[0];for(let j=1;j<J;j++){let U=$[j];if(U!==Q+1)return!1;Q=U}return!0}function N4($,J,Q,j,U,Z,q,K,D,N){let _=D?null:U(),A=$.visibleCount,F=$.visibleIndices,O=q.ariaTotalFn?q.ariaTotalFn():$.totalItems,C=q.interactive?String(O):"",B=q.interactive&&O!==$.prevAriaTotal,P=null,M=q.indexMap;for(let T=0;T<A;T++){let G=F[T],Y=M?M(G):G,w=$.visibleOffsets[T],L=$.visibleSizes[T],X=D?D(G):_[G];if(N)N(Y,S2);else S2.selected=!1,S2.focused=!1;let h=Z.get(G),u=h;if(h===void 0){let E=J.acquire();if(X!==void 0){let g;try{g=j(X,Y,S2)}catch(j2){if(q.emitter)q.emitter.emit("error",{error:j2 instanceof Error?j2:Error(String(j2)),context:`template:render:${Y}`});J.release(E);continue}if(typeof g==="string")E.innerHTML=g;else E.textContent="",E.appendChild(g);u2(E)}if(E.setAttribute("role",q.itemRole),E.setAttribute("data-index",String(Y)),q.interactive)E.id=q.prefix+"-item-"+G,E.setAttribute("aria-posinset",String(Y+1)),E.setAttribute("aria-setsize",C);if(X!==void 0){let g=String(X.id);if(E.setAttribute("data-id",g),g.startsWith(I2))E.classList.add(q.placeholderClass)}if(q.hasCrossPad)E.style.setProperty(q.crossStartProp,q.crossStartVal),E.style.setProperty(q.crossEndProp,q.crossEndVal);if(N){if(E.classList.toggle(q.selectedClass,S2.selected),E.classList.toggle(q.focusedClass,S2.focused),S2.selected)E.setAttribute("aria-selected","true");else E.removeAttribute("aria-selected");E._lastSelected=S2.selected,E._lastFocused=S2.focused}if(q.oddClass)E.classList.toggle(q.oddClass,(G&1)===1);let m=w-$.baseOffset+q.startPadding;E.style.transform=q.translateProp+m+"px)",E._lastOffset=m;let o=L-q.gap;if(E.style[q.sizeProp]=o+"px",E._lastSize=o,E._lastItem=X,Z.set(G,E),P===null)P=document.createDocumentFragment();P.appendChild(E)}else{if(B)h.setAttribute("aria-setsize",C);if(X!==void 0&&u._lastItem!==X){let o=h.getAttribute("data-id"),g=String(X.id),j2;try{j2=j(X,Y,S2)}catch(S){if(q.emitter)q.emitter.emit("error",{error:S instanceof Error?S:Error(String(S)),context:`template:render:${Y}`});continue}if(typeof j2==="string")h.innerHTML=j2;else h.textContent="",h.appendChild(j2);if(u2(h),h.setAttribute("data-id",g),u._lastItem=X,o!==g){let S=o!==null&&o.startsWith(I2),l=g.startsWith(I2);if(S!==l)h.classList.toggle(q.placeholderClass,l);if(S&&!l)h.classList.add(q.replacedClass),setTimeout(()=>{h.classList.remove(q.replacedClass)},300)}}if(N){if(u._lastSelected!==S2.selected){if(h.classList.toggle(q.selectedClass,S2.selected),S2.selected)h.setAttribute("aria-selected","true");else h.removeAttribute("aria-selected");u._lastSelected=S2.selected}if(u._lastFocused!==S2.focused)h.classList.toggle(q.focusedClass,S2.focused),u._lastFocused=S2.focused}let E=w-$.baseOffset+q.startPadding;if(u._lastOffset!==E)h.style.transform=q.translateProp+E+"px)",u._lastOffset=E;let m=L-q.gap;if(u._lastSize!==m)h.style[q.sizeProp]=m+"px",u._lastSize=m}}if(P!==null)Q.appendChild(P);if(A>0&&W4(F,A)){let T=F[0],G=F[A-1];for(let[Y,w]of Z)if(Y<T||Y>G)w.remove(),J.release(w),Z.delete(Y)}else for(let[T,G]of Z)if(!_4(F,A,T))G.remove(),J.release(G),Z.delete(T);if(q.interactive)$.prevAriaTotal=$.totalItems;F1(K.commit,$)}function O0($,J,Q,j,U,Z,q,K,D,N,_,A){if(B4($,J,Q,N,D.startPadding))N4($,j,U,Z,q,K,D,N,_,A)}var F0=()=>{let $={},J=(Z,q)=>{if(!$[Z])$[Z]=new Set;return $[Z].add(q),()=>Q(Z,q)},Q=(Z,q)=>{$[Z]?.delete(q)};return{on:J,off:Q,emit:(Z,q)=>{$[Z]?.forEach((K)=>{try{K(q)}catch(D){console.error(`[vlist] Error in event handler for "${String(Z)}":`,D)}})},clear:(Z)=>{if(Z)delete $[Z];else for(let q in $)delete $[q]}}};var T1=2,b1=($=0)=>({velocity:0,sampleCount:0}),P1=($,J)=>{let Q=performance.now(),j=$._lt??Q,U=$._lp??J,Z=Q-j;if($._lp=J,$._lt=Q,Z===0)return $.sampleCount=Math.min($.sampleCount+1,5),$;if(Z>100)return $.velocity=0,$.sampleCount=1,$;return $.velocity=Math.abs(J-U)/Z,$.sampleCount=Math.min($.sampleCount+1,5),$};function V4($){let{item:J}=$;if(J.height!==void 0&&typeof J.height==="number"){if(!Number.isFinite(J.height)||J.height<=0)throw Error(`vlist: item.height must be a positive number, got ${J.height}`)}if(J.width!==void 0&&typeof J.width==="number"){if(!Number.isFinite(J.width)||J.width<=0)throw Error(`vlist: item.width must be a positive number, got ${J.width}`)}if(J.estimatedHeight!==void 0){if(!Number.isFinite(J.estimatedHeight)||J.estimatedHeight<=0)throw Error(`vlist: item.estimatedHeight must be a positive number, got ${J.estimatedHeight}`)}if(J.estimatedWidth!==void 0){if(!Number.isFinite(J.estimatedWidth)||J.estimatedWidth<=0)throw Error(`vlist: item.estimatedWidth must be a positive number, got ${J.estimatedWidth}`)}if(J.gap!==void 0){if(typeof J.gap!=="number"||!Number.isFinite(J.gap)||J.gap<0)throw Error(`vlist: item.gap must be a non-negative number, got ${J.gap}`)}if($.overscan!==void 0){if(typeof $.overscan!=="number"||!Number.isFinite($.overscan)||$.overscan<0)throw Error(`vlist: overscan must be a non-negative number, got ${$.overscan}`)}if($.scroll?.runway!==void 0){if(typeof $.scroll.runway!=="number"||!Number.isFinite($.scroll.runway)||$.scroll.runway<=0)throw Error(`vlist: scroll.runway must be a positive number, got ${$.scroll.runway}`)}}function X4($,J){let Q=$==="horizontal"?"x":"y";if(J.some((U)=>U.name==="grid"))return{primary:Q,cross:Q==="x"?"y":"x"};return{primary:Q}}function M4($,J){let Q=X4($.orientation,J),j=Q.primary==="x",U=_1($.padding);return{axis:Q,hasCrossAxis:Q.cross!==void 0,overscan:$.overscan??Q0,reverse:$.reverse??!1,classPrefix:$.classPrefix??n0,mainAxisPadding:W1(U,j),crossAxisPadding:N1(U,j),startPadding:j?U.left:U.top,endPadding:j?U.right:U.bottom,crossPadStart:j?U.top:U.left,crossPadEnd:j?U.bottom:U.right,striped:$.item.striped||!1,gap:$.item.gap??0}}function G4($,J){if(J)return $.item.width??$.item.estimatedWidth??100;return $.item.height??$.item.estimatedHeight??40}function A4($){let J=[...$];return J.sort((Q,j)=>(Q.priority??50)-(j.priority??50)),J}function H4($){let J=new Set;for(let Q of $){if(J.has(Q.name))throw Error(`[vlist] Duplicate plugin: ${Q.name}`);J.add(Q.name)}for(let Q of $)if(Q.conflicts){for(let j of Q.conflicts)if(J.has(j))throw Error(`[vlist] Plugin "${Q.name}" conflicts with "${j}"`)}}function w1($,J=[]){V4($);let Q=M4($,J),j=Q.axis.primary==="x",U=$.scroll?.mode==="bounded",Z=G4($,j),q=Q.gap,K=q>0?typeof Z==="function"?(X2)=>Z(X2)+q:Z+q:Z,D=typeof Z==="number"?Z:20,N=$.items?.length??0,_=Q.striped?`${Q.classPrefix}-item--odd`:"",A=F0(),F=k1(Q.classPrefix,j,Q.startPadding,Q.crossPadStart,Q.crossPadEnd,_,q,A),O=J.length>0?A4(J):J;if(J.length>0)H4(O);let C=M1($.container),B=G1(C,Q.classPrefix,j,$.ariaLabel);if($.scroll?.scrollbar==="none")B.viewport.classList.add(`${Q.classPrefix}-viewport--no-scrollbar`);if($.scroll?.gutter==="stable")B.viewport.classList.add(`${Q.classPrefix}-viewport--gutter-stable`);let M=K0(K,N);if(q>0){let X2=M.getTotalSize;M.getTotalSize=()=>{let t=X2();return t>0?t-q:0}}let T=X1(Q.classPrefix),G=Math.ceil(4096/D)+Q.overscan*2+8,Y=V1(G);Y.totalItems=N;let w=$.items??[],L=()=>w,X=new Map,h=b1(),u={velocity:0,reliable:!1},E={range:{start:0,end:-1}},m={scrollPosition:0,direction:"down"},o={scrollPosition:0},g=-1,j2=-1,S=-1,l=null,r=L1(O),z=new Map,f=[],V=[],b=[],i=null,n=null,I=null,H=null,d=null,p=null,a=null,W=null,k=null,R=null,y=null,s=!1,Z2=!1,J2=null,e=0,K2=0,$2=null,A2=null,G2=null,Y2=null,v=null,U2=null,Q2=null,D2=null;Y.containerSize=j?B.viewport.clientWidth:B.viewport.clientHeight,Y.crossSize=j?B.viewport.clientHeight:B.viewport.clientWidth;let b2=D1({sizeCache:M,getPixel:()=>n?n():Y.scrollPosition,setPixel:(X2)=>{if(I)I(X2);else if(j)B.viewport.scrollLeft=X2;else B.viewport.scrollTop=X2},getContainerSize:()=>Y.containerSize});if(J.length>0){let X2={dom:B,sizeCache:M,scroll:b2,pool:T,config:Q,emitter:A,template:$.item.template,registerMethod(t,L2){z.set(t,L2)},getMethod(t){return z.get(t)},registerClickHandler(t){f.push(t)},registerKeydownHandler(t){V.push(t)},registerDestroyHandler(t){b.push(t)},enableListboxRole(){let t=B.content.getAttribute("role");if(!t||t==="list")B.content.setAttribute("role","listbox"),B.content.setAttribute("tabindex","0");F.itemRole="option",F.interactive=!0},setSizeConfig(t){let L2=K0(t,Y.totalItems),v2=z.get("_setSizeCacheBase");if(v2){let C2=M.rebuild;Object.assign(M,L2),M.rebuild=C2,v2(L2.rebuild)}else Object.assign(M,L2)},setScrollFns(t,L2){n=t,I=L2},setBoundedWrap(t){D2=t},cancelScroll(){N2?.cancelScroll()},setVirtualTotalFn(t){i=t,F.ariaTotalFn=t},setIndexMapFn(t){F.indexMap=t},getItems:L,getItem(t){return p?p(t):w[t]},getState(){return Y},rebuildSizeCache(){M.rebuild(Y.totalItems)},updateContentSize(t){if(Q2){Q2.refresh(t);return}Y.totalSize=t,B.content.style[j?"width":"height"]=t+Q.mainAxisPadding+"px"},setRenderFn(t,L2){H=t,d=L2},renderIfNeeded(){H2()},forceRender(){_2()},setGetItemFn(t){p=t},setItemStateFn(t){a=t},getItemStateFn(){return a},get rawSizeSpec(){return Z},scrollTo(t){if(I)I(t);else if(j)B.viewport.scrollLeft=t;else B.viewport.scrollTop=t},smoothScrollTo(t,L2,v2,C2){if(Y2)Y2(t,L2,I??void 0,v2,C2);else X2.scrollTo(typeof t==="function"?t():t)},disableDefaultScroll(){s=!0},disableDefaultResize(){Z2=!0},setScrollTarget(t){J2=t},setScrollToPosFn(t){v=t},setScrollToIndexFn(t){U2=t},onScrollFrame:B2,onScrollIdle:M2,removeItemById(t){if(W)return W(t);let L2=w.findIndex((v2)=>v2.id===t);if(L2===-1)return-1;return w.splice(L2,1),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),L2},insertItemAt(t,L2){if(k){k(t,L2);return}w.splice(L2,0,t),Y.totalItems=w.length,M.rebuild(Y.totalItems),c()},setRemoveItemFn(t){W=t},setInsertItemFn(t){k=t},setUpdateItemFn(t){R=t},setGetIndexByIdFn(t){y=t},getRenderedElement(t){let L2=z.get("_getRenderedElement");if(L2)return L2(t);return X.get(t)??null},setNavConfig(t){if(t.ud!==void 0)e=t.ud;if(t.lr!==void 0)K2=t.lr;if(t.scrollIndex)$2=t.scrollIndex;if(t.navigate)A2=t.navigate;if(t.total)G2=t.total},getNavConfig:(()=>{let t={ud:0,lr:0,scrollIndex:null,navigate:null,total:null};return()=>{return t.ud=e,t.lr=K2,t.scrollIndex=$2,t.navigate=A2,t.total=G2,t}})()};for(let t of O)if(t.setup)try{t.setup(X2)}catch(L2){A.emit("error",{error:L2 instanceof Error?L2:Error(String(L2)),context:`plugin:setup:${t.name}`})}}let k2=Q.classPrefix+"--scrolling",R2=!1,F2=$.scroll?.idleTimeout??x2;function P2(){if(m.scrollPosition=b2.getPixelEquivalent(),j)m.direction=Y.scrollDirection>0?"right":"left";else m.direction=Y.scrollDirection>0?"down":"up";if(A.emit("scroll",m),P1(h,Y.scrollPosition),u.velocity=h.velocity,u.reliable=h.sampleCount>=T1,A.emit("velocity:change",u),Y.startIndex!==g||Y.prevRangeEnd!==j2)g=Y.startIndex,j2=Y.prevRangeEnd,E.range.start=Y.startIndex,E.range.end=Y.prevRangeEnd,A.emit("range:change",E)}let z2=!1;function c(){if(H)return;let X2=M.getTotalSize();if(Q2){Q2.refresh(X2);return}if(B.content.style[j?"width":"height"]=X2+Q.mainAxisPadding+"px",!z2&&X2>a2)z2=!0,A.emit("error",{error:Error(`Content size (${X2}px) exceeds browser limit (${a2}px). Enable bounded scroll (scroll: { mode: "bounded" }) for large datasets.`),context:"content:size:overflow"})}function H2(){if(H)H();else O0(Y,M,Q.overscan,T,B.content,$.item.template,L,X,F,r,p,a)}function B2(){if(!R2)R2=!0,B.root.classList.add(k2);if(H2(),L0(r.afterScroll,Y.scrollPosition,Y.scrollDirection),Y.scrollPosition!==S)S=Y.scrollPosition,P2()}function M2(){if(R2)R2=!1,B.root.classList.remove(k2);Y.scrollDirection=0,R1(r.idle),u.velocity=0,u.reliable=!1,A.emit("velocity:change",u),o.scrollPosition=b2.getPixelEquivalent(),A.emit("scroll:idle",o)}function _2(){if(Y.renderPending=!0,d)d();else O0(Y,M,Q.overscan,T,B.content,$.item.template,L,X,F,r,p,a);if(L0(r.afterScroll,Y.scrollPosition,Y.scrollDirection),Y.scrollPosition!==S){if(S=Y.scrollPosition,P2(),l!==null)clearTimeout(l);l=setTimeout(M2,F2)}}let T2=s?!1:$.scroll?.wheel!==!1,N2;if(s&&(U||D2))throw Error(`vlist: page() is not compatible with ${D2?"the carousel plugin":'scroll: { mode: "bounded" }'} — bounded page-mode scrolling is not implemented yet.`);if(U||D2)Q2=H1({state:Y,viewport:B.viewport,content:B.content,isX:j,wheelEnabled:T2,idleTimeout:$.scroll?.idleTimeout??x2,...J2?{scrollTarget:J2}:{},mainAxisPadding:Q.mainAxisPadding,...$.scroll?.runway!==void 0?{runwayFactor:Math.max(U1,$.scroll.runway)}:{},...D2?{wrap:D2}:{},onFrame:B2,onIdle:M2}),N2=Q2,n=()=>Y.scrollPosition,I=(X2)=>Q2.setLogical(X2);else N2=A1({state:Y,viewport:B.viewport,isX:j,wheelEnabled:T2,idleTimeout:$.scroll?.idleTimeout??x2,...J2?{scrollTarget:J2}:{},onFrame:B2,onIdle:M2});Y2=N2.smoothScrollTo;function O2(X2){let L2=X2.target.closest("[data-index]");if(!L2)return null;let v2=parseInt(L2.getAttribute("data-index"),10);if(Number.isNaN(v2))return null;let C2=z.get("_layoutToDataIndex"),h2;if(C2){let f2=C2(v2);if(f2<0)return null;let o2=z.get("_getItem");h2=o2?o2(f2):p?p(f2):w[f2]}else h2=p?p(v2):w[v2];if(h2===void 0)return null;return{item:h2,index:v2}}function y2(X2){for(let L2=0;L2<f.length;L2++)f[L2](X2);let t=O2(X2);if(t)A.emit("item:click",{item:t.item,index:t.index,event:X2})}function W2(X2){let t=O2(X2);if(t)A.emit("item:dblclick",{item:t.item,index:t.index,event:X2})}function x(X2){let t=O2(X2);if(t)A.emit("item:contextmenu",{item:t.item,index:t.index,event:X2})}function V2(X2){let t=X2.target?.tagName;if((t==="INPUT"||t==="TEXTAREA"||t==="SELECT")&&!((X2.ctrlKey||X2.metaKey)&&(X2.key==="f"||X2.key==="F")))return;for(let L2=0;L2<V.length;L2++)V[L2](X2)}if(B.content.addEventListener("click",y2),B.content.addEventListener("dblclick",W2),B.content.addEventListener("contextmenu",x),V.length>0)B.root.addEventListener("keydown",V2);let q2=null;if(!Z2)setTimeout(()=>{if(Y.destroyed)return;q2=new ResizeObserver((t)=>{for(let L2 of t){let{width:v2,height:C2}=L2.contentRect,h2=j?v2:C2,f2=j?C2:v2;if(Math.abs(h2-Y.containerSize)<1&&Math.abs(f2-Y.crossSize)<1)continue;if(Y.containerSize=h2,Y.crossSize=f2,Y.resizeCapacity(h2,D,Q.overscan),Q2)Q2.refresh(M.getTotalSize());_2(),E1(r.resize,v2,C2),A.emit("resize",{width:v2,height:C2})}}),q2.observe(B.viewport)},0);Y.resizeCapacity(Y.containerSize,D,Q.overscan),c(),Y.initialized=!0;let E2=null;if($.defer)E2=requestAnimationFrame(()=>{if(E2=null,!Y.destroyed)H2()});else H2();if(!s)N2.attach();let w2={get element(){return B.root},get items(){return w},get total(){return i?i():w.length},setItems(X2){w=[...X2],Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},appendItems(X2){w.push(...X2),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},prependItems(X2){w.unshift(...X2),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},updateItem(X2,t){if(R){if(!R(X2,t))return}else{let L2=w.findIndex((v2)=>v2.id===X2);if(L2===-1)return;w[L2]={...w[L2],...t}}_2()},insertItem(X2,t){if(k)k(X2,t??Y.totalItems);else{if(t===void 0)w.push(X2);else w.splice(t,0,X2);Y.totalItems=w.length,M.rebuild(Y.totalItems),c()}_2()},removeItem(X2){if(W){if(W(X2)<0)return}else{let t=w.findIndex((L2)=>L2.id===X2);if(t===-1)return;w.splice(t,1),Y.totalItems=w.length,M.rebuild(Y.totalItems),c()}_2()},removeItems(X2){if(W){let C2=0;for(let h2 of X2)if(W(h2)>=0)C2++;if(C2>0)_2();return C2}let t=new Set(X2),L2=w.length;w=w.filter((C2)=>!t.has(C2.id));let v2=L2-w.length;if(v2>0)Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),Y.renderPending=!0,H2();return v2},getItemAt(X2){if(F.indexMap)return w[X2];return p?p(X2):w[X2]},getIndexById(X2){if(y)return y(X2);return w.findIndex((t)=>t.id===X2)},scrollToIndex(X2,t="start"){let L2=i?i():w.length;if(L2===0)return;let v2=Math.max(0,Math.min(X2,L2-1)),C2=typeof t==="string"?t:t.align??"start",h2=typeof t==="object"?t.behavior:void 0,f2=typeof t==="object"?t.duration:void 0,o2=typeof t==="object"?t.easing:void 0;if(U2&&U2(v2,C2,h2,f2,o2)!==!1)return;let A0=M.getOffset(v2),a0=M.getSize(v2),$0=Y.containerSize,J4=M.getTotalSize(),i0=Q.mainAxisPadding,$4=Math.max(0,J4+i0-$0),p2;if(v)p2=v(v2,M,$0,L2,C2);else{let Q4=Q.startPadding;switch(C2){case"center":p2=Q4+A0-($0-a0)/2;break;case"end":p2=A0+a0+i0-$0;break;default:p2=A0}p2=Math.max(0,Math.min(p2,$4))}if(h2==="smooth")N2.smoothScrollTo(p2,f2??j1,I??void 0,o2);else if(I)I(p2);else if(j)B.viewport.scrollLeft=p2;else B.viewport.scrollTop=p2},getScrollPosition(){return b2.getPixelEquivalent()},on:A.on.bind(A),off:A.off.bind(A),destroy(){if(Y.destroyed)return;if(Y.destroyed=!0,R2)R2=!1,B.root.classList.remove(k2);if(E2!==null)cancelAnimationFrame(E2),E2=null;if(l!==null)clearTimeout(l),l=null;N2.detach(),q2?.disconnect(),B.content.removeEventListener("click",y2),B.content.removeEventListener("dblclick",W2),B.content.removeEventListener("contextmenu",x),B.root.removeEventListener("keydown",V2);let X2=[];for(let t of b)try{t()}catch(L2){X2.push(L2 instanceof Error?L2:Error(String(L2)))}for(let t of O)if(t.destroy)try{t.destroy()}catch(L2){X2.push(L2 instanceof Error?L2:Error(String(L2)))}for(let[,t]of X)t.remove();if(X.clear(),T.clear(),B.root.remove(),A.emit("destroy",void 0),A.clear(),X2.length>0)for(let t of X2)console.error("vlist: error during destroy:",t)}};for(let[X2,t]of z)w2[X2]=t;return w2}var D4=($)=>{if(typeof $!=="object"){let J=$??2;return{top:J,right:J,bottom:J,left:J}}return{top:$.top??2,right:$.right??2,bottom:$.bottom??2,left:$.left??2}},z1=($,J,Q={},j="vlist",U=!1,Z)=>{let{autoHide:q=!0,autoHideDelay:K=1000,minThumbSize:D=15,showOnHover:N=!0,showOnViewportEnter:_=!0,clickBehavior:A="scroll"}=Q,F=A==="page"?"scroll":A,O=Z??$,C=D4(Q.padding),B=U?C.left:C.top,P=U?C.right:C.bottom,M=U?C.bottom:C.right,T=Q.hoverZoneWidth??M+16,G=0,Y=0,w=0,L=0,X=!1,h=!1,u=0,E=0,m=0,o=null,g=!1,j2=null,S=0,l=0,r=null,z=null,f=null,V=U?"width":"height",b=U?"translateX":"translateY",i=U?(_2)=>_2.clientX:(_2)=>_2.clientY,n=U?"left":"top",I=document.createElement("div"),H=document.createElement("div"),d=document.createElement("div"),p=U?"--vlist-custom-scrollbar-padding-left":"--vlist-custom-scrollbar-padding-top",a=()=>{if(O===$)return;let _2=$.offsetTop;I.style[U?"left":"top"]=_2?`calc(var(${p}) + ${_2}px)`:`var(${p})`,d.style[U?"left":"top"]=`${_2}px`},W=()=>{if(I.className=`${j}-scrollbar`,H.className=`${j}-scrollbar__thumb`,U)I.classList.add(`${j}-scrollbar--horizontal`);if(Q.padding!==void 0)O.style.setProperty("--vlist-custom-scrollbar-padding-top",`${C.top}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-right",`${C.right}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-bottom",`${C.bottom}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-left",`${C.left}px`);if(Q.minThumbSize!==void 0)I.style.setProperty("--vlist-custom-scrollbar-min-thumb-size",`${D}px`);if(I.appendChild(H),O.appendChild(I),d.className=`${j}-scrollbar__hover`,U)d.classList.add(`${j}-scrollbar__hover--horizontal`),d.style.height=`${T}px`;else d.style.width=`${T}px`;if(O.appendChild(d),O!==$)a()},k=()=>{if(o)clearTimeout(o),o=null},R=()=>{if(!q)return;k(),o=setTimeout(s,K)},y=()=>{if(G<=Y)return;if(k(),!g)I.classList.add(`${j}-scrollbar--visible`),g=!0;if(q&&!X&&!h)R()},s=()=>{if(X||h)return;I.classList.remove(`${j}-scrollbar--visible`),g=!1},Z2=(_2,T2)=>{if(G=_2,Y=T2,a(),G<=Y){I.style.display="none",s();return}I.style.display="";let N2=Math.max(0,Y-B-P),O2=Y/G;if(w=Math.max(D,O2*N2),H.style[V]=`${w}px`,L=N2-w,J2(m),!q)y()},J2=(_2)=>{if(m=_2,G<=Y||L<=0)return;let T2=G-Y,N2=Math.min(1,Math.max(0,_2/T2));H.style.transform=`${b}(${N2*L}px)`},e=(_2)=>{if(_2.target===H||F!=="jump"||L<=0)return;let T2=G-Y,N2=I.getBoundingClientRect(),O2=i(_2)-N2[n],y2=Math.max(0,Math.min(O2-w/2,L));J(y2/L*T2),y()},K2=()=>{if(r!==null)clearTimeout(r),r=null;if(z!==null)cancelAnimationFrame(z),z=null;f=null},$2=(_2)=>{let T2=L>0?l/_2*L:0;if(S<T2)return-1;if(S>=T2+w)return 1;return 0},A2=()=>{let _2=G-Y,T2=$2(_2);if(T2===0){K2();return}if(T2===-1){if(l<=0){K2();return}let N2=Math.max(0,l-Y);l=N2,J(N2)}else{if(l>=_2){K2();return}let N2=Math.min(_2,l+Y);l=N2,J(N2)}y()},G2=(_2)=>{if(f===null){f=_2,z=requestAnimationFrame(G2);return}let T2=G-Y,N2=_2-f;f=_2;let O2=$2(T2);if(O2===0){K2();return}let y2=12*Y/1000,W2=Math.min(y2*N2,Y);if(O2===-1){if(l<=0){K2();return}let x=Math.max(0,l-W2);l=x,J(x)}else{if(l>=T2){K2();return}let x=Math.min(T2,l+W2);l=x,J(x)}k(),z=requestAnimationFrame(G2)},Y2=()=>{K2(),R(),document.removeEventListener("mouseup",Y2)},v=(_2)=>{if(_2.target===H||F!=="scroll")return;_2.preventDefault();let T2=I.getBoundingClientRect();S=i(_2)-T2[n],l=m,A2(),r=setTimeout(()=>{z=requestAnimationFrame(G2)},350),document.addEventListener("mouseup",Y2)},U2=(_2)=>{_2.preventDefault(),_2.stopPropagation(),X=!0,u=i(_2),E=m,k(),I.classList.add(`${j}-scrollbar--dragging`),document.addEventListener("mousemove",Q2),document.addEventListener("mouseup",D2)},Q2=(_2)=>{if(!X)return;let T2=i(_2)-u,N2=L>0?T2/L:0,O2=G-Y,y2=N2*O2,W2=Math.max(0,Math.min(E+y2,O2));H.style.transform=`${b}(${W2/O2*L}px)`,J(W2)},D2=()=>{if(X=!1,I.classList.remove(`${j}-scrollbar--dragging`),q&&!h)R();document.removeEventListener("mousemove",Q2),document.removeEventListener("mouseup",D2)},b2=U?(_2)=>_2.touches[0].clientX:(_2)=>_2.touches[0].clientY,k2=(_2)=>{_2.stopPropagation(),X=!0,u=b2(_2),E=m,k(),I.classList.add(`${j}-scrollbar--dragging`)},R2=(_2)=>{if(!X)return;_2.preventDefault();let T2=b2(_2)-u,N2=L>0?T2/L:0,O2=G-Y,y2=N2*O2,W2=Math.max(0,Math.min(E+y2,O2));H.style.transform=`${b}(${W2/O2*L}px)`,J(W2)},F2=()=>{if(X=!1,I.classList.remove(`${j}-scrollbar--dragging`),q)R()},P2=(_2)=>{if(_2.target===H)return;if(L<=0)return;let T2=_2.touches[0],N2=I.getBoundingClientRect(),O2=(U?T2.clientX:T2.clientY)-N2[n];if(F==="jump"){let y2=G-Y,W2=Math.max(0,Math.min(O2-w/2,L));J(W2/L*y2)}else S=O2,l=m,A2();y()},z2=()=>{if(_)y()},c=()=>{if(!X){if(h=!1,q)R()}},H2=()=>{h=!0,k(),y()},B2=()=>{if(h=!1,!X&&q)R()},M2=()=>{if(k(),K2(),j2!==null)cancelAnimationFrame(j2),j2=null;I.removeEventListener("click",e),I.removeEventListener("mousedown",v),I.removeEventListener("mouseenter",H2),document.removeEventListener("mouseup",Y2),I.removeEventListener("mouseleave",B2),I.removeEventListener("touchstart",P2),H.removeEventListener("mousedown",U2),H.removeEventListener("touchstart",k2),H.removeEventListener("touchmove",R2),H.removeEventListener("touchend",F2),$.removeEventListener("mouseenter",z2),$.removeEventListener("mouseleave",c),document.removeEventListener("mousemove",Q2),document.removeEventListener("mouseup",D2),d.removeEventListener("click",e),d.removeEventListener("mousedown",v),d.removeEventListener("mouseenter",H2),d.removeEventListener("mouseleave",B2),d.remove(),O.style.removeProperty("--vlist-custom-scrollbar-padding-top"),O.style.removeProperty("--vlist-custom-scrollbar-padding-right"),O.style.removeProperty("--vlist-custom-scrollbar-padding-bottom"),O.style.removeProperty("--vlist-custom-scrollbar-padding-left"),I.remove()};if(W(),I.addEventListener("click",e),I.addEventListener("mousedown",v),I.addEventListener("mouseenter",H2),I.addEventListener("mouseleave",B2),I.addEventListener("touchstart",P2,{passive:!0}),H.addEventListener("mousedown",U2),H.addEventListener("touchstart",k2,{passive:!0}),H.addEventListener("touchmove",R2,{passive:!1}),H.addEventListener("touchend",F2,{passive:!0}),$.addEventListener("mouseenter",z2),$.addEventListener("mouseleave",c),d.addEventListener("click",e),d.addEventListener("mousedown",v),N)d.addEventListener("mouseenter",H2),d.addEventListener("mouseleave",B2);return{show:y,hide:s,updateBounds:Z2,updatePosition:J2,isVisible:()=>g,destroy:M2}};function R0($){let J=null,Q,j=0,U=0,Z=0;return{name:"scrollbar",priority:15,setup(q){let{dom:K,config:D}=q,{classPrefix:N}=D,_=D.axis.primary==="x";Q=q.getState(),j=D.mainAxisPadding;let A=(F)=>{q.scrollTo(F)};if(q.registerMethod("_scrollbar:setCallback",(F)=>{A=F}),J=z1(K.viewport,(F)=>{A(F)},$,N,_,K.root),K.viewport.classList.add(`${N}-viewport--custom-scrollbar`),$?.gutter)K.viewport.classList.add(`${N}-viewport--gutter`);queueMicrotask(()=>{J?.updateBounds(Q.totalSize+j,Q.containerSize)}),q.registerMethod("_scrollbar:getInstance",()=>J),q.registerDestroyHandler(()=>{if(J?.destroy(),J=null,K.viewport.classList.remove(`${N}-viewport--custom-scrollbar`),$?.gutter)K.viewport.classList.remove(`${N}-viewport--gutter`)})},hooks:{onAfterScroll(q){let K=Q.totalSize+j,D=Q.containerSize;if(K!==U||D!==Z)U=K,Z=D,J?.updateBounds(K,D);J?.updatePosition(q),J?.show()},onResize(){let q=Q.totalSize+j,K=Q.containerSize;U=q,Z=K,J?.updateBounds(q,K)}},destroy(){J?.destroy(),J=null}}}var y1=($)=>{let J=Math.max(1,Math.floor($.columns)),Q=$.gap??0,j=$.isHeaderFn,U={row:0,col:0},Z=(B)=>{if(B<=0)return 0;if(!j)return Math.ceil(B/J);let P=0,M=0,T=0;for(let G=0;G<B;G++)if(j(G)){if(T++,M)P++,M=0;P++,M=0}else if(M++,M>=J)P++,M=0;if(M)P++;return P},q=(B)=>{return U.row=K(B),U.col=D(B),U},K=(B)=>{if(!j)return Math.floor(B/J);let P=0,M=0;for(let T=0;T<=B;T++)if(j(T)){if(M)P++,M=0;if(T===B)return P;P++,M=0}else{if(T===B)return P;if(M++,M>=J)P++,M=0}return console.warn(`⚠️ getRow(${B}) fell through - returning ${P}`),P},D=(B)=>{if(!j)return B%J;if(j(B))return 0;let P=0;for(let M=0;M<=B;M++)if(j(M))P=0;else{if(M===B)return P;if(P++,P>=J)P=0}return P},N=(B,P,M,T)=>{if(M<=0){T.start=0,T.end=-1;return}if(!j){T.start=Math.max(0,B*J),T.end=Math.min(M-1,(P+1)*J-1);return}let G=_(B,P,M);T.start=G.start,T.end=G.end},_=(B,P,M)=>{if(M<=0)return{start:0,end:-1};if(!j){let L=Math.max(0,B*J),X=Math.min(M-1,(P+1)*J-1);return{start:L,end:X}}let T=-1,G=-1,Y=0,w=0;for(let L=0;L<M;L++){if(j(L)){if(w)Y++,w=0;if(Y>=B&&Y<=P){if(T<0)T=L;G=L}Y++,w=0}else{if(Y>=B&&Y<=P){if(T<0)T=L;G=L}if(w++,w>=J)Y++,w=0}if(Y>P&&!w)break}if(T<0)return{start:0,end:-1};return{start:T,end:G}},A=(B,P,M)=>{if(P<0||P>=J)return-1;let T=B*J+P;if(T<0||T>=M)return-1;return T},F=(B)=>{let P=(J-1)*Q;return Math.max(0,(B-P)/J)};return{get columns(){return J},get gap(){return Q},update:(B)=>{if(B.columns!==void 0)J=Math.max(1,Math.floor(B.columns));if(B.gap!==void 0)Q=B.gap;if(B.isHeaderFn!==void 0)j=B.isHeaderFn},getTotalRows:Z,getPosition:q,getRow:K,getCol:D,getItemRange:_,fillItemRange:N,getItemIndex:A,getColumnWidth:F,getColumnOffset:(B,P)=>{let M=F(P);return B*(M+Q)}}};var m2={selected:!1,focused:!1};function E0($){if(!$.columns||$.columns<1)throw Error("[vlist] grid: columns must be >= 1");let J,Q,j,U,Z=null,q,K,D,N,_,A,F=null,O=0,C=0,B=0,P=0,M=new Map,T=0,G=0,Y=0,w=0,L=null,X=!1,h="",u="",E="",m={start:0,end:-1},o=-1,g=-1,j2=-1,S=!0,l=(H)=>Q.rebuild(H);function r(){let H=(G-1)*Y;w=Math.max(0,(T-H)/G)}function z(){if(X)return;X=!0,L=F?.()??null}function f(){return J.getTotalRows(j.totalItems)}function V(H){let d=H/G|0,a=(H-d*G)*(w+Y)+O,W=Q.getOffset(d)-j.baseOffset+B;if(N)return`translate(${Math.round(W)}px, ${Math.round(a)}px)`;return`translate(${Math.round(a)}px, ${Math.round(W)}px)`}function b(H,d){let p=Q.getSize(d)-Y;if(N)H.style.width=`${p}px`,H.style.height=`${w}px`;else H.style.width=`${w}px`,H.style.height=`${p}px`}function i(H,d,p){if(L)L(p,m2);else m2.selected=!1,m2.focused=!1;let a=K(d,p,m2);if(typeof a==="string")H.innerHTML=a;else H.innerHTML="",H.appendChild(a)}function n(){if(j.destroyed)return;let{scrollPosition:H,containerSize:d}=j;if(!S&&H===o&&d===g)return;o=H,g=d,S=!1;let p=f();if(d<=0||p===0)return;z();let a=Q.indexAtOffset(H),W=Q.indexAtOffset(H+d);if(W<p-1)W++;a=Math.max(0,a),W=Math.min(p-1,Math.max(0,W));let k=Math.max(0,a-A),R=Math.min(p-1,W+A);if(k===j.prevRangeStart&&R===j.prevRangeEnd&&!j.renderPending)return;J.fillItemRange(k,R,j.totalItems,m);let{start:y,end:s}=m;for(let[e,K2]of M)if(e<y||e>s)K2.el.remove(),U.release(K2.el),M.delete(e);for(let e=y;e<=s;e++){let K2=D(e);if(!K2)continue;let $2=e/G|0,A2=e-$2*G,G2=M.get(e);if(G2===void 0){let U2=U.acquire();U2.className=h,U2.setAttribute("data-index",String(e)),U2.setAttribute("data-id",String(K2.id)),i(U2,K2,e),G2={el:U2,lastItem:K2},M.set(e,G2),q.appendChild(U2)}else if(G2.lastItem!==K2)G2.el.setAttribute("data-id",String(K2.id)),G2.lastItem=K2,i(G2.el,K2,e);else if(L)L(e,m2);if(L)if(G2.el.classList.toggle(u,m2.selected),G2.el.classList.toggle(E,m2.focused),m2.selected)G2.el.setAttribute("aria-selected","true");else G2.el.removeAttribute("aria-selected");b(G2.el,$2);let Y2=A2*(w+Y)+O,v=Q.getOffset($2)-j.baseOffset+B;G2.el.style.transform=N?`translate(${Math.round(v)}px, ${Math.round(Y2)}px)`:`translate(${Math.round(Y2)}px, ${Math.round(v)}px)`}let Z2=Q.getTotalSize();if(Z2!==j2)j2=Z2,Z?.updateContentSize(Z2);j.prevRangeStart=k,j.prevRangeEnd=R,j.renderPending=!1;let J2=s-y+1;j.visibleCount=Math.min(J2,j.capacity),j.startIndex=y;for(let e=0;e<j.visibleCount;e++){let K2=y+e,$2=K2/G|0;j.visibleIndices[e]=K2,j.visibleOffsets[e]=Q.getOffset($2),j.visibleSizes[e]=Q.getSize($2)}}function I(){if(j.destroyed)return;l(f()),j2=-1,j.prevRangeStart=-1,j.prevRangeEnd=-1,j.renderPending=!0,S=!0,n()}return{name:"grid",priority:10,conflicts:["masonry","table"],setup(H){G=Math.max(1,Math.floor($.columns)),Y=$.gap??0,J=y1({columns:$.columns,gap:Y}),Q=H.sizeCache,j=H.getState(),U=H.pool,Z=H,q=H.dom.content,K=H.template,N=H.config.axis.primary==="x",_=H.config.classPrefix,A=H.config.overscan,D=H.getItem.bind(H),F=()=>H.getItemStateFn(),h=`${_}-item ${_}-grid-item`,u=`${_}-item--selected`,E=`${_}-item--focused`,O=H.config.crossPadStart,C=H.config.crossAxisPadding,B=H.config.startPadding,P=H.config.mainAxisPadding,T=j.crossSize-C,r();let d=H.rawSizeSpec,p;if(typeof d==="function"){let y={columnWidth:J.getColumnWidth(T),columns:$.columns,gap:Y};p=d(0,y),H.setSizeConfig((s)=>{y.columnWidth=J.getColumnWidth(T);let Z2=s*$.columns;return d(Z2,y)+Y})}else if(p=d,Y>0)H.setSizeConfig(p+Y);let a=null,W=Q.rebuild;function k(){if(Q.rebuild===a)return;W=Q.rebuild,l=(R)=>W(R),a=(R)=>{l(Math.ceil(R/G))},Q.rebuild=a}if(H.registerMethod("_setSizeCacheBase",(R)=>{W=R,l=(y)=>W(y)}),k(),l(f()),Y>0){let R=Q.getTotalSize;Q.getTotalSize=()=>{let y=R();return y>0?y-Y:0}}H.setVirtualTotalFn(()=>f()),H.dom.root.classList.add(`${_}--grid`),H.setRenderFn(n,I),H.registerMethod("getGridLayout",()=>J),H.registerMethod("_getRowGap",()=>J.gap),H.registerMethod("updateGrid",(R)=>{if(R.columns!==void 0){if(!Number.isInteger(R.columns)||R.columns<1)throw Error("[vlist] updateGrid: columns must be >= 1")}if(R.gap!==void 0&&R.gap<0)throw Error("[vlist] updateGrid: gap must be >= 0");if(J.update(R),R.columns!==void 0)G=Math.max(1,Math.floor(R.columns));if(R.gap!==void 0)Y=R.gap;if(R.gap!==void 0||R.columns!==void 0){let y=J.gap;if(typeof d==="function"){let s={columnWidth:J.getColumnWidth(T),columns:J.columns,gap:y};H.setSizeConfig((Z2)=>{s.columnWidth=J.getColumnWidth(T);let J2=Z2*J.columns;return d(J2,s)+y})}else H.setSizeConfig(p+y);k(),l(f())}if(R.columns!==void 0)H.setNavConfig({ud:J.columns});T=j.crossSize-C,r(),I()}),H.registerMethod("scrollToIndex",(R,y="start")=>{let s=J.getRow(R),Z2=f();if(Z2===0)return;let J2=Math.max(0,Math.min(s,Z2-1)),e=Q.getOffset(J2)+B,K2=Q.getSize(J2),$2=j.containerSize,A2=Q.getTotalSize()+P,G2=Math.max(0,A2-$2),Y2=typeof y==="string"?y:y.align??"start",v=typeof y==="object"?y.behavior:void 0,U2=typeof y==="object"?y.duration:void 0,Q2;switch(Y2){case"center":Q2=e-($2-K2)/2;break;case"end":Q2=e-$2+K2;break;default:Q2=e}if(Q2=Math.max(0,Math.min(Q2,G2)),v==="smooth"&&U2&&U2>0)H.smoothScrollTo(Q2,U2);else H.scrollTo(Q2)}),H.setNavConfig({total:()=>j.totalItems,ud:$.columns,lr:1,scrollIndex:(R)=>J.getRow(R)}),H.registerDestroyHandler(()=>{for(let[,R]of M)R.el.remove();M.clear(),H.dom.root.classList.remove(`${_}--grid`)})},hooks:{onResize(H,d){let p=j.crossSize-C;if(Math.abs(p-T)<1)return;T=p,r();for(let[a,W]of M){let k=a/G|0;b(W.el,k),W.el.style.transform=V(a)}}},destroy(){M.clear()}}}function k0($){let J=$?.keyboard??!0;return{name:"a11y",priority:55,setup(Q){if(Q.getItemStateFn())return;Q.enableListboxRole();let{dom:j,config:U,sizeCache:Z}=Q,q=Q.getState(),K=Q.emitter,D=U.classPrefix,N=j.liveRegion,_=-1,A=!1,F,O=-1,C=(E)=>Q.getItem(E),B=()=>q.totalItems,P={id:0,index:0},M={selected:[],items:[]};Q.setItemStateFn((E,m)=>{m.selected=O===E,m.focused=A&&_===E});function T(E){N.textContent="",N.textContent=E}let G=(E,m,o)=>{let g=E;while(g>=0&&g<o){let j2=C(g);if(!j2||!j2.__groupHeader)return g;g+=m}g=E-m;while(g>=0&&g<o){let j2=C(g);if(!j2||!j2.__groupHeader)return g;g-=m}return E},Y=(E)=>{let m=Q.getNavConfig(),o=m.scrollIndex?m.scrollIndex(E):E,g=Z.getOffset(o),j2=Z.getSize(o),S=q.scrollPosition,l=q.containerSize,r=U.startPadding,z=U.endPadding,f=g+r,V=f+j2,b=S;if(f<S)b=Math.max(0,g);else if(V>S+l)b=V+z-l;if(b!==S)q.scrollPosition=b,Q.scrollTo(b)},w=(E,m)=>{if(j.content.setAttribute("aria-activedescendant",`${D}-item-${E}`),m)Y(E);Q.forceRender()},L=(E)=>{_=E,A=!0,w(E,!0);let m=C(E);if(m)P.id=m.id,P.index=E,K.emit("focus:change",P),T(`Item ${E+1} of ${B()}`)},X=(E,m)=>{if(_=E,m)A=!0;let o=C(E);if(o&&F===o.id)F=void 0,O=-1;else F=o?.id,O=o?E:-1;if(w(E,m),F!==void 0&&o&&F===o.id)M.selected[0]=F,M.selected.length=1,M.items[0]=o,M.items.length=1,T(`Selected, item ${E+1} of ${B()}`);else M.selected.length=0,M.items.length=0,T("Deselected");K.emit("selection:change",M)},h=()=>{if(q.destroyed)return;if(!j.content.matches(":focus-visible"))return;let E=B();if(E===0)return;let m=_>=0?Math.min(_,E-1):0;m=G(m,1,E),L(m)},u=(E)=>{if(q.destroyed)return;let m=E.relatedTarget;if(m&&j.root.contains(m))return;A=!1,j.content.removeAttribute("aria-activedescendant"),Q.forceRender()};if(j.content.addEventListener("focusin",h),j.content.addEventListener("focusout",u),J)Q.registerKeydownHandler((E)=>{if(q.destroyed)return;let m=B();if(m===0)return;let o=_,g=o;if(E.key===" "||E.key==="Enter"){if(o>=0){let S=C(o);if(S&&!S.__groupHeader)X(o,!0)}E.preventDefault();return}let j2=Q.getNavConfig();if(j2.navigate)switch(E.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"PageUp":case"PageDown":case"Home":case"End":g=j2.navigate(o,E.key,m);break;default:return}else{let S=j2.ud||1,l=j2.lr,r=U.axis.primary==="x";switch(E.key){case"ArrowUp":if(r&&!l)return;g=o-(r?l:S);break;case"ArrowDown":if(r&&!l)return;g=o+(r?l:S);break;case"ArrowLeft":if(!r&&!l)return;g=o-(r?S:l);break;case"ArrowRight":if(!r&&!l)return;g=o+(r?S:l);break;case"PageUp":case"PageDown":{let z=Z.getSize(Math.max(0,j2.scrollIndex?j2.scrollIndex(o):o)),V=Math.max(1,Math.floor(q.containerSize/z))*S;g=E.key==="PageUp"?o-V:o+V;break}case"Home":g=0;break;case"End":g=m-1;break;default:return}}if(g<0)g=0;else if(g>=m)g=m-1;if(E.preventDefault(),g=G(g,g>=o?1:-1,m),g!==o)L(g)});Q.registerClickHandler((E)=>{if(q.destroyed)return;let m=E.target.closest("[data-index]");if(!m)return;let o=parseInt(m.dataset.index??"-1",10);if(o<0)return;let g=C(o);if(!g||g.__groupHeader)return;A=!1,j.content.focus({preventScroll:!0}),X(o,!1)}),Q.registerDestroyHandler(()=>{j.content.removeEventListener("focusin",h),j.content.removeEventListener("focusout",u)})}}}var t2=($,J,Q)=>{if(String(Q).startsWith(I2))return!1;let j=I2+J;if($.has(j))return $.delete(j),$.add(Q),!0;return!1},v1=($)=>({selected:new Set($??[]),focusedIndex:-1,focusVisible:!1});function c2($,J,Q,j){if(Q===0)return;let U=j?-J:J,Z=$.focusedIndex+U;if(Z<0)Z=0;if(Z>=Q)Z=Q-1;$.focusedIndex=Z}function q0($){return Array.from($)}var L4={preventScroll:!0};function T0($){let J=$?.mode??"single",Q=$?.followFocus??!1,j=$?.focusOnClick??!1,U=$?.keyboard??!0,Z,q,K,D,N,_,A,F,O=-1,C=new Map,B=null,P=null,M=null,T=null,G,Y=!1;function w(b){if(Y)return;Y=!0,B=b.getMethod("_layoutToDataIndex")??null,P=b.getMethod("_dataToLayoutIndex")??null,M=b.getMethod("_isGroupHeader")??null,T=b.getMethod("_scrollItemIntoView")??null,X=b.getMethod("_getLoadedItem")??null;let i=b.getMethod("getGroupLayout");if(i){let n=i();G=()=>n.totalEntries}}let L=(b)=>B?B(b):b,X=null,h=(b)=>{if(X)return X(b);return q()[b]},u=(b)=>{let i=L(b);return i>=0?h(i):void 0},E=(b,i,n)=>{if(!M)return b;let I=b;while(I>=0&&I<n){if(!M(I))return I;I+=i}I=b-i;while(I>=0&&I<n){if(!M(I))return I;I-=i}return b};function m(b,i){if(J==="single")Z.selected.clear(),C.clear();if(Z.selected.add(b),i)C.set(b,i)}function o(b,i){if(Z.selected.has(b))Z.selected.delete(b),C.delete(b);else m(b,i)}function g(){Z.selected.clear(),C.clear()}function j2(b){Z.selected.delete(b),C.delete(b)}function S(b,i){let n=Math.min(b,i),I=Math.max(b,i);for(let H=n;H<=I;H++){if(M?.(H))continue;let d=u(H);if(d)Z.selected.add(d.id),C.set(d.id,d);else if(X){let p=L(H);if(p>=0)Z.selected.add(I2+p)}}}function l(){let b=A.totalItems;for(let i=0;i<b;i++){if(M?.(i))continue;let n=u(i);if(n)Z.selected.add(n.id),C.set(n.id,n);else if(X){let I=L(i);if(I>=0)Z.selected.add(I2+I)}}}function r(){if(Z.selected.size===0)return[];if(C.size>=Z.selected.size){let I=[];for(let H of Z.selected){let d=C.get(H);if(d)I.push(d)}if(I.length===Z.selected.size)return I}let b=[],i=new Set(Z.selected),n=A.totalItems;for(let I=0;I<n&&i.size>0;I++){if(M?.(I))continue;let H=u(I);if(H&&i.has(H.id))b.push(H),C.set(H.id,H),i.delete(H.id)}return b}function z(){K(),D.emit("selection:change",{selected:q0(Z.selected),items:r()})}let f=null,V=-1;return{name:"selection",priority:50,setup(b){b.enableListboxRole(),Z=v1($?.initial),q=b.getItems.bind(b),K=b.forceRender.bind(b),D=b.emitter,N=b.dom;let i=b.config;if(_=b.sizeCache,A=b.getState(),F=b.scrollTo.bind(b),G=()=>A.totalItems,J==="none"){b.registerMethod("select",()=>{}),b.registerMethod("deselect",()=>{}),b.registerMethod("toggleSelect",()=>{}),b.registerMethod("selectAll",()=>{}),b.registerMethod("clearSelection",()=>{}),b.registerMethod("getSelected",()=>[]),b.registerMethod("getSelectedItems",()=>[]),b.registerMethod("selectNext",()=>{}),b.registerMethod("selectPrevious",()=>{}),b.registerMethod("_seedSelection",()=>{}),b.registerMethod("_getFocusedId",()=>{return}),b.registerMethod("_focusById",()=>{});return}let n=i.classPrefix;b.setItemStateFn((k,R)=>{if(w(b),Z.selected.size>0){let y=L(k),s=y>=0?u(k):void 0,Z2=s?.id;if(Z2!==void 0)if(Z.selected.has(Z2))R.selected=!0;else if(t2(Z.selected,y,Z2))R.selected=!0,C.delete(I2+y),C.set(Z2,s);else R.selected=!1;else R.selected=X!==null&&y>=0&&Z.selected.has(I2+y)}else R.selected=!1;R.focused=Z.focusVisible&&Z.focusedIndex===k}),b.registerMethod("_getSelectedIds",()=>Z.selected),b.registerMethod("_getFocusedIndex",()=>Z.focusVisible?Z.focusedIndex:-1),N.root.classList.add(`${n}--selectable`);let I=(k)=>{f=null,V=-1;let R=k.target.closest("[data-index]");if(!R)return!1;let y=parseInt(R.dataset.index??"-1",10);if(y<0)return!1;if(M?.(y))return!1;if(L(y)<0)return!1;let Z2=u(y);if(!Z2)return!1;return f=Z2,V=y,!0},H=0,d=(k)=>{if(k<0)return;if(T){T(k);return}if(!H){let A2=b.getMethod("_getRowGap");H=A2?A2():0}let R=b.getNavConfig(),y=R.scrollIndex?R.scrollIndex(k):k,s=_.getOffset(y),Z2=_.getSize(y)-H,J2=A.containerSize,e=A.scrollPosition,K2=i.startPadding,$2=i.endPadding;if(s<e)F(s);else if(K2+s+Z2+$2>e+J2)F(K2+s+Z2+$2-J2)},p=(k)=>{let R=N.content.querySelectorAll(`[data-index="${k}"]`),y=null;for(let s=0;s<R.length;s++){let Z2=R[s];if(Z2.style.display!=="none"){y=Z2;break}}if(!y&&R.length>0)y=R[0];N.content.setAttribute("aria-activedescendant",y?.id??`${n}-item-${k}`)},a=()=>{if(A.destroyed)return;if(w(b),!N.content.matches(":focus-visible")&&!N.root.matches(":focus-visible"))return;let k=G();if(k===0)return;let R=Z.focusedIndex>=0?Math.min(Z.focusedIndex,k-1):0;R=E(R,1,k),Z.focusedIndex=R,Z.focusVisible=!0,p(R),d(R),K()};N.root.addEventListener("focusin",a);let W=(k)=>{if(A.destroyed)return;let R=k.relatedTarget;if(R&&N.root.contains(R))return;Z.focusVisible=!1,K(),N.content.removeAttribute("aria-activedescendant")};if(N.root.addEventListener("focusout",W),b.registerDestroyHandler(()=>{N.root.removeEventListener("focusin",a),N.root.removeEventListener("focusout",W)}),b.registerClickHandler((k)=>{if(w(b),!I(k))return;if(J==="multiple"&&k.shiftKey&&Z.focusedIndex>=0){let y=O>=0?O:Z.focusedIndex,s=L(y),Z2=L(V);if(s>=0&&Z2>=0)S(y,V);Z.focusedIndex=V,Z.focusVisible=j,O=V,z();return}if(Z.focusedIndex=V,Z.focusVisible=j,O=V,(N.content.getAttribute("tabindex")!==null?N.content:N.root).focus(L4),J==="single")m(f.id,f);else o(f.id,f);z()}),U)b.registerKeydownHandler((k)=>{w(b);let R=G();if(R===0)return;let y=b.getNavConfig(),s=Z.focusedIndex,Z2=!1,J2=!1;if(y.navigate&&(k.key==="ArrowUp"||k.key==="ArrowDown"||k.key==="ArrowLeft"||k.key==="ArrowRight"||k.key==="PageUp"||k.key==="PageDown"||k.key==="Home"||k.key==="End")){let K2=y.total?y.total():R,$2=y.navigate(Z.focusedIndex,k.key,K2);if($2!==Z.focusedIndex)Z.focusedIndex=Math.max(0,Math.min($2,K2-1));Z.focusVisible=!0,Z2=!0}else switch(k.key){case"ArrowUp":{let K2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(A2&&!$2)break;c2(Z,-(A2?$2:K2),R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowDown":{let K2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(A2&&!$2)break;c2(Z,A2?$2:K2,R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowLeft":{let K2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(!A2&&!$2)break;c2(Z,-(A2?K2:$2),R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowRight":{let K2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(!A2&&!$2)break;c2(Z,A2?K2:$2,R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"Home":if(R>0)Z.focusedIndex=0;Z.focusVisible=!0,Z2=!0;break;case"End":if(R>0)Z.focusedIndex=R-1;Z.focusVisible=!0,Z2=!0;break;case"PageUp":case"PageDown":{let K2=y.ud||1,$2=Math.max(0,Z.focusedIndex),A2=y.scrollIndex?y.scrollIndex($2):$2,G2=_.getSize(A2),Y2=A.containerSize,U2=(G2>0?Math.max(1,Math.floor(Y2/G2)):10)*K2;if(B&&P){let Q2=B(Z.focusedIndex),D2=k.key==="PageUp"?-U2:U2,b2=A.totalItems-1;Z.focusedIndex=P(Math.max(0,Math.min(b2,Q2+D2)))}else c2(Z,k.key==="PageUp"?-U2:U2,R);Z.focusVisible=!0,Z2=!0;break}case" ":case"Enter":if(k.key===" "&&k.shiftKey&&J==="multiple"&&Z.focusedIndex>=0){if(O>=0){let K2=L(O),$2=L(Z.focusedIndex);if(K2>=0&&$2>=0)S(O,Z.focusedIndex)}Z.focusVisible=!0,J2=!0,Z2=!0;break}if(Z.focusedIndex>=0){let K2=u(Z.focusedIndex);if(K2)o(K2.id,K2),O=Z.focusedIndex;Z.focusVisible=!0,J2=!0,Z2=!0}break;case"a":if((k.ctrlKey||k.metaKey)&&J==="multiple"){if(Z.selected.size===A.totalItems)g();else l();Z.focusVisible=!0,J2=!0,Z2=!0}break;case"Delete":case"Backspace":if(Z.selected.size>0)D.emit("delete",{selected:q0(Z.selected),items:r()}),Z2=!0;break}if(Z.focusedIndex!==s&&M){let K2=Z.focusedIndex>s?1:-1;Z.focusedIndex=E(Z.focusedIndex,K2,R)}let e=Z.focusedIndex!==s;if(k.shiftKey&&J==="multiple"&&!J2&&e){if(k.key==="ArrowUp"||k.key==="ArrowDown"||k.key==="ArrowLeft"||k.key==="ArrowRight"){let A2=u(Z.focusedIndex);if(A2)o(A2.id,A2);O=Z.focusedIndex,J2=!0}if((k.ctrlKey||k.metaKey)&&(k.key==="Home"||k.key==="End")){let A2=s>=0?s:Z.focusedIndex,G2=L(A2),Y2=L(Z.focusedIndex);if(G2>=0&&Y2>=0)S(A2,Z.focusedIndex);O=Z.focusedIndex,J2=!0}}if(Q&&J==="single"&&!J2&&e&&Z.focusedIndex>=0){let K2=u(Z.focusedIndex);if(K2)m(K2.id,K2);J2=!0}if(Z2){if(k.preventDefault(),e&&Z.focusedIndex>=0){if(T||!y.navigate)d(Z.focusedIndex);p(Z.focusedIndex)}if(J2)z();else if(e){if(K(),Z.focusedIndex>=0){let K2=u(Z.focusedIndex);if(K2)D.emit("focus:change",{id:K2.id,index:Z.focusedIndex})}}}});b.registerMethod("select",(...k)=>{for(let R of k)m(R);z()}),b.registerMethod("deselect",(...k)=>{for(let R of k)j2(R);z()}),b.registerMethod("toggleSelect",(k)=>{o(k),z()}),b.registerMethod("selectAll",()=>{if(J!=="multiple")return;w(b),l(),z()}),b.registerMethod("clearSelection",()=>{g(),z()}),b.registerMethod("getSelected",()=>{return q0(Z.selected)}),b.registerMethod("getSelectedItems",()=>{return r()}),b.registerMethod("selectNext",()=>{w(b);let k=G();if(k===0)return;if(c2(Z,1,k,i.reverse),M)Z.focusedIndex=E(Z.focusedIndex,1,k);let R=u(Z.focusedIndex);if(R)m(R.id,R);z()}),b.registerMethod("selectPrevious",()=>{w(b);let k=G();if(k===0)return;if(c2(Z,-1,k,i.reverse),M)Z.focusedIndex=E(Z.focusedIndex,-1,k);let R=u(Z.focusedIndex);if(R)m(R.id,R);z()}),b.registerMethod("_seedSelection",(k)=>{if(J==="single"){if(k.length===1)Z.selected.add(k[0])}else for(let R of k)Z.selected.add(R)}),b.registerMethod("_isFollowFocus",()=>Q),b.registerMethod("_getFocusedId",()=>{if(Z.focusedIndex<0)return;return u(Z.focusedIndex)?.id}),b.registerMethod("_focusById",(k)=>{let R=A.totalItems;for(let y=0;y<R;y++){if(M?.(y))continue;let s=u(y);if(s&&s.id===k){Z.focusedIndex=y,Z.focusVisible=j,D.emit("focus:change",{id:k,index:y});return}}})},destroy(){C.clear()}}}var Y0=($)=>$==null?0:typeof $==="function"?$():$;function b0($){let J=$?.scrollPadding,Q,j;return{name:"page",priority:5,setup(U){let{dom:Z,sizeCache:q,config:K,emitter:D}=U,N=K.axis.primary==="x",_=window,A=U.getState();if(U.disableDefaultScroll(),U.disableDefaultResize(),Z.root.style.overflow="visible",Z.root.style.height="auto",N)Z.viewport.style.overflowX="visible",Z.viewport.style.overflowY="visible";else Z.viewport.style.overflow="visible";Z.viewport.classList.remove(`${K.classPrefix}-viewport--custom-scrollbar`),U.setScrollFns(()=>{let M=Z.viewport.getBoundingClientRect();return Math.max(0,N?-M.left:-M.top)},(M)=>{let T=Z.viewport.getBoundingClientRect(),G=(N?T.left+_.scrollX:T.top+_.scrollY)+M;if(N)_.scrollTo({left:G,top:_.scrollY,behavior:"instant"});else _.scrollTo({left:_.scrollX,top:G,behavior:"instant"})}),A.containerSize=N?_.innerWidth:_.innerHeight,A.crossSize=N?_.innerHeight:_.innerWidth;let F=null,O=()=>{let M=Z.viewport.getBoundingClientRect(),T=Math.max(0,N?-M.left:-M.top);if(A.prevScrollPosition=A.scrollPosition,A.scrollPosition=T,A.scrollDirection=T>A.prevScrollPosition?1:T<A.prevScrollPosition?-1:0,U.onScrollFrame(),F!==null)clearTimeout(F);F=setTimeout(()=>{F=null,U.onScrollIdle()},150)};_.addEventListener("scroll",O,{passive:!0}),j=()=>_.removeEventListener("scroll",O);let{innerWidth:C,innerHeight:B}=_,P=()=>{let{innerWidth:M,innerHeight:T}=_;if((N?Math.abs(M-C):Math.abs(T-B))<1)return;C=M,B=T,A.containerSize=N?M:T,A.crossSize=N?T:M,U.forceRender(),D.emit("resize",{width:M,height:T})};if(_.addEventListener("resize",P),Q=()=>_.removeEventListener("resize",P),J)U.setScrollToPosFn((M,T,G,Y,w)=>{let L=Y0(N?J.left:J.top),X=Y0(N?J.right:J.bottom);if(Y===0)return 0;let h=Math.max(0,Math.min(M,Y-1)),u=T.getOffset(h),E=T.getSize(h),m=T.getTotalSize(),o=Math.max(0,m-G+X),g;switch(w){case"center":g=u-L-(G-L-X-E)/2;break;case"end":g=u-G+E+X;break;default:g=u-L}return Math.max(-L,Math.min(g,o))}),U.registerMethod("_scrollItemIntoView",(M)=>{let T=N?_.innerWidth:_.innerHeight,G=Y0(N?J.left:J.top),Y=Y0(N?J.right:J.bottom),w=Z.viewport.getBoundingClientRect(),L=N?_.scrollX:_.scrollY,X=N?w.left:w.top,h=X+L,u=q.getOffset(M),E=q.getSize(M),m=X+u,o=T-Y,g=L;if(m<G)g=h+u-G;else if(m+E>o)g=h+u+E-o;if(g!==L)if(N)_.scrollTo({left:g,top:_.scrollY,behavior:"instant"});else _.scrollTo({left:_.scrollX,top:g,behavior:"instant"})});U.registerDestroyHandler(()=>{if(j?.(),Q?.(),F!==null)clearTimeout(F)})},destroy(){j?.(),Q?.(),j=void 0,Q=void 0}}}var O4=($)=>{try{let J=sessionStorage.getItem($);if(!J)return;return JSON.parse(J)}catch{return}};function e2($){let J=$?.autoSave,Q=$?.restore??(J?O4(J):void 0),j=!1,U=null;return{name:"snapshots",priority:50,setup(Z){let{sizeCache:q,emitter:K}=Z,D=Z.getState(),N=()=>{let{scrollPosition:F,totalItems:O}=D,B=Z.getMethod("getSelected")?.();if(O===0){let X={index:0,offsetInItem:0,total:0};if(B?.length)X.selectedIds=B;return X}let P=q.indexAtOffset(F),M=F-q.getOffset(P);M=Math.max(0,M);let T={index:P,offsetInItem:M,total:O,scrollTop:F},G=q.getSize(P);if(G)T.offsetRatio=M/G;let Y=Z.getMethod("_layoutToDataIndex");if(Y){let X=Y(P);if(X<0){for(let h=P+1;h<O;h++)if(X=Y(h),X>=0)break}if(X>=0)T.dataIndex=X}let w=Z.getMethod("_getTotal");if(w)T.dataTotal=w();if(B?.length)T.selectedIds=B;let L=Z.getMethod("_getFocusedId");if(L){let X=L();if(X!==void 0)T.focusedId=X}return T};Z.registerMethod("getScrollSnapshot",N);let _=(F,O=!0)=>{let{index:C,offsetInItem:B,selectedIds:P,focusedId:M}=F,T=D.totalItems,G=F.dataTotal??F.total;if(T===0&&G&&G>0){let l=Z.getMethod("_setTotal");if(l)l(G),T=D.totalItems;q.rebuild(T),Z.updateContentSize(q.getTotalSize()),D.totalSize=q.getTotalSize()}if(T===0)return Promise.resolve();if(!Number.isFinite(C)||!Number.isFinite(B))return Promise.resolve();if(q.getTotal()===0)q.rebuild(T),Z.updateContentSize(q.getTotalSize()),D.totalSize=q.getTotalSize();let w=Z.getMethod("_dataToLayoutIndex"),L=C;if(F.dataIndex!==void 0&&F.dataIndex>=0)L=w?w(F.dataIndex):F.dataIndex;else if(w)L=w(C);let X=Math.max(0,Math.min(L,T-1)),h=q.getSize(X),u=F.offsetRatio!==void 0?F.offsetRatio*h:Math.min(B,h),E=Z.getMethod("_getTotal")?.(),m=F.total===T||E!==void 0&&F.dataTotal===E,o;if(F.scrollTop!==void 0&&m)o=F.scrollTop;else o=q.getOffset(X)+u;let g=Math.max(0,D.totalSize-D.containerSize);if(o=Math.max(0,Math.min(o,g)),Z.scrollTo(o),O&&P?.length){let l=Z.getMethod("select");if(l)l(...P)}let j2=Z.getMethod("loadVisibleRange"),S=()=>{if(M===void 0)return;let l=Z.getMethod("_focusById");if(l)l(M)};return new Promise((l)=>{let r=(z)=>{if(z)S();l()};if(j2){let z=0,f=()=>{if(D.containerSize>0){if(Math.abs(D.scrollPosition-o)>1)Z.scrollTo(o);j2().then(()=>r(!0),()=>r(!1))}else if(++z<10)requestAnimationFrame(f);else r(!1)};requestAnimationFrame(f)}else{let z=Z.getMethod("reload");if(z)requestAnimationFrame(()=>{z().then(()=>r(!0),()=>r(!1))});else requestAnimationFrame(()=>r(!0))}})};Z.registerMethod("restoreScroll",_);let A=!!(Q&&J);if(Z.registerDestroyHandler(()=>{j=!0}),J){U=()=>{if(j||A)return;let T=N();try{sessionStorage.setItem(J,JSON.stringify(T))}catch{}},Z.registerMethod("_saveSnapshot",U);let F=0,O=()=>{if(F)return;F=requestAnimationFrame(()=>{if(F=0,U)U()})};K.on("selection:change",O),K.on("focus:change",O);let C=0,B=()=>{if(C=0,U)U()},P=()=>{if(C)clearTimeout(C);C=setTimeout(B,300)};K.on("scroll",P);let M=()=>{U?.()};if(window.addEventListener("beforeunload",M),Z.registerDestroyHandler(()=>{if(F)cancelAnimationFrame(F);if(C)clearTimeout(C);window.removeEventListener("beforeunload",M)}),Q&&Q.total&&Q.total>0){let T=Z.getMethod("_cancelAutoLoad");if(T)T();let G=Z.getMethod("_setTotal");if(G)G(Q.total)}}if(Q){let F=!0;if(Q.selectedIds?.length){let O=Z.getMethod("_seedSelection");if(O)O(Q.selectedIds),F=!1}queueMicrotask(()=>{if(_(Q,F),A=!1,U)U()})}},hooks:{onIdle(){if(U&&!j)U()}},destroy(){j=!0,U=null}}}function C1($,J){if(J===!1)return null;return{duration:Math.min(J?.duration??$.duration,1000),easing:J?.easing??$.easing}}function P0($){let J=$?.duration??200,Q=$?.easing??"cubic-bezier(0.2, 0, 0, 1)",j={duration:J,easing:Q},U=C1(j,$?.remove),Z=C1(j,$?.insert),q=null,K=null;return{name:"transition",conflicts:["grid","table","masonry"],priority:45,setup(D){let{sizeCache:N,emitter:_}=D,A=D.config,F=D.dom,O=D.getState(),C=A.reverse?"bottom center":"top center",B=A.axis.primary==="x"?"translateX":"translateY",P=D.getMethod("_dataToLayoutIndex")??null,M=(Y)=>P?P(Y):Y,T=(Y)=>{let w=String(Y).replace(/"/g,"\\\""),L=F.content.querySelector(`[data-id="${w}"]`),X=L?parseInt(L.dataset.index??"-1",10):-1;return{el:L,layoutIndex:X}},G=()=>{let Y=F.content.children;for(let w=0;w<Y.length;w++)Y[w].style.transition="none";F.content.offsetHeight;for(let w=0;w<Y.length;w++)Y[w].style.transition=""};if(U){let Y=(L)=>{if(q)q();let X=typeof document<"u"?document.activeElement:null,h=X&&F.content.contains(X)?parseInt(X.dataset?.index??"-1",10):-1,u=T(L),E=u.layoutIndex,m=u.el,o=E>=0?N.getSize(E):0,g=E>=0?N.getOffset(E):0;if(!m||E<0){if(D.removeItemById(L)<0)return!1;if(D.forceRender(),G(),_.emit("data:change",{type:"remove",id:L}),h>=0){let a=O.totalItems;if(a>0)D.getRenderedElement(Math.min(h,a-1))?.focus()}return _.emit("remove:end",{id:L}),!0}let j2=m.cloneNode(!0);j2.style.pointerEvents="none",j2.style.overflow="hidden",j2.removeAttribute("data-index"),j2.removeAttribute("data-id"),j2.removeAttribute("id"),j2.removeAttribute("aria-selected"),j2.classList.remove(`${A.classPrefix}-item--selected`);let S=A.axis.primary==="x"?"scrollLeft":"scrollTop",l=F.viewport[S];if(D.removeItemById(L)<0)return!1;D.forceRender(),G(),_.emit("data:change",{type:"remove",id:L});let z=l-F.viewport[S];j2.style.zIndex="1",F.content.appendChild(j2);let f=U,V={duration:f.duration,easing:f.easing},b=[],i=Math.round(g-z);b.push(j2.animate([{transform:`${B}(${i}px) scaleY(1)`,opacity:1,transformOrigin:C},{transform:`${B}(${Math.round(g)}px) scaleY(0)`,opacity:0,transformOrigin:C}],V));let n=z>0,I=F.content.children;for(let p=0;p<I.length;p++){let a=I[p];if(a===j2)continue;let W=parseInt(a.dataset?.index??"-1",10);if(W<0||!n&&W<E)continue;let k=N.getOffset(W),R=W>=E?Math.round(k+o-z):Math.round(k-z),y=Math.round(k);if(R===y)continue;b.push(a.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],V))}let H=!1,d=()=>{if(H)return;H=!0,q=null,j2.remove();for(let p of b)if(p.playState!=="finished")p.cancel();if(h>=0){let p=O.totalItems;if(p>0)D.getRenderedElement(Math.min(h,p-1))?.focus()}_.emit("remove:end",{id:L})};return q=d,Promise.all(b.map((p)=>p.finished)).then(d,d),setTimeout(d,f.duration+50),!0},w=(L)=>{if(L.length===0)return 0;if(L.length===1)return Y(L[0])?1:0;if(q)q();if(K)K();let X=typeof document<"u"?document.activeElement:null,h=X&&F.content.contains(X)?parseInt(X.dataset?.index??"-1",10):-1,u=[];for(let H of L){let d=T(H);u.push({id:H,layoutIndex:d.layoutIndex,el:d.el,size:d.layoutIndex>=0?N.getSize(d.layoutIndex):0,offset:d.layoutIndex>=0?N.getOffset(d.layoutIndex):0})}u.sort((H,d)=>d.layoutIndex-H.layoutIndex);let E=[];for(let H of u){if(!H.el||H.layoutIndex<0)continue;let d=H.el.cloneNode(!0);d.style.pointerEvents="none",d.style.overflow="hidden",d.removeAttribute("data-index"),d.removeAttribute("data-id"),d.removeAttribute("id"),d.removeAttribute("aria-selected"),d.classList.remove(`${A.classPrefix}-item--selected`),E.push({clone:d,offset:H.offset,size:H.size,layoutIndex:H.layoutIndex})}let m=new Map,o=F.content.children;for(let H=0;H<o.length;H++){let d=o[H],p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(p&&a>=0)m.set(p,N.getOffset(a))}let g=A.axis.primary==="x"?"scrollLeft":"scrollTop",j2=F.viewport[g],S=[];for(let H of u)if(D.removeItemById(H.id)>=0)S.push(H.id);if(S.length===0)return 0;D.forceRender(),G();for(let H of S)_.emit("data:change",{type:"remove",id:H});if(E.length===0){if(h>=0){let H=O.totalItems;if(H>0)D.getRenderedElement(Math.min(h,H-1))?.focus()}for(let H of S)_.emit("remove:end",{id:H});return S.length}let l=j2-F.viewport[g],r=U,z={duration:r.duration,easing:r.easing},f=[];E.sort((H,d)=>H.layoutIndex-d.layoutIndex);let V=0;for(let H of E){H.clone.style.zIndex="1",F.content.appendChild(H.clone);let d=Math.round(H.offset-l),p=Math.round(H.offset-V);f.push(H.clone.animate([{transform:`${B}(${d}px) scaleY(1)`,opacity:1,transformOrigin:C},{transform:`${B}(${p}px) scaleY(0)`,opacity:0,transformOrigin:C}],z)),V+=H.size}let b=new Set(E.map((H)=>H.clone)),i=F.content.children;for(let H=0;H<i.length;H++){let d=i[H];if(b.has(d))continue;let p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(!p||a<0)continue;let W=m.get(p);if(W===void 0)continue;let k=N.getOffset(a),R=Math.round(W-l),y=Math.round(k);if(R===y)continue;f.push(d.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],z))}let n=!1,I=()=>{if(n)return;n=!0,q=null;for(let{clone:H}of E)H.remove();for(let H of f)if(H.playState!=="finished")H.cancel();if(h>=0){let H=O.totalItems;if(H>0)D.getRenderedElement(Math.min(h,H-1))?.focus()}for(let H of S)_.emit("remove:end",{id:H})};return q=I,Promise.all(f.map((H)=>H.finished)).then(I,I),setTimeout(I,r.duration+50),S.length};D.registerMethod("removeItem",Y),D.registerMethod("removeItems",w)}if(Z){let Y=(w,L)=>{if(K)K();if(q)q();let X=L??0,h=new Map,u=F.content.children;for(let H=0;H<u.length;H++){let d=u[H],p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(p&&a>=0)h.set(p,N.getOffset(a))}let E=A.axis.primary==="x"?"scrollLeft":"scrollTop",m=A.axis.primary==="x"?"scrollWidth":"scrollHeight",o=A.axis.primary==="x"?"clientWidth":"clientHeight",g=F.viewport[E],j2=F.viewport[m]-F.viewport[o],S=g>=j2-1;D.insertItemAt(w,X),D.forceRender(),G(),_.emit("data:change",{type:"insert",id:w.id});let l=F.viewport[E]-g,r=M(X);if(A.reverse&&l===0&&S){F.viewport[E]=F.viewport[m]-F.viewport[o];let H=F.viewport[E];if(O.prevScrollPosition=O.scrollPosition,O.scrollPosition=H,l=H-g,l>0)D.forceRender(),G()}let z=D.getRenderedElement(r),f=Z,V={duration:f.duration,easing:f.easing},b=[];if(z){let H=N.getOffset(r);b.push(z.animate([{transform:`${B}(${Math.round(H)}px) scaleY(0)`,opacity:0,transformOrigin:C},{transform:`${B}(${Math.round(H)}px) scaleY(1)`,opacity:1,transformOrigin:C}],V))}let i=F.content.children;for(let H=0;H<i.length;H++){let d=i[H];if(d===z)continue;let p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(!p||a<0)continue;let W=h.get(p);if(W===void 0)continue;let k=N.getOffset(a),R=Math.round(W+l),y=Math.round(k);if(R===y)continue;b.push(d.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],V))}if(b.length===0)return;let n=!1,I=()=>{if(n)return;n=!0,K=null;for(let H of b)if(H.playState!=="finished")H.cancel()};K=I,Promise.all(b.map((H)=>H.finished)).then(I,I),setTimeout(I,f.duration+50)};D.registerMethod("insertItem",Y)}},destroy(){if(q)q();if(K)K()}}}function w0($){let J=$?.gap??0,Q=null,j=null,U,Z,q,K,D=new Map,N=new WeakMap,_=0,A=!1,F=!1,O=!1,C=2;function B(Y){return D.get(Y)??K}function P(){return Math.max(0,j.sizeCache.getTotalSize()+j.config.mainAxisPadding-U.containerSize)}function M(){let Y=P();return Y>0&&U.scrollPosition>=Y-C}function T(){let Y=P();if(Y>U.scrollPosition)j.scrollTo(Y)}function G(){j.updateContentSize(j.sizeCache.getTotalSize())}return{name:"autosize",priority:5,setup(Y){if(j=Y,U=Y.getState(),Z=Y.config.axis.primary==="x",q=Z?"width":"height",J===0)J=Y.config.gap;if(K=typeof Y.rawSizeSpec==="function"?Y.rawSizeSpec(0)+J:Y.rawSizeSpec+J,Y.setSizeConfig(B),J>0){let X=Y.sizeCache.getTotalSize;Y.sizeCache.getTotalSize=()=>{let h=X();return h>0?h-J:0}}Q=new ResizeObserver((X)=>{if(U.destroyed||!j)return;let h=!1,u=Y.sizeCache.indexAtOffset(U.scrollPosition);for(let j2 of X){let S=j2.target,l=N.get(S);if(l===void 0)continue;if(S.getAttribute("data-index")!==String(l)){Q.unobserve(S);continue}if(D.has(l))continue;let r=j2.borderBoxSize[0];if(!r)continue;let z=Z?r.inlineSize:r.blockSize;if(z<=0)continue;let f=z+J,V=K;if(D.set(l,f),h=!0,l<u&&f!==V)_+=f-V;Q.unobserve(S),S.style[q]=`${z}px`}if(!h)return;let E=M();if(Y.rebuildSizeCache(),_)Y.scrollTo(U.scrollPosition+_),_=0;let m=U.scrollDirection!==0,o=U.totalItems>0&&U.prevRangeEnd>=U.totalItems-1,g=F&&!O;if(g||E||o||!m){if(G(),A=!1,g||E)T()}else A=!0;Y.forceRender()}),Y.setScrollToIndexFn((X,h,u,E,m)=>{let o=X>=U.totalItems-1&&h==="end";if(F=o,O=!1,!o)return!1;let g=Y.config.mainAxisPadding,j2=()=>{let S=Y.sizeCache.getTotalSize();return Math.max(0,S+g-U.containerSize)};if(u==="smooth")O=!0,Y.smoothScrollTo(j2,E??300,m,()=>{O=!1});else Y.scrollTo(j2())});let w=()=>{F=!1},L=Y.dom.viewport;L.addEventListener("wheel",w,{passive:!0}),L.addEventListener("touchstart",w,{passive:!0}),Y.registerDestroyHandler(()=>{L.removeEventListener("wheel",w),L.removeEventListener("touchstart",w)}),Y.registerMethod("isMeasured",(X)=>D.has(X)),Y.registerMethod("setMeasuredSize",(X,h)=>{D.set(X,h)}),Y.registerMethod("getMeasuredCount",()=>D.size),Y.registerDestroyHandler(()=>{if(Q)Q.disconnect(),Q=null})},hooks:{onCommit(Y){if(!Q||!j)return;for(let w=0;w<Y.visibleCount;w++){let L=Y.visibleIndices[w];if(D.has(L))continue;let X=j.getRenderedElement(L);if(!X)continue;X.style[q]="",N.set(X,L),Q.observe(X)}},onIdle(){if(!j||!A)return;let Y=M();if(G(),A=!1,Y)T(),j.forceRender()}},destroy(){if(Q)Q.disconnect(),Q=null;D.clear(),F=!1,O=!1,j=null}}}var S1=($)=>{let J=Math.max(1,Math.floor($.columns)),Q=$.gap??0,j=$.containerSize,U=$.crossOffset??0,Z=$.mainOffset??0,q=0,K=[],D=()=>{let M=(J-1)*Q;q=Math.max(0,(j-M)/J),K=Array(J);let T=q+Q;for(let G=0;G<J;G++)K[G]=U+G*T};D();let N=[],_=0,A=[],F=(M,T)=>{if(M<=0)return _=0,N=[],[];let G=Array(J).fill(Z),Y=Array(J);for(let X=0;X<J;X++)Y[X]=[];let w=Array(M);for(let X=0;X<M;X++){let h=0,u=G[0];for(let o=1;o<J;o++){let g=G[o];if(g<u)u=g,h=o}let E=T(X),m=G[h];w[X]={index:X,x:K[h],y:m,lane:h,size:E,crossSize:q},Y[h].push(X),G[h]=m+E+Q}N=Y;let L=0;for(let X=0;X<J;X++){let h=G[X],u=h>0?h-Q:0;if(u>L)L=u}return _=L,w},O=(M)=>{if(M.length===0)return _;if(_)return _;let T=Array(J).fill(0);for(let Y of M){let w=Y.y+Y.size,L=T[Y.lane];if(w>L)T[Y.lane]=w}let G=0;for(let Y=0;Y<J;Y++)if(T[Y]>G)G=T[Y];return G},C=(M,T,G)=>{if(M.length===0||G<=T)return A.length=0,A;if(N.length===0||N.length!==J)return B(M,T,G);A.length=0;for(let Y=0;Y<J;Y++){let w=N[Y],L=w.length;if(!L)continue;let X=0,h=L;while(X<h){let u=X+h>>>1,E=M[w[u]];if(E.y+E.size<=T)X=u+1;else h=u}for(let u=X;u<L;u++){let E=M[w[u]];if(E.y>=G)break;A.push(E)}}return A},B=(M,T,G)=>{A.length=0;for(let Y of M)if(Y.y+Y.size>T&&Y.y<G)A.push(Y);return A};return{get columns(){return J},get gap(){return Q},get containerSize(){return j},update:(M)=>{let T=!1;if(M.columns!==void 0){let G=Math.max(1,Math.floor(M.columns));if(G!==J)J=G,T=!0}if(M.gap!==void 0&&M.gap!==Q)Q=M.gap,T=!0;if(M.containerSize!==void 0&&M.containerSize!==j)j=M.containerSize,T=!0;if(M.crossOffset!==void 0&&M.crossOffset!==U)U=M.crossOffset,T=!0;if(M.mainOffset!==void 0&&M.mainOffset!==Z)Z=M.mainOffset,T=!0;if(T)D()},calculateLayout:F,getTotalSize:O,getVisibleItems:C}};var h1=($,J,Q)=>{let j=Array.from(J).sort((q,K)=>q-K);if(j.length<=1)return;let U=[];for(let q=0;q<j.length;q++){let K=Q(j[q]);if(K)U.push(K)}if(U.length<=1)return;let Z=$.firstChild;for(let q=0;q<U.length;q++){let K=U[q];if(K===Z)Z=Z.nextSibling;else $.insertBefore(K,Z)}};var F4=($=200)=>{let J=[];return{acquire:()=>{let Z=J.pop();if(Z)return Z;let q=document.createElement("div");return q.setAttribute("role","option"),q},release:(Z)=>{if(Z.remove(),J.length<$)Z.className="",Z.textContent="",Z.removeAttribute("style"),Z.removeAttribute("data-index"),Z.removeAttribute("data-id"),Z.removeAttribute("data-lane"),J.push(Z)},clear:()=>{J.length=0}}},R4=1,I1=($,J,Q,j=!1,U,Z,q,K,D=()=>0)=>{let N=F4(),_=new Map,A=new Set,F=0,O="",C=-1,B={selected:!1,focused:!1},P=(S,l)=>{return B.selected=S,B.focused=l,B},M=`${Q}-item ${Q}-masonry-item`,T=`${Q}-group-header`,G=`${Q}-item--selected`,Y=`${Q}-item--focused`,w=(S,l)=>{if(typeof l==="string")S.innerHTML=l;else S.replaceChildren(l);u2(S)},L=(S,l,r)=>{S.classList.toggle(G,l),S.classList.toggle(Y,r)},X=(S,l)=>{let r=Math.round(l.y-D());if(j)S.style.transform=`translate(${r}px, ${Math.round(l.x)}px)`;else S.style.transform=`translate(${Math.round(l.x)}px, ${r}px)`},h=(S,l)=>{if(j)S.style.width=`${l.size}px`,S.style.height=`${l.crossSize}px`;else S.style.width=`${l.crossSize}px`,S.style.height=`${l.size}px`},u=(S,l,r,z,f)=>{let V=N.acquire(),b=l.__groupHeader,i=P(z,f);if(V.className=b?T:M,V.dataset.index=String(S),V.dataset.id=String(l.id),V.dataset.lane=String(r.lane),b)V.setAttribute("role","presentation"),V.removeAttribute("aria-selected"),V.removeAttribute("aria-setsize"),V.removeAttribute("aria-posinset"),V.removeAttribute("id");else if(K===!0){if(V.setAttribute("role","option"),V.ariaSelected=String(z),Z)V.id=`${Z}-item-${S}`;if(U){let I=U();if(I!==C)C=I,O=String(I);V.setAttribute("aria-setsize",O);let H=q?q(S):S+1;V.setAttribute("aria-posinset",String(H))}}else if(V.setAttribute("role","listitem"),V.removeAttribute("aria-selected"),U){let I=U();if(I!==C)C=I,O=String(I);V.setAttribute("aria-setsize",O);let H=q?q(S):S+1;V.setAttribute("aria-posinset",String(H))}h(V,r);let n=J(l,S,i);return w(V,n),L(V,z,f),X(V,r),{element:V,lastItem:l,lastSelected:z,lastFocused:f,lastY:r.y-D(),lastX:r.x,lastSize:r.size,lastCrossSize:r.crossSize,lastSeenFrame:F}},E=(S,l,r,z)=>{F++,A.clear();for(let V=0;V<l.length;V++)A.add(l[V].index);let f=null;for(let V=0;V<l.length;V++){let b=l[V],i=b.index,n=S(i);if(!n)continue;let I=r.has(n.id),H=i===z,d=_.get(i);if(d){let p=d.lastItem!==n,a=d.lastSelected!==I,W=d.lastFocused!==H,k=d.lastY!==b.y-D()||d.lastX!==b.x,R=d.lastSize!==b.size||d.lastCrossSize!==b.crossSize;if(p){let y=P(I,H),s=J(n,i,y);if(w(d.element,s),d.element.dataset.id=String(n.id),d.lastItem=n,!n.__groupHeader){let J2=q?q(i):i+1;d.element.setAttribute("aria-posinset",String(J2))}}if(p||a||W)L(d.element,I,H),d.element.ariaSelected=String(I),d.lastSelected=I,d.lastFocused=H;if(R)h(d.element,b),d.lastSize=b.size,d.lastCrossSize=b.crossSize;if(k)X(d.element,b),d.lastY=b.y-D(),d.lastX=b.x}else{let p=u(i,n,b,I,H);if(!f)f=document.createDocumentFragment();f.appendChild(p.element),_.set(i,p)}}if(f)$.appendChild(f);for(let[V,b]of _)if(A.has(V))b.lastSeenFrame=F;else if(F-b.lastSeenFrame>R4)N.release(b.element),_.delete(V)},m=()=>{for(let S of _.values())N.release(S.element);_.clear(),$.innerHTML=""};return{render:E,getElement:(S)=>_.get(S)?.element,updateItemClasses:(S,l,r)=>{let z=_.get(S);if(!z)return;let f=z.lastSelected!==l,V=z.lastFocused!==r;if(f||V)L(z.element,l,r),z.lastSelected=l,z.lastFocused=r},sortDOM:()=>{h1($,_.keys(),(S)=>_.get(S)?.element)},clear:m,destroy:()=>{m(),N.clear()}}};var E4=100,k4=new Set;function z0($){if(!$.columns||$.columns<1)throw Error("[vlist] masonry: columns must be >= 1");let J,Q=null,j,U=null,Z,q,K,D=[],N=-1,_=-1,A=!0,F=-1,O=-1,C=0,B=0,P=0,M=0,T={columnWidth:0,columns:0,gap:0,containerWidth:0},G=[],Y=(W)=>G[W],w=null,L=null,X=!1;function h(){if(X||!U)return;X=!0,w=U.getMethod("_getSelectedIds")??null,L=U.getMethod("_getFocusedIndex")??null}let u=[],E=new Int32Array(0),m=[],o=null,g=null,j2=null,S=null,l=!1,r=!0;function z(){if(l||!U)return;if(o=U.getMethod("_getItemLane")??null,g=U.getMethod("_getItemY")??null,j2=U.getMethod("_getItemH")??null,S=U.getMethod("_isGroupHeader")??null,o||S)l=!0}function f(){z();let W=J.columns,k=!!o;if(k){let R=j.totalItems;u=Array(W);for(let y=0;y<W;y++)u[y]=[];if(E.length<R)E=new Int32Array(R);for(let y=0;y<R;y++){if(S?.(y))continue;let s=o(y);if(s<0||s>=W)continue;E[y]=u[s].length,u[s].push(y)}}else{let R=D.length;u=Array(W);for(let y=0;y<W;y++)u[y]=[];if(E.length<R)E=new Int32Array(R);for(let y=0;y<R;y++){let s=D[y];E[y]=u[s.lane].length,u[s.lane].push(y)}}m=Array(W);for(let R=0;R<W;R++){let y=u[R],s=new Float64Array(y.length);for(let Z2=0;Z2<y.length;Z2++){let J2=y[Z2];if(k&&g&&j2){let e=g(J2),K2=j2(J2);s[Z2]=e>=0?e+(K2>0?K2*0.5:0):0}else{let e=D[J2];s[Z2]=e.y+e.size*0.5}}m[R]=s}}function V(W,k){let R=W.length;if(!R)return-1;let y=0,s=R-1;while(y<s){let Z2=y+s>>1;if(W[Z2]<k)y=Z2+1;else s=Z2}if(y>0&&Math.abs(W[y-1]-k)<=Math.abs(W[y]-k))return y-1;return y}function b(W,k,R){if(r)f(),r=!1;let y=!!o,s,Z2;if(y){if(S?.(W))return W;if(s=o(W),s<0)return W;Z2=E[W]}else{let $2=D[W];if(!$2)return W;s=$2.lane,Z2=E[W]}let J2=J.columns,e=u[s];switch(Z?k==="ArrowDown"?"ArrowRight":k==="ArrowUp"?"ArrowLeft":k==="ArrowRight"?"ArrowDown":k==="ArrowLeft"?"ArrowUp":k:k){case"ArrowDown":if(Z2+1<e.length)return e[Z2+1];return W;case"ArrowUp":if(Z2>0)return e[Z2-1];return W;case"ArrowRight":{if(s>=J2-1)return W;let $2=s+1,A2=u[$2];if(!A2.length)return W;let G2=V(m[$2],m[s]?.[Z2]??0);return G2>=0?A2[G2]:W}case"ArrowLeft":{if(s<=0)return W;let $2=s-1,A2=u[$2];if(!A2.length)return W;let G2=V(m[$2],m[s]?.[Z2]??0);return G2>=0?A2[G2]:W}case"Home":return 0;case"End":{let $2=u[J2-1];return $2.length>0?$2[$2.length-1]:W}case"PageDown":{let $2=j.containerSize,A2=y?null:D[W],G2=A2&&A2.size>0?A2.size:150,Y2=Math.max(1,Math.floor($2/G2)),v=Math.min(Z2+Y2,e.length-1);return e[v]}case"PageUp":{let $2=j.containerSize,A2=y?null:D[W],G2=A2&&A2.size>0?A2.size:150,Y2=Math.max(1,Math.floor($2/G2)),v=Math.max(0,Z2-Y2);return e[v]}}return W}let i=null;function n(){if($.size)return(W)=>$.size(W,T);if(i!==null&&typeof i==="function")return(W)=>i(W,T);return(W)=>U.sizeCache.getSize(W)}function I(){let{columns:W,gap:k}=J;T.containerWidth=J.containerSize,T.columns=W,T.gap=k,T.columnWidth=Math.max(0,(J.containerSize-(W-1)*k)/W)}function H(){if(!U)return;I();let W=j.totalItems;D=J.calculateLayout(W,n()),F=W,r=!0,d()}function d(){if(!U)return;let W=J.getTotalSize(D)+M;if(W===O)return;O=W,U.updateContentSize(W)}function p(){if(j.destroyed||!U||!Q)return;if(j.totalItems!==F)H();if(A)O=-1,d();h();let{scrollPosition:W,containerSize:k}=j;if(!A&&W===N&&k===_)return;if(N=W,_=k,A=!1,k<=0||D.length===0)return;let R=Math.max(0,W-K),y=W+k+K,s=J.getVisibleItems(D,R,y),Z2=w?.()??k4,J2=L?.()??-1;G=U.getItems(),Q.render(Y,s,Z2,J2);let e=s.length,K2=e>0?s[0].index:0,$2=e>0?s[e-1].index:0;j.prevRangeStart=K2,j.prevRangeEnd=$2,j.renderPending=!1;let A2=Math.min(e,j.capacity);j.visibleCount=A2,j.startIndex=K2;for(let G2=0;G2<A2;G2++){let Y2=s[G2];j.visibleIndices[G2]=Y2.index,j.visibleOffsets[G2]=Y2.y,j.visibleSizes[G2]=Y2.size}}function a(){if(j.destroyed)return;O=-1,H(),j.prevRangeStart=-1,j.prevRangeEnd=-1,j.renderPending=!0,A=!0,p()}return{name:"masonry",priority:10,conflicts:["grid","table"],setup(W){if(U=W,j=W.getState(),i=W.rawSizeSpec,Z=W.config.axis.primary==="x",q=W.config.classPrefix,K=W.config.overscan*E4,W.config.reverse)throw Error("[vlist] masonry: cannot be combined with reverse mode");C=W.config.crossAxisPadding,B=W.config.crossPadStart,P=W.config.startPadding,M=W.config.endPadding;let k=j.crossSize-C;J=S1({columns:$.columns,gap:$.gap??0,containerSize:k,crossOffset:B,mainOffset:P}),Q=I1(W.dom.content,W.template,q,Z,()=>j.totalItems,void 0,void 0,void 0,()=>j.baseOffset),W.dom.root.classList.add(`${q}--masonry`),W.setRenderFn(p,a),H(),W.registerMethod("getMasonryLayout",()=>J),W.registerMethod("updateMasonry",(R)=>{if(R.columns!==void 0&&R.columns<1)throw Error("[vlist] updateMasonry: columns must be >= 1");if(R.gap!==void 0&&R.gap<0)throw Error("[vlist] updateMasonry: gap must be >= 0");let y={};if(R.columns!==void 0)y.columns=R.columns;if(R.gap!==void 0)y.gap=R.gap;J.update(y),Q?.clear(),a()}),W.registerMethod("scrollToIndex",(R,y="start")=>{let s=D[R];if(!s)return;let Z2=typeof y==="string"?y:y.align??"start",J2=typeof y==="object"?y.behavior:void 0,e=typeof y==="object"?y.duration:void 0,K2=j.containerSize,$2=J.getTotalSize(D)+M,A2=Math.max(0,$2-K2),G2=s.y;if(Z2==="center")G2=s.y-K2/2+s.size/2;else if(Z2==="end"){if(G2=s.y-K2+s.size,R>=j.totalItems-1&&s.y+s.size>A2)G2=A2}if(G2=Math.max(0,Math.min(G2,A2)),J2==="smooth"&&e&&e>0)W.smoothScrollTo(G2,e);else W.scrollTo(G2)}),W.registerMethod("_scrollItemIntoView",(R)=>{let y=D[R];if(!y)return;let{scrollPosition:s,containerSize:Z2}=j,J2=J.getTotalSize(D)+M,e=Math.max(0,J2-Z2),K2=y.y,$2=K2+y.size;if(K2-P<s)W.scrollTo(Math.max(0,K2-P));else if($2+M>s+Z2){let A2=u[J.columns-1];if(A2&&A2.length>0&&R===A2[A2.length-1]&&K2>=e)W.scrollTo(e);else W.scrollTo(Math.min($2+M-Z2,e))}}),W.setNavConfig({total:()=>j.totalItems,navigate:b}),W.registerDestroyHandler(()=>{Q?.destroy(),Q=null,W.dom.root.classList.remove(`${q}--masonry`)})},hooks:{onResize(W,k){if(!J||!U)return;let R=j.crossSize-C;if(Math.abs(R-J.containerSize)<1)return;J.update({containerSize:R}),Q?.clear(),a()},onIdle(){Q?.sortDOM()}},destroy(){Q?.destroy(),Q=null,D=[],U=null}}}var f1=($={})=>{let{chunkSize:J=100,maxCachedItems:Q=5000,evictionBuffer:j=200,onEvict:U}=$,Z=new Map,q=0,K=0,D=(r)=>{let z=Z.get(r);if(!z)z={items:Array(J),count:0,lastAccess:Date.now()},Z.set(r,z);else z.lastAccess=Date.now();return z},N=(r)=>{return Math.floor(r/J)},_=(r)=>{return r%J},A=()=>q,F=(r)=>{q=r},O=(r)=>{if(r<0||r>=q)return;let z=N(r),f=Z.get(z);if(!f)return;return f.items[_(r)]},C=(r)=>{if(r<0||r>=q)return!1;let z=N(r),f=Z.get(z);if(!f)return!1;return f.items[_(r)]!==void 0},B=(r,z)=>{let f=N(r),V=D(f),b=_(r),i=V.items[b]===void 0;if(V.items[b]=z,i)V.count++,K++;if(r>=q)q=r+1},P=(r,z)=>{for(let f=0;f<z.length;f++){let V=z[f];if(V!==void 0)B(r+f,V)}},M=(r,z)=>{if(r<0||r>q)return;let f=N(r),V=Array.from(Z.keys()).filter((H)=>H>=f).sort((H,d)=>H-d),b=[];for(let H of V){let d=Z.get(H),p=H*J;for(let a=0;a<J;a++){if(d.items[a]===void 0)continue;let W=p+a;if(W<r)continue;b.push({oldIndex:W,item:d.items[a]})}}for(let{oldIndex:H}of b){let d=N(H),p=Z.get(d);if(!p)continue;let a=_(H);if(p.items[a]!==void 0){if(p.items[a]=void 0,p.count--,K--,p.count===0)Z.delete(d)}}q++;for(let{oldIndex:H,item:d}of b){let p=H+1,a=N(p),W=D(a),k=_(p);W.items[k]=d,W.count++,K++}let i=N(r),n=D(i),I=_(r);n.items[I]=z,n.count++,K++},T=(r)=>{if(r<0||r>=q)return!1;let z=N(r),f=Z.get(z),V=_(r);if(!(f!==void 0&&f.items[V]!==void 0))return!1;let i=z,n=Array.from(Z.keys()).filter((H)=>H>=i).sort((H,d)=>H-d),I=[];for(let H of n){let d=Z.get(H),p=H*J;for(let a=0;a<J;a++){if(d.items[a]===void 0)continue;let W=p+a;if(W<=r)continue;I.push({oldIndex:W,item:d.items[a]})}}if(f.items[V]=void 0,f.count--,K--,f.count===0)Z.delete(z);for(let{oldIndex:H}of I){let d=N(H),p=Z.get(d);if(!p)continue;let a=_(H);if(p.items[a]!==void 0){if(p.items[a]=void 0,p.count--,K--,p.count===0)Z.delete(d)}}for(let{oldIndex:H,item:d}of I){let p=H-1,a=N(p),W=D(a),k=_(p);W.items[k]=d,W.count++,K++}return q--,!0},G=(r,z)=>{let f=[];for(let V=r;V<=z&&V<q;V++)f.push(O(V));return f},Y=(r,z)=>{for(let f=r;f<=z&&f<q;f++)if(!C(f))return!1;return!0},w=()=>{let r=[],z=null,f=Array.from(Z.keys()).sort((V,b)=>V-b);for(let V of f){let b=Z.get(V);if(!b)continue;let i=V*J;for(let n=0;n<J;n++){let I=i+n;if(I>=q)break;if(b.items[n]!==void 0)if(z===null)z={start:I,end:I};else if(I===z.end+1)z.end=I;else r.push(z),z={start:I,end:I};else if(z!==null)r.push(z),z=null}}if(z!==null)r.push(z);return r},L=(r,z)=>{let f=[],V=null;for(let b=r;b<=z&&b<q;b++)if(!C(b))if(V===null)V={start:b,end:b};else V.end=b;else if(V!==null)f.push(V),V=null;if(V!==null)f.push(V);return f},X=(r)=>{return Z.has(r)},h=(r)=>{let z=Z.get(r);if(!z)return!1;let f=r*J,V=Math.min(J,q-f);return z.count>=V},u=(r)=>{let z=Z.get(r);if(z)z.lastAccess=Date.now()},E=(r,z)=>{if(r>z||Z.size===0)return;let f=Date.now(),V=N(Math.max(0,r)),b=N(Math.min(q-1,z));for(let i=V;i<=b;i++){let n=Z.get(i);if(n)n.lastAccess=f}},m=(r,z)=>{if(K<=Q)return 0;let f=Math.max(0,r-j),V=Math.min(q-1,z+j),b=N(f),i=N(V),n=0,I=[];for(let[H,d]of Z)if(H<b||H>i)n+=d.count,I.push(H),K-=d.count,Z.delete(H);if(n>0&&U)U(n,I);return n},o=()=>{if(K<=Q)return 0;let r=Array.from(Z.entries()).sort(([,V],[,b])=>V.lastAccess-b.lastAccess),z=0,f=[];for(let[V,b]of r){if(K<=Q)break;z+=b.count,K-=b.count,f.push(V),Z.delete(V)}if(z>0&&U)U(z,f);return z},g=()=>{return{totalItems:q,cachedItems:K,cachedChunks:Z.size,chunkSize:J,maxCachedItems:Q,memoryEfficiency:q>0?1-K/q:1}},j2=()=>K,S=()=>{Z.clear(),K=0};return{chunkSize:J,maxCachedItems:Q,getTotal:A,setTotal:F,get:O,has:C,set:B,setRange:P,insert:M,delete:T,getRange:G,isRangeLoaded:Y,getLoadedRanges:w,findUnloadedRanges:L,getChunkIndex:N,isChunkLoaded:X,isChunkFullyLoaded:h,touchChunk:u,touchChunksForRange:E,evictDistant:m,evictToLimit:o,getStats:g,getCachedCount:j2,clear:S,reset:()=>{S(),q=0}}};var p1=($={})=>{let{maskCharacter:J=Y1,maxSampleSize:Q=B1}=$,j=[],U=!1,Z=(_)=>{if(U||_.length===0)return;let A=Math.min(_.length,Q);for(let F=0;F<A;F++){let O=_[F];if(!O||typeof O!=="object")continue;let C={},B=!1;for(let[P,M]of Object.entries(O)){if(P.startsWith("_")||P==="id")continue;C[P]=String(M??"").length,B=!0}if(B)j.push(C)}U=!0},q=()=>U,K=(_)=>{let A={id:`${I2}${_}`,[D0]:!0,_index:_};if(j.length===0)return A.label=J.repeat(12),A;let F=j[_%j.length];for(let[O,C]of Object.entries(F))A[O]=J.repeat(Math.max(1,C));return A};return{analyzeStructure:Z,hasAnalyzedStructure:q,generate:K,generateRange:(_,A)=>{let F=[];for(let O=_;O<=A;O++)F.push(K(O));return F},clear:()=>{j=[],U=!1}}},B0=($)=>{if(!$||typeof $!=="object")return!1;return $[D0]===!0};var T4=50,u1=($={})=>{let{adapter:J,initialItems:Q,initialTotal:j,storage:U,placeholder:Z,pageSize:q=T4,maxConcurrent:K=0,onStateChange:D,onDataChange:N,onItemsLoaded:_,onItemsEvicted:A,onLoadError:F}=$,O=f1({...U,onEvict:(Y2,v)=>{A?.(Y2),m(),E()}}),C=null,B=()=>{if(!C)C=p1(Z);return C},P=new Map,M=!1,T,G=!0,Y,w,L=[],X=0,h=new Map,u=()=>{for(let Y2 of h.values())Y2[1].abort();h.clear()},E=()=>{D?.(V())},m=()=>{N?.()},o=()=>{P.clear();let Y2=O.getLoadedRanges();for(let v of Y2)for(let U2=v.start;U2<=v.end;U2++){let Q2=O.get(U2);if(Q2&&!B0(Q2))P.set(Q2.id,U2)}},g=(Y2,v)=>{if(!B0(v))P.set(v.id,Y2)},j2=(Y2)=>{P.delete(Y2)},S=(Y2,v)=>{return`${Y2}-${v}`},l=()=>O.getTotal(),r=()=>O.getCachedCount(),z=()=>M,f=()=>G,V=()=>({total:O.getTotal(),cached:O.getCachedCount(),isLoading:M,pendingRanges:L,error:T,hasMore:G,cursor:Y}),b=()=>O,i=()=>B(),n=(Y2)=>{let v=O.get(Y2);if(v!==void 0)return v;if(Y2>=0&&Y2<O.getTotal())return B().generate(Y2);return},I=(Y2)=>{let v=P.get(Y2);if(v===void 0)return;return O.get(v)},H=(Y2)=>{return P.get(Y2)??-1},d=(Y2)=>{let v=O.get(Y2);return v!==void 0&&!B0(v)},p=(Y2,v)=>{let U2=[],Q2=O.getTotal();O.touchChunksForRange(Y2,Math.min(v,Q2-1));for(let D2=Y2;D2<=v&&D2<Q2;D2++){let b2=O.get(D2);if(b2!==void 0)U2.push(b2);else U2.push(B().generate(D2))}return U2},a=(Y2)=>{O.setTotal(Y2),G=O.getCachedCount()<Y2,m(),E()},W=(Y2,v=0,U2)=>{if(J&&Y2.length>0){let Q2=B();if(!Q2.hasAnalyzedStructure())Q2.analyzeStructure(Y2)}for(let Q2=0;Q2<Y2.length;Q2++){let D2=Y2[Q2];if(D2!==void 0){let b2=v+Q2;O.set(b2,D2),g(b2,D2)}}if(U2!==void 0)O.setTotal(U2);else if(v+Y2.length>O.getTotal())O.setTotal(v+Y2.length);if(O.getCachedCount()>=O.getTotal()&&O.getTotal()>0)G=!1;m(),E(),_?.(Y2,v,O.getTotal())},k=(Y2,v)=>{let U2=O.get(Y2);if(!U2)return!1;let Q2=U2.id,D2={...U2,...v};if(O.set(Y2,D2),v.id!==void 0&&v.id!==Q2)j2(Q2);return g(Y2,D2),m(),E(),!0},R=(Y2,v)=>{O.insert(v,Y2),o(),u(),m(),E()},y=(Y2)=>{let v=P.get(Y2);if(v===void 0)return!1;if(!O.delete(v))return!1;return o(),u(),m(),E(),!0},s=async(Y2,v)=>{if(!J)return;let U2=O.chunkSize,Q2=Math.floor(Y2/U2),D2=Math.floor(v/U2),b2=U2*2;for(let[F2,P2]of h){let z2=F2.indexOf("-"),c=parseInt(F2.slice(0,z2),10);if(Math.abs(c-Y2)>b2)P2[1].abort(),h.delete(F2)}let k2=[],R2=[];for(let F2=Q2;F2<=D2;F2++){let P2=F2*U2,z2=P2+U2-1,c=S(P2,z2);if(O.isChunkFullyLoaded(F2))continue;let B2=h.get(c);if(B2)R2.push(B2[0]);else k2.push({start:P2,end:z2})}if(k2.length===0){if(R2.length>0)await Promise.all(R2);return}if(K>0){let F2=h.size+k2.length;if(F2>K){let P2=(Y2+v)/2,z2=Math.min(F2-K,h.size);while(z2>0){let H2=null,B2=-1,M2=null;for(let[_2,T2]of h){let N2=_2.indexOf("-"),O2=parseInt(_2.slice(0,N2),10),y2=parseInt(_2.slice(N2+1),10),W2=Math.abs((O2+y2)/2-P2);if(W2>B2)B2=W2,H2=_2,M2=T2[1]}if(H2)M2.abort(),h.delete(H2);z2--}let c=K-h.size;if(k2.length>c)k2.sort((H2,B2)=>{let M2=Math.abs((H2.start+H2.end)/2-P2),_2=Math.abs((B2.start+B2.end)/2-P2);return M2-_2}),k2.length=Math.max(0,c)}}if(k2.length===0){if(R2.length>0)await Promise.all(R2);return}for(let F2 of k2){let P2=S(F2.start,F2.end),z2=new AbortController,c=(async()=>{L.push(F2),M=!0,T=void 0,E();try{let H2=F2.end-F2.start+1,B2={offset:F2.start,limit:H2,cursor:F2.start===w?Y:void 0,signal:z2.signal},M2=await J.read(B2);if(W(M2.items,F2.start,M2.total),M2.cursor)Y=M2.cursor,w=F2.start+M2.items.length;let _2=F2.start+M2.items.length;if(_2>=X){if(X=_2,M2.hasMore!==void 0)G=M2.hasMore;else if(M2.total!==void 0)G=_2<M2.total}}catch(H2){if(H2?.name==="AbortError")return;T=H2 instanceof Error?H2:Error(String(H2)),F?.(T,F2)}finally{h.delete(P2);let H2=L.findIndex((B2)=>B2.start===F2.start&&B2.end===F2.end);if(H2>=0)L.splice(H2,1);M=h.size>0,E()}})();h.set(P2,[c,z2]),R2.push(c)}await Promise.all(R2)},Z2=async(Y2,v)=>{if(O.isRangeLoaded(Y2,v))return;await s(Y2,v)},J2=async()=>{if(!J)return;await s(0,q-1)},e=async()=>{if(!J||M||!G)return!1;let Y2=O.getCachedCount(),v=O.getTotal(),U2=Y2,Q2=Math.min(U2+q-1,v>0?v-1:U2+q-1);if(U2>=v&&v>0)return G=!1,!1;return await s(U2,Q2),O.getCachedCount()>Y2},K2=async()=>{if(O.clear(),P.clear(),C)C.clear();u(),L=[],M=!1,Y=void 0,w=void 0,G=!0,X=0,T=void 0,m(),E()},$2=(Y2,v)=>{if(O.evictDistant(Y2,v)>0)o()},A2=()=>{O.clear(),P.clear(),Y=void 0,w=void 0,T=void 0,L=[],M=!1,m(),E()},G2=()=>{if(O.reset(),P.clear(),C)C.clear();Y=void 0,w=void 0,G=!0,X=0,T=void 0,L=[],M=!1,m(),E()};if(Q&&Q.length>0)W(Q,0,j??Q.length);else if(j!==void 0)O.setTotal(j),m(),E();return{getState:V,getTotal:l,getCached:r,getIsLoading:z,getHasMore:f,getStorage:b,getPlaceholders:i,getItem:n,getItemById:I,getIndexById:H,isItemLoaded:d,getItemsInRange:p,setTotal:a,setItems:W,updateItem:k,insertItem:R,removeItem:y,loadRange:s,ensureRange:Z2,loadInitial:J2,loadMore:e,reload:K2,evictDistant:$2,clear:A2,reset:G2}};function y0($){let{adapter:J,total:Q,autoLoad:j=!0,storage:U}=$,Z=$.loading?.cancelThreshold??J1,q=$.loading?.preloadThreshold??e0,K=$.loading?.preloadAhead??t0,D=$.loading?.maxConcurrent??$1,N,_,A,F,O,C,B=null,P=null,M=null,T=0,G=!1,Y=null,w=H0,L=-1,X=-1,h=-1,u=-1,E=U?.chunkSize??j0,m=()=>{if(B=null,P!==null)clearTimeout(P),P=null},o=(V,b)=>{return N.ensureRange(V,b)},g=(V,b=j0)=>{F.emit("load:start",{offset:V,limit:b})},j2=(V)=>{F.emit("error",{error:V,context:"ensureRange"})},S=()=>{B=null;let V={start:_.startIndex,end:_.startIndex+Math.max(0,_.visibleCount-1)};if(V.end<V.start)return;o(V.start,V.end).catch(j2)},l=()=>{if(Y!==null)clearTimeout(Y),Y=null},r=()=>{if(_.destroyed)return;let V=N.getTotal();if(_.visibleCount<=0||_.startIndex>=V)return;let b=Math.min(_.startIndex+_.visibleCount-1,V-1);if(b<_.startIndex)return;o(_.startIndex,b).catch(j2)},z=()=>{if(Y!==null||_.destroyed)return;Y=setTimeout(()=>{Y=null,r()},w),w=Math.min(w*2,Q1)},f=()=>{l(),w=H0};return{name:"data",priority:20,setup(V){_=V.getState(),A=V.sizeCache,F=V.emitter,O=V.dom,C=V.forceRender.bind(V);let b=null;V.setVirtualTotalFn(()=>b?.getTotal()??0),V.setGetIndexByIdFn((n)=>b?.getIndexById(n)??-1),N=b=u1({adapter:J,...Q!==void 0&&{initialTotal:Q},pageSize:U?.chunkSize??j0,maxConcurrent:D,...U&&{storage:{...U.chunkSize!==void 0&&{chunkSize:U.chunkSize},...U.maxCachedItems!==void 0&&{maxCachedItems:U.maxCachedItems},...U.evictionBuffer!==void 0&&{evictionBuffer:U.evictionBuffer}}},onDataChange:()=>{if(_.initialized){let n=N.getTotal(),I=N.getCached();if(_.totalItems=n,n!==L||I!==X)L=n,X=I,A.rebuild(n);V.updateContentSize(A.getTotalSize()),V.renderIfNeeded()}},onItemsLoaded:(n)=>{if(f(),_.initialized)V.updateContentSize(A.getTotalSize()),C(),F.emit("load:end",{items:n,total:N.getTotal()})},onLoadError:(n)=>{if(F.emit("error",{error:n,context:"load"}),_.initialized)V.renderIfNeeded();z()}}),V.setGetItemFn((n)=>N.getItem(n)),V.setRemoveItemFn((n)=>{let I=N.getIndexById(n);if(I<0)return-1;if(!N.removeItem(n))return-1;return I}),V.setInsertItemFn((n,I)=>{N.insertItem(n,I)}),V.setUpdateItemFn((n,I)=>{let H=N.getIndexById(n);if(H<0)return!1;return N.updateItem(H,I)}),V.registerMethod("reload",async()=>{if(B=null,h=-1,u=-1,f(),V.forceRender(),await N.reload(),V.scrollTo(0),j)g(0),await N.loadInitial(),V.forceRender()}),V.registerMethod("loadVisibleRange",async()=>{B=null,V.forceRender();let n=N.getTotal();if(_.visibleCount>0&&_.startIndex<n){let I=Math.min(_.startIndex+_.visibleCount-1,n-1);g(_.startIndex,I-_.startIndex+1),await o(_.startIndex,I)}}),V.registerMethod("loadInitial",async()=>{g(0),await N.loadInitial(),V.forceRender()}),V.registerMethod("getTotal",()=>{return N.getTotal()}),V.registerMethod("setTotal",(n)=>{N.setTotal(n)}),V.registerMethod("_getTotal",()=>N.getTotal()),V.registerMethod("_setTotal",(n)=>{N.setTotal(n)}),V.registerMethod("_cancelAutoLoad",()=>{G=!0}),V.registerMethod("_getLoadedItem",(n)=>{return N.getStorage().get(n)}),V.registerMethod("_getItem",(n)=>{return N.getItem(n)}),V.registerMethod("_getLoadedCount",()=>N.getCached()),F.on("load:start",()=>{O.root.setAttribute("aria-busy","true")}),F.on("load:end",()=>{O.root.removeAttribute("aria-busy")}),V.registerDestroyHandler(()=>{if(M!==null)clearTimeout(M),M=null;m(),l()}),F.on("velocity:change",({velocity:n})=>{T=Math.abs(n)});let i=()=>{if(_.destroyed)return;f(),r(),S()};if(window.addEventListener("online",i),V.registerDestroyHandler(()=>{window.removeEventListener("online",i)}),j)queueMicrotask(()=>{if(G)return;g(0),N.loadInitial().catch((n)=>{F.emit("error",{error:n,context:"loadInitial"})})});else if(Q!==void 0)N.setTotal(Q)},hooks:{onAfterScroll(){if(_.destroyed)return;let V=_.startIndex+Math.max(0,_.visibleCount-1);if(T>Z){if(P!==null)clearTimeout(P),P=null;B={start:_.startIndex,end:V};return}if(T>q){let n=Math.floor(_.startIndex/E),I=Math.floor(V/E);if(n!==h||I!==u){if(h=n,u=I,V>=_.startIndex)o(_.startIndex,V).catch(j2)}let H=_.startIndex,d=V,p=_.scrollDirection;if(p>0)d=Math.min(d+K,N.getTotal()-1);else if(p<0)H=Math.max(0,H-K);if(B={start:H,end:d},P!==null)clearTimeout(P);P=setTimeout(()=>{if(P=null,_.destroyed||!B)return;let{start:a,end:W}=B;if(B=null,W>=a)o(a,W).catch(j2)},100);return}m();let b=Math.floor(_.startIndex/E),i=Math.floor(V/E);if(b!==h||i!==u){if(h=b,u=i,V>=_.startIndex)o(_.startIndex,V).catch(j2)}},onIdle(){if(_.destroyed)return;T=0,h=-1,u=-1,S(),m()},onResize(){if(_.destroyed)return;let V=N.getTotal();if(V<=0)return;if(_.visibleCount<=0||_.startIndex>=V)return;let b=Math.min(_.startIndex+_.visibleCount-1,V-1);if(b<_.startIndex)return;g(_.startIndex,b-_.startIndex+1),o(_.startIndex,b).catch(j2)}},destroy(){if(M!==null)clearTimeout(M);m(),l()}}}var v0=($,J)=>{let Q=0,j=$.length-1;while(Q<j){let U=Q+j+1>>>1;if($[U].headerLayoutIndex<=J)Q=U;else j=U-1}return Q},g1=($,J)=>{let Q=0,j=$.length-1;while(Q<j){let U=Q+j+1>>>1;if($[U].firstDataIndex<=J)Q=U;else j=U-1}return Q},x1=($,J,Q)=>{if($===0)return[];let j=[],U=null,Z=0,q=0;for(let K=0;K<$;K++){let D=Q?.(K);if(!D)continue;let N=J(K,D);if(U===null)U=N,Z=0;else if(N!==U){let _=K-Z;j.push({key:U,groupIndex:j.length,headerLayoutIndex:q,firstDataIndex:Z,count:_}),q=q+1+_,U=N,Z=K}}if(U!==null)j.push({key:U,groupIndex:j.length,headerLayoutIndex:q,firstDataIndex:Z,count:$-Z});return j};var m1=($,J,Q)=>{let j=x1($,J.getGroupForIndex,Q),U=$+j.length,Z=J.header?.height??J.header?.width??J.headerHeight;return{get totalEntries(){return U},get groupCount(){return j.length},get groups(){return j},getEntry:(O)=>{if(j.length===0)return{type:"item",dataIndex:O,group:{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0}};let C=v0(j,O),B=j[C];if(O===B.headerLayoutIndex)return{type:"header",group:B};let P=O-B.headerLayoutIndex-1;return{type:"item",dataIndex:B.firstDataIndex+P,group:B}},layoutToDataIndex:(O)=>{if(j.length===0)return O;let C=v0(j,O),B=j[C];if(O===B.headerLayoutIndex)return-1;let P=O-B.headerLayoutIndex-1;return B.firstDataIndex+P},dataToLayoutIndex:(O)=>{if(j.length===0)return O;let C=g1(j,O),B=j[C],P=O-B.firstDataIndex;return B.headerLayoutIndex+1+P},getGroupAtLayoutIndex:(O)=>{if(j.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let C=v0(j,O);return j[C]},getGroupAtDataIndex:(O)=>{if(j.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let C=g1(j,O);return j[C]},getHeaderHeight:typeof Z==="number"?(O)=>Z:(O)=>{let C=j[O];if(!C)return 0;return Z(C.key,O)},rebuild:(O,C)=>{j=x1(O,J.getGroupForIndex,C??Q),U=O+j.length}}};var C0=($,J,Q,j,U=0)=>{let Z=Q?"width":"height",q=document.createElement("div");return q.className=`${J}-sticky-header`,q.setAttribute("role","presentation"),q.setAttribute("aria-hidden","true"),q.style.cssText="z-index:5;pointer-events:none;overflow:hidden;"+(Q?`position:absolute;top:0;bottom:0;left:${U||0}px`:`position:relative;top:${U||0}px`),q.style[Z]=`${j}px`,$.insertBefore(q,$.firstChild),q},c1=($,J,Q,j,U,Z=!1,q=0,K,D)=>{let N=Z?"width":"height",_=Z?"height":"width",A=Z?"X":"Y",F=(W,k)=>{W.style[N]=`${k}px`},O=K??C0($,U,Z,0,q),C=()=>{let W=document.createElement("div");return W.className="sticky-group",W.style.position="absolute",W.style.willChange="transform",W.style[_]="100%",W},B=C(),P=C();O.append(B,P);let M=B,T=P,G=J.groups,Y=[],w=[],L=[],X=0,h=()=>{G=J.groups,X=G.length,Y=Array(X),w=Array(X),L=Array(X);for(let W=0;W<X;W++)Y[W]=D?D(G[W].headerLayoutIndex):Q.getOffset(G[W].headerLayoutIndex),w[W]=J.getHeaderHeight(W),L[W]=w[W]};h();let u=-1,E=0,m=0,o=-1,g=!1,j2=0,S=!1,l=(W,k)=>{j(W,k);let R=w[k];return F(W,R),R},r=(W)=>{W.replaceChildren(),W.style.transform=""},z=(W)=>{if(W===u)return;if(u=W,E=0,m=0,W<0||W>=X){r(M);return}E=l(M,W),m=L[W],F(O,E),M.style.transform=""},f=(W)=>{if(W===j2)return;j2=W;let k=Math.round(W);M.style.transform=`translate${A}(${k}px)`,T.style.transform=`translate${A}(${k+E}px)`},V=()=>{j2=0,M.style.transform="",T.style.transform=""},b=()=>{if(!S)return;let W=M;M=T,T=W,u=o,E=u>=0?w[u]:0,m=u>=0?L[u]:0,F(O,E),r(T),o=-1,S=!1,V()},i=()=>{if(!S)return;r(T),o=-1,S=!1,V()},n=!!K,I=()=>{if(g)return;if(g=!0,n)O.style.visibility="";else O.style.display=""},H=()=>{if(!g)return;if(g=!1,n)O.style.visibility="hidden";else O.style.display="none";r(M),u=-1,E=0,m=0,i()},d=(W)=>{if(X===0){if(S)i();if(!g)I();z(-1);return}if(W<Y[0]){H();return}let k=0,R=X-1;while(k<R){let s=k+R+1>>>1;if(Y[s]+L[s]<=W)k=s;else R=s-1}if(!g)I();z(k);let y=k+1;if(y<X){let s=Y[y]-W;if(s<=0&&s>-m){if(o!==y||!S)o=y,l(T,y),S=!0;let Z2=m>0?s/m*E:s;f(Z2)}else if(s<=-m){if(S)b()}else if(S)i()}else if(S)i()},p=()=>{h();let W=u;if(u=-1,E=0,m=0,W>=0)z(W)},a=()=>{O.remove(),u=-1,E=0,m=0,o=-1,g=!1,S=!1};if(!K)O.style.display="none";return{update:d,refresh:p,show:I,hide:H,destroy:a}};var d2={selected:!1,focused:!1},d1=typeof process<"u"&&process.env?.NODE_ENV!=="production";function S0($){if(!$.getGroupForIndex)throw Error("[vlist] groups: getGroupForIndex is required");let J=$.header?.height??$.header?.width??$.headerHeight;if(J==null||typeof J==="number"&&J<=0)throw Error("[vlist] groups: header height/width must be a positive number or function");let Q=$.header?.template??$.headerTemplate;if(!Q)throw Error("[vlist] groups: header.template is required");let j=Q,U,Z=null,q,K,D,N,_=null,A,F,O,C=null,B,P,M,T=null,G,Y,w=null,L=null,X=0,h=0,u=0,E=0,m=0,o=!1,g=null,j2=new Map,S=new Set,l=new Map,r=-1,z=-1,f=0,V=!0,b=-1,i=0,n=null,I;function H(){return U.totalEntries}function d(){let v=K.totalItems;if(v===b)return;if(d1)console.log(`[groups] syncLayout: ${b} → ${v}`);let U2=b>0;b=v,U.rebuild(v,C??O),I(U.totalEntries),R();let Q2=a?y():q.getTotalSize();if(_?.(Q2),Z)Z.refresh(),Z.update(K.scrollPosition);if(U2)J2();let D2=w?.("_scrollbar:getInstance");if(D2)D2()?.updateBounds(Q2,K.containerSize)}let p=0,a=null,W=null,k=null;function R(){if(X<=0){a=null,W=null;return}p=((K.crossSize||N.clientWidth)-E-(X-1)*h)/X,a=new Map;let Q2=U.totalEntries,D2=Array(Q2),b2=0;if(o){let k2=g??((c)=>q.getSize(c)),R2=new Float64Array(X),F2=[],P2=0,z2=-1;for(let c=0;c<Q2;c++){let H2=U.getEntry(c);if(H2.type==="header"){let B2=0;for(let _2=0;_2<X;_2++)if(R2[_2]>B2)B2=R2[_2];if(z2>=0)F2[z2]=P2+B2;P2+=B2;let M2=q.getSize(c);a.set(c,{col:-1,rowY:P2}),D2[b2++]=[c,P2,P2+M2],P2+=M2,R2.fill(0),z2=H2.group.groupIndex}else{let B2=0,M2=R2[0];for(let N2=1;N2<X;N2++)if(R2[N2]<M2)M2=R2[N2],B2=N2;let _2=k2(H2.dataIndex),T2=P2+R2[B2];a.set(c,{col:B2,rowY:T2,h:_2}),D2[b2++]=[c,T2,T2+_2],R2[B2]=R2[B2]+_2+h}}if(z2>=0){let c=0;for(let H2=0;H2<X;H2++)if(R2[H2]>c)c=R2[H2];F2[z2]=P2+c}k=F2}else{k=null;let k2=0,R2=0,F2=0;for(let P2=0;P2<Q2;P2++)if(U.getEntry(P2).type==="header"){if(R2>0&&F2>0)k2+=F2;let c=q.getSize(P2);a.set(P2,{col:-1,rowY:k2}),D2[b2++]=[P2,k2,k2+c],k2+=c,R2=0,F2=0}else{let c=R2%X,H2=q.getSize(P2);if(c===0){if(R2>0&&F2>0)k2+=F2+h;F2=H2}else if(H2>F2)F2=H2;a.set(P2,{col:c,rowY:k2}),D2[b2++]=[P2,k2,k2+H2],R2++}}D2.length=b2,W=D2}function y(){if(!a||a.size===0)return q.getTotalSize();let v=U.totalEntries;if(o)return k?.[k.length-1]??0;let U2=0;for(let Q2=v-1;Q2>=0;Q2--){let D2=a.get(Q2);if(D2){U2=D2.rowY+(D2.h??q.getSize(Q2));break}if(U.getEntry(Q2).type==="header"){U2=q.getOffset(Q2)+q.getSize(Q2);break}}return U2}function s(v){let U2=K.baseOffset;if(a){let D2=a.get(v);if(D2){let b2=D2.col<0?0:u+D2.col*(p+h),k2=D2.rowY-U2;if(B)return`translate(${Math.round(k2)}px, ${Math.round(b2)}px)`;return`translate(${Math.round(b2)}px, ${Math.round(k2)}px)`}}let Q2=q.getOffset(v)-U2;if(B)return`translate(${Math.round(Q2)}px, 0)`;return`translate(0, ${Math.round(Q2)}px)`}function Z2(v,U2){let Q2=a?.get(U2);if(Q2){let b2=Q2.h??q.getSize(U2);if(Q2.col<0)if(B)v.style.width=`${b2}px`,v.style.height="";else v.style.height=`${b2}px`,v.style.width="100%";else if(B)v.style.width=`${b2}px`,v.style.height=`${p}px`;else v.style.height=`${b2}px`,v.style.width=`${p}px`;return}let D2=q.getSize(U2);if(B)v.style.width=`${D2}px`;else v.style.height=`${D2}px`}function J2(){j2.forEach((v)=>{v.remove();let U2=v.getAttribute("data-id");if(U2)l.set(U2,v);else D.release(v)}),j2.clear(),S.clear()}function e(){if(l.size>0)l.forEach((v)=>D.release(v)),l.clear()}function K2(v,U2,Q2,D2){if(L===null)L=!!w?.("_getSelectedIds");if(U2.type==="header"){let z2=`__group_header_${U2.group.groupIndex}`;if(v.getAttribute("data-id")===z2)return!0;if(v.className=Y,v.setAttribute("role","presentation"),v.removeAttribute("aria-selected"),v.setAttribute("data-id",z2),B&&Z&&U2.group.groupIndex===0)v.style.display="none";else{v.style.display="";let c=j(U2.group.key,U2.group.groupIndex);if(typeof c==="string")v.innerHTML=c;else v.innerHTML="",v.appendChild(c)}return!0}let b2=U2.dataIndex,k2=O(b2);if(!k2)return v.innerHTML="",!1;let R2=k2._isPlaceholder===!0,F2=String(k2.id);if(!R2&&v.getAttribute("data-id")===F2){if(L)v.id=`${P}-item-${D2}`,v.setAttribute("aria-posinset",String(b2+1)),v.setAttribute("aria-setsize",String(K.totalItems));return!0}if(v.className=G,v.setAttribute("role",L?"option":"listitem"),v.setAttribute("data-id",F2),L)v.id=`${P}-item-${D2}`,v.setAttribute("aria-posinset",String(b2+1)),v.setAttribute("aria-setsize",String(K.totalItems));if(R2)v.classList.add(`${P}-item--placeholder`);if(Q2)Q2(D2,d2);else d2.selected=!1,d2.focused=!1;let P2=F(k2,b2,d2);if(typeof P2==="string")v.innerHTML=P2;else v.innerHTML="",v.appendChild(P2);return u2(v),!R2}let $2=0;function A2(){if(X<=0)return;let v=K.crossSize;if(v===$2)return;$2=v,R();let U2=y();if(_?.(U2),Z)Z.refresh(),Z.update(K.scrollPosition);V=!0}function G2(){if(K.destroyed)return;d(),A2();let{scrollPosition:v,containerSize:U2,baseOffset:Q2}=K,D2=Q2!==f;if(!V&&v===r&&U2===z&&!D2)return;r=v,z=U2;let b2=V;V=!1;let k2=H();if(U2<=0||k2===0){if(j2.size>0)j2.forEach((N2)=>{N2.remove(),D.release(N2)}),j2.clear(),S.clear();return}let R2,F2;if(W){let N2=W,O2=N2.length,y2=0,W2=O2-1;while(y2<W2){let X2=y2+W2>>>1;if(N2[X2][2]<=v)y2=X2+1;else W2=X2}let x=y2;W2=O2-1;while(y2<W2){let X2=y2+W2+1>>>1;if(N2[X2][1]>=v+U2)W2=X2-1;else y2=X2}let V2=y2,q2=N2[x][0],E2=N2[V2][0];for(let X2=q2-1;X2>=0;X2--)if(U.getEntry(X2).type==="header"){q2=X2;break}let w2=M*X;R2=Math.max(0,q2-w2),F2=Math.min(k2-1,E2+w2)}else{let N2=q.indexAtOffset(v),O2=q.indexAtOffset(v+U2);if(O2<k2-1)O2++;N2=Math.max(0,N2),O2=Math.min(k2-1,Math.max(0,O2)),R2=Math.max(0,N2-M),F2=Math.min(k2-1,O2+M)}if(R2===K.prevRangeStart&&F2===K.prevRangeEnd&&!K.renderPending&&!D2)return;f=Q2,j2.forEach((N2,O2)=>{if(O2<R2||O2>F2)N2.remove(),D.release(N2),j2.delete(O2),S.delete(O2)});let P2=T?.()??null,z2=P2?`${P}-item--selected`:"",c=P2?`${P}-item--focused`:"",H2=null;for(let N2=R2;N2<=F2;N2++){let O2=j2.get(N2),y2=!1;if(O2===void 0){let W2=U.getEntry(N2);y2=W2.type==="header";let x;if(W2.type==="header")x=`__group_header_${W2.group.groupIndex}`;else{let q2=O(W2.dataIndex);if(q2&&q2._isPlaceholder!==!0)x=String(q2.id)}if(x!==void 0){let q2=l.get(x);if(q2)l.delete(x),O2=q2}if(!O2)O2=D.acquire();if(O2.setAttribute("data-index",String(N2)),K2(O2,W2,P2,N2))S.delete(N2);else S.add(N2);if(Z2(O2,N2),O2.style.transform=s(N2),j2.set(N2,O2),!H2)H2=document.createDocumentFragment();H2.appendChild(O2)}else if(b2&&S.has(N2)){let W2=U.getEntry(N2);if(W2.type==="item")if(K2(O2,W2,P2,N2))S.delete(N2);else S.add(N2)}else if(y2=O2.classList.contains(Y),b2)Z2(O2,N2),O2.style.transform=s(N2);else if(D2)O2.style.transform=s(N2);if(!y2&&P2)if(P2(N2,d2),O2.classList.toggle(z2,d2.selected),O2.classList.toggle(c,d2.focused),d2.selected)O2.setAttribute("aria-selected","true");else O2.removeAttribute("aria-selected")}if(H2)N.appendChild(H2);e();let B2=a?y():q.getTotalSize();_?.(B2),K.prevRangeStart=R2,K.prevRangeEnd=F2,K.renderPending=!1;let M2=0,_2=0,T2=!1;for(let N2=R2;N2<=F2&&M2<K.capacity;N2++){let O2=U.getEntry(N2);if(O2.type==="item"){if(!T2)_2=O2.dataIndex,T2=!0;K.visibleIndices[M2]=O2.dataIndex,K.visibleOffsets[M2]=q.getOffset(N2),K.visibleSizes[M2]=q.getSize(N2),M2++}}K.visibleCount=M2,K.startIndex=_2}function Y2(){if(K.destroyed)return;if(A2(),d1)console.log(`[groups] forceRender, placeholders: ${S.size}, rendered: ${j2.size}`);let v=n?.()??0;if(v!==i){i=v;let U2=U.groups,Q2=U2.length;U.rebuild(b,C??O);let D2=U.groups,b2=D2.length!==Q2;if(!b2){for(let k2=0;k2<Q2;k2++)if(D2[k2].headerLayoutIndex!==U2[k2].headerLayoutIndex){b2=!0;break}}if(b2){I(U.totalEntries),R();let k2=a?y():q.getTotalSize();if(_?.(k2),Z)Z.refresh(),Z.update(K.scrollPosition);let R2=1/0,F2=Math.min(Q2,D2.length);for(let z2=0;z2<F2;z2++)if(D2[z2].headerLayoutIndex!==U2[z2].headerLayoutIndex){R2=Math.min(D2[z2].headerLayoutIndex,U2[z2].headerLayoutIndex);break}if(D2.length>Q2&&F2<D2.length)R2=Math.min(R2,D2[F2].headerLayoutIndex);else if(Q2>D2.length&&F2<Q2)R2=Math.min(R2,U2[F2].headerLayoutIndex);if(R2<=K.prevRangeEnd)J2();let P2=w?.("_scrollbar:getInstance");if(P2)P2()?.updateBounds(k2,K.containerSize)}}K.prevRangeStart=-1,K.prevRangeEnd=-1,K.renderPending=!0,V=!0,G2()}return{name:"groups",priority:10,setup(v){q=v.sizeCache,K=v.getState(),D=v.pool,N=v.dom.content,_=v.updateContentSize.bind(v),A=v.dom.root,F=v.template,B=v.config.axis.primary==="x",P=v.config.classPrefix,M=v.config.overscan,m=v.config.mainAxisPadding,O=v.getItem.bind(v),T=()=>v.getItemStateFn(),w=v.getMethod.bind(v),L=null,G=`${P}-item`,Y=`${P}-group-header`;let U2=w?.("getGridLayout"),Q2=w?.("getMasonryLayout");if(U2){let B2=U2();X=B2.columns,h=B2.gap,u=v.config.crossPadStart,E=v.config.crossAxisPadding}else if(Q2){let B2=Q2();X=B2.columns,h=B2.gap,u=v.config.crossPadStart,E=v.config.crossAxisPadding,o=!0;let M2=v.rawSizeSpec;if(typeof M2==="function")g=(_2)=>{return M2(_2,{columnWidth:p})}}queueMicrotask(()=>{let B2=w?.("_getLoadedItem");if(B2)C=B2;let M2=w?.("_getLoadedCount");if(M2)n=M2});let D2=K.totalItems;U=m1(D2,$,C??O),b=D2;let b2=typeof J==="number"?(B2)=>J:(B2)=>{let M2=U.groups[B2];if(!M2)return 0;return J(M2.key,B2)},k2=q.getSize,R2=(B2)=>{let M2=U.getEntry(B2);if(M2.type==="header"){if($.sticky!==!1&&M2.group.groupIndex===0)return 0;return b2(M2.group.groupIndex)}return k2(M2.dataIndex)};v.setSizeConfig(R2);let F2=!1,P2=-1;if(v.registerMethod("_setSizeCacheBase",(B2)=>{I=B2}),I=q.rebuild,q.rebuild=(B2)=>{if(F2){if(!n)n=w?.("_getLoadedCount")??null;let M2=n?.()??0;if(B2!==b||M2!==P2){if(b=B2,P2=M2,!C)C=w?.("_getLoadedItem")??null;if(U.rebuild(B2,C??((_2)=>v.getItems()[_2])),K.totalItems=U.totalEntries,Z)Z.refresh(),Z.update(K.scrollPosition)}}I(U.totalEntries)},q.rebuild(U.totalEntries),R(),v.setVirtualTotalFn(()=>U.totalEntries),A.classList.add(`${P}--grouped`),$.sticky!==!1){let B2=(N2,O2)=>{let y2=U.groups[O2];if(!y2)return;let W2=j(y2.key,O2);if(typeof W2==="string")N2.innerHTML=W2;else N2.replaceChildren(W2)},M2=U.getHeaderHeight(0),_2=C0(A,P,B,M2),T2=X>0?(N2)=>{let O2=a?.get(N2);return O2?O2.rowY:q.getOffset(N2)}:void 0;if(Z=c1(A,U,q,B2,P,B,0,_2,T2),Z.update(K.scrollPosition),!B)v.dom.viewport.style.height=`calc(100% - ${M2}px)`;else v.dom.viewport.style.width=`calc(100% - ${M2}px)`,v.dom.viewport.style.marginLeft=`${M2}px`}let z2=!!w?.("_updateTableForGroups");if(F2=z2,z2)queueMicrotask(()=>{let B2=w?.("_getItem")??null,M2=v.getItems.bind(v);v.setGetItemFn((T2)=>{let N2=U.getEntry(T2);if(N2.type==="header")return{id:`__group_header_${N2.group.groupIndex}`,__groupHeader:!0,groupKey:N2.group.key,groupIndex:N2.group.groupIndex};return B2?B2(N2.dataIndex):M2()[N2.dataIndex]});let _2=w?.("_updateTableForGroups");if(_2)_2((T2)=>!!T2.__groupHeader,j)});else v.setRenderFn(G2,Y2);v.registerMethod("getGroupLayout",()=>U),v.registerMethod("_dataToLayoutIndex",(B2)=>U.dataToLayoutIndex(B2)),v.registerMethod("_layoutToDataIndex",(B2)=>U.layoutToDataIndex(B2)),v.registerMethod("_getRenderedElement",(B2)=>j2.get(B2)??null),v.registerMethod("_isGroupHeader",(B2)=>{return U.getEntry(B2).type==="header"}),v.registerMethod("_getItemLane",(B2)=>{let M2=a?.get(B2);return M2?M2.col:-1}),v.registerMethod("_getItemY",(B2)=>{let M2=a?.get(B2);return M2?M2.rowY:-1}),v.registerMethod("_getItemH",(B2)=>{return a?.get(B2)?.h??-1});let c=v.config.startPadding,H2=m-c;v.registerMethod("_scrollItemIntoView",(B2)=>{if(B2<0)return;let M2=a?.get(B2),_2=M2?M2.rowY:q.getOffset(B2),T2=M2?.h??q.getSize(B2),N2=K.containerSize,O2=K.scrollPosition;if(_2<O2+c)v.scrollTo(Math.max(0,_2-c));else if(_2+T2+H2>O2+N2)v.scrollTo(_2+T2+H2-N2)}),v.registerMethod("scrollToIndex",(B2,M2="start")=>{let _2=U.dataToLayoutIndex(B2),T2=U.totalEntries;if(T2===0)return;let N2=Math.max(0,Math.min(_2,T2-1)),O2=K.containerSize,y2=a?.get(N2),W2=y2?y2.rowY:q.getOffset(N2),x=y2?y2.h??q.getSize(N2):q.getSize(N2),V2=a?y()+m:q.getTotalSize(),q2=Math.max(0,V2-O2),E2=typeof M2==="string"?M2:M2.align??"start",w2=typeof M2==="object"?M2.behavior:void 0,X2=typeof M2==="object"?M2.duration:void 0,t=a?m:0,L2=W2+x;if(o&&k){let C2=U.getEntry(N2).group.groupIndex,h2=k[C2];if(h2!==void 0)L2=h2}let v2;switch(E2){case"center":v2=W2-(O2-x)/2;break;case"end":v2=L2-O2+t;break;default:v2=W2}if(v2=Math.max(0,Math.min(v2,q2)),w2==="smooth"&&X2&&X2>0)v.smoothScrollTo(v2,X2);else v.scrollTo(v2)}),v.registerDestroyHandler(()=>{for(let[,B2]of j2)B2.remove();if(j2.clear(),S.clear(),Z)Z.destroy(),Z=null;A.classList.remove(`${P}--grouped`)})},hooks:{onAfterScroll(v,U2){if(Z)Z.update(v)},onResize(v,U2){if(X<=0)return;I(U.totalEntries),$2=K.crossSize,R();let Q2=y();if(_?.(Q2),Z)Z.refresh(),Z.update(K.scrollPosition);V=!0,G2()}},destroy(){if(Z)Z.destroy(),Z=null;j2.clear(),S.clear(),l.clear()}}}var l1=($,J=50,Q=1/0,j=!0,U="none")=>{let Z=$,q=[],K=0,D=0,N=()=>{q=Z.map((G,Y)=>({def:G,index:Y,width:0,minWidth:b4(G.minWidth??J,1),maxWidth:G.maxWidth??Q,resizable:G.resizable??j,offset:0}))},_=()=>{if(U==="none"||K<=0||K>=D)return;if(U==="spacer"){K=D;return}let G=D-K,Y=K;for(let w=0;w<q.length;w++){let L=q[w];L.width=_0(L.width+G*(L.width/Y),L.minWidth,L.maxWidth)}F()},A=(G)=>{if(D=G,q.length===0){K=0;return}let Y=0,w=0;for(let L=0;L<q.length;L++){let X=q[L],h=X.def;if(h.width!==void 0)X.width=_0(h.width,X.minWidth,X.maxWidth),Y+=X.width;else w++}if(w){let X=Math.max(0,G-Y)/w;for(let h=0;h<q.length;h++){let u=q[h];if(u.def.width===void 0)u.width=_0(X,u.minWidth,u.maxWidth)}}F(),_()},F=()=>{let G=0;for(let Y=0;Y<q.length;Y++){let w=q[Y];w.offset=G,G+=w.width}K=G},O=(G,Y)=>{if(G<0||G>=q.length)return 0;let w=q[G];if(!w.resizable)return w.width;let L=_0(Y,w.minWidth,w.maxWidth);if(w.width=L,F(),U==="spacer")_();return L},C=(G)=>{return q[G]},B=(G)=>{if(q.length===0)return;if(G<0)return q[0];if(G>=K)return q[q.length-1];let Y=0,w=q.length-1;while(Y<w){let L=Y+w>>>1,X=q[L];if(G<X.offset)w=L-1;else if(G>=X.offset+X.width)Y=L+1;else return X}return q[Y]},P=(G)=>{if(G<0||G>=q.length)return 0;return q[G].offset},M=(G)=>{if(G<0||G>=q.length)return 0;return q[G].width},T=(G)=>{Z=G,N()};return N(),{get columns(){return q},get totalWidth(){return K},resolve:A,updateColumns:T,resizeColumn:O,getColumn:C,getColumnAtX:B,getColumnOffset:P,getColumnWidth:M}},_0=($,J,Q)=>Math.min(Q,Math.max(J,$)),b4=($,J)=>Math.max(J,$);var r1=($,J,Q,j,U,Z)=>{let q=document.createElement("div");q.setAttribute("role","rowgroup");let K=document.createElement("div");K.className=`${Q}-table-header`,K.setAttribute("role","row"),K.setAttribute("aria-rowindex","1"),K.style.height=`${J}px`;let D=document.createElement("div");D.className=`${Q}-table-header-scroll`,D.setAttribute("role","presentation"),K.appendChild(D),q.appendChild(K),$.insertBefore(q,$.firstChild),$.style.setProperty("--vlist-table-header-height",`${J}px`);let N=[],_=[],A=!0,F=null,O="asc",C=null,B=!1,P=-1,M=0,T=0,G=0,Y=(z,f)=>{let V=document.createElement("div");V.className=`${Q}-table-header-cell`,V.setAttribute("role","columnheader"),V.setAttribute("aria-colindex",String(f+1)),V.setAttribute("tabindex",f===0?"0":"-1"),V.dataset.columnKey=z.def.key;let b=z.def.align;if(b==="center")V.classList.add(`${Q}-table-header-cell--center`);else if(b==="right")V.classList.add(`${Q}-table-header-cell--right`);let i=document.createElement("div");i.className=`${Q}-table-header-content`;let n=z.def.header?z.def.header(z.def):z.def.label;if(typeof n==="string")i.textContent=n;else i.appendChild(n);if(V.appendChild(i),z.def.sortable){let I=document.createElement("span");I.className=`${Q}-table-header-sort`,I.setAttribute("aria-hidden","true"),V.appendChild(I),_.push(I),V.classList.add(`${Q}-table-header-cell--sortable`)}else _.push(null);if(z.resizable){let I=document.createElement("div");I.className=`${Q}-table-header-resize`,I.dataset.resizeIndex=String(f),V.appendChild(I)}return V},w=(z)=>{C=z,D.textContent="",N=[],_=[];let f=z.columns;for(let V=0;V<f.length;V++){let b=f[V],i=Y(b,V);N.push(i),D.appendChild(i)}if(L(z),F)X(F,O)},L=(z)=>{C=z;let f=z.columns;D.style.width=`${z.totalWidth}px`;for(let V=0;V<N.length&&V<f.length;V++){let b=N[V],i=f[V];b.style.width=`${i.width}px`}},X=(z,f)=>{if(F=z,O=f,!C)return;let V=C.columns;for(let b=0;b<_.length&&b<V.length;b++){let i=_[b];if(!i)continue;if(V[b].def.key===z)i.textContent=f==="asc"?"▲":"▼",i.style.opacity="0.7",N[b].setAttribute("aria-sort",f==="asc"?"ascending":"descending");else i.textContent="",i.style.opacity="0",N[b].removeAttribute("aria-sort")}},h=(z)=>{D.style.transform=`translateX(${-z}px)`},u=(z)=>{let f=z.target;if(!f.dataset.resizeIndex)return;if(z.preventDefault(),z.stopPropagation(),P=+f.dataset.resizeIndex,!C)return;let V=C.getColumn(P);if(!V?.resizable)return;B=!0,M=z.clientX,T=V.width,$.classList.add(`${Q}--col-resizing`),$.style.cursor="col-resize",f.classList.add(`${Q}-table-header-resize--active`),f.setPointerCapture(z.pointerId),f.addEventListener("pointermove",E),f.addEventListener("pointerup",m),f.addEventListener("pointercancel",m)},E=(z)=>{if(!B||!C)return;let f=z.clientX-M;if(Math.abs(f)<1)return;let V=Math.max(0,T+f);j(P,V)},m=(z)=>{if(!B)return;let f=z.target;f.removeEventListener("pointermove",E),f.removeEventListener("pointerup",m),f.removeEventListener("pointercancel",m);try{f.releasePointerCapture(z.pointerId)}catch{}f.classList.remove(`${Q}-table-header-resize--active`),$.classList.remove(`${Q}--col-resizing`),$.style.cursor="",B=!1,P=-1},o=(z)=>{let f=z.target;if(f.dataset.resizeIndex)return;if(B)return;let V=f;while(V&&!V.dataset.columnKey)if(V=V.parentElement,V===K||V===null)return;let b=V.dataset.columnKey;if(!C)return;let i=C.columns,n=-1;for(let H=0;H<i.length;H++)if(i[H].def.key===b){n=H;break}if(n===-1)return;let I=i[n];if(Z)Z({key:b,index:n,event:z});if(I.def.sortable&&U){let H;if(F===b)H=O==="asc"?"desc":null;else H="asc";U({key:b,index:n,direction:H})}},g=(z)=>{if(z<0||z>=N.length)return;N[G]?.setAttribute("tabindex","-1"),G=z;let f=N[G];f.setAttribute("tabindex","0"),f.focus()},j2=(z)=>{let f=z.key;if(f==="ArrowRight"){if(z.ctrlKey||z.metaKey){if(!C)return;let V=C.getColumn(G);if(V?.resizable)j(G,V.width+10),z.preventDefault()}else if(G<N.length-1)g(G+1),z.preventDefault();z.stopPropagation();return}if(f==="ArrowLeft"){if(z.ctrlKey||z.metaKey){if(!C)return;let V=C.getColumn(G);if(V?.resizable)j(G,V.width-10),z.preventDefault()}else if(G>0)g(G-1),z.preventDefault();z.stopPropagation();return}if(f==="Home"){g(0),z.preventDefault(),z.stopPropagation();return}if(f==="End"){g(N.length-1),z.preventDefault(),z.stopPropagation();return}if(f==="Enter"||f===" "){if(!C)return;let V=C.getColumn(G);if(V?.def.sortable&&U){let b;if(F===V.def.key)b=O==="asc"?"desc":null;else b="asc";U({key:V.def.key,index:G,direction:b}),z.preventDefault()}z.stopPropagation();return}if(f==="ArrowDown"){$.focus(),z.preventDefault(),z.stopPropagation();return}};return K.addEventListener("pointerdown",u),K.addEventListener("click",o),K.addEventListener("keydown",j2),{element:K,update:L,updateSort:X,rebuild:w,show:()=>{if(A)return;A=!0,K.style.display=""},hide:()=>{if(!A)return;A=!1,K.style.display="none"},destroy:()=>{K.removeEventListener("pointerdown",u),K.removeEventListener("click",o),K.removeEventListener("keydown",j2),$.style.removeProperty("--vlist-table-header-height"),q.remove(),N=[],_=[],C=null,A=!1},syncScroll:h}};var P4=()=>{let $=[];return{acquire:()=>$.pop()||document.createElement("div"),release:(J)=>{if(J.parentNode?.removeChild(J),$.length<200)J.className="",J.removeAttribute("data-id"),J.removeAttribute("data-index"),J.removeAttribute("aria-selected"),J.removeAttribute("aria-rowindex"),J.removeAttribute("role"),J.style.cssText="",J.textContent="",$.push(J)},clear:()=>{$.length=0}}},s1=($,J,Q,j,U,Z,q,K,D,N=()=>0)=>{let _=P4(),A=new Map,F=-1,O=Q,C=null,B=null,P=null,M=(k,R)=>{B=k,P=R},T=(k,R)=>{R?k.setAttribute("aria-selected","true"):k.removeAttribute("aria-selected")},G=(k,R,y,s)=>{k.setAttribute("role",R),k.setAttribute("data-id",String(y)),k.setAttribute("data-index",String(s))},Y=(k)=>String(k).startsWith("__placeholder_"),w=`${U}-item ${U}-table-row`,L=`${U}-item--selected`,X=`${U}-item--focused`,h=`${U}-table-cell`,u=`${U}-table-cell--center`,E=`${U}-table-cell--right`,m=`${U}-table-cell-skeleton`,o=`${U}-item--odd`,g=`${U}-item--placeholder`,j2=`${U}-item--replaced`,S=`${U}-table-row ${U}-table-group-header`,l=`${U}-table-group-header-content`,r=(k,R,y,s,Z2=!1)=>{if(y.def.cell){let J2=y.def.cell(R,y.def,s);if(typeof J2==="string")k.innerHTML=J2;else k.replaceChildren(J2)}else{let J2=R[y.def.key],e=J2!=null?String(J2):"";if(Z2&&e)k.innerHTML=`<span>${e}</span>`;else k.textContent=e}if(Z2&&k.firstElementChild===null){k.replaceChildren();let J2=document.createElement("span");J2.className=m,k.appendChild(J2)}},z=(k,R,y,s,Z2=!1)=>{let J2=w;if(K){if(C){let e=C(R);if(e>=0&&(e&1)===1)J2+=` ${o}`}else if((R&1)===1)J2+=` ${o}`}if(Z2)J2+=` ${g}`;if(y)J2+=` ${L}`;if(s)J2+=` ${X}`;k.className=J2},f=(k,R)=>{let y=R.def.align;if(y==="center")k.classList.add(u),k.classList.remove(E);else if(y==="right")k.classList.add(E),k.classList.remove(u);else k.classList.remove(u,E)},V=(k,R)=>{let s=O.columns.length;if(R.length===s)return R;let Z2=[];for(let J2=0;J2<s;J2++){let e;if(J2<R.length)e=R[J2];else e=document.createElement("div"),e.className=h,k.appendChild(e);Z2.push(e)}for(let J2=s;J2<R.length;J2++)R[J2].remove();return Z2},b=(k,R,y)=>{let s=_.acquire(),Z2=k,J2=y.getSize(R),e=y.getOffset(R)-N();s.style.cssText=`width:${O.totalWidth}px;height:${J2}px;transform:translateY(${e}px)`,s.className=S,G(s,"presentation",k.id,R),s.removeAttribute("aria-selected"),s.removeAttribute("aria-rowindex"),s.replaceChildren();let K2=document.createElement("div");if(K2.className=l,P){let $2=P(Z2.groupKey,Z2.groupIndex);if(typeof $2==="string")K2.innerHTML=$2;else K2.appendChild($2)}return s.appendChild(K2),{element:s,cells:[],index:R,isGroupHeader:!0,_lastItem:k,lastItemId:k.id,lastSelected:!1,lastFocused:!1,lastOffset:e,lastHeight:J2}},i=(k,R,y,s,Z2)=>{let J2=_.acquire(),e=Z2.getSize(R),K2=Z2.getOffset(R)-N(),$2=Y(k.id);J2.style.cssText=`width:${O.totalWidth}px;height:${e}px;transform:translateY(${K2}px)`,z(J2,R,y,s,$2),G(J2,"row",k.id,R),J2.id=`${Z}-item-${R}`,J2.setAttribute("aria-rowindex",String(R+2)),T(J2,y);let A2=V(J2,[]),G2=O.columns;for(let Y2=0;Y2<A2.length&&Y2<G2.length;Y2++){let v=A2[Y2],U2=G2[Y2];v.style.cssText=`left:${U2.offset}px;width:${U2.width}px`,v.setAttribute("role","gridcell"),v.setAttribute("aria-colindex",String(Y2+1)),f(v,U2),r(v,k,U2,R,$2)}return{element:J2,cells:A2,index:R,isGroupHeader:!1,_lastItem:k,lastItemId:k.id,lastSelected:y,lastFocused:s,lastOffset:K2,lastHeight:e}},n=(k,R,y,s)=>{let Z2=!1,J2=q();if(J2!==F)F=J2,Z2=!0;let e=null,K2=J();C=typeof K==="string"&&D?D():null;for(let $2=R.start;$2<=R.end;$2++){let A2=$2-R.start,G2=k[A2];if(!G2)continue;let Y2=y.has(G2.id),v=$2===s,U2=B?B(G2):!1,Q2=A.get($2);if(Q2){if(Q2.isGroupHeader!==U2){_.release(Q2.element),A.delete($2);let D2=U2?b(G2,$2,K2):i(G2,$2,Y2,v,K2);if(A.set($2,D2),!e)e=document.createDocumentFragment();e.appendChild(D2.element);continue}if(U2){if(Q2._lastItem!==G2){let R2=G2,F2=Q2.element.firstElementChild;if(F2&&P){let P2=P(R2.groupKey,R2.groupIndex);if(typeof P2==="string")F2.innerHTML=P2;else F2.replaceChildren(P2)}Q2.element.setAttribute("data-id",String(G2.id)),Q2._lastItem=G2,Q2.lastItemId=G2.id}let b2=K2.getOffset($2)-N();if(Q2.lastOffset!==b2)Q2.lastOffset=b2,Q2.element.style.transform=`translateY(${b2}px)`;let k2=K2.getSize($2);if(Q2.lastHeight!==k2)Q2.lastHeight=k2,Q2.element.style.height=`${k2}px`}else{let D2=Q2._lastItem!==G2,b2=Q2.lastSelected!==Y2,k2=Q2.lastFocused!==v;if(D2){let P2=Q2.lastItemId!=null&&Y(Q2.lastItemId),z2=Y(G2.id);if(!z2&&t2(y,$2,G2.id))Y2=!0;let c=O.columns;for(let H2=0;H2<Q2.cells.length&&H2<c.length;H2++)r(Q2.cells[H2],G2,c[H2],$2,z2);if(z(Q2.element,$2,Y2,v,z2),Q2.element.setAttribute("data-id",String(G2.id)),T(Q2.element,Y2),P2&&!z2)Q2.element.classList.add(j2),setTimeout(()=>{Q2.element.classList.remove(j2)},300);Q2._lastItem=G2,Q2.lastItemId=G2.id,Q2.lastSelected=Y2,Q2.lastFocused=v}else if(b2||k2)z(Q2.element,$2,Y2,v,Y(G2.id)),T(Q2.element,Y2),Q2.lastSelected=Y2,Q2.lastFocused=v;let R2=K2.getOffset($2)-N();if(Q2.lastOffset!==R2)Q2.lastOffset=R2,Q2.element.style.transform=`translateY(${R2}px)`;let F2=K2.getSize($2);if(Q2.lastHeight!==F2)Q2.lastHeight=F2,Q2.element.style.height=`${F2}px`;if(Z2)Q2.element.setAttribute("aria-rowindex",String($2+2))}}else{if(t2(y,$2,G2.id))Y2=!0;let D2=U2?b(G2,$2,K2):i(G2,$2,Y2,v,K2);if(A.set($2,D2),!e)e=document.createDocumentFragment();e.appendChild(D2.element)}}if(e)$.appendChild(e);for(let[$2,A2]of A)if($2<R.start||$2>R.end)_.release(A2.element),A.delete($2)},I=(k,R,y,s)=>{let Z2=A.get(k);if(!Z2)return;if(Z2.isGroupHeader)return;let J2=O.columns;for(let e=0;e<Z2.cells.length&&e<J2.length;e++)r(Z2.cells[e],R,J2[e],k);Z2.element.setAttribute("data-id",String(R.id)),Z2._lastItem=R,Z2.lastItemId=R.id,z(Z2.element,k,y,s),T(Z2.element,y),Z2.lastSelected=y,Z2.lastFocused=s},H=(k,R,y)=>{let s=A.get(k);if(!s)return;if(s.isGroupHeader)return;let Z2=s.lastSelected!==R,J2=s.lastFocused!==y;if(Z2||J2)z(s.element,k,R,y),T(s.element,R),s.lastSelected=R,s.lastFocused=y},d=(k)=>{O=k;let R=k.columns;for(let[,y]of A)if(y.element.style.width=`${k.totalWidth}px`,y.cells.length>0)for(let s=0;s<y.cells.length&&s<R.length;s++){let Z2=y.cells[s],J2=R[s];Z2.style.left=`${J2.offset}px`,Z2.style.width=`${J2.width}px`}},p=(k)=>{return A.get(k)?.element},a=()=>{for(let[,k]of A)_.release(k.element);A.clear(),F=-1};return{render:n,updateItem:I,updateItemClasses:H,getElement:p,updateColumnLayout:d,setGroupHeaderFn:M,clear:a,destroy:()=>{a(),_.clear()}}};var w4=new Set;function h0($){if(!$.columns?.length)throw Error("[vlist] table: columns must be a non-empty array");if($.rowHeight===void 0&&$.estimatedRowHeight===void 0)throw Error("[vlist] table: either rowHeight or estimatedRowHeight is required");let J=null,Q=null,j=null,U,Z,q=null,K=null,D=null,N=!1,_=-1,A=-1,F=null,O=!1;function C(){if(N||!q)return;N=!0,K=q.getMethod("_getSelectedIds")??null,D=q.getMethod("_getFocusedIndex")??null}let B=[],P={start:0,end:0};function M(){if(U.destroyed||!q||!j||!J)return;let{containerSize:G,totalItems:Y}=U;if(G<=0||Y===0)return;let w=Y+1;if(w!==_)_=w,q.dom.root.setAttribute("aria-rowcount",`${w}`);let L=U.scrollPosition,X=q.config.overscan,h=Z.indexAtOffset(L),u=Z.indexAtOffset(L+G);if(u<Y-1)u++;h=Math.max(0,h),u=Math.min(Y-1,u);let E=Math.max(0,h-X),m=Math.min(Y-1,u+X);if(E===U.prevRangeStart&&m===U.prevRangeEnd&&!U.renderPending)return;C();let o=K?.()??w4,g=D?.()??-1;B.length=0;for(let S=E;S<=m;S++){let l=q.getItem(S);if(l)B.push(l)}if(P.start=E,P.end=m,j.render(B,P,o,g),U.prevRangeStart=E,U.prevRangeEnd=m,U.renderPending=!1,!O)O=!0,F=q.getMethod?.("_layoutToDataIndex")??null;if(F){let S=F,l=-1;for(let z=E;z<=m;z++){let f=S(z);if(f>=0){l=f;break}}let r=-1;for(let z=m;z>=E;z--){let f=S(z);if(f>=0){r=f;break}}U.startIndex=l<0?E:l,U.visibleCount=l<0?0:r-l+1}else U.startIndex=E,U.visibleCount=m-E+1;let j2=Z.getTotalSize();if(j2!==A)A=j2,q.updateContentSize(j2)}function T(){if(U.destroyed)return;A=-1,U.prevRangeStart=-1,U.prevRangeEnd=-1,U.renderPending=!0,M()}return{name:"table",priority:10,conflicts:["grid","masonry"],setup(G){q=G,U=G.getState(),Z=G.sizeCache;let{dom:Y,config:w,emitter:L}=G,{classPrefix:X}=w;if(w.axis.primary==="x")throw Error("[vlist] table: cannot be used with horizontal orientation");if(w.reverse)throw Error("[vlist] table: cannot be used with reverse mode");let h=$.resizable??!0,u=$.minColumnWidth??50,E=$.maxColumnWidth??1/0,m=$.fillWidth===!1?"none":$.fillWidth===!0?"stretch":$.fillWidth??"spacer",o=$.rowBorders??!0,g=$.rowHeight,j2=$.headerHeight??(typeof g==="number"?g:40),S=$.sort?.key??null,l=$.sort?.direction??"asc";if(J=l1($.columns,u,E,h,m),typeof g==="function"||typeof g==="number")G.setSizeConfig(g);if(G.rebuildSizeCache(),Y.root.classList.add(`${X}--table`),o)Y.root.classList.add(`${X}--table-row-borders`);if($.columnBorders)Y.root.classList.add(`${X}--table-col-borders`);queueMicrotask(()=>{if(G.getMethod("_getSelectedIds"))Y.root.setAttribute("tabindex","0")}),Y.root.setAttribute("role","grid"),Y.root.setAttribute("aria-colcount",`${$.columns.length}`),Y.viewport.setAttribute("role","none"),Y.content.setAttribute("role","rowgroup");let r=U.crossSize;J.resolve(r);let z=()=>{if(!J)return;Y.content.style.minWidth=`${J.totalWidth}px`},f=(I,H)=>{if(!J)return;let d=J.getColumn(I);if(!d)return;let p=d.width,a=J.resizeColumn(I,H);Q?.update(J),j?.updateColumnLayout(J),z(),L.emit("column:resize",{key:d.def.key,index:I,previousWidth:p,width:a})},V=(I)=>{S=I.direction===null?null:I.key,l=I.direction??"asc",Q?.updateSort(S,l),L.emit("column:sort",I)};if(Q=r1(Y.root,j2,X,f,V),Q.rebuild(J),S)Q.updateSort(S,l);z(),j=s1(Y.content,()=>Z,J,$.columns,X,X,()=>U.totalItems,w.striped||void 0,void 0,()=>U.baseOffset),G.setRenderFn(M,T);let b=Q,i=-1,n=()=>{let I=Y.viewport.scrollLeft;if(I!==i)i=I,b?.syncScroll?.(I)};Y.viewport.addEventListener("scroll",n,{passive:!0}),G.registerMethod("updateColumns",(I)=>{if(!J||!Q)return;if(J.updateColumns(I),J.resolve(U.crossSize),Q.rebuild(J),S)Q.updateSort(S,l);z(),j?.updateColumnLayout(J),j?.clear(),G.forceRender()}),G.registerMethod("resizeColumn",(I,H)=>{if(!J)return;let d;if(typeof I==="string"){let p=J.columns;d=-1;for(let a=0;a<p.length;a++)if(p[a].def.key===I){d=a;break}if(d===-1)return}else d=I;f(d,H)}),G.registerMethod("getColumnWidths",()=>{if(!J)return{};let I={},H=J.columns;for(let d=0;d<H.length;d++)I[H[d].def.key]=H[d].width;return I}),G.registerMethod("setSort",(I,H)=>{S=I,l=H??"asc",Q?.updateSort(S,l)}),G.registerMethod("getSort",()=>{return{key:S,direction:l}}),G.registerMethod("_getTableLayout",()=>J),G.registerMethod("_getTableHeaderHeight",()=>j2),G.registerMethod("_updateRenderedItem",(I,H,d,p)=>{j?.updateItem(I,H,d,p)}),G.registerMethod("_replaceTableRenderer",(I)=>{j=I}),G.registerMethod("_updateTableForGroups",(I,H)=>{j?.setGroupHeaderFn(I,H)}),G.registerMethod("_updateItemClasses",(I,H,d)=>{j?.updateItemClasses(I,H,d)}),G.registerKeydownHandler((I)=>{if(I.key!=="ArrowLeft"&&I.key!=="ArrowRight")return;if(!J)return;let H=J.columns;if(H.length===0)return;let d=Y.viewport.clientWidth;if(J.totalWidth<=d)return;let p=Y.viewport.scrollLeft;if(I.key==="ArrowRight"){for(let a=0;a<H.length;a++)if(H[a].offset>p+1){Y.viewport.scrollLeft=H[a].offset,I.preventDefault();return}}else{for(let a=H.length-1;a>=0;a--)if(H[a].offset<p-1){Y.viewport.scrollLeft=H[a].offset,I.preventDefault();return}if(p>0)Y.viewport.scrollLeft=0,I.preventDefault()}}),G.registerDestroyHandler(()=>{Y.viewport.removeEventListener("scroll",n),Q?.destroy(),Q=null,j?.destroy(),j=null,Y.content.style.minWidth="",Y.root.classList.remove(`${X}--table`),Y.root.classList.remove(`${X}--table-row-borders`),Y.root.classList.remove(`${X}--table-col-borders`),Y.root.removeAttribute("role"),Y.root.removeAttribute("aria-colcount"),Y.root.removeAttribute("aria-rowcount"),Y.root.removeAttribute("tabindex"),Y.viewport.removeAttribute("role"),Y.content.removeAttribute("role")})},hooks:{onResize(G,Y){if(!J||!q)return;let w=U.crossSize;if(J.resolve(w),Q?.update(J),j?.updateColumnLayout(J),J)q.dom.content.style.minWidth=`${J.totalWidth}px`},onAfterScroll(){if(!q||!Q)return;Q?.syncScroll?.(q.dom.viewport.scrollLeft)}},destroy(){Q?.destroy(),Q=null,j?.destroy(),j=null,q=null}}}function I0($){let J=$?.handle??null,Q=$?.ghostClass??"vlist-sort-ghost",j=$?.shiftDuration??150,U=$?.edgeScrollZone??40,Z=$?.edgeScrollSpeed??20,q=$?.dragThreshold??5,K=$?.ghostContainer??null,D,N,_=null,A,F,O,C,B,P,M,T,G,Y,w=!1,L=-1,X=-1,h=0,u=0,E=0,m=0,o=!1,g=null,j2=0,S=null,l=0,r=0,z=0,f=null,V=!1,b="",i=-1,n=-1,I=[],H="",d=null,p=null,a="",W=!1,k=(x)=>{return x.closest("[data-index]")},R=(x)=>{let V2=x.dataset.index;return V2===void 0?-1:+V2},y=(x)=>{let V2=x.getBoundingClientRect(),q2=x.cloneNode(!0);return q2.className=`${C}-item ${Q}`,q2.removeAttribute("data-index"),q2.style.cssText=`position:fixed;pointer-events:none;z-index:10000;width:${V2.width}px;height:${V2.height}px;left:${V2.left}px;top:${V2.top}px;transition:none;will-change:transform`,(K||document.body).appendChild(q2),q2},s=()=>{if(!g)return;g.style.left=`${E-r}px`,g.style.top=`${m-z}px`},Z2=()=>{let x=D.totalItems;if(x===0)return 0;let V2=F.getBoundingClientRect(),q2=D.scrollPosition,E2=B?E-r-V2.left+F.scrollLeft+q2:m-z-V2.top+q2,w2=E2+l,X2=N.getOffset(L)+N.getSize(L);if(w2>X2){let L2=N.indexAtOffset(w2),v2=N.getOffset(L2)+N.getSize(L2)/2,C2=w2>v2?L2:L2-1;return Math.min(Math.max(C2,L),x-1)}let t=N.getOffset(L);if(E2<t){let L2=N.indexAtOffset(E2),v2=N.getOffset(L2)+N.getSize(L2)/2,C2=E2<v2?L2:L2+1;return Math.max(Math.min(C2,L),0)}return L},J2=()=>{let x=A.children,V2=l;for(let q2=0;q2<x.length;q2++){let E2=x[q2],w2=R(E2);if(w2<0||w2===L)continue;let X2=0;if(X>L){if(w2>L&&w2<=X)X2=-V2}else if(X<L){if(w2>=X&&w2<L)X2=V2}let t=N.getOffset(w2),L2=Math.round(t+X2);E2.style.transition=M,E2.style.transform=`${P}(${L2}px)`}},e=()=>{let x=A.children;for(let V2=0;V2<x.length;V2++){let q2=x[V2],E2=R(q2);if(E2>=0)q2.style.transform=`${P}(${Math.round(N.getOffset(E2))}px)`;q2.style.transition=""}},K2=()=>{if(!_)return;let x=Z2();if(x===X)return;X=x,J2(),_.emitter.emit("sort:move",{fromIndex:L,currentIndex:X})},$2=()=>{let x=F.getBoundingClientRect();if(B)return E<x.left||E>x.right;return m<x.top||m>x.bottom},A2=()=>{let x=_?.getMethod("_getFocusedIndex");return x?x():-1},G2=(x)=>{let V2=_?.getMethod("_focusById");if(V2)V2(x)},Y2=(x)=>{if(!_)return;let V2=B?F.clientWidth:F.clientHeight,q2=D.scrollPosition,E2=N.getOffset(x),w2=E2+N.getSize(x);if(E2<q2)_.scrollTo(Math.max(0,E2));else if(w2>q2+V2)_.scrollTo(w2-V2)},v=(x)=>{if(!p)return;p.textContent="",p.offsetHeight,p.textContent=x},U2=(x)=>{if(!_)return"";let q2=_.getItems()[x];if(!q2)return"";return A.querySelector(`[data-index="${x}"]`)?.textContent?.trim()||String(q2.id)},Q2=()=>String(D.totalItems),D2=(x)=>{let V2=A.children;for(let q2=0;q2<V2.length;q2++)V2[q2].style.transition=x},b2=()=>{let x=()=>{if(!w||!_)return;let V2=F.getBoundingClientRect(),q2=0,E2=3;if(B){let X2=E-V2.left,t=V2.right-E;if(X2<U){let L2=Math.min(E2,1-X2/U);q2=-Z*L2*L2}else if(t<U){let L2=Math.min(E2,1-t/U);q2=Z*L2*L2}}else{let X2=m-V2.top,t=V2.bottom-m;if(X2<U){let L2=Math.min(E2,1-X2/U);q2=-Z*L2*L2}else if(t<U){let L2=Math.min(E2,1-t/U);q2=Z*L2*L2}}let w2=$2();if(q2!==0){let X2=D.scrollPosition,t=N.getTotalSize()-(B?F.clientWidth:F.clientHeight);if(q2<0&&X2<=0||q2>0&&X2>=t)W=w2;else W=!0,_.scrollTo(X2+q2)}else W=w2;j2=requestAnimationFrame(x)};j2=requestAnimationFrame(x)},k2=()=>{if(j2)cancelAnimationFrame(j2),j2=0},R2=(x=!1)=>{if(w=!1,o=!1,g&&g.parentNode)g.remove();g=null,S=null;let V2=A.children;for(let E2=0;E2<V2.length;E2++){let w2=V2[E2];w2.classList.remove(Y);let X2=R(w2);if(X2>=0)w2.style.transform=`${P}(${Math.round(N.getOffset(X2))}px)`;w2.style.transition=""}k2(),O.classList.remove(T),document.body.style.cursor="";let q2=window.getSelection();if(q2)q2.removeAllRanges();if(document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),!x&&_)_.forceRender()},F2=(x,V2)=>{if(!_)return;let q2=x!==V2&&x>=0&&V2>=0,E2=()=>{if(!_)return;if(w=!1,q2){if(O.classList.add(G),_.emitter.emit("sort:end",{fromIndex:x,toIndex:V2}),f!==null)G2(f);R2(!0),requestAnimationFrame(()=>O.classList.remove(G))}else O.classList.add(G),_.emitter.emit("sort:cancel",{originalItems:[..._.getItems()]}),R2(!1),requestAnimationFrame(()=>O.classList.remove(G))};if(!g){E2();return}let w2=F.getBoundingClientRect(),X2=D.scrollPosition,t=N.getOffset(V2),L2=j>0?j:150;if(g.style.transition=`left ${L2}ms ease, top ${L2}ms ease`,B)g.style.left=`${w2.left-F.scrollLeft+t-X2}px`,g.style.top=`${w2.top}px`;else g.style.left=`${w2.left}px`,g.style.top=`${w2.top+t-X2}px`;let v2=!1,C2=()=>{if(v2)return;v2=!0,g?.removeEventListener("transitionend",C2),E2()};g.addEventListener("transitionend",C2),setTimeout(C2,L2+50)},P2=(x)=>{if(D.destroyed||!_)return;if(w)return;if(V)O2();if(x.button!==0)return;let V2=x.target;if(J){if(!V2.closest(J))return}let q2=k(V2);if(!q2)return;let E2=R(q2);if(E2<0)return;h=x.clientX,u=x.clientY,E=x.clientX,m=x.clientY,L=E2,o=!1,S=q2;let w2=q2.getBoundingClientRect();r=x.clientX-w2.left,z=x.clientY-w2.top,document.addEventListener("pointermove",z2),document.addEventListener("pointerup",c),document.addEventListener("pointercancel",B2)};function z2(x){if(!_)return;if(E=x.clientX,m=x.clientY,!o){let V2=E-h,q2=m-u;if(Math.sqrt(V2*V2+q2*q2)<q)return;if(o=!0,w=!0,X=L,O.classList.add(T),document.body.style.cursor="grabbing",l=N.getSize(L),S)g=y(S),S.classList.add(Y);let E2=A2();if(E2>=0){let X2=_.getItems()[E2];f=X2?X2.id:null}else f=null;_.emitter.emit("sort:start",{index:L}),b2()}if(w){if(x.preventDefault(),s(),!W)K2();else if($2()){if(X!==L)X=L,e()}}}function c(x){if(!o){document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),S=null;return}x.preventDefault(),document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),k2(),F2(L,X)}let H2=()=>{if(!o)return;document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),k2(),e(),F2(L,L)};function B2(){H2()}let M2=()=>{let x=A.querySelectorAll(`.${a}`);for(let V2=0;V2<x.length;V2++)x[V2].classList.remove(a)},_2=()=>{M2();let x=A.querySelector(`[data-id="${b}"]`);if(x)x.classList.add(a)},T2=(x)=>{if(!_)return;let V2=_.getItems(),q2=V2[x];if(!q2)return;V=!0,b=q2.id,i=x,n=x,I=[...V2],O.classList.add(T),_.emitter.emit("sort:start",{index:x}),_2(),v(`Grabbed ${U2(x)}. Current position ${x+1} of ${Q2()}. Use Up and Down arrow keys to move, Space to drop, Escape to cancel.`)},N2=()=>{if(!V||!_)return;V=!1;let x=n,V2=U2(x);D2("none"),O.classList.remove(T),M2(),G2(b),_.forceRender(),v(`${V2} dropped. Final position ${x+1} of ${Q2()}.`),I=[],requestAnimationFrame(()=>D2(""))},O2=()=>{if(!V||!_)return;V=!1;let x=i;if(D2("none"),O.classList.remove(T),M2(),n!==x)_.emitter.emit("sort:cancel",{originalItems:I});G2(b),_.forceRender(),Y2(x),v(`Reorder cancelled. Returned to position ${x+1} of ${Q2()}.`),I=[],requestAnimationFrame(()=>D2(""))},y2=(x)=>{if(!V||!_)return;let V2=D.totalItems,q2=n+x;if(q2<0||q2>=V2)return;let E2=n,w2=q2;D2("none"),_.emitter.emit("sort:end",{fromIndex:E2,toIndex:w2}),n=w2,G2(b),_.forceRender(),Y2(w2),_2(),v(`${U2(w2)} moved. New position ${w2+1} of ${Q2()}.`),requestAnimationFrame(()=>D2(""))},W2=(x)=>{if(D.destroyed)return;if(w){if(x.key==="Escape")x.preventDefault(),x.stopImmediatePropagation(),H2();return}if(V)switch(x.key){case" ":case"Enter":x.preventDefault(),x.stopImmediatePropagation(),N2();return;case"Escape":x.preventDefault(),x.stopImmediatePropagation(),O2();return;case"ArrowUp":case"ArrowLeft":x.preventDefault(),x.stopImmediatePropagation(),y2(-1);return;case"ArrowDown":case"ArrowRight":x.preventDefault(),x.stopImmediatePropagation(),y2(1);return;default:if(!x.key.startsWith("F")&&x.key!=="Tab")x.preventDefault(),x.stopImmediatePropagation();return}if(x.key===" "&&!x.shiftKey&&!x.ctrlKey&&!x.metaKey){let V2=A2();if(V2>=0)x.preventDefault(),x.stopImmediatePropagation(),T2(V2)}};return{name:"sortable",priority:30,conflicts:["grid","masonry","table","scale","tree"],setup(x){_=x,D=x.getState(),N=x.sizeCache,A=x.dom.content,F=x.dom.viewport,O=x.dom.root,C=x.config.classPrefix,B=x.config.axis.primary==="x",P=B?"translateX":"translateY",M=j>0?`transform ${j}ms ease`:"none",T=`${C}--sorting`,G=`${C}--settling`,Y=`${C}-item--drag-source`,a=`${C}-item--kb-sorting`,x.registerMethod("isSorting",()=>w||V),A.addEventListener("pointerdown",P2),O.addEventListener("keydown",W2),H=`${C}-sort-instructions`,d=document.createElement("div"),d.id=H,d.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",d.textContent="Press Space to reorder. Use arrow keys to move, Space to drop, Escape to cancel.",O.appendChild(d),p=document.createElement("div"),p.setAttribute("role","status"),p.setAttribute("aria-live","assertive"),p.setAttribute("aria-atomic","true"),p.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",O.appendChild(p),x.registerDestroyHandler(()=>{if(V)O2();R2(),A.removeEventListener("pointerdown",P2),O.removeEventListener("keydown",W2),d?.remove(),p?.remove()})},hooks:{onCommit(){if(!_)return;let x=A.children;for(let V2=0;V2<x.length;V2++){let q2=x[V2],E2=R(q2);if(E2<0)continue;if(q2.setAttribute("aria-roledescription","sortable item"),q2.setAttribute("aria-describedby",H),V)if(q2.getAttribute("data-id")===String(b))q2.classList.add(a);else q2.classList.remove(a);if(w)if(E2===L)q2.classList.add(Y),S=q2;else{q2.classList.remove(Y);let w2=0;if(X>L){if(E2>L&&E2<=X)w2=-l}else if(X<L){if(E2>=X&&E2<L)w2=l}let X2=Math.round(N.getOffset(E2)+w2);q2.style.transform=`${P}(${X2}px)`}}}},destroy(){if(g&&g.parentNode)g.remove();g=null,k2(),d?.remove(),p?.remove(),_=null}}}function f0($,J){let Q=[],j=J,U=new Map,Z=[];function q(){U.clear();for(let L=0;L<Q.length;L++)U.set(Q[L].id,L)}function K(L){let X=Q[L].depth,h=0;for(let u=L+1;u<Q.length;u++){if(Q[u].depth<=X)break;h++}return h}function D(L,X,h,u){for(let E=0;E<L.length;E++){let m=L[E],o=m.id,g=$(m),j2=g.length>0,S=j2&&j.has(o);if(u.push({item:m,id:o,depth:h,parentId:X,hasChildren:j2,expanded:S,childCount:g.length,siblingCount:L.length,positionInSiblings:E,isLastChild:E===L.length-1,loading:!1}),S)D(g,o,h+1,u)}}function N(L,X,h){for(let u of L){if(u.id===X)return u;let E=$(u);if(E.length>0){h?.push(u.id);let m=N(E,X,h);if(m)return m;h?.pop()}}return}function _(L,X){if(X===null)return Z;let h=N(Z,X);return h?$(h):[]}function A(L,X){let h=N(Z,X);if(!h)return!1;return N($(h),L)!==void 0}function F(L){let X=new Set;function h(u){for(let E of u){if(X.has(E.id))throw Error(`[vlist] tree: duplicate id "${E.id}"`);X.add(E.id);let m=$(E);if(m.length>0)h(m)}}h(L)}function O(L,X){if(Z=L,!X)F(L);Q.length=0,D(L,null,0,Q),q()}function C(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X];if(!h.hasChildren||h.expanded)return 0;let u=[],E=$(h.item);if(D(E,L,h.depth+1,u),u.length===0)return 0;h.expanded=!0,j.add(L);let m=X+1,o=Q.splice(m);for(let g=0;g<u.length;g++)Q.push(u[g]);for(let g=0;g<o.length;g++)Q.push(o[g]);return q(),u.length}function B(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X];if(!h.hasChildren||!h.expanded)return 0;h.expanded=!1,j.delete(L);let u=K(X);if(u>0)Q.splice(X+1,u),q();return u}function P(L){function X(h){for(let u of h){let E=$(u);if(E.length>0)j.add(u.id),X(E)}}X(L),O(L)}function M(){j.clear(),O(Z,!0)}function T(L){let X=[];if(!N(Z,L,X))return;for(let h of X)j.add(h);O(Z,!0)}function G(L,X,h){if(U.has(X.id)||N(Z,X.id))throw Error(`[vlist] tree: duplicate id "${X.id}"`);if(L===null){let g=Z,j2=h??g.length;g.splice(j2,0,X),O(Z,!0);return}let u=U.get(L);if(u===void 0)throw Error(`[vlist] tree: parent "${L}" not found`);let E=Q[u],m=$(E.item),o=h??m.length;if(m.splice(o,0,X),!E.hasChildren)E.hasChildren=!0,E.childCount=1,E.expanded=!1;else E.childCount=m.length;if(E.expanded)O(Z,!0);else q()}function Y(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X],E=K(X)+1;for(let g=X;g<X+E;g++)j.delete(Q[g].id);if(Q.splice(X,E),h.parentId!==null){let g=U.get(h.parentId);if(g!==void 0){let j2=Q[g];if(j2.childCount--,j2.childCount===0)j2.hasChildren=!1,j2.expanded=!1,j.delete(j2.id)}}let m=_(L,h.parentId),o=m.findIndex((g)=>g.id===L);if(o>=0)m.splice(o,1);return O(Z,!0),E}function w(L,X,h){if(X!==null&&A(X,L))throw Error(`[vlist] tree: cannot move "${L}" to its own descendant "${X}"`);if(L===X)throw Error(`[vlist] tree: cannot move "${L}" to itself`);let u=U.get(L);if(u===void 0)return;let E=Q[u],m=_(L,E.parentId),o=m.findIndex((g)=>g.id===L);if(o>=0)m.splice(o,1);if(X===null){let g=Z,j2=h??g.length;g.splice(j2,0,E.item)}else{let g=N(Z,X);if(!g)throw Error(`[vlist] tree: new parent "${X}" not found`);let j2=$(g),S=h??j2.length;j2.splice(S,0,E.item)}O(Z,!0)}return{flatNodes:Q,expandedIds:j,idToIndex:U,rebuild:O,expand:C,collapse:B,expandAll:P,collapseAll:M,expandTo:T,getSubtreeSize:K,addChild:G,removeNode:Y,moveNode:w,get totalVisible(){return Q.length},get rootItems(){return Z}}}var z4=()=>[];function y4($){let{children:J,parentId:Q}=$;if(Q!==void 0)return z4;if(J===void 0||J==="children")return(j)=>j.children??[];if(typeof J==="string"){let j=J;return(U)=>U[j]??[]}return J}function v4($){let{label:J}=$;if(J===void 0)return(Q)=>{let j=Q;return String(j.name??j.label??j.title??Q.id)};if(typeof J==="string"){let Q=J;return(j)=>String(j[Q]??j.id)}return J}function C4($,J,Q){let{expanded:j}=$,U=new Set;if(j===void 0||j===!1)return U;if(Array.isArray(j)){for(let K of j)U.add(K);return U}let Z=j===!0?null:j;function q(K){for(let D of K){let N=Q(D);if(N.length>0){if(!Z||Z(D))U.add(D.id);q(N)}}}return q(J),U}function o1($,J){let{parentId:Q}=J;if(Q===void 0)throw Error("[vlist] tree: parentId not set");let j=typeof Q==="string"?(K)=>K[Q]??null:Q,U=(K)=>j(K)??null,Z=new Map,q=new Map;for(let K of $){q.set(K.id,K);let D=U(K),N=Z.get(D);if(!N)N=[],Z.set(D,N);N.push(K)}for(let K of $){let D=U(K);if(D!==null&&D!==void 0&&!q.has(D))console.warn(`[vlist] tree: orphaned node "${K.id}" — parentId "${D}" not found`)}return{roots:Z.get(null)??[],getChildren:(K)=>{let D=Z.get(K.id);if(!D)D=[],Z.set(K.id,D);return D}}}var g2={selected:!1,focused:!1},r2={depth:0,expanded:!1,hasChildren:!1,isLeaf:!0,isLastChild:!1,loading:!1};g2.tree=r2;function p0($){let J=$??{},Q=J.indent??24,j=J.paddingStart??0,U=J.expandOnClick??!1,Z=J.connectorLines??!1,q=J.parentId!==void 0,K,D,N,_,A,F,O,C,B,P,M=null,T,G,Y,w,L,X,h,u,E,m,o=new Map,g=-1,j2=-1,S=-1,l=!0,r=null,z=!1,f,V=-1,b=!1,i=!1,n="",I=null;function H(){if(i){let c=T("_getFocusedIndex");return c?c():-1}return b?V:-1}let d,p,a;function W(){if(p!==void 0)return;d=T("select")??null,p=T("_focusById")??null,a=T("_isFollowFocus")??null}function k(c){if(c<0||c>=K.totalVisible)return;let H2=K.flatNodes[c];if(!H2)return;if(i){if(W(),p)p(H2.id);if(a?.()&&d)d(H2.id);else s();R(c)}else V=c,b=!0,A.setAttribute("aria-activedescendant",`${B}-item-${c}`),R(c),s()}function R(c){let H2=D.getOffset(c),B2=D.getSize(c),M2=N.scrollPosition,_2=N.containerSize;if(H2<M2)y(H2);else if(H2+B2>M2+_2)y(H2-_2+B2)}let y,s,Z2;function J2(c){return C?`translate(${Math.round(c)}px, 0)`:`translate(0, ${Math.round(c)}px)`}function e(c){if(c===S)return;S=c,A.style[C?"width":"height"]=c+"px"}function K2(){o.forEach((c)=>{c.remove(),_.release(c)}),o.clear()}let $2=0;function A2(){let c=Z2();if(c===r&&c.length===$2)return;if(r=c,$2=c.length,q){let{roots:H2,getChildren:B2}=o1(c,J),M2=J.loadChildren?(_2)=>v.get(_2.id)??B2(_2):B2;K=f0(M2,K.expandedIds),K.rebuild(H2,!0)}else K.rebuild(c,!0);G2(),K2()}function G2(){N.totalItems=K.totalVisible,f(K.totalVisible);let c=D.getTotalSize();e(c);let H2=T("_scrollbar:getInstance");if(H2)H2()?.updateBounds(c,N.containerSize)}function Y2(){G2(),K2(),s()}let v=new Map,U2=new Set;async function Q2(c){if(!J.loadChildren||U2.has(c))return;let H2=K.idToIndex.get(c);if(H2===void 0)return;let B2=K.flatNodes[H2];U2.add(c),B2.loading=!0,queueMicrotask(()=>s());try{let M2=await J.loadChildren(B2.item);U2.delete(c);let _2=K.idToIndex.get(c);if(_2===void 0)return;let T2=K.flatNodes[_2];if(T2.loading=!1,v.set(c,M2),T2.hasChildren=M2.length>0,T2.childCount=M2.length,M2.length>0)T2.expanded=!0,K.expandedIds.add(c),K.rebuild(K.rootItems);Y2(),G.emit("tree:load",{id:c,item:T2.item,children:M2})}catch(M2){U2.delete(c),v.set(c,[]);let _2=K.idToIndex.get(c);if(_2!==void 0)K.flatNodes[_2].loading=!1;s(),G.emit("tree:load:error",{id:c,item:B2.item,error:M2})}}function D2(c){let H2=K.idToIndex.get(c);if(H2===void 0)return;let B2=K.flatNodes[H2];if(J.loadChildren&&!B2.hasChildren&&!B2.loading){if(!v.has(c)){Q2(c);return}}if(K.expand(c)===0)return;Y2(),G.emit("tree:expand",{id:c,item:B2.item,depth:B2.depth})}function b2(c){let H2=K.idToIndex.get(c);if(H2===void 0)return;let B2=K.flatNodes[H2],M2=K.collapse(c);if(M2===0)return;if(!i&&V>H2){if(V<=H2+M2)V=H2;else V-=M2;if(b)A.setAttribute("aria-activedescendant",`${B}-item-${V}`)}Y2(),G.emit("tree:collapse",{id:c,item:B2.item,depth:B2.depth})}function k2(c,H2,B2,M2){let{depth:_2,expanded:T2,hasChildren:N2,loading:O2,siblingCount:y2,positionInSiblings:W2,isLastChild:x,id:V2}=H2;if(c.className=w,T2)c.classList.add(L);if(!N2)c.classList.add(X);if(O2)c.classList.add(h);if(Z&&x)c.classList.add(u);if(c.setAttribute("role","treeitem"),c.setAttribute("data-index",String(B2)),c.setAttribute("data-id",String(V2)),c.id=`${B}-item-${B2}`,c.setAttribute("aria-level",String(_2+1)),c.setAttribute("aria-setsize",String(y2)),c.setAttribute("aria-posinset",String(W2+1)),N2)c.setAttribute("aria-expanded",String(T2));else c.removeAttribute("aria-expanded");if(c.style.paddingLeft=`${j+_2*Q}px`,c.style.setProperty("--vlist-tree-depth",String(_2)),Z)c.style.setProperty("--vlist-tree-indent",`${Q}px`),c.style.setProperty("--vlist-tree-pad",`${j}px`);if(M2)M2(B2,g2);else g2.selected=!1,g2.focused=!1;r2.depth=_2,r2.expanded=T2,r2.hasChildren=N2,r2.isLeaf=!N2,r2.isLastChild=x,r2.loading=O2;let q2=O(H2.item,B2,g2);if(typeof q2==="string")c.innerHTML=q2;else c.innerHTML="",c.appendChild(q2);u2(c)}function R2(){if(N.destroyed)return;if(A2(),!z){if(z=!0,A.setAttribute("role","tree"),A.setAttribute("tabindex","0"),F.classList.add(`${B}--tree`),Z)F.classList.add(`${B}--tree-lines`)}let{scrollPosition:c,containerSize:H2}=N;if(!l&&c===g&&H2===j2)return;g=c,j2=H2,l=!1;let B2=K.totalVisible;if(H2<=0||B2===0){if(o.size>0)K2();return}let M2=D.indexAtOffset(c),_2=D.indexAtOffset(c+H2);if(_2<B2-1)_2++;M2=Math.max(0,M2),_2=Math.min(B2-1,Math.max(0,_2));let T2=Math.max(0,M2-P),N2=Math.min(B2-1,_2+P);if(T2===N.prevRangeStart&&N2===N.prevRangeEnd&&!N.renderPending)return;o.forEach((x,V2)=>{if(V2<T2||V2>N2)x.remove(),_.release(x),o.delete(V2)});let O2=M?.()??null,y2=null;for(let x=T2;x<=N2;x++){let V2=K.flatNodes[x],q2=o.get(x);if(q2===void 0){if(q2=_.acquire(),k2(q2,V2,x,O2),q2.style[C?"width":"height"]=`${D.getSize(x)}px`,o.set(x,q2),!y2)y2=document.createDocumentFragment();y2.appendChild(q2)}else if(q2.getAttribute("data-id")!==String(V2.id)||q2.classList.contains(h)!==V2.loading)k2(q2,V2,x,O2);if(q2.style.transform=J2(D.getOffset(x)),O2)if(O2(x,g2),q2.classList.toggle(E,g2.selected),q2.classList.toggle(m,g2.focused),g2.selected)q2.setAttribute("aria-selected","true");else q2.removeAttribute("aria-selected");else if(!i){let E2=b&&V===x;q2.classList.toggle(m,E2)}}if(y2)A.appendChild(y2);e(D.getTotalSize()),N.prevRangeStart=T2,N.prevRangeEnd=N2,N.renderPending=!1;let W2=0;for(let x=T2;x<=N2&&W2<N.capacity;x++)N.visibleIndices[W2]=x,N.visibleOffsets[W2]=D.getOffset(x),N.visibleSizes[W2]=D.getSize(x),W2++;N.visibleCount=W2,N.startIndex=T2}function F2(){if(N.destroyed)return;N.prevRangeStart=-1,N.prevRangeEnd=-1,N.renderPending=!0,l=!0,R2()}function P2(c,H2){if(n+=c.toLowerCase(),I!==null)clearTimeout(I);I=setTimeout(()=>{n="",I=null},500);let B2=K.totalVisible;for(let M2=1;M2<=B2;M2++){let _2=(H2+M2)%B2,T2=K.flatNodes[_2];if(Y(T2.item).toLowerCase().startsWith(n)){k(_2);return}}}function z2(c){let H2=!1;for(let B2 of K.flatNodes)if(B2.parentId===c.parentId&&B2.hasChildren&&!B2.expanded)K.expandedIds.add(B2.id),H2=!0;if(!H2)return;K.rebuild(K.rootItems,!0),Y2()}return{name:"tree",priority:10,conflicts:["groups","grid","masonry","table"],setup(c){D=c.sizeCache,N=c.getState(),_=c.pool,A=c.dom.content,F=c.dom.root,O=c.template,C=c.config.axis.primary==="x",B=c.config.classPrefix,P=c.config.overscan,G=c.emitter,M=c.getItemStateFn.bind(c),T=c.getMethod.bind(c),y=c.scrollTo.bind(c),s=c.forceRender.bind(c),Z2=c.getItems.bind(c),w=`${B}-item ${B}-tree-node`,L=`${B}-tree-node--expanded`,X=`${B}-tree-node--leaf`,h=`${B}-tree-node--loading`,u=`${B}-tree-node--last`,E=`${B}-item--selected`,m=`${B}-item--focused`;let H2=c.getItems();r=H2,$2=H2.length;let B2,M2;if(q){let W2=o1(H2,J);B2=W2.getChildren,M2=W2.roots}else B2=y4(J),M2=H2;let _2=J.loadChildren?(W2)=>v.get(W2.id)??B2(W2):B2;Y=v4(J);let T2=C4(J,M2,_2);K=f0(_2,T2),K.rebuild(M2),f=D.rebuild,D.rebuild=(W2)=>{f(K.totalVisible)},D.rebuild(K.totalVisible),N.totalItems=K.totalVisible,c.setVirtualTotalFn(()=>K.totalVisible),c.setGetItemFn((W2)=>{let x=K.flatNodes[W2];return x?x.item:void 0}),c.setGetIndexByIdFn((W2)=>{return K.idToIndex.get(W2)??-1}),c.setRenderFn(R2,F2),c.registerMethod("_layoutToDataIndex",(W2)=>W2),c.registerMethod("_dataToLayoutIndex",(W2)=>W2),c.registerMethod("_getLoadedItem",(W2)=>{let x=K.flatNodes[W2];return x?x.item:void 0}),c.registerMethod("_getRenderedElement",(W2)=>o.get(W2)??null),queueMicrotask(()=>{i=!!(T("_getFocusedIndex")||c.getItemStateFn())}),c.setInsertItemFn((W2,x)=>{let V2=Z2(),q2=Math.min(x,V2.length);V2.splice(q2,0,W2),$2=V2.length,K.rebuild(V2),Y2()}),c.setRemoveItemFn((W2)=>{let x=K.idToIndex.get(W2),V2=null;if(q&&x!==void 0){V2=new Set,V2.add(W2);let E2=K.getSubtreeSize(x);for(let w2=x+1;w2<=x+E2;w2++)V2.add(K.flatNodes[w2].id)}let q2=K.removeNode(W2);if(q2===0)return-1;if(!i&&x!==void 0&&V>=x)V=Math.max(0,Math.min(V-q2,K.totalVisible-1));if(q&&V2){let E2=Z2();for(let w2=E2.length-1;w2>=0;w2--)if(V2.has(E2[w2].id))E2.splice(w2,1)}return $2=Z2().length,Y2(),G.emit("data:change",{type:"remove",id:W2}),q2}),c.setUpdateItemFn((W2,x)=>{let V2=K.idToIndex.get(W2);if(V2===void 0)return!1;let q2=K.flatNodes[V2];Object.assign(q2.item,x);let E2=o.get(V2);if(E2)k2(E2,q2,V2,M?.()??null);return G.emit("data:change",{type:"update",id:W2}),!0}),c.registerClickHandler((W2)=>{let x=W2.target.closest("[data-index]");if(!x)return;let V2=parseInt(x.dataset.index??"-1",10);if(V2<0)return;let q2=K.flatNodes[V2];if(!q2)return;let E2=q2.id,w2=!1;if(U&&(q2.hasChildren||J.loadChildren&&!q2.loading&&!v.has(E2))){let X2=K.totalVisible;if(q2.expanded)b2(E2);else D2(E2);w2=K.totalVisible!==X2}if(i&&w2){if(W(),p)p(E2);if(d)d(E2)}else if(!i)V=K.idToIndex.get(E2)??V2,b=!1,A.focus({preventScroll:!0})});let N2=()=>{if(N.destroyed||i)return;if(!A.matches(":focus-visible")&&!F.matches(":focus-visible"))return;let W2=K.totalVisible;if(W2===0)return;V=V>=0?Math.min(V,W2-1):0,b=!0,A.setAttribute("aria-activedescendant",`${B}-item-${V}`),R(V),F2()};F.addEventListener("focusin",N2);let O2=(W2)=>{if(N.destroyed||i)return;let x=W2.relatedTarget;if(x&&F.contains(x))return;b=!1,A.removeAttribute("aria-activedescendant"),F2()};F.addEventListener("focusout",O2),c.registerKeydownHandler((W2)=>{if(N.destroyed)return;let x=K.totalVisible;if(x===0)return;let V2=H();if(V2<0&&!i&&(W2.key==="ArrowDown"||W2.key==="Home")){k(0),W2.preventDefault();return}if(V2<0)return;let q2=K.flatNodes[V2];if(!q2)return;switch(W2.key){case"ArrowRight":{if(q2.hasChildren||J.loadChildren&&!q2.loading)if(!q2.expanded)D2(q2.id);else k(V2+1);W2.preventDefault();break}case"ArrowLeft":{if(q2.hasChildren&&q2.expanded)b2(q2.id);else if(q2.parentId!==null){let E2=K.idToIndex.get(q2.parentId);if(E2!==void 0)k(E2)}W2.preventDefault();break}case"*":{z2(q2),W2.preventDefault();break}default:{if(!i){if(W2.key==="ArrowDown"){if(V2<x-1)k(V2+1);W2.preventDefault();break}if(W2.key==="ArrowUp"){if(V2>0)k(V2-1);W2.preventDefault();break}if(W2.key==="Home"){k(0),W2.preventDefault();break}if(W2.key==="End"){k(x-1),W2.preventDefault();break}if(W2.key==="Enter"){G.emit("item:click",{item:q2.item,index:V2,event:W2}),W2.preventDefault();break}}if(W2.key.length===1&&!W2.ctrlKey&&!W2.altKey&&!W2.metaKey)P2(W2.key,V2),W2.preventDefault()}}}),c.registerMethod("expand",D2),c.registerMethod("collapse",b2),c.registerMethod("toggle",(W2)=>{let x=K.idToIndex.get(W2);if(x===void 0)return;if(K.flatNodes[x].expanded)b2(W2);else D2(W2)}),c.registerMethod("expandAll",()=>{K.expandAll(K.rootItems),Y2()}),c.registerMethod("collapseAll",()=>{K.collapseAll(),Y2()}),c.registerMethod("expandTo",(W2)=>{K.expandTo(W2),Y2();let x=K.idToIndex.get(W2);if(x!==void 0)R(x)}),c.registerMethod("getExpanded",()=>Array.from(K.expandedIds)),c.registerMethod("isExpanded",(W2)=>K.expandedIds.has(W2));let y2=q&&typeof J.parentId==="string"?J.parentId:null;c.registerMethod("addChild",(W2,x,V2)=>{if(y2)x[y2]=W2;if(q){let q2=Z2();q2.push(x),$2=q2.length}K.addChild(W2,x,V2),Y2(),G.emit("data:change",{type:"add",id:x.id})}),c.registerMethod("moveNode",(W2,x,V2)=>{if(y2){let q2=K.idToIndex.get(W2);if(q2!==void 0)K.flatNodes[q2].item[y2]=x}K.moveNode(W2,x,V2),Y2()}),c.registerMethod("getTreeLayout",()=>({totalVisible:K.totalVisible,flatNodes:K.flatNodes})),c.registerDestroyHandler(()=>{if(F.removeEventListener("focusin",N2),F.removeEventListener("focusout",O2),K2(),F.classList.remove(`${B}--tree`),F.classList.remove(`${B}--tree-lines`),I!==null)clearTimeout(I)})},destroy(){if(o.clear(),I!==null)clearTimeout(I)}}}var a1=($)=>{if(typeof $==="function")return $;if(typeof $==="string")return(J)=>{let Q=J[$];return Q==null?"":String(Q)};return(J)=>{if(J==null)return"";let Q="";for(let j in J){let U=J[j];if(typeof U==="string")Q+=Q?" "+U:U}return Q}},u0=($,J,Q)=>{if(!J)return!1;return(Q?$:$.toLowerCase()).includes(J)},S4=($,J)=>{let Q=$.querySelectorAll(`mark.${J}`);for(let j=Q.length-1;j>=0;j--){let U=Q[j],Z=U.parentNode;if(!Z)continue;let q=document.createTextNode(U.textContent??"");Z.replaceChild(q,U),Z.normalize()}},g0=($,J,Q,j)=>{if(!J)return;S4($,j);let U=Q?J:J.toLowerCase(),Z=J.length,q=document.createTreeWalker($,NodeFilter.SHOW_TEXT,{acceptNode(N){let _=N.nodeValue??"";return(Q?_:_.toLowerCase()).includes(U)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}),K=[],D;while((D=q.nextNode())!==null)K.push(D);for(let N of K){let _=N.nodeValue??"",A=Q?_:_.toLowerCase(),F=document.createDocumentFragment(),O=0,C=A.indexOf(U,0);while(C!==-1){if(C>O)F.appendChild(document.createTextNode(_.slice(O,C)));let B=document.createElement("mark");B.className=j,B.textContent=_.slice(C,C+Z),F.appendChild(B),O=C+Z,C=A.indexOf(U,O)}if(O<_.length)F.appendChild(document.createTextNode(_.slice(O)));N.parentNode?.replaceChild(F,N)}};var x0=($,J,Q,j)=>{let U=document.createElement("button");return U.type="button",U.className=$,U.tabIndex=j,U.setAttribute("aria-label",J),U.innerHTML=Q,U},i1=($,J,Q,j,U,Z,q)=>{let K=`${Q}-search`,D=document.createElement("div");if(D.className=`${K} ${K}--bar ${K}--${j}`,D.setAttribute("role","search"),D.setAttribute("aria-disabled","false"),U.region)D.setAttribute("aria-label",U.region);let N=document.createElement("div");N.className=`${K}__container`;let _=document.createElement("span");_.className=`${K}__leading-icon`,_.setAttribute("aria-hidden","true"),_.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path></svg>';let A=document.createElement("div");A.className=`${K}__input-wrapper`;let F=document.createElement("input");if(F.type="text",F.className=`${K}__input`,F.placeholder=U.placeholder,F.spellcheck=!1,F.autocomplete="off",F.setAttribute("aria-label",U.placeholder),Z)F.setAttribute("aria-controls",Z);A.appendChild(F);let O=document.createElement("span");O.className=`${K}__counter`,O.setAttribute("aria-live","polite");let C=x0(`${K}__nav-prev`,U.previous,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></svg>',-1),B=x0(`${K}__nav-next`,U.next,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"></path></svg>',-1),P=x0(`${K}__clear-button ${K}__clear-button--hidden`,U.clear,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></svg>',-1);if(N.append(_,A,O,C,B,P),D.appendChild(N),j==="top"&&J)$.insertBefore(D,J);else if(j==="top")$.insertBefore(D,$.firstChild);else $.appendChild(D);let M=()=>{P.classList.toggle(`${K}__clear-button--hidden`,F.value.length===0)},T=()=>{M(),q.onInput(F.value)},G=(h)=>q.onKeydown(h),Y=()=>F.focus(),w=()=>{q.onClear(),F.focus()},L=()=>q.onPrev(),X=()=>q.onNext();return F.addEventListener("input",T),F.addEventListener("keydown",G),_.addEventListener("click",Y),P.addEventListener("click",w),C.addEventListener("click",L),B.addEventListener("click",X),{root:D,input:F,setCounter(h){O.textContent=h},showNav(h){C.classList.toggle(`${K}__nav-prev--hidden`,!h),B.classList.toggle(`${K}__nav-next--hidden`,!h)},focus(){F.focus(),F.select()},setValue(h){F.value=h,M()},destroy(){F.removeEventListener("input",T),F.removeEventListener("keydown",G),_.removeEventListener("click",Y),P.removeEventListener("click",w),C.removeEventListener("click",L),B.removeEventListener("click",X),D.remove()}}};var m0={placeholder:"Search…",clear:"Clear search",previous:"Previous match",next:"Next match",noResults:"No results",results:($)=>`${$} result${$===1?"":"s"}`,position:($,J)=>`${$} of ${J}`,region:""};function c0($={}){let J=$.mode??"filter",Q=$.position??"top",j={...m0,...$.text},U=$.caseSensitive??!1,Z=$.highlight!==!1,q=typeof $.highlight==="object"&&$.highlight!==null?$.highlight.within:void 0,K=$.minLength??1,D=$.cancelTimeout??0,N=$.variant??"default",_=a1($.field),A,F,O,C,B,P=null,M=!1,T="",G=[],Y=new Set,w=0,L=!1,X=null,h=!1,u=null,E=null,m=null,o=()=>{if(h)return;h=!0,u=A.getMethod("scrollToIndex")??null,E=A.getMethod("filterTree")??null,m=A.getMethod("clearTreeFilter")??null},g=()=>{if(G=[],Y.clear(),T.length<K)return;let W=U?T:T.toLowerCase(),k=A.getItems();for(let R=0;R<k.length;R++){let y=k[R];if(y!==void 0&&u0(_(y),W,U))G.push(R),Y.add(R)}},j2=()=>{if(o(),E){let R=U?T:T.toLowerCase();E((y)=>u0(_(y),R,U)),L=!0;return}let W=A.getItems(),k=G;A.setGetItemFn((R)=>W[k[R]]),A.setVirtualTotalFn(()=>k.length),F.totalItems=k.length,A.rebuildSizeCache(),A.updateContentSize(A.sizeCache.getTotalSize()),L=!0},S=()=>{if(!L)return;if(L=!1,m){m();return}A.setGetItemFn((W)=>A.getItems()[W]),A.setVirtualTotalFn(()=>A.getItems().length),F.totalItems=A.getItems().length,A.rebuildSizeCache(),A.updateContentSize(A.sizeCache.getTotalSize())},l=()=>{o();let W=G[w];if(W===void 0)return;if(u)u(W,"center");else A.scrollTo(Math.max(0,A.sizeCache.getOffset(W)-A.getState().containerSize/2));let k=A.getItem(W);A.emitter.emit("search:match",{index:W,item:k,matchIndex:w,matches:G.length})},r=()=>{if(!P)return;if(T.length<K)P.setCounter("");else if(G.length===0)P.setCounter(j.noResults);else if(J==="navigate")P.setCounter(j.position(w+1,G.length));else P.setCounter(j.results(G.length))},z=()=>{let W=M&&T.length>=K;A.dom.root.classList.toggle(`${O}--searching`,W)},f=(W)=>{if(T=W,P?.setValue(T),g(),w=0,J==="filter")if(T.length>=K)j2();else S();if(z(),r(),A.forceRender(),J==="navigate"&&G.length>0)l();A.emitter.emit("search:change",{query:T,matches:G.length,total:A.getItems().length}),I()},V=()=>{if(!M)M=!0,A.dom.root.classList.add(`${O}--search-open`),A.emitter.emit("search:open",void 0);P?.focus(),I()},b=()=>{n();let W=M||T.length>0;if(M=!1,T.length>0)f("");if(A.dom.root.classList.remove(`${O}--search-open`),z(),W)A.emitter.emit("search:close",void 0)},i=(W)=>{if(G.length===0)return;if(w=(w+W+G.length)%G.length,r(),J==="navigate")l(),A.forceRender()},n=()=>{if(X!==null)clearTimeout(X),X=null},I=()=>{if(n(),D>0&&M)X=setTimeout(()=>{X=null,b()},D)},H=(W)=>{if(!Z||T.length<K)return;let k=W.startIndex,R=k+Math.max(0,W.visibleCount-1),y=J==="navigate"?G[w]:-1;for(let s=k;s<=R;s++){let Z2=A.getRenderedElement(s);if(!Z2)continue;if(q){let J2=Z2.querySelectorAll(q);for(let e=0;e<J2.length;e++)g0(J2[e],T,U,C)}else g0(Z2,T,U,C);if(J==="navigate"){let J2=s===y,e=Z2.querySelectorAll(`.${C}`);for(let K2=0;K2<e.length;K2++)e[K2].classList.toggle(B,J2)}}},d=(W)=>W.key.length===1&&!W.ctrlKey&&!W.metaKey&&!W.altKey,p=(W)=>{if((W.ctrlKey||W.metaKey)&&(W.key==="f"||W.key==="F")){W.preventDefault(),V();return}if(!M){if(Q==="none"&&d(W))W.preventDefault(),V(),f(T+W.key);return}switch(W.key){case"Escape":W.preventDefault(),b();break;case"Enter":W.preventDefault(),i(W.shiftKey?-1:1);break;case"ArrowDown":W.preventDefault(),i(1);break;case"ArrowUp":W.preventDefault(),i(-1);break;default:if(Q==="none"){if(W.key==="Backspace"){if(W.preventDefault(),f(T.slice(0,-1)),T.length===0)b()}else if(d(W))W.preventDefault(),f(T+W.key)}}},a=(W)=>{if(W.key==="Escape"||W.key==="Enter"||W.key==="ArrowDown"||W.key==="ArrowUp")p(W)};return{name:"search",priority:55,setup(W){if(A=W,F=A.getState(),O=A.config.classPrefix,C=`${O}-search-match`,B=`${O}-search-match--current`,Q!=="none"){let R=A.dom.root.id||void 0;if(P=i1(A.dom.root,A.dom.viewport,O,Q,{placeholder:j.placeholder,clear:j.clear,previous:j.previous,next:j.next,region:j.region},R,{onInput:(y)=>f(y),onClear:()=>f(""),onPrev:()=>i(-1),onNext:()=>i(1),onKeydown:a}),P.showNav(J==="navigate"),N!=="default")P.root.classList.add(`${O}-search--${N}`);A.dom.root.classList.add(`${O}--has-search`)}let k=A.getItemStateFn();A.setItemStateFn((R,y)=>{if(k)k(R,y);if(T.length<K){delete y.search;return}if(J==="filter")y.search={matched:!0,query:T,matchIndex:R,isCurrent:!1};else{let s=G.indexOf(R);y.search={matched:Y.has(R),query:T,matchIndex:s,isCurrent:s!==-1&&s===w}}}),A.registerMethod("openSearch",V),A.registerMethod("closeSearch",b),A.registerMethod("setQuery",(R)=>{if(!M)V();f(R)}),A.registerMethod("getQuery",()=>T),A.registerMethod("nextMatch",()=>i(1)),A.registerMethod("prevMatch",()=>i(-1)),A.registerMethod("getMatches",()=>G.slice()),A.registerKeydownHandler(p),A.registerDestroyHandler(()=>{n(),S(),P?.destroy(),P=null,A.dom.root.classList.remove(`${O}--search-open`,`${O}--searching`,`${O}--has-search`)})},hooks:{onCommit(W){H(W)}}}}function n1($){let{slots:J,focalSlot:Q,containerSize:j,gap:U=0}=$,Z=J.length,q=Math.max(0,Z-1)*U,K=j-q,D=J.map((P)=>Math.round(P*K)),N=K-D.reduce((P,M)=>P+M,0);if(Q<D.length)D[Q]+=N;let _=(D[Q]??0)+U,A=(P)=>P>=U?U:Math.max(0,P);function F(P,M,T){let G=P-M,Y=Q+G,w=Y-1,L=O(Y),X=O(w);return L+T*(X-L)}function O(P){if(P<0||P>=Z)return 0;return D[P]??0}function C(P,M,T,G){let Y=P-M,w=F(P,M,T),L=G;if(Y>0)for(let g=0;g<Y;g++){let j2=F(M+g,M,T);L+=j2+A(j2)}else if(Y<0)for(let g=-1;g>=Y;g--){let j2=F(M+g,M,T);L-=j2+A(j2)}let X=Q+Y,h=X-1,u;if(X===Q)u=T;else if(h===Q)u=1-T;else u=1;let E=D[Q]??0,m=E>0?w/E:0,o=m>0.6?"large":m>0.3?"medium":"small";return{size:w,offset:L,progress:u,relOffset:Y,role:o}}function B(P,M){if(Q===0)return 0;let T=0;for(let G=-1;G>=-Q;G--){let Y=F(P+G,P,M);T+=Y+A(Y)}return T}return{slotWidths:D,stepSize:_,focalSlot:Q,getItemLayout:C,getItemSize:F,getAnchorOffset:B}}var d0=new Map;function l2($,J){d0.set($,J)}function l0($){return d0.get($)}function J0($,J,Q){let j=d0.get($);return j?j(J,Q):null}function r0($){return $!==null&&"slots"in $}var W0=()=>{return{slots:[1],focalSlot:0}},N0=($,J)=>{return{slots:[($-J)/$,J/$],focalSlot:0}},V0=($,J)=>{return{slots:[J/$,($-2*J)/$,J/$],focalSlot:1}},X0=()=>{return{slots:[0.4,0.3,0.2,0.09999999999999998],focalSlot:0}},M0=($)=>{let J=Math.max(2,Math.floor($/($*0.33))),Q=1/J;return{slots:Array.from({length:J},()=>Q),focalSlot:0,textFade:"size"}};l2("full",W0);l2("hero",N0);l2("hero-center",V0);l2("multi",X0);l2("uncontained",M0);var s0=101,G0=50,h4=10;function I4($){if(typeof $==="function")return{variant:"custom",resolveSlots:$};if(typeof $==="object"){let J=$;return{variant:"custom",resolveSlots:()=>J}}return{variant:$,resolveSlots:(J,Q)=>J0($,J,Q)}}function o0($){let J=$?.variant??"full",{variant:Q,resolveSlots:j}=I4(J),U=Q==="full"||($?.snap??Q!=="free"),Z=$?.snapDirection??!0,q=$?.snapDuration??400,K=$?.snapEasing,D=$?.initialIndex??0,N=$?.peek??"auto",_,A,F=null,O,C=D,B=0,P=0,M=0,T=0,G=!1,Y="vlist",w=-1,L=0,X=[],h=[],u=!1,E="role",m=$?.gap??0;function o(p){if(B<=0)return 0;return(p%B+B)%B}function g(p,a,W){if(B<=1)return 0;let k=((a-p)%B+B)%B,R=B-k;if(W==="forward")return k;if(W==="backward")return-R;return k<=R?k:-R}function j2(p){return G0*B+p}function S(p){if(B<=0)return 0;return(p%B+B)%B}function l(p){X=p;let a=p.length;h=Array(a+1),h[0]=0;for(let W=0;W<a;W++)h[W+1]=h[W]+p[W];M=a>0?h[a]:0}function r(p){if(B<=0||M<=0)return{vi:0,frac:0};let a=Math.floor(p/M),W=p-a*M;if(W<0)W=0;if(!u){let J2=X[0],e=Math.min(Math.floor(W/J2),B-1);return{vi:a*B+e,frac:J2>0?W/J2-e:0}}let k=0,R=B-1;while(k<R){let J2=k+R+1>>1;if(h[J2]<=W)k=J2;else R=J2-1}let y=h[k],s=X[k],Z2=s>0?Math.max(0,Math.min((W-y)/s,1)):0;return{vi:a*B+k,frac:Z2}}function z(p){if(typeof N==="number")return N;if(typeof N==="string"&&N.endsWith("%"))return Math.round(p*parseFloat(N)/100);return Math.max(40,Math.min(Math.round(p*0.15),120))}function f(p){if(B<=0||M<=0)return 0;let a=Math.floor(p/B),W=(p%B+B)%B;return a*M+(h[W]??0)}function V(p){let{vi:a,frac:W}=r(p);return W>=0.5?a+1:a}function b(){if(w>=0)return w;return V(_.scrollPosition)}function i(p,a){F?.smoothScrollTo(p,a,K)}let n=null;function I(){if(!F)return;let p=F.getItems().length;if(p===B)return;let a=C;if(B=p,u){let W=F.rawSizeSpec,k=typeof W==="function"?(R)=>W(R)+m:()=>W+m;l(Array.from({length:B},(R,y)=>k(y)))}else l(Array.from({length:B},()=>X[0]??P));if(T=B*s0,_.totalItems=T,B>1){let W=a<B?a:0;C=W,F.scrollTo(f(G0*B+W))}}function H(){if(!F||B<=0)return;if(!n&&!u&&B<=1)return;let a=F.dom.content.children,W=_.scrollPosition,k=_.baseOffset,R=Math.round(W-k),y=O?"width":"height",{vi:s,frac:Z2}=r(W),J2=s-(s%B+B)%B,e=n?n.slotWidths[n.focalSlot]??0:0;if(n){let K2=W+n.getAnchorOffset(s,Z2);for(let $2=0;$2<a.length;$2++){let A2=a[$2],G2=A2.dataset.index;if(G2===void 0)continue;let Y2=parseInt(G2,10),v=J2+Y2;if(v-s>B/2)v-=B;if(s-v>B/2)v+=B;let U2=n.getItemLayout(v,s,Z2,K2),Q2=Math.max(0,Math.round(U2.size)),D2=Math.round(U2.offset-k);if(Q2<=0)A2.style.display="none",A2.classList.remove(`${Y}-item--focused`,`${Y}-item--selected`),A2.removeAttribute("aria-selected");else A2.style.display="",A2.style[y]=Q2+"px",A2.style.transform=O?`translateX(${D2}px)`:`translateY(${D2}px)`;let b2;if(E==="size"){let k2=n.slotWidths[n.focalSlot]??1;b2=Math.min(1,Math.max(0,Q2/k2))}else if(E==="viewport"){let k2=D2-R,R2=Math.max(0,k2),F2=Math.min(_.containerSize,k2+Q2),P2=Q2>0?Math.max(0,(F2-R2)/Q2):0;b2=Math.min(1,P2)}else b2=U2.role==="large"?1-U2.progress:0;A2.style.setProperty("--vlist-carousel-progress",U2.progress.toFixed(3)),A2.style.setProperty("--vlist-carousel-offset",String(U2.relOffset)),A2.style.setProperty("--vlist-carousel-role",U2.role),A2.style.setProperty("--vlist-carousel-role-weight",b2.toFixed(3)),A2.style.setProperty("--vlist-carousel-width",Q2+"px"),A2.style.setProperty("--vlist-carousel-focal-width",e+"px")}}else for(let K2=0;K2<a.length;K2++){let $2=a[K2],A2=$2.dataset.index;if(A2===void 0)continue;let G2=parseInt(A2,10),Y2=J2+G2;if(Y2-s>B/2)Y2-=B;if(s-Y2>B/2)Y2+=B;let v=S(Y2),U2=Math.max(0,Math.round((X[v]??0)-m)),Q2=f(Y2),D2=Math.round(Q2-k);if(U2<=0)$2.style.display="none";else $2.style.display="",$2.style[y]=U2+"px",$2.style.transform=O?`translateX(${D2}px)`:`translateY(${D2}px)`;let b2=Y2-s,k2=Math.min(1,Math.abs(b2)+(b2===0?Z2:0)),R2;if(E==="viewport"||E==="size"){let F2=D2-R,P2=Math.max(0,F2),z2=Math.min(_.containerSize,F2+U2),c=U2>0?Math.max(0,(z2-P2)/U2):0;R2=Math.min(1,c)}else R2=1-k2;$2.style.setProperty("--vlist-carousel-progress",k2.toFixed(3)),$2.style.setProperty("--vlist-carousel-offset",String(b2)),$2.style.setProperty("--vlist-carousel-role","large"),$2.style.setProperty("--vlist-carousel-role-weight",R2.toFixed(3)),$2.style.setProperty("--vlist-carousel-width",U2+"px")}}function d(p,a,W){if(!F)return;if(C=p,B<=1)return;let k=b(),R=S(k),y=((p-R)%B+B)%B,s=B-y,Z2=y<=s?y:-s,J2=k+Z2;w=J2;let e=f(J2);if(a)i(e,W);else F.scrollTo(e),H()}return{name:"carousel",priority:10,conflicts:["scale"],setup(p){_=p.getState(),A=p.sizeCache,F=p,O=p.config.axis.primary==="x",Y=p.config.classPrefix,B=_.totalItems;let a=B>0?A.getSize(0):0,W=_.containerSize,k=z(W),R=j(W,k);if(r0(R))E=R.textFade??"role",n=n1({slots:R.slots,focalSlot:R.focalSlot,containerSize:W,gap:m}),P=n.stepSize,l(Array.from({length:Math.max(1,B)},()=>P)),u=!1;else if(typeof p.rawSizeSpec==="function"){E=R?.textFade??"viewport";let J2=p.rawSizeSpec;l(Array.from({length:B},(e,K2)=>J2(K2)+m)),P=X[0]??a,u=!0}else E=R?.textFade??"viewport",P=a,l(Array.from({length:Math.max(1,B)},()=>P)),u=!1;if(T=B*s0,C=o(D),B>1)p.setGetItemFn((J2)=>{let e=S(J2);return p.getItems()[e]}),A.getTotalSize=()=>M*s0,A.getOffset=(J2)=>f(J2),A.getSize=(J2)=>{let e=S(J2);return X[e]??X[0]??0},A.indexAtOffset=(J2)=>{if(M<=0)return 0;let e=Math.floor(J2/M),K2=J2-e*M;if(!u){let G2=X[0]??1;return Math.max(0,Math.min(e*B+Math.floor(K2/G2),T-1))}let $2=0,A2=B-1;while($2<A2){let G2=$2+A2+1>>1;if(h[G2]<=K2)$2=G2;else A2=G2-1}return Math.max(0,Math.min(e*B+$2,T-1))},A.getTotal=()=>T,_.totalItems=T,p.setVirtualTotalFn(()=>B),p.setIndexMapFn(S),p.registerMethod("_layoutToDataIndex",S),p.setBoundedWrap({lapSize:()=>M,home:()=>G0*M,thresholdLaps:G0-h4}),G=!0;if(p.registerMethod("next",(J2,e)=>{if(B<=1)return;let K2=J2??1,$2=C,A2=e?.behavior!=="auto",G2=e?.duration??q;F.cancelScroll();let v=b()+K2;w=v,C=S(v);let U2=f(v);if(A2)i(U2,G2);else F.scrollTo(U2),H();if(C!==$2)F.emitter.emit("carousel:change",{index:C,scrollPosition:_.scrollPosition})}),p.registerMethod("prev",(J2,e)=>{if(B<=1)return;let K2=J2??1,$2=C,A2=e?.behavior!=="auto",G2=e?.duration??q;F.cancelScroll();let v=b()-K2;w=v,C=S(v);let U2=f(v);if(A2)i(U2,G2);else F.scrollTo(U2),H();if(C!==$2)F.emitter.emit("carousel:change",{index:C,scrollPosition:_.scrollPosition})}),p.registerMethod("goTo",(J2,e)=>{if(B<=0)return;let K2=o(J2),$2=e?.direction??"auto",A2=e?.behavior==="smooth",G2=e?.duration??q;if(B<=1){C=K2;return}if(F.cancelScroll(),$2==="forward"||$2==="backward"){let Y2=g(C,K2,$2==="forward"?"forward":"backward");C=K2;let U2=b()+Y2;w=U2;let Q2=f(U2);if(A2)i(Q2,G2);else F.scrollTo(Q2),H()}else d(K2,A2,G2)}),p.registerMethod("getCarouselState",()=>{let J2=_.scrollPosition,e=B>0&&M>0?(J2%M+M)%M:0;return{index:C,progress:0,offset:0,scrollPosition:e,role:"large"}}),p.setScrollToIndexFn((J2,e,K2,$2,A2)=>{if(B<=1)return!1;let G2=o(J2);d(G2,K2==="smooth",$2??q)}),p.setNavConfig({total:()=>B,navigate:(J2,e,K2)=>{let $2=J2;if(e==="ArrowRight"||e==="ArrowDown")$2=(J2+1)%K2;else if(e==="ArrowLeft"||e==="ArrowUp")$2=(J2-1+K2)%K2;else if(e==="Home")$2=0;else if(e==="End")$2=K2-1;if($2!==J2)d($2,!1,0),F?.forceRender(),H();return $2}}),!p.dom.content.getAttribute("tabindex"))p.dom.content.setAttribute("tabindex","0");let y=p.getMethod("next"),s=p.getMethod("prev"),Z2=p.getMethod("goTo");p.registerKeydownHandler((J2)=>{let e=J2.key;if(e==="ArrowRight"||e==="ArrowDown")J2.preventDefault(),y(1,{behavior:"smooth",duration:q});else if(e==="ArrowLeft"||e==="ArrowUp")J2.preventDefault(),s(1,{behavior:"smooth",duration:q});else if(e==="Home")J2.preventDefault(),Z2(0,{behavior:"smooth",duration:q});else if(e==="End")J2.preventDefault(),Z2(B-1,{behavior:"smooth",duration:q})}),p.registerDestroyHandler(()=>{F?.cancelScroll()})},destroy(){F?.cancelScroll(),F=null},hooks:{onCommit(){if(!G||!F)return;G=!1;let p=f(j2(C));F.scrollTo(p),F.forceRender(),H()},onAfterScroll(p){if(G||!F)return;if(I(),B<=1)return;if(_.scrollDirection!==0)L=_.scrollDirection;if(w<0){let a=_.scrollPosition,W=V(a),k=S(W);if(k!==C)C=k,F.emitter.emit("carousel:change",{index:C,scrollPosition:a})}H()},onIdle(){let p=L;if(w=-1,L=0,!U||!F||B<=1)return;let a=_.scrollPosition,{vi:W,frac:k}=r(a),R;if(Z&&p!==0&&k>0.02&&k<0.98)R=p>0?W+1:W;else R=k>=0.5?W+1:W;let y=f(R);if(Math.abs(a-y)>1)C=S(R),i(y,q)}}}}var f4=50,p4=0.1;function t1($){let J=0,Q=0,j=0;function U(){return j>0?Q/j:0}function Z(D){if(J=D,D>p4&&D<f4)Q+=D,j++}function q(){let D=$.getTotal();if(D===0)return 0;let N=$.getItemSize();if(N<=0)return 0;let _=$.getContainerSize();if(_<=0)return 0;let A=$.getScrollPosition(),F=typeof $.getColumns==="function"?$.getColumns():1,C=Math.ceil(D/F)*N,P=Math.min(C,a2)-_,M=C-_,T=P>0?M/P:1,G=A*T,Y=Math.ceil((G+_)/N);return Math.min(Y*F,D)}function K(){let D=$.getTotal(),N=q();return{progress:D>0?Math.min(100,Math.max(0,N/D*100)):0,velocity:J,velocityAvg:U(),itemCount:N,total:D}}return{getState:K,onVelocity:Z}}async function e1($,J,Q){let j=Q?.key,U=$?.getScrollSnapshot,Z=typeof U==="function"?U():void 0,q=e2(Z?j?{restore:Z,autoSave:j}:{restore:Z}:j?{autoSave:j}:void 0),K=J(q),D=K.element;if(D.style.position="absolute",D.style.inset="0",D.style.visibility="hidden",Q?.ready)await Q.ready(K);else await new Promise((O)=>requestAnimationFrame(()=>O()));if(Q?.delay&&Q.delay>0)await new Promise((O)=>setTimeout(O,Q.delay));let N=Q?.transition,_=typeof N==="number"?N:N?.fadeIn??0,A=typeof N==="number"?N:N?.fadeOut??0,F=typeof N==="object"?N?.fadeOutDelay??0:0;if($&&(_>0||A>0)){let O=$.element;D.style.visibility="",D.style.opacity="0",D.offsetHeight,D.style.transition=`opacity ${_}ms ease`,O.style.transition=`opacity ${A}ms ease ${F}ms`,D.style.opacity="1",O.style.opacity="0",await new Promise((C)=>setTimeout(C,Math.max(_,A+F)+50)),D.style.transition="",D.style.opacity="",O.style.transition="",O.style.opacity=""}else D.style.visibility="";if(D.style.position="",D.style.inset="",$)$.destroy();return K}export{M0 as uncontained,p0 as tree,P0 as transition,h0 as table,I0 as sortable,e2 as snapshots,T0 as selection,c0 as search,R0 as scrollbar,J0 as resolvePreset,l2 as registerPreset,e1 as rebuild,b0 as page,X0 as multi,z0 as masonry,V0 as heroCenter,N0 as hero,S0 as groups,E0 as grid,l0 as getPreset,W0 as full,y0 as data,w1 as createVList,t1 as createStats,o0 as carousel,w0 as autosize,k0 as a11y};
|
|
1
|
+
var j0=3,t0="vlist";var Z0=50;var e0=50,J1=2,$1=15,Q1=6,D0=2000,j1=30000,a2=16000000,x2=150,i2=1,U0=($)=>$<0.5?2*$*$:1-(-2*$+2)**2/2,Z1=300,U1=2,K1=1.5,q1=0.25,Y1=0.75;var B1="x",_1=20,L0="_isPlaceholder",I2="__placeholder_";var K0={top:0,right:0,bottom:0,left:0},W1=($)=>{if($==null)return K0;if(typeof $==="number")return $===0?K0:{top:$,right:$,bottom:$,left:$};if($.length===2){let[Z,K]=$;return Z===0&&K===0?K0:{top:Z,right:K,bottom:Z,left:K}}let[J,Q,j,U]=$;return J===0&&Q===0&&j===0&&U===0?K0:{top:J,right:Q,bottom:j,left:U}},N1=($,J)=>J?$.left+$.right:$.top+$.bottom,V1=($,J)=>J?$.top+$.bottom:$.left+$.right;function X1($){let J={visibleIndices:new Int32Array($),visibleOffsets:new Float64Array($),visibleSizes:new Float64Array($),visibleCount:0,startIndex:0,totalSize:0,capacity:$,scrollPosition:0,prevScrollPosition:0,scrollDirection:0,baseOffset:0,containerSize:0,crossSize:0,totalItems:0,prevRangeStart:0,prevRangeEnd:-1,renderPending:!1,initialized:!1,destroyed:!1,prevAriaTotal:-1,resizeCapacity(Q,j,U=j0){if(j<=0||Q<=0)return;let Z=Math.ceil(Q/j)+U*2;if(Z<=J.capacity)return;let K=Z+8,q=new Int32Array(K),D=new Float64Array(K),N=new Float64Array(K);q.set(J.visibleIndices),D.set(J.visibleOffsets),N.set(J.visibleSizes),J.visibleIndices=q,J.visibleOffsets=D,J.visibleSizes=N,J.capacity=K},clear(){J.visibleCount=0,J.startIndex=0}};return J}var Z4=($,J)=>{let Q=J;return{getOffset:(j)=>j*$,getSize:(j)=>$,indexAtOffset:(j)=>{if(Q===0||$===0)return 0;return Math.max(0,Math.min(Math.floor(j/$),Q-1))},getTotalSize:()=>Q*$,getTotal:()=>Q,rebuild:(j)=>{Q=j},isVariable:()=>!1}},U4=($,J)=>{let Q=J,j=new Float64Array(0),U=(K)=>{Q=K,j=new Float64Array(K+1),j[0]=0;for(let q=0;q<K;q++)j[q+1]=j[q]+$(q)};U(J);let Z=(K)=>{if(Q===0)return 0;if(K<=0)return 0;if(K>=j[Q])return Q-1;let q=0,D=Q-1;while(q<D){let N=q+D+1>>>1;if(j[N]<=K)q=N;else D=N-1}return q};return{getOffset:(K)=>{if(K<=0)return 0;if(K>=Q)return j[Q];return j[K]},getSize:(K)=>$(K),indexAtOffset:(K)=>Z(K),getTotalSize:()=>j[Q]??0,getTotal:()=>Q,rebuild:(K)=>U(K),isVariable:()=>!0}},q0=($,J)=>{if(typeof $==="number")return Z4($,J);return U4($,J)};function M1($){let J=[],Q=`${$}-item`,j=document.createElement("div");return j.className=Q,{acquire(){if(J.length>0)return J.pop();return j.cloneNode(!1)},release(U){if(U.className=Q,U.removeAttribute("style"),U.removeAttribute("id"),U.removeAttribute("role"),U.removeAttribute("aria-selected"),U.removeAttribute("aria-posinset"),U.removeAttribute("aria-setsize"),U.removeAttribute("data-index"),U.removeAttribute("data-id"),U.textContent="",J.length<100)J.push(U)},get size(){return J.length},clear(){J.length=0}}}function u2($){let J=$.querySelectorAll("a[href],button,input,select,textarea,[tabindex]");for(let Q=0;Q<J.length;Q++)J[Q].setAttribute("tabindex","-1")}function G1($){if(typeof $==="string"){let J=document.querySelector($);if(!J)throw Error(`[vlist] Container not found: ${$}`);return J}return $}function A1($,J,Q,j){let U=Q?`${J} ${J}--horizontal`:J,Z=Q?"overflow-x:auto;overflow-y:hidden;height:100%;width:100%":"overflow:auto;height:100%;width:100%",K=Q?"position:relative;height:100%;overflow-anchor:none":"position:relative;width:100%;overflow-anchor:none",q=' role="list"';if(j)q+=` aria-label="${j.replace(/"/g,""")}"`;if(Q)q+=' aria-orientation="horizontal"';$.insertAdjacentHTML("beforeend",`<div class="${U}"><div class="${J}-viewport" style="${Z}" tabindex="-1"><div class="${J}-content" style="${K}"${q}></div></div></div>`);let D=$.lastElementChild,N=D.firstElementChild,_=N.firstElementChild,A=document.createElement("div");return A.className=`${J}-live`,A.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",A.setAttribute("aria-live","polite"),A.setAttribute("aria-atomic","true"),A.setAttribute("role","status"),D.appendChild(A),{root:D,viewport:N,content:_,liveRegion:A}}function H1($){let{state:J,viewport:Q,isX:j,wheelEnabled:U,onFrame:Z,onIdle:K}=$,q=$.idleTimeout||x2,D=$.scrollTarget??Q,N=null,_=null;function A(){let P=j?Q.scrollLeft:Q.scrollTop;if(Math.abs(P-J.scrollPosition)<0.5)return;J.prevScrollPosition=J.scrollPosition,J.scrollPosition=P,J.scrollDirection=P>J.prevScrollPosition?1:P<J.prevScrollPosition?-1:0,Z(),O()}function F(P){let M;if(j){if(Math.abs(P.deltaX)>Math.abs(P.deltaY))return;let b=Q.scrollLeft,G=Q.scrollWidth-Q.clientWidth;if(M=Math.max(0,Math.min(b+P.deltaY*i2,G)),Math.abs(M-b)<1)return;P.preventDefault(),Q.scrollLeft=M}else{let b=Q.scrollWidth>Q.clientWidth;if(b&&Math.abs(P.deltaX)>Math.abs(P.deltaY))return;if(b&&P.deltaX!==0)P.preventDefault(),Q.scrollLeft+=P.deltaX;let G=Q.scrollTop,Y=Q.scrollHeight-Q.clientHeight;if(M=Math.max(0,Math.min(G+P.deltaY*i2,Y)),Math.abs(M-G)<1)return;P.preventDefault(),Q.scrollTop=M}J.prevScrollPosition=J.scrollPosition,J.scrollPosition=M,J.scrollDirection=M>J.prevScrollPosition?1:-1,Z(),O()}function O(){if(N!==null)clearTimeout(N);N=setTimeout(()=>{N=null,J.scrollDirection=0,K()},q)}function C(){if(_!==null)cancelAnimationFrame(_),_=null}function B(P,M,b,G=U0,Y){C();let w=J.scrollPosition,L=typeof P==="function"?P:()=>P,X=L();if(Math.abs(X-w)<1){if(b)b(X);else if(j)Q.scrollLeft=X;else Q.scrollTop=X;Y?.();return}let h=performance.now();function u(E){X=L();let m=E-h,o=Math.min(m/M,1),g=w+(X-w)*G(o);if(b)b(g);else if(j)Q.scrollLeft=g;else Q.scrollTop=g;if(!b)J.scrollPosition=g;if(Z(),o<1)_=requestAnimationFrame(u);else _=null,O(),Y?.()}_=requestAnimationFrame(u)}return{attach(){if(D.addEventListener("scroll",A,{passive:!0}),U)D.addEventListener("wheel",F,{passive:!1})},detach(){if(D.removeEventListener("scroll",A),U)D.removeEventListener("wheel",F);if(C(),N!==null)clearTimeout(N),N=null},cancelScroll:C,smoothScrollTo:B}}function s2($,J,Q){if($<J)return J;if($>Q)return Q;return $}function D1($){let{state:J,viewport:Q,content:j,isX:U,wheelEnabled:Z,onFrame:K,onIdle:q,mainAxisPadding:D}=$,N=$.idleTimeout||x2,_=$.runwayFactor??U1,A=$.wrap??null,F=A!==null,O=$.scrollTarget??Q,C=0,B=0,P=0,M=null,b=null;function G(){return U?Q.scrollLeft:Q.scrollTop}function Y(S){if(U)Q.scrollLeft=S;else Q.scrollTop=S}function w(S){let l=F?S:s2(S,0,B);J.prevScrollPosition=J.scrollPosition,J.scrollPosition=l,J.scrollDirection=l>J.prevScrollPosition?1:l<J.prevScrollPosition?-1:0;let r=C/2;if(F){J.baseOffset=l-r,Y(r);return}let z=s2(l-r,0,P);J.baseOffset=z,Y(s2(l-z,0,C))}function L(S){w(S),K(),m()}function X(){let S=G(),l=J.baseOffset+S;if(Math.abs(l-J.scrollPosition)<0.5)return;if(J.prevScrollPosition=J.scrollPosition,J.scrollPosition=l,J.scrollDirection=l>J.prevScrollPosition?1:l<J.prevScrollPosition?-1:0,h(S),F)u();K(),m()}function h(S){let l=C*q1,r=C*Y1,z=C/2;if(F){if(S>=l&&S<=r)return;J.baseOffset=J.scrollPosition-z,Y(z);return}if(P<=0)return;let f=J.baseOffset,V=S<l&&f>0,T=S>r&&f<P;if(!V&&!T)return;let i=J.scrollPosition,n=s2(i-z,0,P);if(n===f)return;J.baseOffset=n,Y(s2(i-n,0,C))}function u(){let S=A.lapSize();if(S<=0)return;let l=J.scrollPosition-A.home(),r=Math.trunc(l/S);if(Math.abs(r)<A.thresholdLaps)return;let z=r*S;J.scrollPosition-=z,J.prevScrollPosition-=z,J.baseOffset-=z}function E(S){let l;if(U)if(Math.abs(S.deltaX)>Math.abs(S.deltaY)){if(!F)return;l=S.deltaX}else l=S.deltaY;else{let V=Q.scrollWidth>Q.clientWidth;if(V&&Math.abs(S.deltaX)>Math.abs(S.deltaY))return;if(V&&S.deltaX!==0)S.preventDefault(),Q.scrollLeft+=S.deltaX;l=S.deltaY}let r=J.scrollPosition,z=r+l*i2,f=F?z:s2(z,0,B);if(Math.abs(f-r)<1)return;if(S.preventDefault(),L(f),F)u()}function m(){if(M!==null)clearTimeout(M);M=setTimeout(()=>{M=null,J.scrollDirection=0,q()},N)}function o(){if(b!==null)cancelAnimationFrame(b),b=null}function g(S,l,r,z=U0,f){o();let V=J.scrollPosition,T=typeof S==="function"?S:()=>S,i=T();if(Math.abs(i-V)<1){L(i),f?.();return}let n=performance.now();function I(H){i=T();let d=Math.min((H-n)/l,1);if(w(V+(i-V)*z(d)),K(),d<1)b=requestAnimationFrame(I);else b=null,m(),f?.()}b=requestAnimationFrame(I)}function j2(S){let l=J.containerSize,r=S+D,z=l*_,f=F?z:Math.min(r,z);C=Math.max(0,f-l),B=Math.max(0,r-l),P=Math.max(0,r-f),J.totalSize=S,j.style[U?"width":"height"]=f+"px",w(J.scrollPosition)}return{attach(){if(O.addEventListener("scroll",X,{passive:!0}),Z)O.addEventListener("wheel",E,{passive:!1})},detach(){if(O.removeEventListener("scroll",X),Z)O.removeEventListener("wheel",E);if(o(),M!==null)clearTimeout(M),M=null},cancelScroll:o,smoothScrollTo:g,setLogical:L,getLogical(){return J.scrollPosition},getMaxLogical(){return B},refresh:j2}}function K4($,J){if($.getTotal()<=0)return{index:0,offsetPx:0};let j=J<=0?0:J,U=$.indexAtOffset(j),Z=j-$.getOffset(U);return{index:U,offsetPx:Z>0?Z:0}}function q4($,J){let Q=Y4($,J);return $.getOffset(Q.index)+Q.offsetPx}function Y4($,J){let Q=$.getTotal();if(Q<=0)return{index:0,offsetPx:0};let{index:j,offsetPx:U}=J;if(j<0)return{index:0,offsetPx:0};if(j>Q-1)j=Q-1;while(U>0&&j<Q-1){let Z=$.getSize(j);if(U<Z)break;U-=Z,j++}while(U<0&&j>0)j--,U+=$.getSize(j);if(U<0)U=0;return{index:j,offsetPx:U}}function L1($){let{sizeCache:J,getPixel:Q,setPixel:j,getContainerSize:U}=$;function Z(){let q=J.getTotalSize()-U();return q>0?q:0}function K(q){if(q<=0)return 0;let D=Z();return q>D?D:q}return{getLogical(){return K4(J,Q())},setLogical(q){j(K(q4(J,q)))},getPixelEquivalent(){return Q()},setPixelEquivalent(q){j(K(q))},getMaxPixelEquivalent:Z,scrollByPx(q){j(K(Q()+q))}}}var n2=[],B4={calculate:n2,commit:n2,afterScroll:n2,idle:n2,resize:n2};function O1($){if($.length===0)return B4;let J=[],Q=[],j=[],U=[],Z=[];for(let K=0;K<$.length;K++){let q=$[K].hooks;if(q===void 0)continue;if(q.onCalculate!==void 0)J.push(q.onCalculate);if(q.onCommit!==void 0)Q.push(q.onCommit);if(q.onAfterScroll!==void 0)j.push(q.onAfterScroll);if(q.onIdle!==void 0)U.push(q.onIdle);if(q.onResize!==void 0)Z.push(q.onResize)}return{calculate:J,commit:Q,afterScroll:j,idle:U,resize:Z}}function F1($,J){for(let Q=0;Q<$.length;Q++)$[Q](J)}function R1($,J){for(let Q=0;Q<$.length;Q++)$[Q](J)}function O0($,J,Q){for(let j=0;j<$.length;j++)$[j](J,Q)}function E1($){for(let J=0;J<$.length;J++)$[J]()}function k1($,J,Q){for(let j=0;j<$.length;j++)$[j](J,Q)}function b1($,J,Q,j,U,Z,K,q){let D=j!==0||U!==0;return{prefix:$,selectedClass:`${$}-item--selected`,focusedClass:`${$}-item--focused`,placeholderClass:`${$}-item--placeholder`,replacedClass:`${$}-item--replaced`,translateProp:J?"translateX(":"translateY(",sizeProp:J?"width":"height",itemRole:"listitem",interactive:!1,startPadding:Q,gap:K,hasCrossPad:D,crossStartProp:D?J?"top":"left":"",crossEndProp:D?J?"bottom":"right":"",crossStartVal:D?j+"px":"",crossEndVal:D?U+"px":"",oddClass:Z,emitter:q??null,indexMap:null,ariaTotalFn:null}}function _4($,J,Q,j,U){if($.containerSize<=0||$.totalItems===0)return $.clear(),!0;let{scrollPosition:Z,containerSize:K,totalItems:q}=$,D=U??0;$.totalSize=J.getTotalSize();let N=J.indexAtOffset(D>0?Math.max(0,Z-D):Z),_=J.indexAtOffset(Z+K);if(_<q-1)_++;N=Math.max(0,N),_=Math.min(q-1,Math.max(0,_));let A=Math.max(0,N-Q),F=Math.min(q-1,_+Q),O=Math.ceil(K/1)+Q*2+10,C=F-A+1,B=Math.min(C,$.capacity,O);if(A===$.prevRangeStart&&F===$.prevRangeEnd&&!$.renderPending)return!1;$.visibleCount=B,$.startIndex=A;for(let P=0;P<B;P++){let M=A+P;$.visibleIndices[P]=M,$.visibleOffsets[P]=J.getOffset(M),$.visibleSizes[P]=J.getSize(M)}return F1(j.calculate,$),$.prevRangeStart=A,$.prevRangeEnd=F,$.renderPending=!1,!0}var S2={selected:!1,focused:!1};function W4($,J,Q){for(let j=0;j<J;j++)if($[j]===Q)return!0;return!1}function N4($,J){if(J<=1)return!0;let Q=$[0];for(let j=1;j<J;j++){let U=$[j];if(U!==Q+1)return!1;Q=U}return!0}function V4($,J,Q,j,U,Z,K,q,D,N){let _=D?null:U(),A=$.visibleCount,F=$.visibleIndices,O=K.ariaTotalFn?K.ariaTotalFn():$.totalItems,C=K.interactive?String(O):"",B=K.interactive&&O!==$.prevAriaTotal,P=null,M=K.indexMap;for(let b=0;b<A;b++){let G=F[b],Y=M?M(G):G,w=$.visibleOffsets[b],L=$.visibleSizes[b],X=D?D(G):_[G];if(N)N(Y,S2);else S2.selected=!1,S2.focused=!1;let h=Z.get(G),u=h;if(h===void 0){let E=J.acquire();if(X!==void 0){let g;try{g=j(X,Y,S2)}catch(j2){if(K.emitter)K.emitter.emit("error",{error:j2 instanceof Error?j2:Error(String(j2)),context:`template:render:${Y}`});J.release(E);continue}if(typeof g==="string")E.innerHTML=g;else E.textContent="",E.appendChild(g);u2(E)}if(E.setAttribute("role",K.itemRole),E.setAttribute("data-index",String(Y)),K.interactive)E.id=K.prefix+"-item-"+G,E.setAttribute("aria-posinset",String(Y+1)),E.setAttribute("aria-setsize",C);if(X!==void 0){let g=String(X.id);if(E.setAttribute("data-id",g),g.startsWith(I2))E.classList.add(K.placeholderClass)}if(K.hasCrossPad)E.style.setProperty(K.crossStartProp,K.crossStartVal),E.style.setProperty(K.crossEndProp,K.crossEndVal);if(N){if(E.classList.toggle(K.selectedClass,S2.selected),E.classList.toggle(K.focusedClass,S2.focused),S2.selected)E.setAttribute("aria-selected","true");else E.removeAttribute("aria-selected");E._lastSelected=S2.selected,E._lastFocused=S2.focused}if(K.oddClass)E.classList.toggle(K.oddClass,(G&1)===1);let m=w-$.baseOffset+K.startPadding;E.style.transform=K.translateProp+m+"px)",E._lastOffset=m;let o=L-K.gap;if(E.style[K.sizeProp]=o+"px",E._lastSize=o,E._lastItem=X,Z.set(G,E),P===null)P=document.createDocumentFragment();P.appendChild(E)}else{if(B)h.setAttribute("aria-setsize",C);if(X!==void 0&&u._lastItem!==X){let o=h.getAttribute("data-id"),g=String(X.id),j2;try{j2=j(X,Y,S2)}catch(S){if(K.emitter)K.emitter.emit("error",{error:S instanceof Error?S:Error(String(S)),context:`template:render:${Y}`});continue}if(typeof j2==="string")h.innerHTML=j2;else h.textContent="",h.appendChild(j2);if(u2(h),h.setAttribute("data-id",g),u._lastItem=X,o!==g){let S=o!==null&&o.startsWith(I2),l=g.startsWith(I2);if(S!==l)h.classList.toggle(K.placeholderClass,l);if(S&&!l)h.classList.add(K.replacedClass),setTimeout(()=>{h.classList.remove(K.replacedClass)},300)}}if(N){if(u._lastSelected!==S2.selected){if(h.classList.toggle(K.selectedClass,S2.selected),S2.selected)h.setAttribute("aria-selected","true");else h.removeAttribute("aria-selected");u._lastSelected=S2.selected}if(u._lastFocused!==S2.focused)h.classList.toggle(K.focusedClass,S2.focused),u._lastFocused=S2.focused}let E=w-$.baseOffset+K.startPadding;if(u._lastOffset!==E)h.style.transform=K.translateProp+E+"px)",u._lastOffset=E;let m=L-K.gap;if(u._lastSize!==m)h.style[K.sizeProp]=m+"px",u._lastSize=m}}if(P!==null)Q.appendChild(P);if(A>0&&N4(F,A)){let b=F[0],G=F[A-1];for(let[Y,w]of Z)if(Y<b||Y>G)w.remove(),J.release(w),Z.delete(Y)}else for(let[b,G]of Z)if(!W4(F,A,b))G.remove(),J.release(G),Z.delete(b);if(K.interactive)$.prevAriaTotal=$.totalItems;R1(q.commit,$)}function F0($,J,Q,j,U,Z,K,q,D,N,_,A){if(_4($,J,Q,N,D.startPadding))V4($,j,U,Z,K,q,D,N,_,A)}var R0=()=>{let $={},J=(Z,K)=>{if(!$[Z])$[Z]=new Set;return $[Z].add(K),()=>Q(Z,K)},Q=(Z,K)=>{$[Z]?.delete(K)};return{on:J,off:Q,emit:(Z,K)=>{$[Z]?.forEach((q)=>{try{q(K)}catch(D){console.error(`[vlist] Error in event handler for "${String(Z)}":`,D)}})},clear:(Z)=>{if(Z)delete $[Z];else for(let K in $)delete $[K]}}};var T1=2,P1=($=0)=>({velocity:0,sampleCount:0}),w1=($,J)=>{let Q=performance.now(),j=$._lt??Q,U=$._lp??J,Z=Q-j;if($._lp=J,$._lt=Q,Z===0)return $.sampleCount=Math.min($.sampleCount+1,5),$;if(Z>100)return $.velocity=0,$.sampleCount=1,$;return $.velocity=Math.abs(J-U)/Z,$.sampleCount=Math.min($.sampleCount+1,5),$};function X4($){let{item:J}=$;if(J.height!==void 0&&typeof J.height==="number"){if(!Number.isFinite(J.height)||J.height<=0)throw Error(`vlist: item.height must be a positive number, got ${J.height}`)}if(J.width!==void 0&&typeof J.width==="number"){if(!Number.isFinite(J.width)||J.width<=0)throw Error(`vlist: item.width must be a positive number, got ${J.width}`)}if(J.estimatedHeight!==void 0){if(!Number.isFinite(J.estimatedHeight)||J.estimatedHeight<=0)throw Error(`vlist: item.estimatedHeight must be a positive number, got ${J.estimatedHeight}`)}if(J.estimatedWidth!==void 0){if(!Number.isFinite(J.estimatedWidth)||J.estimatedWidth<=0)throw Error(`vlist: item.estimatedWidth must be a positive number, got ${J.estimatedWidth}`)}if(J.gap!==void 0){if(typeof J.gap!=="number"||!Number.isFinite(J.gap)||J.gap<0)throw Error(`vlist: item.gap must be a non-negative number, got ${J.gap}`)}if($.overscan!==void 0){if(typeof $.overscan!=="number"||!Number.isFinite($.overscan)||$.overscan<0)throw Error(`vlist: overscan must be a non-negative number, got ${$.overscan}`)}if($.scroll?.runway!==void 0){if(typeof $.scroll.runway!=="number"||!Number.isFinite($.scroll.runway)||$.scroll.runway<=0)throw Error(`vlist: scroll.runway must be a positive number, got ${$.scroll.runway}`)}}function M4($,J){let Q=$==="horizontal"?"x":"y";if(J.some((U)=>U.name==="grid"))return{primary:Q,cross:Q==="x"?"y":"x"};return{primary:Q}}function G4($,J){let Q=M4($.orientation,J),j=Q.primary==="x",U=W1($.padding);return{axis:Q,hasCrossAxis:Q.cross!==void 0,overscan:$.overscan??j0,reverse:$.reverse??!1,classPrefix:$.classPrefix??t0,mainAxisPadding:N1(U,j),crossAxisPadding:V1(U,j),startPadding:j?U.left:U.top,endPadding:j?U.right:U.bottom,crossPadStart:j?U.top:U.left,crossPadEnd:j?U.bottom:U.right,striped:$.item.striped||!1,gap:$.item.gap??0}}function A4($,J){if(J)return $.item.width??$.item.estimatedWidth??100;return $.item.height??$.item.estimatedHeight??40}function H4($){let J=[...$];return J.sort((Q,j)=>(Q.priority??50)-(j.priority??50)),J}function D4($){let J=new Set;for(let Q of $){if(J.has(Q.name))throw Error(`[vlist] Duplicate plugin: ${Q.name}`);J.add(Q.name)}for(let Q of $)if(Q.conflicts){for(let j of Q.conflicts)if(J.has(j))throw Error(`[vlist] Plugin "${Q.name}" conflicts with "${j}"`)}}function z1($,J=[]){X4($);let Q=G4($,J),j=Q.axis.primary==="x",U=$.scroll?.mode==="bounded",Z=A4($,j),K=Q.gap,q=K>0?typeof Z==="function"?(X2)=>Z(X2)+K:Z+K:Z,D=typeof Z==="number"?Z:20,N=$.items?.length??0,_=Q.striped?`${Q.classPrefix}-item--odd`:"",A=R0(),F=b1(Q.classPrefix,j,Q.startPadding,Q.crossPadStart,Q.crossPadEnd,_,K,A),O=J.length>0?H4(J):J;if(J.length>0)D4(O);let C=G1($.container),B=A1(C,Q.classPrefix,j,$.ariaLabel);if($.scroll?.scrollbar==="none")B.viewport.classList.add(`${Q.classPrefix}-viewport--no-scrollbar`);if($.scroll?.gutter==="stable")B.viewport.classList.add(`${Q.classPrefix}-viewport--gutter-stable`);let M=q0(q,N);if(K>0){let X2=M.getTotalSize;M.getTotalSize=()=>{let t=X2();return t>0?t-K:0}}let b=M1(Q.classPrefix),G=Math.ceil(4096/D)+Q.overscan*2+8,Y=X1(G);Y.totalItems=N;let w=$.items??[],L=()=>w,X=new Map,h=P1(),u={velocity:0,reliable:!1},E={range:{start:0,end:-1}},m={scrollPosition:0,direction:"down"},o={scrollPosition:0},g=-1,j2=-1,S=-1,l=null,r=O1(O),z=new Map,f=[],V=[],T=[],i=null,n=null,I=null,H=null,d=null,p=null,a=null,W=null,k=null,R=null,y=null,s=!1,Z2=!1,J2=null,e=0,U2=0,$2=null,A2=null,G2=null,Y2=null,v=null,K2=null,Q2=null,D2=null;Y.containerSize=j?B.viewport.clientWidth:B.viewport.clientHeight,Y.crossSize=j?B.viewport.clientHeight:B.viewport.clientWidth;let T2=L1({sizeCache:M,getPixel:()=>n?n():Y.scrollPosition,setPixel:(X2)=>{if(I)I(X2);else if(j)B.viewport.scrollLeft=X2;else B.viewport.scrollTop=X2},getContainerSize:()=>Y.containerSize});if(J.length>0){let X2={dom:B,sizeCache:M,scroll:T2,pool:b,config:Q,emitter:A,template:$.item.template,registerMethod(t,L2){z.set(t,L2)},getMethod(t){return z.get(t)},registerClickHandler(t){f.push(t)},registerKeydownHandler(t){V.push(t)},registerDestroyHandler(t){T.push(t)},enableListboxRole(){let t=B.content.getAttribute("role");if(!t||t==="list")B.content.setAttribute("role","listbox"),B.content.setAttribute("tabindex","0");F.itemRole="option",F.interactive=!0},setSizeConfig(t){let L2=q0(t,Y.totalItems),v2=z.get("_setSizeCacheBase");if(v2){let C2=M.rebuild;Object.assign(M,L2),M.rebuild=C2,v2(L2.rebuild)}else Object.assign(M,L2)},setScrollFns(t,L2){n=t,I=L2},setBoundedWrap(t){D2=t},cancelScroll(){N2?.cancelScroll()},setVirtualTotalFn(t){i=t,F.ariaTotalFn=t},setIndexMapFn(t){F.indexMap=t},getItems:L,getItem(t){return p?p(t):w[t]},getState(){return Y},rebuildSizeCache(){M.rebuild(Y.totalItems)},updateContentSize(t){if(Q2){Q2.refresh(t);return}Y.totalSize=t,B.content.style[j?"width":"height"]=t+Q.mainAxisPadding+"px"},setRenderFn(t,L2){H=t,d=L2},renderIfNeeded(){H2()},forceRender(){_2()},setGetItemFn(t){p=t},setItemStateFn(t){a=t},getItemStateFn(){return a},get rawSizeSpec(){return Z},scrollTo(t){if(I)I(t);else if(j)B.viewport.scrollLeft=t;else B.viewport.scrollTop=t},smoothScrollTo(t,L2,v2,C2){if(Y2)Y2(t,L2,I??void 0,v2,C2);else X2.scrollTo(typeof t==="function"?t():t)},disableDefaultScroll(){s=!0},disableDefaultResize(){Z2=!0},setScrollTarget(t){J2=t},setScrollToPosFn(t){v=t},setScrollToIndexFn(t){K2=t},onScrollFrame:B2,onScrollIdle:M2,removeItemById(t){if(W)return W(t);let L2=w.findIndex((v2)=>v2.id===t);if(L2===-1)return-1;return w.splice(L2,1),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),L2},insertItemAt(t,L2){if(k){k(t,L2);return}w.splice(L2,0,t),Y.totalItems=w.length,M.rebuild(Y.totalItems),c()},setRemoveItemFn(t){W=t},setInsertItemFn(t){k=t},setUpdateItemFn(t){R=t},setGetIndexByIdFn(t){y=t},getRenderedElement(t){let L2=z.get("_getRenderedElement");if(L2)return L2(t);return X.get(t)??null},setNavConfig(t){if(t.ud!==void 0)e=t.ud;if(t.lr!==void 0)U2=t.lr;if(t.scrollIndex)$2=t.scrollIndex;if(t.navigate)A2=t.navigate;if(t.total)G2=t.total},getNavConfig:(()=>{let t={ud:0,lr:0,scrollIndex:null,navigate:null,total:null};return()=>{return t.ud=e,t.lr=U2,t.scrollIndex=$2,t.navigate=A2,t.total=G2,t}})()};for(let t of O)if(t.setup)try{t.setup(X2)}catch(L2){A.emit("error",{error:L2 instanceof Error?L2:Error(String(L2)),context:`plugin:setup:${t.name}`})}}let k2=Q.classPrefix+"--scrolling",R2=!1,F2=$.scroll?.idleTimeout??x2;function P2(){if(m.scrollPosition=T2.getPixelEquivalent(),j)m.direction=Y.scrollDirection>0?"right":"left";else m.direction=Y.scrollDirection>0?"down":"up";if(A.emit("scroll",m),w1(h,Y.scrollPosition),u.velocity=h.velocity,u.reliable=h.sampleCount>=T1,A.emit("velocity:change",u),Y.startIndex!==g||Y.prevRangeEnd!==j2)g=Y.startIndex,j2=Y.prevRangeEnd,E.range.start=Y.startIndex,E.range.end=Y.prevRangeEnd,A.emit("range:change",E)}let z2=!1;function c(){if(H)return;let X2=M.getTotalSize();if(Q2){Q2.refresh(X2);return}if(B.content.style[j?"width":"height"]=X2+Q.mainAxisPadding+"px",!z2&&X2>a2)z2=!0,A.emit("error",{error:Error(`Content size (${X2}px) exceeds browser limit (${a2}px). Enable bounded scroll (scroll: { mode: "bounded" }) for large datasets.`),context:"content:size:overflow"})}function H2(){if(H)H();else F0(Y,M,Q.overscan,b,B.content,$.item.template,L,X,F,r,p,a)}function B2(){if(!R2)R2=!0,B.root.classList.add(k2);if(H2(),O0(r.afterScroll,Y.scrollPosition,Y.scrollDirection),Y.scrollPosition!==S)S=Y.scrollPosition,P2()}function M2(){if(R2)R2=!1,B.root.classList.remove(k2);Y.scrollDirection=0,E1(r.idle),u.velocity=0,u.reliable=!1,A.emit("velocity:change",u),o.scrollPosition=T2.getPixelEquivalent(),A.emit("scroll:idle",o)}function _2(){if(Y.renderPending=!0,d)d();else F0(Y,M,Q.overscan,b,B.content,$.item.template,L,X,F,r,p,a);if(O0(r.afterScroll,Y.scrollPosition,Y.scrollDirection),Y.scrollPosition!==S){if(S=Y.scrollPosition,P2(),l!==null)clearTimeout(l);l=setTimeout(M2,F2)}}let b2=s?!1:$.scroll?.wheel!==!1,N2;if(s&&(U||D2))throw Error(`vlist: page() is not compatible with ${D2?"the carousel plugin":'scroll: { mode: "bounded" }'} — bounded page-mode scrolling is not implemented yet.`);if(U||D2)Q2=D1({state:Y,viewport:B.viewport,content:B.content,isX:j,wheelEnabled:b2,idleTimeout:$.scroll?.idleTimeout??x2,...J2?{scrollTarget:J2}:{},mainAxisPadding:Q.mainAxisPadding,...$.scroll?.runway!==void 0?{runwayFactor:Math.max(K1,$.scroll.runway)}:{},...D2?{wrap:D2}:{},onFrame:B2,onIdle:M2}),N2=Q2,n=()=>Y.scrollPosition,I=(X2)=>Q2.setLogical(X2);else N2=H1({state:Y,viewport:B.viewport,isX:j,wheelEnabled:b2,idleTimeout:$.scroll?.idleTimeout??x2,...J2?{scrollTarget:J2}:{},onFrame:B2,onIdle:M2});Y2=N2.smoothScrollTo;function O2(X2){let L2=X2.target.closest("[data-index]");if(!L2)return null;let v2=parseInt(L2.getAttribute("data-index"),10);if(Number.isNaN(v2))return null;let C2=z.get("_layoutToDataIndex"),h2;if(C2){let f2=C2(v2);if(f2<0)return null;let o2=z.get("_getItem");h2=o2?o2(f2):p?p(f2):w[f2]}else h2=p?p(v2):w[v2];if(h2===void 0)return null;return{item:h2,index:v2}}function y2(X2){for(let L2=0;L2<f.length;L2++)f[L2](X2);let t=O2(X2);if(t)A.emit("item:click",{item:t.item,index:t.index,event:X2})}function W2(X2){let t=O2(X2);if(t)A.emit("item:dblclick",{item:t.item,index:t.index,event:X2})}function x(X2){let t=O2(X2);if(t)A.emit("item:contextmenu",{item:t.item,index:t.index,event:X2})}function V2(X2){let t=X2.target?.tagName;if((t==="INPUT"||t==="TEXTAREA"||t==="SELECT")&&!((X2.ctrlKey||X2.metaKey)&&(X2.key==="f"||X2.key==="F")))return;for(let L2=0;L2<V.length;L2++)V[L2](X2)}if(B.content.addEventListener("click",y2),B.content.addEventListener("dblclick",W2),B.content.addEventListener("contextmenu",x),V.length>0)B.root.addEventListener("keydown",V2);let q2=null;if(!Z2)setTimeout(()=>{if(Y.destroyed)return;q2=new ResizeObserver((t)=>{for(let L2 of t){let{width:v2,height:C2}=L2.contentRect,h2=j?v2:C2,f2=j?C2:v2;if(Math.abs(h2-Y.containerSize)<1&&Math.abs(f2-Y.crossSize)<1)continue;if(Y.containerSize=h2,Y.crossSize=f2,Y.resizeCapacity(h2,D,Q.overscan),Q2)Q2.refresh(M.getTotalSize());_2(),k1(r.resize,v2,C2),A.emit("resize",{width:v2,height:C2})}}),q2.observe(B.viewport)},0);Y.resizeCapacity(Y.containerSize,D,Q.overscan),c(),Y.initialized=!0;let E2=null;if($.defer)E2=requestAnimationFrame(()=>{if(E2=null,!Y.destroyed)H2()});else H2();if(!s)N2.attach();let w2={get element(){return B.root},get items(){return w},get total(){return i?i():w.length},setItems(X2){w=[...X2],Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},appendItems(X2){w.push(...X2),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},prependItems(X2){w.unshift(...X2),Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),_2()},updateItem(X2,t){if(R){if(!R(X2,t))return}else{let L2=w.findIndex((v2)=>v2.id===X2);if(L2===-1)return;w[L2]={...w[L2],...t}}_2()},insertItem(X2,t){if(k)k(X2,t??Y.totalItems);else{if(t===void 0)w.push(X2);else w.splice(t,0,X2);Y.totalItems=w.length,M.rebuild(Y.totalItems),c()}_2()},removeItem(X2){if(W){if(W(X2)<0)return}else{let t=w.findIndex((L2)=>L2.id===X2);if(t===-1)return;w.splice(t,1),Y.totalItems=w.length,M.rebuild(Y.totalItems),c()}_2()},removeItems(X2){if(W){let C2=0;for(let h2 of X2)if(W(h2)>=0)C2++;if(C2>0)_2();return C2}let t=new Set(X2),L2=w.length;w=w.filter((C2)=>!t.has(C2.id));let v2=L2-w.length;if(v2>0)Y.totalItems=w.length,M.rebuild(Y.totalItems),c(),Y.renderPending=!0,H2();return v2},getItemAt(X2){if(F.indexMap)return w[X2];return p?p(X2):w[X2]},getIndexById(X2){if(y)return y(X2);return w.findIndex((t)=>t.id===X2)},scrollToIndex(X2,t="start"){let L2=i?i():w.length;if(L2===0)return;let v2=Math.max(0,Math.min(X2,L2-1)),C2=typeof t==="string"?t:t.align??"start",h2=typeof t==="object"?t.behavior:void 0,f2=typeof t==="object"?t.duration:void 0,o2=typeof t==="object"?t.easing:void 0;if(K2&&K2(v2,C2,h2,f2,o2)!==!1)return;let H0=M.getOffset(v2),i0=M.getSize(v2),Q0=Y.containerSize,$4=M.getTotalSize(),n0=Q.mainAxisPadding,Q4=Math.max(0,$4+n0-Q0),p2;if(v)p2=v(v2,M,Q0,L2,C2);else{let j4=Q.startPadding;switch(C2){case"center":p2=j4+H0-(Q0-i0)/2;break;case"end":p2=H0+i0+n0-Q0;break;default:p2=H0}p2=Math.max(0,Math.min(p2,Q4))}if(h2==="smooth")N2.smoothScrollTo(p2,f2??Z1,I??void 0,o2);else if(I)I(p2);else if(j)B.viewport.scrollLeft=p2;else B.viewport.scrollTop=p2},getScrollPosition(){return T2.getPixelEquivalent()},on:A.on.bind(A),off:A.off.bind(A),destroy(){if(Y.destroyed)return;if(Y.destroyed=!0,R2)R2=!1,B.root.classList.remove(k2);if(E2!==null)cancelAnimationFrame(E2),E2=null;if(l!==null)clearTimeout(l),l=null;N2.detach(),q2?.disconnect(),B.content.removeEventListener("click",y2),B.content.removeEventListener("dblclick",W2),B.content.removeEventListener("contextmenu",x),B.root.removeEventListener("keydown",V2);let X2=[];for(let t of T)try{t()}catch(L2){X2.push(L2 instanceof Error?L2:Error(String(L2)))}for(let t of O)if(t.destroy)try{t.destroy()}catch(L2){X2.push(L2 instanceof Error?L2:Error(String(L2)))}for(let[,t]of X)t.remove();if(X.clear(),b.clear(),B.root.remove(),A.emit("destroy",void 0),A.clear(),X2.length>0)for(let t of X2)console.error("vlist: error during destroy:",t)}};for(let[X2,t]of z)w2[X2]=t;return w2}var L4=($)=>{if(typeof $!=="object"){let J=$??2;return{top:J,right:J,bottom:J,left:J}}return{top:$.top??2,right:$.right??2,bottom:$.bottom??2,left:$.left??2}},y1=($,J,Q={},j="vlist",U=!1,Z)=>{let{autoHide:K=!0,autoHideDelay:q=1000,minThumbSize:D=15,showOnHover:N=!0,showOnViewportEnter:_=!0,clickBehavior:A="scroll"}=Q,F=A==="page"?"scroll":A,O=Z??$,C=L4(Q.padding),B=U?C.left:C.top,P=U?C.right:C.bottom,M=U?C.bottom:C.right,b=Q.hoverZoneWidth??M+16,G=0,Y=0,w=0,L=0,X=!1,h=!1,u=0,E=0,m=0,o=null,g=!1,j2=null,S=0,l=0,r=null,z=null,f=null,V=U?"width":"height",T=U?"translateX":"translateY",i=U?(_2)=>_2.clientX:(_2)=>_2.clientY,n=U?"left":"top",I=document.createElement("div"),H=document.createElement("div"),d=document.createElement("div"),p=U?"--vlist-custom-scrollbar-padding-left":"--vlist-custom-scrollbar-padding-top",a=()=>{if(O===$)return;let _2=$.offsetTop;I.style[U?"left":"top"]=_2?`calc(var(${p}) + ${_2}px)`:`var(${p})`,d.style[U?"left":"top"]=`${_2}px`},W=()=>{if(I.className=`${j}-scrollbar`,H.className=`${j}-scrollbar__thumb`,U)I.classList.add(`${j}-scrollbar--horizontal`);if(Q.padding!==void 0)O.style.setProperty("--vlist-custom-scrollbar-padding-top",`${C.top}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-right",`${C.right}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-bottom",`${C.bottom}px`),O.style.setProperty("--vlist-custom-scrollbar-padding-left",`${C.left}px`);if(Q.minThumbSize!==void 0)I.style.setProperty("--vlist-custom-scrollbar-min-thumb-size",`${D}px`);if(I.appendChild(H),O.appendChild(I),d.className=`${j}-scrollbar__hover`,U)d.classList.add(`${j}-scrollbar__hover--horizontal`),d.style.height=`${b}px`;else d.style.width=`${b}px`;if(O.appendChild(d),O!==$)a()},k=()=>{if(o)clearTimeout(o),o=null},R=()=>{if(!K)return;k(),o=setTimeout(s,q)},y=()=>{if(G<=Y)return;if(k(),!g)I.classList.add(`${j}-scrollbar--visible`),g=!0;if(K&&!X&&!h)R()},s=()=>{if(X||h)return;I.classList.remove(`${j}-scrollbar--visible`),g=!1},Z2=(_2,b2)=>{if(G=_2,Y=b2,a(),G<=Y){I.style.display="none",s();return}I.style.display="";let N2=Math.max(0,Y-B-P),O2=Y/G;if(w=Math.max(D,O2*N2),H.style[V]=`${w}px`,L=N2-w,J2(m),!K)y()},J2=(_2)=>{if(m=_2,G<=Y||L<=0)return;let b2=G-Y,N2=Math.min(1,Math.max(0,_2/b2));H.style.transform=`${T}(${N2*L}px)`},e=(_2)=>{if(_2.target===H||F!=="jump"||L<=0)return;let b2=G-Y,N2=I.getBoundingClientRect(),O2=i(_2)-N2[n],y2=Math.max(0,Math.min(O2-w/2,L));J(y2/L*b2),y()},U2=()=>{if(r!==null)clearTimeout(r),r=null;if(z!==null)cancelAnimationFrame(z),z=null;f=null},$2=(_2)=>{let b2=L>0?l/_2*L:0;if(S<b2)return-1;if(S>=b2+w)return 1;return 0},A2=()=>{let _2=G-Y,b2=$2(_2);if(b2===0){U2();return}if(b2===-1){if(l<=0){U2();return}let N2=Math.max(0,l-Y);l=N2,J(N2)}else{if(l>=_2){U2();return}let N2=Math.min(_2,l+Y);l=N2,J(N2)}y()},G2=(_2)=>{if(f===null){f=_2,z=requestAnimationFrame(G2);return}let b2=G-Y,N2=_2-f;f=_2;let O2=$2(b2);if(O2===0){U2();return}let y2=12*Y/1000,W2=Math.min(y2*N2,Y);if(O2===-1){if(l<=0){U2();return}let x=Math.max(0,l-W2);l=x,J(x)}else{if(l>=b2){U2();return}let x=Math.min(b2,l+W2);l=x,J(x)}k(),z=requestAnimationFrame(G2)},Y2=()=>{U2(),R(),document.removeEventListener("mouseup",Y2)},v=(_2)=>{if(_2.target===H||F!=="scroll")return;_2.preventDefault();let b2=I.getBoundingClientRect();S=i(_2)-b2[n],l=m,A2(),r=setTimeout(()=>{z=requestAnimationFrame(G2)},350),document.addEventListener("mouseup",Y2)},K2=(_2)=>{_2.preventDefault(),_2.stopPropagation(),X=!0,u=i(_2),E=m,k(),I.classList.add(`${j}-scrollbar--dragging`),document.addEventListener("mousemove",Q2),document.addEventListener("mouseup",D2)},Q2=(_2)=>{if(!X)return;let b2=i(_2)-u,N2=L>0?b2/L:0,O2=G-Y,y2=N2*O2,W2=Math.max(0,Math.min(E+y2,O2));H.style.transform=`${T}(${W2/O2*L}px)`,J(W2)},D2=()=>{if(X=!1,I.classList.remove(`${j}-scrollbar--dragging`),K&&!h)R();document.removeEventListener("mousemove",Q2),document.removeEventListener("mouseup",D2)},T2=U?(_2)=>_2.touches[0].clientX:(_2)=>_2.touches[0].clientY,k2=(_2)=>{_2.stopPropagation(),X=!0,u=T2(_2),E=m,k(),I.classList.add(`${j}-scrollbar--dragging`)},R2=(_2)=>{if(!X)return;_2.preventDefault();let b2=T2(_2)-u,N2=L>0?b2/L:0,O2=G-Y,y2=N2*O2,W2=Math.max(0,Math.min(E+y2,O2));H.style.transform=`${T}(${W2/O2*L}px)`,J(W2)},F2=()=>{if(X=!1,I.classList.remove(`${j}-scrollbar--dragging`),K)R()},P2=(_2)=>{if(_2.target===H)return;if(L<=0)return;let b2=_2.touches[0],N2=I.getBoundingClientRect(),O2=(U?b2.clientX:b2.clientY)-N2[n];if(F==="jump"){let y2=G-Y,W2=Math.max(0,Math.min(O2-w/2,L));J(W2/L*y2)}else S=O2,l=m,A2();y()},z2=()=>{if(_)y()},c=()=>{if(!X){if(h=!1,K)R()}},H2=()=>{h=!0,k(),y()},B2=()=>{if(h=!1,!X&&K)R()},M2=()=>{if(k(),U2(),j2!==null)cancelAnimationFrame(j2),j2=null;I.removeEventListener("click",e),I.removeEventListener("mousedown",v),I.removeEventListener("mouseenter",H2),document.removeEventListener("mouseup",Y2),I.removeEventListener("mouseleave",B2),I.removeEventListener("touchstart",P2),H.removeEventListener("mousedown",K2),H.removeEventListener("touchstart",k2),H.removeEventListener("touchmove",R2),H.removeEventListener("touchend",F2),$.removeEventListener("mouseenter",z2),$.removeEventListener("mouseleave",c),document.removeEventListener("mousemove",Q2),document.removeEventListener("mouseup",D2),d.removeEventListener("click",e),d.removeEventListener("mousedown",v),d.removeEventListener("mouseenter",H2),d.removeEventListener("mouseleave",B2),d.remove(),O.style.removeProperty("--vlist-custom-scrollbar-padding-top"),O.style.removeProperty("--vlist-custom-scrollbar-padding-right"),O.style.removeProperty("--vlist-custom-scrollbar-padding-bottom"),O.style.removeProperty("--vlist-custom-scrollbar-padding-left"),I.remove()};if(W(),I.addEventListener("click",e),I.addEventListener("mousedown",v),I.addEventListener("mouseenter",H2),I.addEventListener("mouseleave",B2),I.addEventListener("touchstart",P2,{passive:!0}),H.addEventListener("mousedown",K2),H.addEventListener("touchstart",k2,{passive:!0}),H.addEventListener("touchmove",R2,{passive:!1}),H.addEventListener("touchend",F2,{passive:!0}),$.addEventListener("mouseenter",z2),$.addEventListener("mouseleave",c),d.addEventListener("click",e),d.addEventListener("mousedown",v),N)d.addEventListener("mouseenter",H2),d.addEventListener("mouseleave",B2);return{show:y,hide:s,updateBounds:Z2,updatePosition:J2,isVisible:()=>g,destroy:M2}};function E0($){let J=null,Q,j=0,U=0,Z=0;return{name:"scrollbar",priority:15,setup(K){let{dom:q,config:D}=K,{classPrefix:N}=D,_=D.axis.primary==="x";Q=K.getState(),j=D.mainAxisPadding;let A=(F)=>{K.scrollTo(F)};if(K.registerMethod("_scrollbar:setCallback",(F)=>{A=F}),J=y1(q.viewport,(F)=>{A(F)},$,N,_,q.root),q.viewport.classList.add(`${N}-viewport--custom-scrollbar`),$?.gutter)q.viewport.classList.add(`${N}-viewport--gutter`);queueMicrotask(()=>{J?.updateBounds(Q.totalSize+j,Q.containerSize)}),K.registerMethod("_scrollbar:getInstance",()=>J),K.registerDestroyHandler(()=>{if(J?.destroy(),J=null,q.viewport.classList.remove(`${N}-viewport--custom-scrollbar`),$?.gutter)q.viewport.classList.remove(`${N}-viewport--gutter`)})},hooks:{onAfterScroll(K){let q=Q.totalSize+j,D=Q.containerSize;if(q!==U||D!==Z)U=q,Z=D,J?.updateBounds(q,D);J?.updatePosition(K),J?.show()},onResize(){let K=Q.totalSize+j,q=Q.containerSize;U=K,Z=q,J?.updateBounds(K,q)}},destroy(){J?.destroy(),J=null}}}var v1=($)=>{let J=Math.max(1,Math.floor($.columns)),Q=$.gap??0,j=$.isHeaderFn,U={row:0,col:0},Z=(B)=>{if(B<=0)return 0;if(!j)return Math.ceil(B/J);let P=0,M=0,b=0;for(let G=0;G<B;G++)if(j(G)){if(b++,M)P++,M=0;P++,M=0}else if(M++,M>=J)P++,M=0;if(M)P++;return P},K=(B)=>{return U.row=q(B),U.col=D(B),U},q=(B)=>{if(!j)return Math.floor(B/J);let P=0,M=0;for(let b=0;b<=B;b++)if(j(b)){if(M)P++,M=0;if(b===B)return P;P++,M=0}else{if(b===B)return P;if(M++,M>=J)P++,M=0}return console.warn(`⚠️ getRow(${B}) fell through - returning ${P}`),P},D=(B)=>{if(!j)return B%J;if(j(B))return 0;let P=0;for(let M=0;M<=B;M++)if(j(M))P=0;else{if(M===B)return P;if(P++,P>=J)P=0}return P},N=(B,P,M,b)=>{if(M<=0){b.start=0,b.end=-1;return}if(!j){b.start=Math.max(0,B*J),b.end=Math.min(M-1,(P+1)*J-1);return}let G=_(B,P,M);b.start=G.start,b.end=G.end},_=(B,P,M)=>{if(M<=0)return{start:0,end:-1};if(!j){let L=Math.max(0,B*J),X=Math.min(M-1,(P+1)*J-1);return{start:L,end:X}}let b=-1,G=-1,Y=0,w=0;for(let L=0;L<M;L++){if(j(L)){if(w)Y++,w=0;if(Y>=B&&Y<=P){if(b<0)b=L;G=L}Y++,w=0}else{if(Y>=B&&Y<=P){if(b<0)b=L;G=L}if(w++,w>=J)Y++,w=0}if(Y>P&&!w)break}if(b<0)return{start:0,end:-1};return{start:b,end:G}},A=(B,P,M)=>{if(P<0||P>=J)return-1;let b=B*J+P;if(b<0||b>=M)return-1;return b},F=(B)=>{let P=(J-1)*Q;return Math.max(0,(B-P)/J)};return{get columns(){return J},get gap(){return Q},update:(B)=>{if(B.columns!==void 0)J=Math.max(1,Math.floor(B.columns));if(B.gap!==void 0)Q=B.gap;if(B.isHeaderFn!==void 0)j=B.isHeaderFn},getTotalRows:Z,getPosition:K,getRow:q,getCol:D,getItemRange:_,fillItemRange:N,getItemIndex:A,getColumnWidth:F,getColumnOffset:(B,P)=>{let M=F(P);return B*(M+Q)}}};var m2={selected:!1,focused:!1};function k0($){if(!$.columns||$.columns<1)throw Error("[vlist] grid: columns must be >= 1");let J,Q,j,U,Z=null,K,q,D,N,_,A,F=null,O=0,C=0,B=0,P=0,M=new Map,b=0,G=0,Y=0,w=0,L=null,X=!1,h="",u="",E="",m={start:0,end:-1},o=-1,g=-1,j2=-1,S=!0,l=(H)=>Q.rebuild(H);function r(){let H=(G-1)*Y;w=Math.max(0,(b-H)/G)}function z(){if(X)return;X=!0,L=F?.()??null}function f(){return J.getTotalRows(j.totalItems)}function V(H){let d=H/G|0,a=(H-d*G)*(w+Y)+O,W=Q.getOffset(d)-j.baseOffset+B;if(N)return`translate(${Math.round(W)}px, ${Math.round(a)}px)`;return`translate(${Math.round(a)}px, ${Math.round(W)}px)`}function T(H,d){let p=Q.getSize(d)-Y;if(N)H.style.width=`${p}px`,H.style.height=`${w}px`;else H.style.width=`${w}px`,H.style.height=`${p}px`}function i(H,d,p){if(L)L(p,m2);else m2.selected=!1,m2.focused=!1;let a=q(d,p,m2);if(typeof a==="string")H.innerHTML=a;else H.innerHTML="",H.appendChild(a)}function n(){if(j.destroyed)return;let{scrollPosition:H,containerSize:d}=j;if(!S&&H===o&&d===g)return;o=H,g=d,S=!1;let p=f();if(d<=0||p===0)return;z();let a=Q.indexAtOffset(H),W=Q.indexAtOffset(H+d);if(W<p-1)W++;a=Math.max(0,a),W=Math.min(p-1,Math.max(0,W));let k=Math.max(0,a-A),R=Math.min(p-1,W+A);if(k===j.prevRangeStart&&R===j.prevRangeEnd&&!j.renderPending)return;J.fillItemRange(k,R,j.totalItems,m);let{start:y,end:s}=m;for(let[e,U2]of M)if(e<y||e>s)U2.el.remove(),U.release(U2.el),M.delete(e);for(let e=y;e<=s;e++){let U2=D(e);if(!U2)continue;let $2=e/G|0,A2=e-$2*G,G2=M.get(e);if(G2===void 0){let K2=U.acquire();K2.className=h,K2.setAttribute("data-index",String(e)),K2.setAttribute("data-id",String(U2.id)),i(K2,U2,e),G2={el:K2,lastItem:U2},M.set(e,G2),K.appendChild(K2)}else if(G2.lastItem!==U2)G2.el.setAttribute("data-id",String(U2.id)),G2.lastItem=U2,i(G2.el,U2,e);else if(L)L(e,m2);if(L)if(G2.el.classList.toggle(u,m2.selected),G2.el.classList.toggle(E,m2.focused),m2.selected)G2.el.setAttribute("aria-selected","true");else G2.el.removeAttribute("aria-selected");T(G2.el,$2);let Y2=A2*(w+Y)+O,v=Q.getOffset($2)-j.baseOffset+B;G2.el.style.transform=N?`translate(${Math.round(v)}px, ${Math.round(Y2)}px)`:`translate(${Math.round(Y2)}px, ${Math.round(v)}px)`}let Z2=Q.getTotalSize();if(Z2!==j2)j2=Z2,Z?.updateContentSize(Z2);j.prevRangeStart=k,j.prevRangeEnd=R,j.renderPending=!1;let J2=s-y+1;j.visibleCount=Math.min(J2,j.capacity),j.startIndex=y;for(let e=0;e<j.visibleCount;e++){let U2=y+e,$2=U2/G|0;j.visibleIndices[e]=U2,j.visibleOffsets[e]=Q.getOffset($2),j.visibleSizes[e]=Q.getSize($2)}}function I(){if(j.destroyed)return;l(f()),j2=-1,j.prevRangeStart=-1,j.prevRangeEnd=-1,j.renderPending=!0,S=!0,n()}return{name:"grid",priority:10,conflicts:["masonry","table"],setup(H){G=Math.max(1,Math.floor($.columns)),Y=$.gap??0,J=v1({columns:$.columns,gap:Y}),Q=H.sizeCache,j=H.getState(),U=H.pool,Z=H,K=H.dom.content,q=H.template,N=H.config.axis.primary==="x",_=H.config.classPrefix,A=H.config.overscan,D=H.getItem.bind(H),F=()=>H.getItemStateFn(),h=`${_}-item ${_}-grid-item`,u=`${_}-item--selected`,E=`${_}-item--focused`,O=H.config.crossPadStart,C=H.config.crossAxisPadding,B=H.config.startPadding,P=H.config.mainAxisPadding,b=j.crossSize-C,r();let d=H.rawSizeSpec,p;if(typeof d==="function"){let y={columnWidth:J.getColumnWidth(b),columns:$.columns,gap:Y};p=d(0,y),H.setSizeConfig((s)=>{y.columnWidth=J.getColumnWidth(b);let Z2=s*$.columns;return d(Z2,y)+Y})}else if(p=d,Y>0)H.setSizeConfig(p+Y);let a=null,W=Q.rebuild;function k(){if(Q.rebuild===a)return;W=Q.rebuild,l=(R)=>W(R),a=(R)=>{l(Math.ceil(R/G))},Q.rebuild=a}if(H.registerMethod("_setSizeCacheBase",(R)=>{W=R,l=(y)=>W(y)}),k(),l(f()),Y>0){let R=Q.getTotalSize;Q.getTotalSize=()=>{let y=R();return y>0?y-Y:0}}H.setVirtualTotalFn(()=>f()),H.dom.root.classList.add(`${_}--grid`),H.setRenderFn(n,I),H.registerMethod("getGridLayout",()=>J),H.registerMethod("_getRowGap",()=>J.gap),H.registerMethod("updateGrid",(R)=>{if(R.columns!==void 0){if(!Number.isInteger(R.columns)||R.columns<1)throw Error("[vlist] updateGrid: columns must be >= 1")}if(R.gap!==void 0&&R.gap<0)throw Error("[vlist] updateGrid: gap must be >= 0");if(J.update(R),R.columns!==void 0)G=Math.max(1,Math.floor(R.columns));if(R.gap!==void 0)Y=R.gap;if(R.gap!==void 0||R.columns!==void 0){let y=J.gap;if(typeof d==="function"){let s={columnWidth:J.getColumnWidth(b),columns:J.columns,gap:y};H.setSizeConfig((Z2)=>{s.columnWidth=J.getColumnWidth(b);let J2=Z2*J.columns;return d(J2,s)+y})}else H.setSizeConfig(p+y);k(),l(f())}if(R.columns!==void 0)H.setNavConfig({ud:J.columns});b=j.crossSize-C,r(),I()}),H.registerMethod("scrollToIndex",(R,y="start")=>{let s=J.getRow(R),Z2=f();if(Z2===0)return;let J2=Math.max(0,Math.min(s,Z2-1)),e=Q.getOffset(J2)+B,U2=Q.getSize(J2),$2=j.containerSize,A2=Q.getTotalSize()+P,G2=Math.max(0,A2-$2),Y2=typeof y==="string"?y:y.align??"start",v=typeof y==="object"?y.behavior:void 0,K2=typeof y==="object"?y.duration:void 0,Q2;switch(Y2){case"center":Q2=e-($2-U2)/2;break;case"end":Q2=e-$2+U2;break;default:Q2=e}if(Q2=Math.max(0,Math.min(Q2,G2)),v==="smooth"&&K2&&K2>0)H.smoothScrollTo(Q2,K2);else H.scrollTo(Q2)}),H.setNavConfig({total:()=>j.totalItems,ud:$.columns,lr:1,scrollIndex:(R)=>J.getRow(R)}),H.registerDestroyHandler(()=>{for(let[,R]of M)R.el.remove();M.clear(),H.dom.root.classList.remove(`${_}--grid`)})},hooks:{onResize(H,d){let p=j.crossSize-C;if(Math.abs(p-b)<1)return;b=p,r();for(let[a,W]of M){let k=a/G|0;T(W.el,k),W.el.style.transform=V(a)}}},destroy(){M.clear()}}}function t2($,J,Q,j){if(j<=0)return 0;let U=j-1;if(Q<=1)return $<0?0:$>U?U:$;let Z=(J%Q+Q)%Q;if($<0)return Z;if($>U){let K=Math.floor(U/Q)*Q;return Math.min(K+Z,U)}return $}function b0($){let J=$?.keyboard??!0;return{name:"a11y",priority:55,setup(Q){if(Q.getItemStateFn())return;Q.enableListboxRole();let{dom:j,config:U,sizeCache:Z}=Q,K=Q.getState(),q=Q.emitter,D=U.classPrefix,N=j.liveRegion,_=-1,A=!1,F,O=-1,C=(E)=>Q.getItem(E),B=()=>K.totalItems,P={id:0,index:0},M={selected:[],items:[]};Q.setItemStateFn((E,m)=>{m.selected=O===E,m.focused=A&&_===E});function b(E){N.textContent="",N.textContent=E}let G=(E,m,o)=>{let g=E;while(g>=0&&g<o){let j2=C(g);if(!j2||!j2.__groupHeader)return g;g+=m}g=E-m;while(g>=0&&g<o){let j2=C(g);if(!j2||!j2.__groupHeader)return g;g-=m}return E},Y=(E)=>{let m=Q.getNavConfig(),o=m.scrollIndex?m.scrollIndex(E):E,g=Z.getOffset(o),j2=Z.getSize(o),S=K.scrollPosition,l=K.containerSize,r=U.startPadding,z=U.endPadding,f=g+r,V=f+j2,T=S;if(f<S)T=Math.max(0,g);else if(V>S+l)T=V+z-l;if(T!==S)K.scrollPosition=T,Q.scrollTo(T)},w=(E,m)=>{if(j.content.setAttribute("aria-activedescendant",`${D}-item-${E}`),m)Y(E);Q.forceRender()},L=(E)=>{_=E,A=!0,w(E,!0);let m=C(E);if(m)P.id=m.id,P.index=E,q.emit("focus:change",P),b(`Item ${E+1} of ${B()}`)},X=(E,m)=>{if(_=E,m)A=!0;let o=C(E);if(o&&F===o.id)F=void 0,O=-1;else F=o?.id,O=o?E:-1;if(w(E,m),F!==void 0&&o&&F===o.id)M.selected[0]=F,M.selected.length=1,M.items[0]=o,M.items.length=1,b(`Selected, item ${E+1} of ${B()}`);else M.selected.length=0,M.items.length=0,b("Deselected");q.emit("selection:change",M)},h=()=>{if(K.destroyed)return;if(!j.content.matches(":focus-visible"))return;let E=B();if(E===0)return;let m=_>=0?Math.min(_,E-1):0;m=G(m,1,E),L(m)},u=(E)=>{if(K.destroyed)return;let m=E.relatedTarget;if(m&&j.root.contains(m))return;A=!1,j.content.removeAttribute("aria-activedescendant"),Q.forceRender()};if(j.content.addEventListener("focusin",h),j.content.addEventListener("focusout",u),J)Q.registerKeydownHandler((E)=>{if(K.destroyed)return;let m=B();if(m===0)return;let o=_,g=o;if(E.key===" "||E.key==="Enter"){if(o>=0){let S=C(o);if(S&&!S.__groupHeader)X(o,!0)}E.preventDefault();return}let j2=Q.getNavConfig();if(j2.navigate)switch(E.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"PageUp":case"PageDown":case"Home":case"End":g=j2.navigate(o,E.key,m);break;default:return}else{let S=j2.ud||1,l=j2.lr,r=U.axis.primary==="x";switch(E.key){case"ArrowUp":if(r&&!l)return;g=o-(r?l:S);break;case"ArrowDown":if(r&&!l)return;g=o+(r?l:S);break;case"ArrowLeft":if(!r&&!l)return;g=o-(r?S:l);break;case"ArrowRight":if(!r&&!l)return;g=o+(r?S:l);break;case"PageUp":case"PageDown":{let z=Z.getSize(Math.max(0,j2.scrollIndex?j2.scrollIndex(o):o)),V=Math.max(1,Math.floor(K.containerSize/z))*S;g=t2(E.key==="PageUp"?o-V:o+V,o,S,m);break}case"Home":g=0;break;case"End":g=m-1;break;default:return}}if(g<0)g=0;else if(g>=m)g=m-1;if(E.preventDefault(),g=G(g,g>=o?1:-1,m),g!==o)L(g)});Q.registerClickHandler((E)=>{if(K.destroyed)return;let m=E.target.closest("[data-index]");if(!m)return;let o=parseInt(m.dataset.index??"-1",10);if(o<0)return;let g=C(o);if(!g||g.__groupHeader)return;A=!1,j.content.focus({preventScroll:!0}),X(o,!1)}),Q.registerDestroyHandler(()=>{j.content.removeEventListener("focusin",h),j.content.removeEventListener("focusout",u)})}}}var e2=($,J,Q)=>{if(String(Q).startsWith(I2))return!1;let j=I2+J;if($.has(j))return $.delete(j),$.add(Q),!0;return!1},C1=($)=>({selected:new Set($??[]),focusedIndex:-1,focusVisible:!1});function l2($,J,Q,j){if(Q===0)return;let U=j?-J:J,Z=$.focusedIndex+U;if(Z<0)Z=0;if(Z>=Q)Z=Q-1;$.focusedIndex=Z}function Y0($){return Array.from($)}var O4={preventScroll:!0};function T0($){let J=$?.mode??"single",Q=$?.followFocus??!1,j=$?.focusOnClick??!1,U=$?.keyboard??!0,Z,K,q,D,N,_,A,F,O=-1,C=new Map,B=null,P=null,M=null,b=null,G,Y=!1;function w(T){if(Y)return;Y=!0,B=T.getMethod("_layoutToDataIndex")??null,P=T.getMethod("_dataToLayoutIndex")??null,M=T.getMethod("_isGroupHeader")??null,b=T.getMethod("_scrollItemIntoView")??null,X=T.getMethod("_getLoadedItem")??null;let i=T.getMethod("getGroupLayout");if(i){let n=i();G=()=>n.totalEntries}}let L=(T)=>B?B(T):T,X=null,h=(T)=>{if(X)return X(T);return K()[T]},u=(T)=>{let i=L(T);return i>=0?h(i):void 0},E=(T,i,n)=>{if(!M)return T;let I=T;while(I>=0&&I<n){if(!M(I))return I;I+=i}I=T-i;while(I>=0&&I<n){if(!M(I))return I;I-=i}return T};function m(T,i){if(J==="single")Z.selected.clear(),C.clear();if(Z.selected.add(T),i)C.set(T,i)}function o(T,i){if(Z.selected.has(T))Z.selected.delete(T),C.delete(T);else m(T,i)}function g(){Z.selected.clear(),C.clear()}function j2(T){Z.selected.delete(T),C.delete(T)}function S(T,i){let n=Math.min(T,i),I=Math.max(T,i);for(let H=n;H<=I;H++){if(M?.(H))continue;let d=u(H);if(d)Z.selected.add(d.id),C.set(d.id,d);else if(X){let p=L(H);if(p>=0)Z.selected.add(I2+p)}}}function l(){let T=A.totalItems;for(let i=0;i<T;i++){if(M?.(i))continue;let n=u(i);if(n)Z.selected.add(n.id),C.set(n.id,n);else if(X){let I=L(i);if(I>=0)Z.selected.add(I2+I)}}}function r(){if(Z.selected.size===0)return[];if(C.size>=Z.selected.size){let I=[];for(let H of Z.selected){let d=C.get(H);if(d)I.push(d)}if(I.length===Z.selected.size)return I}let T=[],i=new Set(Z.selected),n=A.totalItems;for(let I=0;I<n&&i.size>0;I++){if(M?.(I))continue;let H=u(I);if(H&&i.has(H.id))T.push(H),C.set(H.id,H),i.delete(H.id)}return T}function z(){q(),D.emit("selection:change",{selected:Y0(Z.selected),items:r()})}let f=null,V=-1;return{name:"selection",priority:50,setup(T){T.enableListboxRole(),Z=C1($?.initial),K=T.getItems.bind(T),q=T.forceRender.bind(T),D=T.emitter,N=T.dom;let i=T.config;if(_=T.sizeCache,A=T.getState(),F=T.scrollTo.bind(T),G=()=>A.totalItems,J==="none"){T.registerMethod("select",()=>{}),T.registerMethod("deselect",()=>{}),T.registerMethod("toggleSelect",()=>{}),T.registerMethod("selectAll",()=>{}),T.registerMethod("clearSelection",()=>{}),T.registerMethod("getSelected",()=>[]),T.registerMethod("getSelectedItems",()=>[]),T.registerMethod("selectNext",()=>{}),T.registerMethod("selectPrevious",()=>{}),T.registerMethod("_seedSelection",()=>{}),T.registerMethod("_getFocusedId",()=>{return}),T.registerMethod("_focusById",()=>{});return}let n=i.classPrefix;T.setItemStateFn((k,R)=>{if(w(T),Z.selected.size>0){let y=L(k),s=y>=0?u(k):void 0,Z2=s?.id;if(Z2!==void 0)if(Z.selected.has(Z2))R.selected=!0;else if(e2(Z.selected,y,Z2))R.selected=!0,C.delete(I2+y),C.set(Z2,s);else R.selected=!1;else R.selected=X!==null&&y>=0&&Z.selected.has(I2+y)}else R.selected=!1;R.focused=Z.focusVisible&&Z.focusedIndex===k}),T.registerMethod("_getSelectedIds",()=>Z.selected),T.registerMethod("_getFocusedIndex",()=>Z.focusVisible?Z.focusedIndex:-1),N.root.classList.add(`${n}--selectable`);let I=(k)=>{f=null,V=-1;let R=k.target.closest("[data-index]");if(!R)return!1;let y=parseInt(R.dataset.index??"-1",10);if(y<0)return!1;if(M?.(y))return!1;if(L(y)<0)return!1;let Z2=u(y);if(!Z2)return!1;return f=Z2,V=y,!0},H=0,d=(k)=>{if(k<0)return;if(b){b(k);return}if(!H){let A2=T.getMethod("_getRowGap");H=A2?A2():0}let R=T.getNavConfig(),y=R.scrollIndex?R.scrollIndex(k):k,s=_.getOffset(y),Z2=_.getSize(y)-H,J2=A.containerSize,e=A.scrollPosition,U2=i.startPadding,$2=i.endPadding;if(s<e)F(s);else if(U2+s+Z2+$2>e+J2)F(U2+s+Z2+$2-J2)},p=(k)=>{let R=N.content.querySelectorAll(`[data-index="${k}"]`),y=null;for(let s=0;s<R.length;s++){let Z2=R[s];if(Z2.style.display!=="none"){y=Z2;break}}if(!y&&R.length>0)y=R[0];N.content.setAttribute("aria-activedescendant",y?.id??`${n}-item-${k}`)},a=()=>{if(A.destroyed)return;if(w(T),!N.content.matches(":focus-visible")&&!N.root.matches(":focus-visible"))return;let k=G();if(k===0)return;let R=Z.focusedIndex>=0?Math.min(Z.focusedIndex,k-1):0;R=E(R,1,k),Z.focusedIndex=R,Z.focusVisible=!0,p(R),d(R),q()};N.root.addEventListener("focusin",a);let W=(k)=>{if(A.destroyed)return;let R=k.relatedTarget;if(R&&N.root.contains(R))return;Z.focusVisible=!1,q(),N.content.removeAttribute("aria-activedescendant")};if(N.root.addEventListener("focusout",W),T.registerDestroyHandler(()=>{N.root.removeEventListener("focusin",a),N.root.removeEventListener("focusout",W)}),T.registerClickHandler((k)=>{if(w(T),!I(k))return;if(J==="multiple"&&k.shiftKey&&Z.focusedIndex>=0){let y=O>=0?O:Z.focusedIndex,s=L(y),Z2=L(V);if(s>=0&&Z2>=0)S(y,V);Z.focusedIndex=V,Z.focusVisible=j,O=V,z();return}if(Z.focusedIndex=V,Z.focusVisible=j,O=V,(N.content.getAttribute("tabindex")!==null?N.content:N.root).focus(O4),J==="single")m(f.id,f);else o(f.id,f);z()}),U)T.registerKeydownHandler((k)=>{w(T);let R=G();if(R===0)return;let y=T.getNavConfig(),s=Z.focusedIndex,Z2=!1,J2=!1;if(y.navigate&&(k.key==="ArrowUp"||k.key==="ArrowDown"||k.key==="ArrowLeft"||k.key==="ArrowRight"||k.key==="PageUp"||k.key==="PageDown"||k.key==="Home"||k.key==="End")){let U2=y.total?y.total():R,$2=y.navigate(Z.focusedIndex,k.key,U2);if($2!==Z.focusedIndex)Z.focusedIndex=Math.max(0,Math.min($2,U2-1));Z.focusVisible=!0,Z2=!0}else switch(k.key){case"ArrowUp":{let U2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(A2&&!$2)break;l2(Z,-(A2?$2:U2),R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowDown":{let U2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(A2&&!$2)break;l2(Z,A2?$2:U2,R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowLeft":{let U2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(!A2&&!$2)break;l2(Z,-(A2?U2:$2),R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"ArrowRight":{let U2=y.ud||1,$2=y.lr,A2=i.axis.primary==="x";if(!A2&&!$2)break;l2(Z,A2?U2:$2,R,i.reverse),Z.focusVisible=!0,Z2=!0;break}case"Home":if(R>0)Z.focusedIndex=0;Z.focusVisible=!0,Z2=!0;break;case"End":if(R>0)Z.focusedIndex=R-1;Z.focusVisible=!0,Z2=!0;break;case"PageUp":case"PageDown":{let U2=y.ud||1,$2=Math.max(0,Z.focusedIndex),A2=y.scrollIndex?y.scrollIndex($2):$2,G2=_.getSize(A2),Y2=A.containerSize,K2=(G2>0?Math.max(1,Math.floor(Y2/G2)):10)*U2;if(B&&P){let Q2=B(Z.focusedIndex),D2=k.key==="PageUp"?-K2:K2,T2=A.totalItems-1;Z.focusedIndex=P(t2(Q2+D2,Q2,U2,T2+1))}else{let Q2=k.key==="PageUp"?Z.focusedIndex-K2:Z.focusedIndex+K2;Z.focusedIndex=t2(Q2,Z.focusedIndex,U2,R)}Z.focusVisible=!0,Z2=!0;break}case" ":case"Enter":if(k.key===" "&&k.shiftKey&&J==="multiple"&&Z.focusedIndex>=0){if(O>=0){let U2=L(O),$2=L(Z.focusedIndex);if(U2>=0&&$2>=0)S(O,Z.focusedIndex)}Z.focusVisible=!0,J2=!0,Z2=!0;break}if(Z.focusedIndex>=0){let U2=u(Z.focusedIndex);if(U2)o(U2.id,U2),O=Z.focusedIndex;Z.focusVisible=!0,J2=!0,Z2=!0}break;case"a":if((k.ctrlKey||k.metaKey)&&J==="multiple"){if(Z.selected.size===A.totalItems)g();else l();Z.focusVisible=!0,J2=!0,Z2=!0}break;case"Delete":case"Backspace":if(Z.selected.size>0)D.emit("delete",{selected:Y0(Z.selected),items:r()}),Z2=!0;break}if(Z.focusedIndex!==s&&M){let U2=Z.focusedIndex>s?1:-1;Z.focusedIndex=E(Z.focusedIndex,U2,R)}let e=Z.focusedIndex!==s;if(k.shiftKey&&J==="multiple"&&!J2&&e){if(k.key==="ArrowUp"||k.key==="ArrowDown"||k.key==="ArrowLeft"||k.key==="ArrowRight"){let A2=u(Z.focusedIndex);if(A2)o(A2.id,A2);O=Z.focusedIndex,J2=!0}if((k.ctrlKey||k.metaKey)&&(k.key==="Home"||k.key==="End")){let A2=s>=0?s:Z.focusedIndex,G2=L(A2),Y2=L(Z.focusedIndex);if(G2>=0&&Y2>=0)S(A2,Z.focusedIndex);O=Z.focusedIndex,J2=!0}}if(Q&&J==="single"&&!J2&&e&&Z.focusedIndex>=0){let U2=u(Z.focusedIndex);if(U2)m(U2.id,U2);J2=!0}if(Z2){if(k.preventDefault(),e&&Z.focusedIndex>=0){if(b||!y.navigate)d(Z.focusedIndex);p(Z.focusedIndex)}if(J2)z();else if(e){if(q(),Z.focusedIndex>=0){let U2=u(Z.focusedIndex);if(U2)D.emit("focus:change",{id:U2.id,index:Z.focusedIndex})}}}});T.registerMethod("select",(...k)=>{for(let R of k)m(R);z()}),T.registerMethod("deselect",(...k)=>{for(let R of k)j2(R);z()}),T.registerMethod("toggleSelect",(k)=>{o(k),z()}),T.registerMethod("selectAll",()=>{if(J!=="multiple")return;w(T),l(),z()}),T.registerMethod("clearSelection",()=>{g(),z()}),T.registerMethod("getSelected",()=>{return Y0(Z.selected)}),T.registerMethod("getSelectedItems",()=>{return r()}),T.registerMethod("selectNext",()=>{w(T);let k=G();if(k===0)return;if(l2(Z,1,k,i.reverse),M)Z.focusedIndex=E(Z.focusedIndex,1,k);let R=u(Z.focusedIndex);if(R)m(R.id,R);z()}),T.registerMethod("selectPrevious",()=>{w(T);let k=G();if(k===0)return;if(l2(Z,-1,k,i.reverse),M)Z.focusedIndex=E(Z.focusedIndex,-1,k);let R=u(Z.focusedIndex);if(R)m(R.id,R);z()}),T.registerMethod("_seedSelection",(k)=>{if(J==="single"){if(k.length===1)Z.selected.add(k[0])}else for(let R of k)Z.selected.add(R)}),T.registerMethod("_isFollowFocus",()=>Q),T.registerMethod("_getFocusedId",()=>{if(Z.focusedIndex<0)return;return u(Z.focusedIndex)?.id}),T.registerMethod("_focusById",(k)=>{let R=A.totalItems;for(let y=0;y<R;y++){if(M?.(y))continue;let s=u(y);if(s&&s.id===k){Z.focusedIndex=y,Z.focusVisible=j,D.emit("focus:change",{id:k,index:y});return}}})},destroy(){C.clear()}}}var B0=($)=>$==null?0:typeof $==="function"?$():$;function P0($){let J=$?.scrollPadding,Q,j;return{name:"page",priority:5,setup(U){let{dom:Z,sizeCache:K,config:q,emitter:D}=U,N=q.axis.primary==="x",_=window,A=U.getState();if(U.disableDefaultScroll(),U.disableDefaultResize(),Z.root.style.overflow="visible",Z.root.style.height="auto",N)Z.viewport.style.overflowX="visible",Z.viewport.style.overflowY="visible";else Z.viewport.style.overflow="visible";Z.viewport.classList.remove(`${q.classPrefix}-viewport--custom-scrollbar`),U.setScrollFns(()=>{let M=Z.viewport.getBoundingClientRect();return Math.max(0,N?-M.left:-M.top)},(M)=>{let b=Z.viewport.getBoundingClientRect(),G=(N?b.left+_.scrollX:b.top+_.scrollY)+M;if(N)_.scrollTo({left:G,top:_.scrollY,behavior:"instant"});else _.scrollTo({left:_.scrollX,top:G,behavior:"instant"})}),A.containerSize=N?_.innerWidth:_.innerHeight,A.crossSize=N?_.innerHeight:_.innerWidth;let F=null,O=()=>{let M=Z.viewport.getBoundingClientRect(),b=Math.max(0,N?-M.left:-M.top);if(A.prevScrollPosition=A.scrollPosition,A.scrollPosition=b,A.scrollDirection=b>A.prevScrollPosition?1:b<A.prevScrollPosition?-1:0,U.onScrollFrame(),F!==null)clearTimeout(F);F=setTimeout(()=>{F=null,U.onScrollIdle()},150)};_.addEventListener("scroll",O,{passive:!0}),j=()=>_.removeEventListener("scroll",O);let{innerWidth:C,innerHeight:B}=_,P=()=>{let{innerWidth:M,innerHeight:b}=_;if((N?Math.abs(M-C):Math.abs(b-B))<1)return;C=M,B=b,A.containerSize=N?M:b,A.crossSize=N?b:M,U.forceRender(),D.emit("resize",{width:M,height:b})};if(_.addEventListener("resize",P),Q=()=>_.removeEventListener("resize",P),J)U.setScrollToPosFn((M,b,G,Y,w)=>{let L=B0(N?J.left:J.top),X=B0(N?J.right:J.bottom);if(Y===0)return 0;let h=Math.max(0,Math.min(M,Y-1)),u=b.getOffset(h),E=b.getSize(h),m=b.getTotalSize(),o=Math.max(0,m-G+X),g;switch(w){case"center":g=u-L-(G-L-X-E)/2;break;case"end":g=u-G+E+X;break;default:g=u-L}return Math.max(-L,Math.min(g,o))}),U.registerMethod("_scrollItemIntoView",(M)=>{let b=N?_.innerWidth:_.innerHeight,G=B0(N?J.left:J.top),Y=B0(N?J.right:J.bottom),w=Z.viewport.getBoundingClientRect(),L=N?_.scrollX:_.scrollY,X=N?w.left:w.top,h=X+L,u=K.getOffset(M),E=K.getSize(M),m=X+u,o=b-Y,g=L;if(m<G)g=h+u-G;else if(m+E>o)g=h+u+E-o;if(g!==L)if(N)_.scrollTo({left:g,top:_.scrollY,behavior:"instant"});else _.scrollTo({left:_.scrollX,top:g,behavior:"instant"})});U.registerDestroyHandler(()=>{if(j?.(),Q?.(),F!==null)clearTimeout(F)})},destroy(){j?.(),Q?.(),j=void 0,Q=void 0}}}var F4=($)=>{try{let J=sessionStorage.getItem($);if(!J)return;return JSON.parse(J)}catch{return}};function J0($){let J=$?.autoSave,Q=$?.restore??(J?F4(J):void 0),j=!1,U=null;return{name:"snapshots",priority:50,setup(Z){let{sizeCache:K,emitter:q}=Z,D=Z.getState(),N=()=>{let{scrollPosition:F,totalItems:O}=D,B=Z.getMethod("getSelected")?.();if(O===0){let X={index:0,offsetInItem:0,total:0};if(B?.length)X.selectedIds=B;return X}let P=K.indexAtOffset(F),M=F-K.getOffset(P);M=Math.max(0,M);let b={index:P,offsetInItem:M,total:O,scrollTop:F},G=K.getSize(P);if(G)b.offsetRatio=M/G;let Y=Z.getMethod("_layoutToDataIndex");if(Y){let X=Y(P);if(X<0){for(let h=P+1;h<O;h++)if(X=Y(h),X>=0)break}if(X>=0)b.dataIndex=X}let w=Z.getMethod("_getTotal");if(w)b.dataTotal=w();if(B?.length)b.selectedIds=B;let L=Z.getMethod("_getFocusedId");if(L){let X=L();if(X!==void 0)b.focusedId=X}return b};Z.registerMethod("getScrollSnapshot",N);let _=(F,O=!0)=>{let{index:C,offsetInItem:B,selectedIds:P,focusedId:M}=F,b=D.totalItems,G=F.dataTotal??F.total;if(b===0&&G&&G>0){let l=Z.getMethod("_setTotal");if(l)l(G),b=D.totalItems;K.rebuild(b),Z.updateContentSize(K.getTotalSize()),D.totalSize=K.getTotalSize()}if(b===0)return Promise.resolve();if(!Number.isFinite(C)||!Number.isFinite(B))return Promise.resolve();if(K.getTotal()===0)K.rebuild(b),Z.updateContentSize(K.getTotalSize()),D.totalSize=K.getTotalSize();let w=Z.getMethod("_dataToLayoutIndex"),L=C;if(F.dataIndex!==void 0&&F.dataIndex>=0)L=w?w(F.dataIndex):F.dataIndex;else if(w)L=w(C);let X=Math.max(0,Math.min(L,b-1)),h=K.getSize(X),u=F.offsetRatio!==void 0?F.offsetRatio*h:Math.min(B,h),E=Z.getMethod("_getTotal")?.(),m=F.total===b||E!==void 0&&F.dataTotal===E,o;if(F.scrollTop!==void 0&&m)o=F.scrollTop;else o=K.getOffset(X)+u;let g=Math.max(0,D.totalSize-D.containerSize);if(o=Math.max(0,Math.min(o,g)),Z.scrollTo(o),O&&P?.length){let l=Z.getMethod("select");if(l)l(...P)}let j2=Z.getMethod("loadVisibleRange"),S=()=>{if(M===void 0)return;let l=Z.getMethod("_focusById");if(l)l(M)};return new Promise((l)=>{let r=(z)=>{if(z)S();l()};if(j2){let z=0,f=()=>{if(D.containerSize>0){if(Math.abs(D.scrollPosition-o)>1)Z.scrollTo(o);j2().then(()=>r(!0),()=>r(!1))}else if(++z<10)requestAnimationFrame(f);else r(!1)};requestAnimationFrame(f)}else{let z=Z.getMethod("reload");if(z)requestAnimationFrame(()=>{z().then(()=>r(!0),()=>r(!1))});else requestAnimationFrame(()=>r(!0))}})};Z.registerMethod("restoreScroll",_);let A=!!(Q&&J);if(Z.registerDestroyHandler(()=>{j=!0}),J){U=()=>{if(j||A)return;let b=N();try{sessionStorage.setItem(J,JSON.stringify(b))}catch{}},Z.registerMethod("_saveSnapshot",U);let F=0,O=()=>{if(F)return;F=requestAnimationFrame(()=>{if(F=0,U)U()})};q.on("selection:change",O),q.on("focus:change",O);let C=0,B=()=>{if(C=0,U)U()},P=()=>{if(C)clearTimeout(C);C=setTimeout(B,300)};q.on("scroll",P);let M=()=>{U?.()};if(window.addEventListener("beforeunload",M),Z.registerDestroyHandler(()=>{if(F)cancelAnimationFrame(F);if(C)clearTimeout(C);window.removeEventListener("beforeunload",M)}),Q&&Q.total&&Q.total>0){let b=Z.getMethod("_cancelAutoLoad");if(b)b();let G=Z.getMethod("_setTotal");if(G)G(Q.total)}}if(Q){let F=!0;if(Q.selectedIds?.length){let O=Z.getMethod("_seedSelection");if(O)O(Q.selectedIds),F=!1}queueMicrotask(()=>{if(_(Q,F),A=!1,U)U()})}},hooks:{onIdle(){if(U&&!j)U()}},destroy(){j=!0,U=null}}}function S1($,J){if(J===!1)return null;return{duration:Math.min(J?.duration??$.duration,1000),easing:J?.easing??$.easing}}function w0($){let J=$?.duration??200,Q=$?.easing??"cubic-bezier(0.2, 0, 0, 1)",j={duration:J,easing:Q},U=S1(j,$?.remove),Z=S1(j,$?.insert),K=null,q=null;return{name:"transition",conflicts:["grid","table","masonry"],priority:45,setup(D){let{sizeCache:N,emitter:_}=D,A=D.config,F=D.dom,O=D.getState(),C=A.reverse?"bottom center":"top center",B=A.axis.primary==="x"?"translateX":"translateY",P=D.getMethod("_dataToLayoutIndex")??null,M=(Y)=>P?P(Y):Y,b=(Y)=>{let w=String(Y).replace(/"/g,"\\\""),L=F.content.querySelector(`[data-id="${w}"]`),X=L?parseInt(L.dataset.index??"-1",10):-1;return{el:L,layoutIndex:X}},G=()=>{let Y=F.content.children;for(let w=0;w<Y.length;w++)Y[w].style.transition="none";F.content.offsetHeight;for(let w=0;w<Y.length;w++)Y[w].style.transition=""};if(U){let Y=(L)=>{if(K)K();let X=typeof document<"u"?document.activeElement:null,h=X&&F.content.contains(X)?parseInt(X.dataset?.index??"-1",10):-1,u=b(L),E=u.layoutIndex,m=u.el,o=E>=0?N.getSize(E):0,g=E>=0?N.getOffset(E):0;if(!m||E<0){if(D.removeItemById(L)<0)return!1;if(D.forceRender(),G(),_.emit("data:change",{type:"remove",id:L}),h>=0){let a=O.totalItems;if(a>0)D.getRenderedElement(Math.min(h,a-1))?.focus()}return _.emit("remove:end",{id:L}),!0}let j2=m.cloneNode(!0);j2.style.pointerEvents="none",j2.style.overflow="hidden",j2.removeAttribute("data-index"),j2.removeAttribute("data-id"),j2.removeAttribute("id"),j2.removeAttribute("aria-selected"),j2.classList.remove(`${A.classPrefix}-item--selected`);let S=A.axis.primary==="x"?"scrollLeft":"scrollTop",l=F.viewport[S];if(D.removeItemById(L)<0)return!1;D.forceRender(),G(),_.emit("data:change",{type:"remove",id:L});let z=l-F.viewport[S];j2.style.zIndex="1",F.content.appendChild(j2);let f=U,V={duration:f.duration,easing:f.easing},T=[],i=Math.round(g-z);T.push(j2.animate([{transform:`${B}(${i}px) scaleY(1)`,opacity:1,transformOrigin:C},{transform:`${B}(${Math.round(g)}px) scaleY(0)`,opacity:0,transformOrigin:C}],V));let n=z>0,I=F.content.children;for(let p=0;p<I.length;p++){let a=I[p];if(a===j2)continue;let W=parseInt(a.dataset?.index??"-1",10);if(W<0||!n&&W<E)continue;let k=N.getOffset(W),R=W>=E?Math.round(k+o-z):Math.round(k-z),y=Math.round(k);if(R===y)continue;T.push(a.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],V))}let H=!1,d=()=>{if(H)return;H=!0,K=null,j2.remove();for(let p of T)if(p.playState!=="finished")p.cancel();if(h>=0){let p=O.totalItems;if(p>0)D.getRenderedElement(Math.min(h,p-1))?.focus()}_.emit("remove:end",{id:L})};return K=d,Promise.all(T.map((p)=>p.finished)).then(d,d),setTimeout(d,f.duration+50),!0},w=(L)=>{if(L.length===0)return 0;if(L.length===1)return Y(L[0])?1:0;if(K)K();if(q)q();let X=typeof document<"u"?document.activeElement:null,h=X&&F.content.contains(X)?parseInt(X.dataset?.index??"-1",10):-1,u=[];for(let H of L){let d=b(H);u.push({id:H,layoutIndex:d.layoutIndex,el:d.el,size:d.layoutIndex>=0?N.getSize(d.layoutIndex):0,offset:d.layoutIndex>=0?N.getOffset(d.layoutIndex):0})}u.sort((H,d)=>d.layoutIndex-H.layoutIndex);let E=[];for(let H of u){if(!H.el||H.layoutIndex<0)continue;let d=H.el.cloneNode(!0);d.style.pointerEvents="none",d.style.overflow="hidden",d.removeAttribute("data-index"),d.removeAttribute("data-id"),d.removeAttribute("id"),d.removeAttribute("aria-selected"),d.classList.remove(`${A.classPrefix}-item--selected`),E.push({clone:d,offset:H.offset,size:H.size,layoutIndex:H.layoutIndex})}let m=new Map,o=F.content.children;for(let H=0;H<o.length;H++){let d=o[H],p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(p&&a>=0)m.set(p,N.getOffset(a))}let g=A.axis.primary==="x"?"scrollLeft":"scrollTop",j2=F.viewport[g],S=[];for(let H of u)if(D.removeItemById(H.id)>=0)S.push(H.id);if(S.length===0)return 0;D.forceRender(),G();for(let H of S)_.emit("data:change",{type:"remove",id:H});if(E.length===0){if(h>=0){let H=O.totalItems;if(H>0)D.getRenderedElement(Math.min(h,H-1))?.focus()}for(let H of S)_.emit("remove:end",{id:H});return S.length}let l=j2-F.viewport[g],r=U,z={duration:r.duration,easing:r.easing},f=[];E.sort((H,d)=>H.layoutIndex-d.layoutIndex);let V=0;for(let H of E){H.clone.style.zIndex="1",F.content.appendChild(H.clone);let d=Math.round(H.offset-l),p=Math.round(H.offset-V);f.push(H.clone.animate([{transform:`${B}(${d}px) scaleY(1)`,opacity:1,transformOrigin:C},{transform:`${B}(${p}px) scaleY(0)`,opacity:0,transformOrigin:C}],z)),V+=H.size}let T=new Set(E.map((H)=>H.clone)),i=F.content.children;for(let H=0;H<i.length;H++){let d=i[H];if(T.has(d))continue;let p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(!p||a<0)continue;let W=m.get(p);if(W===void 0)continue;let k=N.getOffset(a),R=Math.round(W-l),y=Math.round(k);if(R===y)continue;f.push(d.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],z))}let n=!1,I=()=>{if(n)return;n=!0,K=null;for(let{clone:H}of E)H.remove();for(let H of f)if(H.playState!=="finished")H.cancel();if(h>=0){let H=O.totalItems;if(H>0)D.getRenderedElement(Math.min(h,H-1))?.focus()}for(let H of S)_.emit("remove:end",{id:H})};return K=I,Promise.all(f.map((H)=>H.finished)).then(I,I),setTimeout(I,r.duration+50),S.length};D.registerMethod("removeItem",Y),D.registerMethod("removeItems",w)}if(Z){let Y=(w,L)=>{if(q)q();if(K)K();let X=L??0,h=new Map,u=F.content.children;for(let H=0;H<u.length;H++){let d=u[H],p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(p&&a>=0)h.set(p,N.getOffset(a))}let E=A.axis.primary==="x"?"scrollLeft":"scrollTop",m=A.axis.primary==="x"?"scrollWidth":"scrollHeight",o=A.axis.primary==="x"?"clientWidth":"clientHeight",g=F.viewport[E],j2=F.viewport[m]-F.viewport[o],S=g>=j2-1;D.insertItemAt(w,X),D.forceRender(),G(),_.emit("data:change",{type:"insert",id:w.id});let l=F.viewport[E]-g,r=M(X);if(A.reverse&&l===0&&S){F.viewport[E]=F.viewport[m]-F.viewport[o];let H=F.viewport[E];if(O.prevScrollPosition=O.scrollPosition,O.scrollPosition=H,l=H-g,l>0)D.forceRender(),G()}let z=D.getRenderedElement(r),f=Z,V={duration:f.duration,easing:f.easing},T=[];if(z){let H=N.getOffset(r);T.push(z.animate([{transform:`${B}(${Math.round(H)}px) scaleY(0)`,opacity:0,transformOrigin:C},{transform:`${B}(${Math.round(H)}px) scaleY(1)`,opacity:1,transformOrigin:C}],V))}let i=F.content.children;for(let H=0;H<i.length;H++){let d=i[H];if(d===z)continue;let p=d.dataset?.id,a=parseInt(d.dataset?.index??"-1",10);if(!p||a<0)continue;let W=h.get(p);if(W===void 0)continue;let k=N.getOffset(a),R=Math.round(W+l),y=Math.round(k);if(R===y)continue;T.push(d.animate([{transform:`${B}(${R}px)`},{transform:`${B}(${y}px)`}],V))}if(T.length===0)return;let n=!1,I=()=>{if(n)return;n=!0,q=null;for(let H of T)if(H.playState!=="finished")H.cancel()};q=I,Promise.all(T.map((H)=>H.finished)).then(I,I),setTimeout(I,f.duration+50)};D.registerMethod("insertItem",Y)}},destroy(){if(K)K();if(q)q()}}}function z0($){let J=$?.gap??0,Q=null,j=null,U,Z,K,q,D=new Map,N=new WeakMap,_=0,A=!1,F=!1,O=!1,C=2;function B(Y){return D.get(Y)??q}function P(){return Math.max(0,j.sizeCache.getTotalSize()+j.config.mainAxisPadding-U.containerSize)}function M(){let Y=P();return Y>0&&U.scrollPosition>=Y-C}function b(){let Y=P();if(Y>U.scrollPosition)j.scrollTo(Y)}function G(){j.updateContentSize(j.sizeCache.getTotalSize())}return{name:"autosize",priority:5,setup(Y){if(j=Y,U=Y.getState(),Z=Y.config.axis.primary==="x",K=Z?"width":"height",J===0)J=Y.config.gap;if(q=typeof Y.rawSizeSpec==="function"?Y.rawSizeSpec(0)+J:Y.rawSizeSpec+J,Y.setSizeConfig(B),J>0){let X=Y.sizeCache.getTotalSize;Y.sizeCache.getTotalSize=()=>{let h=X();return h>0?h-J:0}}Q=new ResizeObserver((X)=>{if(U.destroyed||!j)return;let h=!1,u=Y.sizeCache.indexAtOffset(U.scrollPosition);for(let j2 of X){let S=j2.target,l=N.get(S);if(l===void 0)continue;if(S.getAttribute("data-index")!==String(l)){Q.unobserve(S);continue}if(D.has(l))continue;let r=j2.borderBoxSize[0];if(!r)continue;let z=Z?r.inlineSize:r.blockSize;if(z<=0)continue;let f=z+J,V=q;if(D.set(l,f),h=!0,l<u&&f!==V)_+=f-V;Q.unobserve(S),S.style[K]=`${z}px`}if(!h)return;let E=M();if(Y.rebuildSizeCache(),_)Y.scrollTo(U.scrollPosition+_),_=0;let m=U.scrollDirection!==0,o=U.totalItems>0&&U.prevRangeEnd>=U.totalItems-1,g=F&&!O;if(g||E||o||!m){if(G(),A=!1,g||E)b()}else A=!0;Y.forceRender()}),Y.setScrollToIndexFn((X,h,u,E,m)=>{let o=X>=U.totalItems-1&&h==="end";if(F=o,O=!1,!o)return!1;let g=Y.config.mainAxisPadding,j2=()=>{let S=Y.sizeCache.getTotalSize();return Math.max(0,S+g-U.containerSize)};if(u==="smooth")O=!0,Y.smoothScrollTo(j2,E??300,m,()=>{O=!1});else Y.scrollTo(j2())});let w=()=>{F=!1},L=Y.dom.viewport;L.addEventListener("wheel",w,{passive:!0}),L.addEventListener("touchstart",w,{passive:!0}),Y.registerDestroyHandler(()=>{L.removeEventListener("wheel",w),L.removeEventListener("touchstart",w)}),Y.registerMethod("isMeasured",(X)=>D.has(X)),Y.registerMethod("setMeasuredSize",(X,h)=>{D.set(X,h)}),Y.registerMethod("getMeasuredCount",()=>D.size),Y.registerDestroyHandler(()=>{if(Q)Q.disconnect(),Q=null})},hooks:{onCommit(Y){if(!Q||!j)return;for(let w=0;w<Y.visibleCount;w++){let L=Y.visibleIndices[w];if(D.has(L))continue;let X=j.getRenderedElement(L);if(!X)continue;X.style[K]="",N.set(X,L),Q.observe(X)}},onIdle(){if(!j||!A)return;let Y=M();if(G(),A=!1,Y)b(),j.forceRender()}},destroy(){if(Q)Q.disconnect(),Q=null;D.clear(),F=!1,O=!1,j=null}}}var h1=($)=>{let J=Math.max(1,Math.floor($.columns)),Q=$.gap??0,j=$.containerSize,U=$.crossOffset??0,Z=$.mainOffset??0,K=0,q=[],D=()=>{let M=(J-1)*Q;K=Math.max(0,(j-M)/J),q=Array(J);let b=K+Q;for(let G=0;G<J;G++)q[G]=U+G*b};D();let N=[],_=0,A=[],F=(M,b)=>{if(M<=0)return _=0,N=[],[];let G=Array(J).fill(Z),Y=Array(J);for(let X=0;X<J;X++)Y[X]=[];let w=Array(M);for(let X=0;X<M;X++){let h=0,u=G[0];for(let o=1;o<J;o++){let g=G[o];if(g<u)u=g,h=o}let E=b(X),m=G[h];w[X]={index:X,x:q[h],y:m,lane:h,size:E,crossSize:K},Y[h].push(X),G[h]=m+E+Q}N=Y;let L=0;for(let X=0;X<J;X++){let h=G[X],u=h>0?h-Q:0;if(u>L)L=u}return _=L,w},O=(M)=>{if(M.length===0)return _;if(_)return _;let b=Array(J).fill(0);for(let Y of M){let w=Y.y+Y.size,L=b[Y.lane];if(w>L)b[Y.lane]=w}let G=0;for(let Y=0;Y<J;Y++)if(b[Y]>G)G=b[Y];return G},C=(M,b,G)=>{if(M.length===0||G<=b)return A.length=0,A;if(N.length===0||N.length!==J)return B(M,b,G);A.length=0;for(let Y=0;Y<J;Y++){let w=N[Y],L=w.length;if(!L)continue;let X=0,h=L;while(X<h){let u=X+h>>>1,E=M[w[u]];if(E.y+E.size<=b)X=u+1;else h=u}for(let u=X;u<L;u++){let E=M[w[u]];if(E.y>=G)break;A.push(E)}}return A},B=(M,b,G)=>{A.length=0;for(let Y of M)if(Y.y+Y.size>b&&Y.y<G)A.push(Y);return A};return{get columns(){return J},get gap(){return Q},get containerSize(){return j},update:(M)=>{let b=!1;if(M.columns!==void 0){let G=Math.max(1,Math.floor(M.columns));if(G!==J)J=G,b=!0}if(M.gap!==void 0&&M.gap!==Q)Q=M.gap,b=!0;if(M.containerSize!==void 0&&M.containerSize!==j)j=M.containerSize,b=!0;if(M.crossOffset!==void 0&&M.crossOffset!==U)U=M.crossOffset,b=!0;if(M.mainOffset!==void 0&&M.mainOffset!==Z)Z=M.mainOffset,b=!0;if(b)D()},calculateLayout:F,getTotalSize:O,getVisibleItems:C}};var I1=($,J,Q)=>{let j=Array.from(J).sort((K,q)=>K-q);if(j.length<=1)return;let U=[];for(let K=0;K<j.length;K++){let q=Q(j[K]);if(q)U.push(q)}if(U.length<=1)return;let Z=$.firstChild;for(let K=0;K<U.length;K++){let q=U[K];if(q===Z)Z=Z.nextSibling;else $.insertBefore(q,Z)}};var R4=($=200)=>{let J=[];return{acquire:()=>{let Z=J.pop();if(Z)return Z;let K=document.createElement("div");return K.setAttribute("role","option"),K},release:(Z)=>{if(Z.remove(),J.length<$)Z.className="",Z.textContent="",Z.removeAttribute("style"),Z.removeAttribute("data-index"),Z.removeAttribute("data-id"),Z.removeAttribute("data-lane"),J.push(Z)},clear:()=>{J.length=0}}},E4=1,f1=($,J,Q,j=!1,U,Z,K,q,D=()=>0)=>{let N=R4(),_=new Map,A=new Set,F=0,O="",C=-1,B={selected:!1,focused:!1},P=(S,l)=>{return B.selected=S,B.focused=l,B},M=`${Q}-item ${Q}-masonry-item`,b=`${Q}-group-header`,G=`${Q}-item--selected`,Y=`${Q}-item--focused`,w=(S,l)=>{if(typeof l==="string")S.innerHTML=l;else S.replaceChildren(l);u2(S)},L=(S,l,r)=>{S.classList.toggle(G,l),S.classList.toggle(Y,r)},X=(S,l)=>{let r=Math.round(l.y-D());if(j)S.style.transform=`translate(${r}px, ${Math.round(l.x)}px)`;else S.style.transform=`translate(${Math.round(l.x)}px, ${r}px)`},h=(S,l)=>{if(j)S.style.width=`${l.size}px`,S.style.height=`${l.crossSize}px`;else S.style.width=`${l.crossSize}px`,S.style.height=`${l.size}px`},u=(S,l,r,z,f)=>{let V=N.acquire(),T=l.__groupHeader,i=P(z,f);if(V.className=T?b:M,V.dataset.index=String(S),V.dataset.id=String(l.id),V.dataset.lane=String(r.lane),T)V.setAttribute("role","presentation"),V.removeAttribute("aria-selected"),V.removeAttribute("aria-setsize"),V.removeAttribute("aria-posinset"),V.removeAttribute("id");else if(q===!0){if(V.setAttribute("role","option"),V.ariaSelected=String(z),Z)V.id=`${Z}-item-${S}`;if(U){let I=U();if(I!==C)C=I,O=String(I);V.setAttribute("aria-setsize",O);let H=K?K(S):S+1;V.setAttribute("aria-posinset",String(H))}}else if(V.setAttribute("role","listitem"),V.removeAttribute("aria-selected"),U){let I=U();if(I!==C)C=I,O=String(I);V.setAttribute("aria-setsize",O);let H=K?K(S):S+1;V.setAttribute("aria-posinset",String(H))}h(V,r);let n=J(l,S,i);return w(V,n),L(V,z,f),X(V,r),{element:V,lastItem:l,lastSelected:z,lastFocused:f,lastY:r.y-D(),lastX:r.x,lastSize:r.size,lastCrossSize:r.crossSize,lastSeenFrame:F}},E=(S,l,r,z)=>{F++,A.clear();for(let V=0;V<l.length;V++)A.add(l[V].index);let f=null;for(let V=0;V<l.length;V++){let T=l[V],i=T.index,n=S(i);if(!n)continue;let I=r.has(n.id),H=i===z,d=_.get(i);if(d){let p=d.lastItem!==n,a=d.lastSelected!==I,W=d.lastFocused!==H,k=d.lastY!==T.y-D()||d.lastX!==T.x,R=d.lastSize!==T.size||d.lastCrossSize!==T.crossSize;if(p){let y=P(I,H),s=J(n,i,y);if(w(d.element,s),d.element.dataset.id=String(n.id),d.lastItem=n,!n.__groupHeader){let J2=K?K(i):i+1;d.element.setAttribute("aria-posinset",String(J2))}}if(p||a||W)L(d.element,I,H),d.element.ariaSelected=String(I),d.lastSelected=I,d.lastFocused=H;if(R)h(d.element,T),d.lastSize=T.size,d.lastCrossSize=T.crossSize;if(k)X(d.element,T),d.lastY=T.y-D(),d.lastX=T.x}else{let p=u(i,n,T,I,H);if(!f)f=document.createDocumentFragment();f.appendChild(p.element),_.set(i,p)}}if(f)$.appendChild(f);for(let[V,T]of _)if(A.has(V))T.lastSeenFrame=F;else if(F-T.lastSeenFrame>E4)N.release(T.element),_.delete(V)},m=()=>{for(let S of _.values())N.release(S.element);_.clear(),$.innerHTML=""};return{render:E,getElement:(S)=>_.get(S)?.element,updateItemClasses:(S,l,r)=>{let z=_.get(S);if(!z)return;let f=z.lastSelected!==l,V=z.lastFocused!==r;if(f||V)L(z.element,l,r),z.lastSelected=l,z.lastFocused=r},sortDOM:()=>{I1($,_.keys(),(S)=>_.get(S)?.element)},clear:m,destroy:()=>{m(),N.clear()}}};var k4=100,b4=new Set;function y0($){if(!$.columns||$.columns<1)throw Error("[vlist] masonry: columns must be >= 1");let J,Q=null,j,U=null,Z,K,q,D=[],N=-1,_=-1,A=!0,F=-1,O=-1,C=0,B=0,P=0,M=0,b={columnWidth:0,columns:0,gap:0,containerWidth:0},G=[],Y=(W)=>G[W],w=null,L=null,X=!1;function h(){if(X||!U)return;X=!0,w=U.getMethod("_getSelectedIds")??null,L=U.getMethod("_getFocusedIndex")??null}let u=[],E=new Int32Array(0),m=[],o=null,g=null,j2=null,S=null,l=!1,r=!0;function z(){if(l||!U)return;if(o=U.getMethod("_getItemLane")??null,g=U.getMethod("_getItemY")??null,j2=U.getMethod("_getItemH")??null,S=U.getMethod("_isGroupHeader")??null,o||S)l=!0}function f(){z();let W=J.columns,k=!!o;if(k){let R=j.totalItems;u=Array(W);for(let y=0;y<W;y++)u[y]=[];if(E.length<R)E=new Int32Array(R);for(let y=0;y<R;y++){if(S?.(y))continue;let s=o(y);if(s<0||s>=W)continue;E[y]=u[s].length,u[s].push(y)}}else{let R=D.length;u=Array(W);for(let y=0;y<W;y++)u[y]=[];if(E.length<R)E=new Int32Array(R);for(let y=0;y<R;y++){let s=D[y];E[y]=u[s.lane].length,u[s.lane].push(y)}}m=Array(W);for(let R=0;R<W;R++){let y=u[R],s=new Float64Array(y.length);for(let Z2=0;Z2<y.length;Z2++){let J2=y[Z2];if(k&&g&&j2){let e=g(J2),U2=j2(J2);s[Z2]=e>=0?e+(U2>0?U2*0.5:0):0}else{let e=D[J2];s[Z2]=e.y+e.size*0.5}}m[R]=s}}function V(W,k){let R=W.length;if(!R)return-1;let y=0,s=R-1;while(y<s){let Z2=y+s>>1;if(W[Z2]<k)y=Z2+1;else s=Z2}if(y>0&&Math.abs(W[y-1]-k)<=Math.abs(W[y]-k))return y-1;return y}function T(W,k,R){if(r)f(),r=!1;let y=!!o,s,Z2;if(y){if(S?.(W))return W;if(s=o(W),s<0)return W;Z2=E[W]}else{let $2=D[W];if(!$2)return W;s=$2.lane,Z2=E[W]}let J2=J.columns,e=u[s];switch(Z?k==="ArrowDown"?"ArrowRight":k==="ArrowUp"?"ArrowLeft":k==="ArrowRight"?"ArrowDown":k==="ArrowLeft"?"ArrowUp":k:k){case"ArrowDown":if(Z2+1<e.length)return e[Z2+1];return W;case"ArrowUp":if(Z2>0)return e[Z2-1];return W;case"ArrowRight":{if(s>=J2-1)return W;let $2=s+1,A2=u[$2];if(!A2.length)return W;let G2=V(m[$2],m[s]?.[Z2]??0);return G2>=0?A2[G2]:W}case"ArrowLeft":{if(s<=0)return W;let $2=s-1,A2=u[$2];if(!A2.length)return W;let G2=V(m[$2],m[s]?.[Z2]??0);return G2>=0?A2[G2]:W}case"Home":return 0;case"End":{let $2=u[J2-1];return $2.length>0?$2[$2.length-1]:W}case"PageDown":{let $2=j.containerSize,A2=y?null:D[W],G2=A2&&A2.size>0?A2.size:150,Y2=Math.max(1,Math.floor($2/G2)),v=Math.min(Z2+Y2,e.length-1);return e[v]}case"PageUp":{let $2=j.containerSize,A2=y?null:D[W],G2=A2&&A2.size>0?A2.size:150,Y2=Math.max(1,Math.floor($2/G2)),v=Math.max(0,Z2-Y2);return e[v]}}return W}let i=null;function n(){if($.size)return(W)=>$.size(W,b);if(i!==null&&typeof i==="function")return(W)=>i(W,b);return(W)=>U.sizeCache.getSize(W)}function I(){let{columns:W,gap:k}=J;b.containerWidth=J.containerSize,b.columns=W,b.gap=k,b.columnWidth=Math.max(0,(J.containerSize-(W-1)*k)/W)}function H(){if(!U)return;I();let W=j.totalItems;D=J.calculateLayout(W,n()),F=W,r=!0,d()}function d(){if(!U)return;let W=J.getTotalSize(D)+M;if(W===O)return;O=W,U.updateContentSize(W)}function p(){if(j.destroyed||!U||!Q)return;if(j.totalItems!==F)H();if(A)O=-1,d();h();let{scrollPosition:W,containerSize:k}=j;if(!A&&W===N&&k===_)return;if(N=W,_=k,A=!1,k<=0||D.length===0)return;let R=Math.max(0,W-q),y=W+k+q,s=J.getVisibleItems(D,R,y),Z2=w?.()??b4,J2=L?.()??-1;G=U.getItems(),Q.render(Y,s,Z2,J2);let e=s.length,U2=e>0?s[0].index:0,$2=e>0?s[e-1].index:0;j.prevRangeStart=U2,j.prevRangeEnd=$2,j.renderPending=!1;let A2=Math.min(e,j.capacity);j.visibleCount=A2,j.startIndex=U2;for(let G2=0;G2<A2;G2++){let Y2=s[G2];j.visibleIndices[G2]=Y2.index,j.visibleOffsets[G2]=Y2.y,j.visibleSizes[G2]=Y2.size}}function a(){if(j.destroyed)return;O=-1,H(),j.prevRangeStart=-1,j.prevRangeEnd=-1,j.renderPending=!0,A=!0,p()}return{name:"masonry",priority:10,conflicts:["grid","table"],setup(W){if(U=W,j=W.getState(),i=W.rawSizeSpec,Z=W.config.axis.primary==="x",K=W.config.classPrefix,q=W.config.overscan*k4,W.config.reverse)throw Error("[vlist] masonry: cannot be combined with reverse mode");C=W.config.crossAxisPadding,B=W.config.crossPadStart,P=W.config.startPadding,M=W.config.endPadding;let k=j.crossSize-C;J=h1({columns:$.columns,gap:$.gap??0,containerSize:k,crossOffset:B,mainOffset:P}),Q=f1(W.dom.content,W.template,K,Z,()=>j.totalItems,void 0,void 0,void 0,()=>j.baseOffset),W.dom.root.classList.add(`${K}--masonry`),W.setRenderFn(p,a),H(),W.registerMethod("getMasonryLayout",()=>J),W.registerMethod("updateMasonry",(R)=>{if(R.columns!==void 0&&R.columns<1)throw Error("[vlist] updateMasonry: columns must be >= 1");if(R.gap!==void 0&&R.gap<0)throw Error("[vlist] updateMasonry: gap must be >= 0");let y={};if(R.columns!==void 0)y.columns=R.columns;if(R.gap!==void 0)y.gap=R.gap;J.update(y),Q?.clear(),a()}),W.registerMethod("scrollToIndex",(R,y="start")=>{let s=D[R];if(!s)return;let Z2=typeof y==="string"?y:y.align??"start",J2=typeof y==="object"?y.behavior:void 0,e=typeof y==="object"?y.duration:void 0,U2=j.containerSize,$2=J.getTotalSize(D)+M,A2=Math.max(0,$2-U2),G2=s.y;if(Z2==="center")G2=s.y-U2/2+s.size/2;else if(Z2==="end"){if(G2=s.y-U2+s.size,R>=j.totalItems-1&&s.y+s.size>A2)G2=A2}if(G2=Math.max(0,Math.min(G2,A2)),J2==="smooth"&&e&&e>0)W.smoothScrollTo(G2,e);else W.scrollTo(G2)}),W.registerMethod("_scrollItemIntoView",(R)=>{let y=D[R];if(!y)return;let{scrollPosition:s,containerSize:Z2}=j,J2=J.getTotalSize(D)+M,e=Math.max(0,J2-Z2),U2=y.y,$2=U2+y.size;if(U2-P<s)W.scrollTo(Math.max(0,U2-P));else if($2+M>s+Z2){let A2=u[J.columns-1];if(A2&&A2.length>0&&R===A2[A2.length-1]&&U2>=e)W.scrollTo(e);else W.scrollTo(Math.min($2+M-Z2,e))}}),W.setNavConfig({total:()=>j.totalItems,navigate:T}),W.registerDestroyHandler(()=>{Q?.destroy(),Q=null,W.dom.root.classList.remove(`${K}--masonry`)})},hooks:{onResize(W,k){if(!J||!U)return;let R=j.crossSize-C;if(Math.abs(R-J.containerSize)<1)return;J.update({containerSize:R}),Q?.clear(),a()},onIdle(){Q?.sortDOM()}},destroy(){Q?.destroy(),Q=null,D=[],U=null}}}var p1=($={})=>{let{chunkSize:J=100,maxCachedItems:Q=5000,evictionBuffer:j=200,onEvict:U}=$,Z=new Map,K=0,q=0,D=(r)=>{let z=Z.get(r);if(!z)z={items:Array(J),count:0,lastAccess:Date.now()},Z.set(r,z);else z.lastAccess=Date.now();return z},N=(r)=>{return Math.floor(r/J)},_=(r)=>{return r%J},A=()=>K,F=(r)=>{K=r},O=(r)=>{if(r<0||r>=K)return;let z=N(r),f=Z.get(z);if(!f)return;return f.items[_(r)]},C=(r)=>{if(r<0||r>=K)return!1;let z=N(r),f=Z.get(z);if(!f)return!1;return f.items[_(r)]!==void 0},B=(r,z)=>{let f=N(r),V=D(f),T=_(r),i=V.items[T]===void 0;if(V.items[T]=z,i)V.count++,q++;if(r>=K)K=r+1},P=(r,z)=>{for(let f=0;f<z.length;f++){let V=z[f];if(V!==void 0)B(r+f,V)}},M=(r,z)=>{if(r<0||r>K)return;let f=N(r),V=Array.from(Z.keys()).filter((H)=>H>=f).sort((H,d)=>H-d),T=[];for(let H of V){let d=Z.get(H),p=H*J;for(let a=0;a<J;a++){if(d.items[a]===void 0)continue;let W=p+a;if(W<r)continue;T.push({oldIndex:W,item:d.items[a]})}}for(let{oldIndex:H}of T){let d=N(H),p=Z.get(d);if(!p)continue;let a=_(H);if(p.items[a]!==void 0){if(p.items[a]=void 0,p.count--,q--,p.count===0)Z.delete(d)}}K++;for(let{oldIndex:H,item:d}of T){let p=H+1,a=N(p),W=D(a),k=_(p);W.items[k]=d,W.count++,q++}let i=N(r),n=D(i),I=_(r);n.items[I]=z,n.count++,q++},b=(r)=>{if(r<0||r>=K)return!1;let z=N(r),f=Z.get(z),V=_(r);if(!(f!==void 0&&f.items[V]!==void 0))return!1;let i=z,n=Array.from(Z.keys()).filter((H)=>H>=i).sort((H,d)=>H-d),I=[];for(let H of n){let d=Z.get(H),p=H*J;for(let a=0;a<J;a++){if(d.items[a]===void 0)continue;let W=p+a;if(W<=r)continue;I.push({oldIndex:W,item:d.items[a]})}}if(f.items[V]=void 0,f.count--,q--,f.count===0)Z.delete(z);for(let{oldIndex:H}of I){let d=N(H),p=Z.get(d);if(!p)continue;let a=_(H);if(p.items[a]!==void 0){if(p.items[a]=void 0,p.count--,q--,p.count===0)Z.delete(d)}}for(let{oldIndex:H,item:d}of I){let p=H-1,a=N(p),W=D(a),k=_(p);W.items[k]=d,W.count++,q++}return K--,!0},G=(r,z)=>{let f=[];for(let V=r;V<=z&&V<K;V++)f.push(O(V));return f},Y=(r,z)=>{for(let f=r;f<=z&&f<K;f++)if(!C(f))return!1;return!0},w=()=>{let r=[],z=null,f=Array.from(Z.keys()).sort((V,T)=>V-T);for(let V of f){let T=Z.get(V);if(!T)continue;let i=V*J;for(let n=0;n<J;n++){let I=i+n;if(I>=K)break;if(T.items[n]!==void 0)if(z===null)z={start:I,end:I};else if(I===z.end+1)z.end=I;else r.push(z),z={start:I,end:I};else if(z!==null)r.push(z),z=null}}if(z!==null)r.push(z);return r},L=(r,z)=>{let f=[],V=null;for(let T=r;T<=z&&T<K;T++)if(!C(T))if(V===null)V={start:T,end:T};else V.end=T;else if(V!==null)f.push(V),V=null;if(V!==null)f.push(V);return f},X=(r)=>{return Z.has(r)},h=(r)=>{let z=Z.get(r);if(!z)return!1;let f=r*J,V=Math.min(J,K-f);return z.count>=V},u=(r)=>{let z=Z.get(r);if(z)z.lastAccess=Date.now()},E=(r,z)=>{if(r>z||Z.size===0)return;let f=Date.now(),V=N(Math.max(0,r)),T=N(Math.min(K-1,z));for(let i=V;i<=T;i++){let n=Z.get(i);if(n)n.lastAccess=f}},m=(r,z)=>{if(q<=Q)return 0;let f=Math.max(0,r-j),V=Math.min(K-1,z+j),T=N(f),i=N(V),n=0,I=[];for(let[H,d]of Z)if(H<T||H>i)n+=d.count,I.push(H),q-=d.count,Z.delete(H);if(n>0&&U)U(n,I);return n},o=()=>{if(q<=Q)return 0;let r=Array.from(Z.entries()).sort(([,V],[,T])=>V.lastAccess-T.lastAccess),z=0,f=[];for(let[V,T]of r){if(q<=Q)break;z+=T.count,q-=T.count,f.push(V),Z.delete(V)}if(z>0&&U)U(z,f);return z},g=()=>{return{totalItems:K,cachedItems:q,cachedChunks:Z.size,chunkSize:J,maxCachedItems:Q,memoryEfficiency:K>0?1-q/K:1}},j2=()=>q,S=()=>{Z.clear(),q=0};return{chunkSize:J,maxCachedItems:Q,getTotal:A,setTotal:F,get:O,has:C,set:B,setRange:P,insert:M,delete:b,getRange:G,isRangeLoaded:Y,getLoadedRanges:w,findUnloadedRanges:L,getChunkIndex:N,isChunkLoaded:X,isChunkFullyLoaded:h,touchChunk:u,touchChunksForRange:E,evictDistant:m,evictToLimit:o,getStats:g,getCachedCount:j2,clear:S,reset:()=>{S(),K=0}}};var u1=($={})=>{let{maskCharacter:J=B1,maxSampleSize:Q=_1}=$,j=[],U=!1,Z=(_)=>{if(U||_.length===0)return;let A=Math.min(_.length,Q);for(let F=0;F<A;F++){let O=_[F];if(!O||typeof O!=="object")continue;let C={},B=!1;for(let[P,M]of Object.entries(O)){if(P.startsWith("_")||P==="id")continue;C[P]=String(M??"").length,B=!0}if(B)j.push(C)}U=!0},K=()=>U,q=(_)=>{let A={id:`${I2}${_}`,[L0]:!0,_index:_};if(j.length===0)return A.label=J.repeat(12),A;let F=j[_%j.length];for(let[O,C]of Object.entries(F))A[O]=J.repeat(Math.max(1,C));return A};return{analyzeStructure:Z,hasAnalyzedStructure:K,generate:q,generateRange:(_,A)=>{let F=[];for(let O=_;O<=A;O++)F.push(q(O));return F},clear:()=>{j=[],U=!1}}},_0=($)=>{if(!$||typeof $!=="object")return!1;return $[L0]===!0};var T4=50,g1=($={})=>{let{adapter:J,initialItems:Q,initialTotal:j,storage:U,placeholder:Z,pageSize:K=T4,maxConcurrent:q=0,onStateChange:D,onDataChange:N,onItemsLoaded:_,onItemsEvicted:A,onLoadError:F}=$,O=p1({...U,onEvict:(Y2,v)=>{A?.(Y2),m(),E()}}),C=null,B=()=>{if(!C)C=u1(Z);return C},P=new Map,M=!1,b,G=!0,Y,w,L=[],X=0,h=new Map,u=()=>{for(let Y2 of h.values())Y2[1].abort();h.clear()},E=()=>{D?.(V())},m=()=>{N?.()},o=()=>{P.clear();let Y2=O.getLoadedRanges();for(let v of Y2)for(let K2=v.start;K2<=v.end;K2++){let Q2=O.get(K2);if(Q2&&!_0(Q2))P.set(Q2.id,K2)}},g=(Y2,v)=>{if(!_0(v))P.set(v.id,Y2)},j2=(Y2)=>{P.delete(Y2)},S=(Y2,v)=>{return`${Y2}-${v}`},l=()=>O.getTotal(),r=()=>O.getCachedCount(),z=()=>M,f=()=>G,V=()=>({total:O.getTotal(),cached:O.getCachedCount(),isLoading:M,pendingRanges:L,error:b,hasMore:G,cursor:Y}),T=()=>O,i=()=>B(),n=(Y2)=>{let v=O.get(Y2);if(v!==void 0)return v;if(Y2>=0&&Y2<O.getTotal())return B().generate(Y2);return},I=(Y2)=>{let v=P.get(Y2);if(v===void 0)return;return O.get(v)},H=(Y2)=>{return P.get(Y2)??-1},d=(Y2)=>{let v=O.get(Y2);return v!==void 0&&!_0(v)},p=(Y2,v)=>{let K2=[],Q2=O.getTotal();O.touchChunksForRange(Y2,Math.min(v,Q2-1));for(let D2=Y2;D2<=v&&D2<Q2;D2++){let T2=O.get(D2);if(T2!==void 0)K2.push(T2);else K2.push(B().generate(D2))}return K2},a=(Y2)=>{O.setTotal(Y2),G=O.getCachedCount()<Y2,m(),E()},W=(Y2,v=0,K2)=>{if(J&&Y2.length>0){let Q2=B();if(!Q2.hasAnalyzedStructure())Q2.analyzeStructure(Y2)}for(let Q2=0;Q2<Y2.length;Q2++){let D2=Y2[Q2];if(D2!==void 0){let T2=v+Q2;O.set(T2,D2),g(T2,D2)}}if(K2!==void 0)O.setTotal(K2);else if(v+Y2.length>O.getTotal())O.setTotal(v+Y2.length);if(O.getCachedCount()>=O.getTotal()&&O.getTotal()>0)G=!1;m(),E(),_?.(Y2,v,O.getTotal())},k=(Y2,v)=>{let K2=O.get(Y2);if(!K2)return!1;let Q2=K2.id,D2={...K2,...v};if(O.set(Y2,D2),v.id!==void 0&&v.id!==Q2)j2(Q2);return g(Y2,D2),m(),E(),!0},R=(Y2,v)=>{O.insert(v,Y2),o(),u(),m(),E()},y=(Y2)=>{let v=P.get(Y2);if(v===void 0)return!1;if(!O.delete(v))return!1;return o(),u(),m(),E(),!0},s=async(Y2,v)=>{if(!J)return;let K2=O.chunkSize,Q2=Math.floor(Y2/K2),D2=Math.floor(v/K2),T2=K2*2;for(let[F2,P2]of h){let z2=F2.indexOf("-"),c=parseInt(F2.slice(0,z2),10);if(Math.abs(c-Y2)>T2)P2[1].abort(),h.delete(F2)}let k2=[],R2=[];for(let F2=Q2;F2<=D2;F2++){let P2=F2*K2,z2=P2+K2-1,c=S(P2,z2);if(O.isChunkFullyLoaded(F2))continue;let B2=h.get(c);if(B2)R2.push(B2[0]);else k2.push({start:P2,end:z2})}if(k2.length===0){if(R2.length>0)await Promise.all(R2);return}if(q>0){let F2=h.size+k2.length;if(F2>q){let P2=(Y2+v)/2,z2=Math.min(F2-q,h.size);while(z2>0){let H2=null,B2=-1,M2=null;for(let[_2,b2]of h){let N2=_2.indexOf("-"),O2=parseInt(_2.slice(0,N2),10),y2=parseInt(_2.slice(N2+1),10),W2=Math.abs((O2+y2)/2-P2);if(W2>B2)B2=W2,H2=_2,M2=b2[1]}if(H2)M2.abort(),h.delete(H2);z2--}let c=q-h.size;if(k2.length>c)k2.sort((H2,B2)=>{let M2=Math.abs((H2.start+H2.end)/2-P2),_2=Math.abs((B2.start+B2.end)/2-P2);return M2-_2}),k2.length=Math.max(0,c)}}if(k2.length===0){if(R2.length>0)await Promise.all(R2);return}for(let F2 of k2){let P2=S(F2.start,F2.end),z2=new AbortController,c=(async()=>{L.push(F2),M=!0,b=void 0,E();try{let H2=F2.end-F2.start+1,B2={offset:F2.start,limit:H2,cursor:F2.start===w?Y:void 0,signal:z2.signal},M2=await J.read(B2);if(W(M2.items,F2.start,M2.total),M2.cursor)Y=M2.cursor,w=F2.start+M2.items.length;let _2=F2.start+M2.items.length;if(_2>=X){if(X=_2,M2.hasMore!==void 0)G=M2.hasMore;else if(M2.total!==void 0)G=_2<M2.total}}catch(H2){if(H2?.name==="AbortError")return;b=H2 instanceof Error?H2:Error(String(H2)),F?.(b,F2)}finally{h.delete(P2);let H2=L.findIndex((B2)=>B2.start===F2.start&&B2.end===F2.end);if(H2>=0)L.splice(H2,1);M=h.size>0,E()}})();h.set(P2,[c,z2]),R2.push(c)}await Promise.all(R2)},Z2=async(Y2,v)=>{if(O.isRangeLoaded(Y2,v))return;await s(Y2,v)},J2=async()=>{if(!J)return;await s(0,K-1)},e=async()=>{if(!J||M||!G)return!1;let Y2=O.getCachedCount(),v=O.getTotal(),K2=Y2,Q2=Math.min(K2+K-1,v>0?v-1:K2+K-1);if(K2>=v&&v>0)return G=!1,!1;return await s(K2,Q2),O.getCachedCount()>Y2},U2=async()=>{if(O.clear(),P.clear(),C)C.clear();u(),L=[],M=!1,Y=void 0,w=void 0,G=!0,X=0,b=void 0,m(),E()},$2=(Y2,v)=>{if(O.evictDistant(Y2,v)>0)o()},A2=()=>{O.clear(),P.clear(),Y=void 0,w=void 0,b=void 0,L=[],M=!1,m(),E()},G2=()=>{if(O.reset(),P.clear(),C)C.clear();Y=void 0,w=void 0,G=!0,X=0,b=void 0,L=[],M=!1,m(),E()};if(Q&&Q.length>0)W(Q,0,j??Q.length);else if(j!==void 0)O.setTotal(j),m(),E();return{getState:V,getTotal:l,getCached:r,getIsLoading:z,getHasMore:f,getStorage:T,getPlaceholders:i,getItem:n,getItemById:I,getIndexById:H,isItemLoaded:d,getItemsInRange:p,setTotal:a,setItems:W,updateItem:k,insertItem:R,removeItem:y,loadRange:s,ensureRange:Z2,loadInitial:J2,loadMore:e,reload:U2,evictDistant:$2,clear:A2,reset:G2}};function v0($){let{adapter:J,total:Q,autoLoad:j=!0,storage:U}=$,Z=$.loading?.cancelThreshold??$1,K=$.loading?.preloadThreshold??J1,q=$.loading?.preloadAhead??e0,D=$.loading?.maxConcurrent??Q1,N,_,A,F,O,C,B=null,P=null,M=null,b=0,G=!1,Y=null,w=D0,L=-1,X=-1,h=-1,u=-1,E=U?.chunkSize??Z0,m=()=>{if(B=null,P!==null)clearTimeout(P),P=null},o=(V,T)=>{return N.ensureRange(V,T)},g=(V,T=Z0)=>{F.emit("load:start",{offset:V,limit:T})},j2=(V)=>{F.emit("error",{error:V,context:"ensureRange"})},S=()=>{B=null;let V={start:_.startIndex,end:_.startIndex+Math.max(0,_.visibleCount-1)};if(V.end<V.start)return;o(V.start,V.end).catch(j2)},l=()=>{if(Y!==null)clearTimeout(Y),Y=null},r=()=>{if(_.destroyed)return;let V=N.getTotal();if(_.visibleCount<=0||_.startIndex>=V)return;let T=Math.min(_.startIndex+_.visibleCount-1,V-1);if(T<_.startIndex)return;o(_.startIndex,T).catch(j2)},z=()=>{if(Y!==null||_.destroyed)return;Y=setTimeout(()=>{Y=null,r()},w),w=Math.min(w*2,j1)},f=()=>{l(),w=D0};return{name:"data",priority:20,setup(V){_=V.getState(),A=V.sizeCache,F=V.emitter,O=V.dom,C=V.forceRender.bind(V);let T=null;V.setVirtualTotalFn(()=>T?.getTotal()??0),V.setGetIndexByIdFn((n)=>T?.getIndexById(n)??-1),N=T=g1({adapter:J,...Q!==void 0&&{initialTotal:Q},pageSize:U?.chunkSize??Z0,maxConcurrent:D,...U&&{storage:{...U.chunkSize!==void 0&&{chunkSize:U.chunkSize},...U.maxCachedItems!==void 0&&{maxCachedItems:U.maxCachedItems},...U.evictionBuffer!==void 0&&{evictionBuffer:U.evictionBuffer}}},onDataChange:()=>{if(_.initialized){let n=N.getTotal(),I=N.getCached();if(_.totalItems=n,n!==L||I!==X)L=n,X=I,A.rebuild(n);V.updateContentSize(A.getTotalSize()),V.renderIfNeeded()}},onItemsLoaded:(n)=>{if(f(),_.initialized)V.updateContentSize(A.getTotalSize()),C(),F.emit("load:end",{items:n,total:N.getTotal()})},onLoadError:(n)=>{if(F.emit("error",{error:n,context:"load"}),_.initialized)V.renderIfNeeded();z()}}),V.setGetItemFn((n)=>N.getItem(n)),V.setRemoveItemFn((n)=>{let I=N.getIndexById(n);if(I<0)return-1;if(!N.removeItem(n))return-1;return I}),V.setInsertItemFn((n,I)=>{N.insertItem(n,I)}),V.setUpdateItemFn((n,I)=>{let H=N.getIndexById(n);if(H<0)return!1;return N.updateItem(H,I)}),V.registerMethod("reload",async()=>{if(B=null,h=-1,u=-1,f(),V.forceRender(),await N.reload(),V.scrollTo(0),j)g(0),await N.loadInitial(),V.forceRender()}),V.registerMethod("loadVisibleRange",async()=>{B=null,V.forceRender();let n=N.getTotal();if(_.visibleCount>0&&_.startIndex<n){let I=Math.min(_.startIndex+_.visibleCount-1,n-1);g(_.startIndex,I-_.startIndex+1),await o(_.startIndex,I)}}),V.registerMethod("loadInitial",async()=>{g(0),await N.loadInitial(),V.forceRender()}),V.registerMethod("getTotal",()=>{return N.getTotal()}),V.registerMethod("setTotal",(n)=>{N.setTotal(n)}),V.registerMethod("_getTotal",()=>N.getTotal()),V.registerMethod("_setTotal",(n)=>{N.setTotal(n)}),V.registerMethod("_cancelAutoLoad",()=>{G=!0}),V.registerMethod("_getLoadedItem",(n)=>{return N.getStorage().get(n)}),V.registerMethod("_getItem",(n)=>{return N.getItem(n)}),V.registerMethod("_getLoadedCount",()=>N.getCached()),F.on("load:start",()=>{O.root.setAttribute("aria-busy","true")}),F.on("load:end",()=>{O.root.removeAttribute("aria-busy")}),V.registerDestroyHandler(()=>{if(M!==null)clearTimeout(M),M=null;m(),l()}),F.on("velocity:change",({velocity:n})=>{b=Math.abs(n)});let i=()=>{if(_.destroyed)return;f(),r(),S()};if(window.addEventListener("online",i),V.registerDestroyHandler(()=>{window.removeEventListener("online",i)}),j)queueMicrotask(()=>{if(G)return;g(0),N.loadInitial().catch((n)=>{F.emit("error",{error:n,context:"loadInitial"})})});else if(Q!==void 0)N.setTotal(Q)},hooks:{onAfterScroll(){if(_.destroyed)return;let V=_.startIndex+Math.max(0,_.visibleCount-1);if(b>Z){if(P!==null)clearTimeout(P),P=null;B={start:_.startIndex,end:V};return}if(b>K){let n=Math.floor(_.startIndex/E),I=Math.floor(V/E);if(n!==h||I!==u){if(h=n,u=I,V>=_.startIndex)o(_.startIndex,V).catch(j2)}let H=_.startIndex,d=V,p=_.scrollDirection;if(p>0)d=Math.min(d+q,N.getTotal()-1);else if(p<0)H=Math.max(0,H-q);if(B={start:H,end:d},P!==null)clearTimeout(P);P=setTimeout(()=>{if(P=null,_.destroyed||!B)return;let{start:a,end:W}=B;if(B=null,W>=a)o(a,W).catch(j2)},100);return}m();let T=Math.floor(_.startIndex/E),i=Math.floor(V/E);if(T!==h||i!==u){if(h=T,u=i,V>=_.startIndex)o(_.startIndex,V).catch(j2)}},onIdle(){if(_.destroyed)return;b=0,h=-1,u=-1,S(),m()},onResize(){if(_.destroyed)return;let V=N.getTotal();if(V<=0)return;if(_.visibleCount<=0||_.startIndex>=V)return;let T=Math.min(_.startIndex+_.visibleCount-1,V-1);if(T<_.startIndex)return;g(_.startIndex,T-_.startIndex+1),o(_.startIndex,T).catch(j2)}},destroy(){if(M!==null)clearTimeout(M);m(),l()}}}var C0=($,J)=>{let Q=0,j=$.length-1;while(Q<j){let U=Q+j+1>>>1;if($[U].headerLayoutIndex<=J)Q=U;else j=U-1}return Q},x1=($,J)=>{let Q=0,j=$.length-1;while(Q<j){let U=Q+j+1>>>1;if($[U].firstDataIndex<=J)Q=U;else j=U-1}return Q},m1=($,J,Q)=>{if($===0)return[];let j=[],U=null,Z=0,K=0;for(let q=0;q<$;q++){let D=Q?.(q);if(!D)continue;let N=J(q,D);if(U===null)U=N,Z=0;else if(N!==U){let _=q-Z;j.push({key:U,groupIndex:j.length,headerLayoutIndex:K,firstDataIndex:Z,count:_}),K=K+1+_,U=N,Z=q}}if(U!==null)j.push({key:U,groupIndex:j.length,headerLayoutIndex:K,firstDataIndex:Z,count:$-Z});return j};var c1=($,J,Q)=>{let j=m1($,J.getGroupForIndex,Q),U=$+j.length,Z=J.header?.height??J.header?.width??J.headerHeight;return{get totalEntries(){return U},get groupCount(){return j.length},get groups(){return j},getEntry:(O)=>{if(j.length===0)return{type:"item",dataIndex:O,group:{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0}};let C=C0(j,O),B=j[C];if(O===B.headerLayoutIndex)return{type:"header",group:B};let P=O-B.headerLayoutIndex-1;return{type:"item",dataIndex:B.firstDataIndex+P,group:B}},layoutToDataIndex:(O)=>{if(j.length===0)return O;let C=C0(j,O),B=j[C];if(O===B.headerLayoutIndex)return-1;let P=O-B.headerLayoutIndex-1;return B.firstDataIndex+P},dataToLayoutIndex:(O)=>{if(j.length===0)return O;let C=x1(j,O),B=j[C],P=O-B.firstDataIndex;return B.headerLayoutIndex+1+P},getGroupAtLayoutIndex:(O)=>{if(j.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let C=C0(j,O);return j[C]},getGroupAtDataIndex:(O)=>{if(j.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let C=x1(j,O);return j[C]},getHeaderHeight:typeof Z==="number"?(O)=>Z:(O)=>{let C=j[O];if(!C)return 0;return Z(C.key,O)},rebuild:(O,C)=>{j=m1(O,J.getGroupForIndex,C??Q),U=O+j.length}}};var S0=($,J,Q,j,U=0)=>{let Z=Q?"width":"height",K=document.createElement("div");return K.className=`${J}-sticky-header`,K.setAttribute("role","presentation"),K.setAttribute("aria-hidden","true"),K.style.cssText="z-index:5;pointer-events:none;overflow:hidden;"+(Q?`position:absolute;top:0;bottom:0;left:${U||0}px`:`position:relative;top:${U||0}px`),K.style[Z]=`${j}px`,$.insertBefore(K,$.firstChild),K},d1=($,J,Q,j,U,Z=!1,K=0,q,D)=>{let N=Z?"width":"height",_=Z?"height":"width",A=Z?"X":"Y",F=(W,k)=>{W.style[N]=`${k}px`},O=q??S0($,U,Z,0,K),C=()=>{let W=document.createElement("div");return W.className="sticky-group",W.style.position="absolute",W.style.willChange="transform",W.style[_]="100%",W},B=C(),P=C();O.append(B,P);let M=B,b=P,G=J.groups,Y=[],w=[],L=[],X=0,h=()=>{G=J.groups,X=G.length,Y=Array(X),w=Array(X),L=Array(X);for(let W=0;W<X;W++)Y[W]=D?D(G[W].headerLayoutIndex):Q.getOffset(G[W].headerLayoutIndex),w[W]=J.getHeaderHeight(W),L[W]=w[W]};h();let u=-1,E=0,m=0,o=-1,g=!1,j2=0,S=!1,l=(W,k)=>{j(W,k);let R=w[k];return F(W,R),R},r=(W)=>{W.replaceChildren(),W.style.transform=""},z=(W)=>{if(W===u)return;if(u=W,E=0,m=0,W<0||W>=X){r(M);return}E=l(M,W),m=L[W],F(O,E),M.style.transform=""},f=(W)=>{if(W===j2)return;j2=W;let k=Math.round(W);M.style.transform=`translate${A}(${k}px)`,b.style.transform=`translate${A}(${k+E}px)`},V=()=>{j2=0,M.style.transform="",b.style.transform=""},T=()=>{if(!S)return;let W=M;M=b,b=W,u=o,E=u>=0?w[u]:0,m=u>=0?L[u]:0,F(O,E),r(b),o=-1,S=!1,V()},i=()=>{if(!S)return;r(b),o=-1,S=!1,V()},n=!!q,I=()=>{if(g)return;if(g=!0,n)O.style.visibility="";else O.style.display=""},H=()=>{if(!g)return;if(g=!1,n)O.style.visibility="hidden";else O.style.display="none";r(M),u=-1,E=0,m=0,i()},d=(W)=>{if(X===0){if(S)i();if(!g)I();z(-1);return}if(W<Y[0]){H();return}let k=0,R=X-1;while(k<R){let s=k+R+1>>>1;if(Y[s]+L[s]<=W)k=s;else R=s-1}if(!g)I();z(k);let y=k+1;if(y<X){let s=Y[y]-W;if(s<=0&&s>-m){if(o!==y||!S)o=y,l(b,y),S=!0;let Z2=m>0?s/m*E:s;f(Z2)}else if(s<=-m){if(S)T()}else if(S)i()}else if(S)i()},p=()=>{h();let W=u;if(u=-1,E=0,m=0,W>=0)z(W)},a=()=>{O.remove(),u=-1,E=0,m=0,o=-1,g=!1,S=!1};if(!q)O.style.display="none";return{update:d,refresh:p,show:I,hide:H,destroy:a}};var c2={selected:!1,focused:!1},l1=typeof process<"u"&&process.env?.NODE_ENV!=="production";function h0($){if(!$.getGroupForIndex)throw Error("[vlist] groups: getGroupForIndex is required");let J=$.header?.height??$.header?.width??$.headerHeight;if(J==null||typeof J==="number"&&J<=0)throw Error("[vlist] groups: header height/width must be a positive number or function");let Q=$.header?.template??$.headerTemplate;if(!Q)throw Error("[vlist] groups: header.template is required");let j=Q,U,Z=null,K,q,D,N,_=null,A,F,O,C=null,B,P,M,b=null,G,Y,w=null,L=null,X=0,h=0,u=0,E=0,m=0,o=!1,g=null,j2=new Map,S=new Set,l=new Map,r=-1,z=-1,f=0,V=!0,T=-1,i=0,n=null,I;function H(){return U.totalEntries}function d(){let v=q.totalItems;if(v===T)return;if(l1)console.log(`[groups] syncLayout: ${T} → ${v}`);let K2=T>0;T=v,U.rebuild(v,C??O),I(U.totalEntries),R();let Q2=a?y():K.getTotalSize();if(_?.(Q2),Z)Z.refresh(),Z.update(q.scrollPosition);if(K2)J2();let D2=w?.("_scrollbar:getInstance");if(D2)D2()?.updateBounds(Q2,q.containerSize)}let p=0,a=null,W=null,k=null;function R(){if(X<=0){a=null,W=null;return}p=((q.crossSize||N.clientWidth)-E-(X-1)*h)/X,a=new Map;let Q2=U.totalEntries,D2=Array(Q2),T2=0;if(o){let k2=g??((c)=>K.getSize(c)),R2=new Float64Array(X),F2=[],P2=0,z2=-1;for(let c=0;c<Q2;c++){let H2=U.getEntry(c);if(H2.type==="header"){let B2=0;for(let _2=0;_2<X;_2++)if(R2[_2]>B2)B2=R2[_2];if(z2>=0)F2[z2]=P2+B2;P2+=B2;let M2=K.getSize(c);a.set(c,{col:-1,rowY:P2}),D2[T2++]=[c,P2,P2+M2],P2+=M2,R2.fill(0),z2=H2.group.groupIndex}else{let B2=0,M2=R2[0];for(let N2=1;N2<X;N2++)if(R2[N2]<M2)M2=R2[N2],B2=N2;let _2=k2(H2.dataIndex),b2=P2+R2[B2];a.set(c,{col:B2,rowY:b2,h:_2}),D2[T2++]=[c,b2,b2+_2],R2[B2]=R2[B2]+_2+h}}if(z2>=0){let c=0;for(let H2=0;H2<X;H2++)if(R2[H2]>c)c=R2[H2];F2[z2]=P2+c}k=F2}else{k=null;let k2=0,R2=0,F2=0;for(let P2=0;P2<Q2;P2++)if(U.getEntry(P2).type==="header"){if(R2>0&&F2>0)k2+=F2;let c=K.getSize(P2);a.set(P2,{col:-1,rowY:k2}),D2[T2++]=[P2,k2,k2+c],k2+=c,R2=0,F2=0}else{let c=R2%X,H2=K.getSize(P2);if(c===0){if(R2>0&&F2>0)k2+=F2+h;F2=H2}else if(H2>F2)F2=H2;a.set(P2,{col:c,rowY:k2}),D2[T2++]=[P2,k2,k2+H2],R2++}}D2.length=T2,W=D2}function y(){if(!a||a.size===0)return K.getTotalSize();let v=U.totalEntries;if(o)return k?.[k.length-1]??0;let K2=0;for(let Q2=v-1;Q2>=0;Q2--){let D2=a.get(Q2);if(D2){K2=D2.rowY+(D2.h??K.getSize(Q2));break}if(U.getEntry(Q2).type==="header"){K2=K.getOffset(Q2)+K.getSize(Q2);break}}return K2}function s(v){let K2=q.baseOffset;if(a){let D2=a.get(v);if(D2){let T2=D2.col<0?0:u+D2.col*(p+h),k2=D2.rowY-K2;if(B)return`translate(${Math.round(k2)}px, ${Math.round(T2)}px)`;return`translate(${Math.round(T2)}px, ${Math.round(k2)}px)`}}let Q2=K.getOffset(v)-K2;if(B)return`translate(${Math.round(Q2)}px, 0)`;return`translate(0, ${Math.round(Q2)}px)`}function Z2(v,K2){let Q2=a?.get(K2);if(Q2){let T2=Q2.h??K.getSize(K2);if(Q2.col<0)if(B)v.style.width=`${T2}px`,v.style.height="";else v.style.height=`${T2}px`,v.style.width="100%";else if(B)v.style.width=`${T2}px`,v.style.height=`${p}px`;else v.style.height=`${T2}px`,v.style.width=`${p}px`;return}let D2=K.getSize(K2);if(B)v.style.width=`${D2}px`;else v.style.height=`${D2}px`}function J2(){j2.forEach((v)=>{v.remove();let K2=v.getAttribute("data-id");if(K2)l.set(K2,v);else D.release(v)}),j2.clear(),S.clear()}function e(){if(l.size>0)l.forEach((v)=>D.release(v)),l.clear()}function U2(v,K2,Q2,D2){if(L===null)L=!!w?.("_getSelectedIds");if(K2.type==="header"){let z2=`__group_header_${K2.group.groupIndex}`;if(v.getAttribute("data-id")===z2)return!0;if(v.className=Y,v.setAttribute("role","presentation"),v.removeAttribute("aria-selected"),v.setAttribute("data-id",z2),B&&Z&&K2.group.groupIndex===0)v.style.display="none";else{v.style.display="";let c=j(K2.group.key,K2.group.groupIndex);if(typeof c==="string")v.innerHTML=c;else v.innerHTML="",v.appendChild(c)}return!0}let T2=K2.dataIndex,k2=O(T2);if(!k2)return v.innerHTML="",!1;let R2=k2._isPlaceholder===!0,F2=String(k2.id);if(!R2&&v.getAttribute("data-id")===F2){if(L)v.id=`${P}-item-${D2}`,v.setAttribute("aria-posinset",String(T2+1)),v.setAttribute("aria-setsize",String(q.totalItems));return!0}if(v.className=G,v.setAttribute("role",L?"option":"listitem"),v.setAttribute("data-id",F2),L)v.id=`${P}-item-${D2}`,v.setAttribute("aria-posinset",String(T2+1)),v.setAttribute("aria-setsize",String(q.totalItems));if(R2)v.classList.add(`${P}-item--placeholder`);if(Q2)Q2(D2,c2);else c2.selected=!1,c2.focused=!1;let P2=F(k2,T2,c2);if(typeof P2==="string")v.innerHTML=P2;else v.innerHTML="",v.appendChild(P2);return u2(v),!R2}let $2=0;function A2(){if(X<=0)return;let v=q.crossSize;if(v===$2)return;$2=v,R();let K2=y();if(_?.(K2),Z)Z.refresh(),Z.update(q.scrollPosition);V=!0}function G2(){if(q.destroyed)return;d(),A2();let{scrollPosition:v,containerSize:K2,baseOffset:Q2}=q,D2=Q2!==f;if(!V&&v===r&&K2===z&&!D2)return;r=v,z=K2;let T2=V;V=!1;let k2=H();if(K2<=0||k2===0){if(j2.size>0)j2.forEach((N2)=>{N2.remove(),D.release(N2)}),j2.clear(),S.clear();return}let R2,F2;if(W){let N2=W,O2=N2.length,y2=0,W2=O2-1;while(y2<W2){let X2=y2+W2>>>1;if(N2[X2][2]<=v)y2=X2+1;else W2=X2}let x=y2;W2=O2-1;while(y2<W2){let X2=y2+W2+1>>>1;if(N2[X2][1]>=v+K2)W2=X2-1;else y2=X2}let V2=y2,q2=N2[x][0],E2=N2[V2][0];for(let X2=q2-1;X2>=0;X2--)if(U.getEntry(X2).type==="header"){q2=X2;break}let w2=M*X;R2=Math.max(0,q2-w2),F2=Math.min(k2-1,E2+w2)}else{let N2=K.indexAtOffset(v),O2=K.indexAtOffset(v+K2);if(O2<k2-1)O2++;N2=Math.max(0,N2),O2=Math.min(k2-1,Math.max(0,O2)),R2=Math.max(0,N2-M),F2=Math.min(k2-1,O2+M)}if(R2===q.prevRangeStart&&F2===q.prevRangeEnd&&!q.renderPending&&!D2)return;f=Q2,j2.forEach((N2,O2)=>{if(O2<R2||O2>F2)N2.remove(),D.release(N2),j2.delete(O2),S.delete(O2)});let P2=b?.()??null,z2=P2?`${P}-item--selected`:"",c=P2?`${P}-item--focused`:"",H2=null;for(let N2=R2;N2<=F2;N2++){let O2=j2.get(N2),y2=!1;if(O2===void 0){let W2=U.getEntry(N2);y2=W2.type==="header";let x;if(W2.type==="header")x=`__group_header_${W2.group.groupIndex}`;else{let q2=O(W2.dataIndex);if(q2&&q2._isPlaceholder!==!0)x=String(q2.id)}if(x!==void 0){let q2=l.get(x);if(q2)l.delete(x),O2=q2}if(!O2)O2=D.acquire();if(O2.setAttribute("data-index",String(N2)),U2(O2,W2,P2,N2))S.delete(N2);else S.add(N2);if(Z2(O2,N2),O2.style.transform=s(N2),j2.set(N2,O2),!H2)H2=document.createDocumentFragment();H2.appendChild(O2)}else if(T2&&S.has(N2)){let W2=U.getEntry(N2);if(W2.type==="item")if(U2(O2,W2,P2,N2))S.delete(N2);else S.add(N2)}else if(y2=O2.classList.contains(Y),T2)Z2(O2,N2),O2.style.transform=s(N2);else if(D2)O2.style.transform=s(N2);if(!y2&&P2)if(P2(N2,c2),O2.classList.toggle(z2,c2.selected),O2.classList.toggle(c,c2.focused),c2.selected)O2.setAttribute("aria-selected","true");else O2.removeAttribute("aria-selected")}if(H2)N.appendChild(H2);e();let B2=a?y():K.getTotalSize();_?.(B2),q.prevRangeStart=R2,q.prevRangeEnd=F2,q.renderPending=!1;let M2=0,_2=0,b2=!1;for(let N2=R2;N2<=F2&&M2<q.capacity;N2++){let O2=U.getEntry(N2);if(O2.type==="item"){if(!b2)_2=O2.dataIndex,b2=!0;q.visibleIndices[M2]=O2.dataIndex,q.visibleOffsets[M2]=K.getOffset(N2),q.visibleSizes[M2]=K.getSize(N2),M2++}}q.visibleCount=M2,q.startIndex=_2}function Y2(){if(q.destroyed)return;if(A2(),l1)console.log(`[groups] forceRender, placeholders: ${S.size}, rendered: ${j2.size}`);let v=n?.()??0;if(v!==i){i=v;let K2=U.groups,Q2=K2.length;U.rebuild(T,C??O);let D2=U.groups,T2=D2.length!==Q2;if(!T2){for(let k2=0;k2<Q2;k2++)if(D2[k2].headerLayoutIndex!==K2[k2].headerLayoutIndex){T2=!0;break}}if(T2){I(U.totalEntries),R();let k2=a?y():K.getTotalSize();if(_?.(k2),Z)Z.refresh(),Z.update(q.scrollPosition);let R2=1/0,F2=Math.min(Q2,D2.length);for(let z2=0;z2<F2;z2++)if(D2[z2].headerLayoutIndex!==K2[z2].headerLayoutIndex){R2=Math.min(D2[z2].headerLayoutIndex,K2[z2].headerLayoutIndex);break}if(D2.length>Q2&&F2<D2.length)R2=Math.min(R2,D2[F2].headerLayoutIndex);else if(Q2>D2.length&&F2<Q2)R2=Math.min(R2,K2[F2].headerLayoutIndex);if(R2<=q.prevRangeEnd)J2();let P2=w?.("_scrollbar:getInstance");if(P2)P2()?.updateBounds(k2,q.containerSize)}}q.prevRangeStart=-1,q.prevRangeEnd=-1,q.renderPending=!0,V=!0,G2()}return{name:"groups",priority:10,setup(v){K=v.sizeCache,q=v.getState(),D=v.pool,N=v.dom.content,_=v.updateContentSize.bind(v),A=v.dom.root,F=v.template,B=v.config.axis.primary==="x",P=v.config.classPrefix,M=v.config.overscan,m=v.config.mainAxisPadding,O=v.getItem.bind(v),b=()=>v.getItemStateFn(),w=v.getMethod.bind(v),L=null,G=`${P}-item`,Y=`${P}-group-header`;let K2=w?.("getGridLayout"),Q2=w?.("getMasonryLayout");if(K2){let B2=K2();X=B2.columns,h=B2.gap,u=v.config.crossPadStart,E=v.config.crossAxisPadding}else if(Q2){let B2=Q2();X=B2.columns,h=B2.gap,u=v.config.crossPadStart,E=v.config.crossAxisPadding,o=!0;let M2=v.rawSizeSpec;if(typeof M2==="function")g=(_2)=>{return M2(_2,{columnWidth:p})}}queueMicrotask(()=>{let B2=w?.("_getLoadedItem");if(B2)C=B2;let M2=w?.("_getLoadedCount");if(M2)n=M2});let D2=q.totalItems;U=c1(D2,$,C??O),T=D2;let T2=typeof J==="number"?(B2)=>J:(B2)=>{let M2=U.groups[B2];if(!M2)return 0;return J(M2.key,B2)},k2=K.getSize,R2=(B2)=>{let M2=U.getEntry(B2);if(M2.type==="header"){if($.sticky!==!1&&M2.group.groupIndex===0)return 0;return T2(M2.group.groupIndex)}return k2(M2.dataIndex)};v.setSizeConfig(R2);let F2=!1,P2=-1;if(v.registerMethod("_setSizeCacheBase",(B2)=>{I=B2}),I=K.rebuild,K.rebuild=(B2)=>{if(F2){if(!n)n=w?.("_getLoadedCount")??null;let M2=n?.()??0;if(B2!==T||M2!==P2){if(T=B2,P2=M2,!C)C=w?.("_getLoadedItem")??null;if(U.rebuild(B2,C??((_2)=>v.getItems()[_2])),q.totalItems=U.totalEntries,Z)Z.refresh(),Z.update(q.scrollPosition)}}I(U.totalEntries)},K.rebuild(U.totalEntries),R(),v.setVirtualTotalFn(()=>U.totalEntries),A.classList.add(`${P}--grouped`),$.sticky!==!1){let B2=(N2,O2)=>{let y2=U.groups[O2];if(!y2)return;let W2=j(y2.key,O2);if(typeof W2==="string")N2.innerHTML=W2;else N2.replaceChildren(W2)},M2=U.getHeaderHeight(0),_2=S0(A,P,B,M2),b2=X>0?(N2)=>{let O2=a?.get(N2);return O2?O2.rowY:K.getOffset(N2)}:void 0;if(Z=d1(A,U,K,B2,P,B,0,_2,b2),Z.update(q.scrollPosition),!B)v.dom.viewport.style.height=`calc(100% - ${M2}px)`;else v.dom.viewport.style.width=`calc(100% - ${M2}px)`,v.dom.viewport.style.marginLeft=`${M2}px`}let z2=!!w?.("_updateTableForGroups");if(F2=z2,z2)queueMicrotask(()=>{let B2=w?.("_getItem")??null,M2=v.getItems.bind(v);v.setGetItemFn((b2)=>{let N2=U.getEntry(b2);if(N2.type==="header")return{id:`__group_header_${N2.group.groupIndex}`,__groupHeader:!0,groupKey:N2.group.key,groupIndex:N2.group.groupIndex};return B2?B2(N2.dataIndex):M2()[N2.dataIndex]});let _2=w?.("_updateTableForGroups");if(_2)_2((b2)=>!!b2.__groupHeader,j)});else v.setRenderFn(G2,Y2);v.registerMethod("getGroupLayout",()=>U),v.registerMethod("_dataToLayoutIndex",(B2)=>U.dataToLayoutIndex(B2)),v.registerMethod("_layoutToDataIndex",(B2)=>U.layoutToDataIndex(B2)),v.registerMethod("_getRenderedElement",(B2)=>j2.get(B2)??null),v.registerMethod("_isGroupHeader",(B2)=>{return U.getEntry(B2).type==="header"}),v.registerMethod("_getItemLane",(B2)=>{let M2=a?.get(B2);return M2?M2.col:-1}),v.registerMethod("_getItemY",(B2)=>{let M2=a?.get(B2);return M2?M2.rowY:-1}),v.registerMethod("_getItemH",(B2)=>{return a?.get(B2)?.h??-1});let c=v.config.startPadding,H2=m-c;v.registerMethod("_scrollItemIntoView",(B2)=>{if(B2<0)return;let M2=a?.get(B2),_2=M2?M2.rowY:K.getOffset(B2),b2=M2?.h??K.getSize(B2),N2=q.containerSize,O2=q.scrollPosition;if(_2<O2+c)v.scrollTo(Math.max(0,_2-c));else if(_2+b2+H2>O2+N2)v.scrollTo(_2+b2+H2-N2)}),v.registerMethod("scrollToIndex",(B2,M2="start")=>{let _2=U.dataToLayoutIndex(B2),b2=U.totalEntries;if(b2===0)return;let N2=Math.max(0,Math.min(_2,b2-1)),O2=q.containerSize,y2=a?.get(N2),W2=y2?y2.rowY:K.getOffset(N2),x=y2?y2.h??K.getSize(N2):K.getSize(N2),V2=a?y()+m:K.getTotalSize(),q2=Math.max(0,V2-O2),E2=typeof M2==="string"?M2:M2.align??"start",w2=typeof M2==="object"?M2.behavior:void 0,X2=typeof M2==="object"?M2.duration:void 0,t=a?m:0,L2=W2+x;if(o&&k){let C2=U.getEntry(N2).group.groupIndex,h2=k[C2];if(h2!==void 0)L2=h2}let v2;switch(E2){case"center":v2=W2-(O2-x)/2;break;case"end":v2=L2-O2+t;break;default:v2=W2}if(v2=Math.max(0,Math.min(v2,q2)),w2==="smooth"&&X2&&X2>0)v.smoothScrollTo(v2,X2);else v.scrollTo(v2)}),v.registerDestroyHandler(()=>{for(let[,B2]of j2)B2.remove();if(j2.clear(),S.clear(),Z)Z.destroy(),Z=null;A.classList.remove(`${P}--grouped`)})},hooks:{onAfterScroll(v,K2){if(Z)Z.update(v)},onResize(v,K2){if(X<=0)return;I(U.totalEntries),$2=q.crossSize,R();let Q2=y();if(_?.(Q2),Z)Z.refresh(),Z.update(q.scrollPosition);V=!0,G2()}},destroy(){if(Z)Z.destroy(),Z=null;j2.clear(),S.clear(),l.clear()}}}var r1=($,J=50,Q=1/0,j=!0,U="none")=>{let Z=$,K=[],q=0,D=0,N=()=>{K=Z.map((G,Y)=>({def:G,index:Y,width:0,minWidth:P4(G.minWidth??J,1),maxWidth:G.maxWidth??Q,resizable:G.resizable??j,offset:0}))},_=()=>{if(U==="none"||q<=0||q>=D)return;if(U==="spacer"){q=D;return}let G=D-q,Y=q;for(let w=0;w<K.length;w++){let L=K[w];L.width=W0(L.width+G*(L.width/Y),L.minWidth,L.maxWidth)}F()},A=(G)=>{if(D=G,K.length===0){q=0;return}let Y=0,w=0;for(let L=0;L<K.length;L++){let X=K[L],h=X.def;if(h.width!==void 0)X.width=W0(h.width,X.minWidth,X.maxWidth),Y+=X.width;else w++}if(w){let X=Math.max(0,G-Y)/w;for(let h=0;h<K.length;h++){let u=K[h];if(u.def.width===void 0)u.width=W0(X,u.minWidth,u.maxWidth)}}F(),_()},F=()=>{let G=0;for(let Y=0;Y<K.length;Y++){let w=K[Y];w.offset=G,G+=w.width}q=G},O=(G,Y)=>{if(G<0||G>=K.length)return 0;let w=K[G];if(!w.resizable)return w.width;let L=W0(Y,w.minWidth,w.maxWidth);if(w.width=L,F(),U==="spacer")_();return L},C=(G)=>{return K[G]},B=(G)=>{if(K.length===0)return;if(G<0)return K[0];if(G>=q)return K[K.length-1];let Y=0,w=K.length-1;while(Y<w){let L=Y+w>>>1,X=K[L];if(G<X.offset)w=L-1;else if(G>=X.offset+X.width)Y=L+1;else return X}return K[Y]},P=(G)=>{if(G<0||G>=K.length)return 0;return K[G].offset},M=(G)=>{if(G<0||G>=K.length)return 0;return K[G].width},b=(G)=>{Z=G,N()};return N(),{get columns(){return K},get totalWidth(){return q},resolve:A,updateColumns:b,resizeColumn:O,getColumn:C,getColumnAtX:B,getColumnOffset:P,getColumnWidth:M}},W0=($,J,Q)=>Math.min(Q,Math.max(J,$)),P4=($,J)=>Math.max(J,$);var s1=($,J,Q,j,U,Z)=>{let K=document.createElement("div");K.setAttribute("role","rowgroup");let q=document.createElement("div");q.className=`${Q}-table-header`,q.setAttribute("role","row"),q.setAttribute("aria-rowindex","1"),q.style.height=`${J}px`;let D=document.createElement("div");D.className=`${Q}-table-header-scroll`,D.setAttribute("role","presentation"),q.appendChild(D),K.appendChild(q),$.insertBefore(K,$.firstChild),$.style.setProperty("--vlist-table-header-height",`${J}px`);let N=[],_=[],A=!0,F=null,O="asc",C=null,B=!1,P=-1,M=0,b=0,G=0,Y=(z,f)=>{let V=document.createElement("div");V.className=`${Q}-table-header-cell`,V.setAttribute("role","columnheader"),V.setAttribute("aria-colindex",String(f+1)),V.setAttribute("tabindex",f===0?"0":"-1"),V.dataset.columnKey=z.def.key;let T=z.def.align;if(T==="center")V.classList.add(`${Q}-table-header-cell--center`);else if(T==="right")V.classList.add(`${Q}-table-header-cell--right`);let i=document.createElement("div");i.className=`${Q}-table-header-content`;let n=z.def.header?z.def.header(z.def):z.def.label;if(typeof n==="string")i.textContent=n;else i.appendChild(n);if(V.appendChild(i),z.def.sortable){let I=document.createElement("span");I.className=`${Q}-table-header-sort`,I.setAttribute("aria-hidden","true"),V.appendChild(I),_.push(I),V.classList.add(`${Q}-table-header-cell--sortable`)}else _.push(null);if(z.resizable){let I=document.createElement("div");I.className=`${Q}-table-header-resize`,I.dataset.resizeIndex=String(f),V.appendChild(I)}return V},w=(z)=>{C=z,D.textContent="",N=[],_=[];let f=z.columns;for(let V=0;V<f.length;V++){let T=f[V],i=Y(T,V);N.push(i),D.appendChild(i)}if(L(z),F)X(F,O)},L=(z)=>{C=z;let f=z.columns;D.style.width=`${z.totalWidth}px`;for(let V=0;V<N.length&&V<f.length;V++){let T=N[V],i=f[V];T.style.width=`${i.width}px`}},X=(z,f)=>{if(F=z,O=f,!C)return;let V=C.columns;for(let T=0;T<_.length&&T<V.length;T++){let i=_[T];if(!i)continue;if(V[T].def.key===z)i.textContent=f==="asc"?"▲":"▼",i.style.opacity="0.7",N[T].setAttribute("aria-sort",f==="asc"?"ascending":"descending");else i.textContent="",i.style.opacity="0",N[T].removeAttribute("aria-sort")}},h=(z)=>{D.style.transform=`translateX(${-z}px)`},u=(z)=>{let f=z.target;if(!f.dataset.resizeIndex)return;if(z.preventDefault(),z.stopPropagation(),P=+f.dataset.resizeIndex,!C)return;let V=C.getColumn(P);if(!V?.resizable)return;B=!0,M=z.clientX,b=V.width,$.classList.add(`${Q}--col-resizing`),$.style.cursor="col-resize",f.classList.add(`${Q}-table-header-resize--active`),f.setPointerCapture(z.pointerId),f.addEventListener("pointermove",E),f.addEventListener("pointerup",m),f.addEventListener("pointercancel",m)},E=(z)=>{if(!B||!C)return;let f=z.clientX-M;if(Math.abs(f)<1)return;let V=Math.max(0,b+f);j(P,V)},m=(z)=>{if(!B)return;let f=z.target;f.removeEventListener("pointermove",E),f.removeEventListener("pointerup",m),f.removeEventListener("pointercancel",m);try{f.releasePointerCapture(z.pointerId)}catch{}f.classList.remove(`${Q}-table-header-resize--active`),$.classList.remove(`${Q}--col-resizing`),$.style.cursor="",B=!1,P=-1},o=(z)=>{let f=z.target;if(f.dataset.resizeIndex)return;if(B)return;let V=f;while(V&&!V.dataset.columnKey)if(V=V.parentElement,V===q||V===null)return;let T=V.dataset.columnKey;if(!C)return;let i=C.columns,n=-1;for(let H=0;H<i.length;H++)if(i[H].def.key===T){n=H;break}if(n===-1)return;let I=i[n];if(Z)Z({key:T,index:n,event:z});if(I.def.sortable&&U){let H;if(F===T)H=O==="asc"?"desc":null;else H="asc";U({key:T,index:n,direction:H})}},g=(z)=>{if(z<0||z>=N.length)return;N[G]?.setAttribute("tabindex","-1"),G=z;let f=N[G];f.setAttribute("tabindex","0"),f.focus()},j2=(z)=>{let f=z.key;if(f==="ArrowRight"){if(z.ctrlKey||z.metaKey){if(!C)return;let V=C.getColumn(G);if(V?.resizable)j(G,V.width+10),z.preventDefault()}else if(G<N.length-1)g(G+1),z.preventDefault();z.stopPropagation();return}if(f==="ArrowLeft"){if(z.ctrlKey||z.metaKey){if(!C)return;let V=C.getColumn(G);if(V?.resizable)j(G,V.width-10),z.preventDefault()}else if(G>0)g(G-1),z.preventDefault();z.stopPropagation();return}if(f==="Home"){g(0),z.preventDefault(),z.stopPropagation();return}if(f==="End"){g(N.length-1),z.preventDefault(),z.stopPropagation();return}if(f==="Enter"||f===" "){if(!C)return;let V=C.getColumn(G);if(V?.def.sortable&&U){let T;if(F===V.def.key)T=O==="asc"?"desc":null;else T="asc";U({key:V.def.key,index:G,direction:T}),z.preventDefault()}z.stopPropagation();return}if(f==="ArrowDown"){$.focus(),z.preventDefault(),z.stopPropagation();return}};return q.addEventListener("pointerdown",u),q.addEventListener("click",o),q.addEventListener("keydown",j2),{element:q,update:L,updateSort:X,rebuild:w,show:()=>{if(A)return;A=!0,q.style.display=""},hide:()=>{if(!A)return;A=!1,q.style.display="none"},destroy:()=>{q.removeEventListener("pointerdown",u),q.removeEventListener("click",o),q.removeEventListener("keydown",j2),$.style.removeProperty("--vlist-table-header-height"),K.remove(),N=[],_=[],C=null,A=!1},syncScroll:h}};var w4=()=>{let $=[];return{acquire:()=>$.pop()||document.createElement("div"),release:(J)=>{if(J.parentNode?.removeChild(J),$.length<200)J.className="",J.removeAttribute("data-id"),J.removeAttribute("data-index"),J.removeAttribute("aria-selected"),J.removeAttribute("aria-rowindex"),J.removeAttribute("role"),J.style.cssText="",J.textContent="",$.push(J)},clear:()=>{$.length=0}}},o1=($,J,Q,j,U,Z,K,q,D,N=()=>0)=>{let _=w4(),A=new Map,F=-1,O=Q,C=null,B=null,P=null,M=(k,R)=>{B=k,P=R},b=(k,R)=>{R?k.setAttribute("aria-selected","true"):k.removeAttribute("aria-selected")},G=(k,R,y,s)=>{k.setAttribute("role",R),k.setAttribute("data-id",String(y)),k.setAttribute("data-index",String(s))},Y=(k)=>String(k).startsWith("__placeholder_"),w=`${U}-item ${U}-table-row`,L=`${U}-item--selected`,X=`${U}-item--focused`,h=`${U}-table-cell`,u=`${U}-table-cell--center`,E=`${U}-table-cell--right`,m=`${U}-table-cell-skeleton`,o=`${U}-item--odd`,g=`${U}-item--placeholder`,j2=`${U}-item--replaced`,S=`${U}-table-row ${U}-table-group-header`,l=`${U}-table-group-header-content`,r=(k,R,y,s,Z2=!1)=>{if(y.def.cell){let J2=y.def.cell(R,y.def,s);if(typeof J2==="string")k.innerHTML=J2;else k.replaceChildren(J2)}else{let J2=R[y.def.key],e=J2!=null?String(J2):"";if(Z2&&e)k.innerHTML=`<span>${e}</span>`;else k.textContent=e}if(Z2&&k.firstElementChild===null){k.replaceChildren();let J2=document.createElement("span");J2.className=m,k.appendChild(J2)}},z=(k,R,y,s,Z2=!1)=>{let J2=w;if(q){if(C){let e=C(R);if(e>=0&&(e&1)===1)J2+=` ${o}`}else if((R&1)===1)J2+=` ${o}`}if(Z2)J2+=` ${g}`;if(y)J2+=` ${L}`;if(s)J2+=` ${X}`;k.className=J2},f=(k,R)=>{let y=R.def.align;if(y==="center")k.classList.add(u),k.classList.remove(E);else if(y==="right")k.classList.add(E),k.classList.remove(u);else k.classList.remove(u,E)},V=(k,R)=>{let s=O.columns.length;if(R.length===s)return R;let Z2=[];for(let J2=0;J2<s;J2++){let e;if(J2<R.length)e=R[J2];else e=document.createElement("div"),e.className=h,k.appendChild(e);Z2.push(e)}for(let J2=s;J2<R.length;J2++)R[J2].remove();return Z2},T=(k,R,y)=>{let s=_.acquire(),Z2=k,J2=y.getSize(R),e=y.getOffset(R)-N();s.style.cssText=`width:${O.totalWidth}px;height:${J2}px;transform:translateY(${e}px)`,s.className=S,G(s,"presentation",k.id,R),s.removeAttribute("aria-selected"),s.removeAttribute("aria-rowindex"),s.replaceChildren();let U2=document.createElement("div");if(U2.className=l,P){let $2=P(Z2.groupKey,Z2.groupIndex);if(typeof $2==="string")U2.innerHTML=$2;else U2.appendChild($2)}return s.appendChild(U2),{element:s,cells:[],index:R,isGroupHeader:!0,_lastItem:k,lastItemId:k.id,lastSelected:!1,lastFocused:!1,lastOffset:e,lastHeight:J2}},i=(k,R,y,s,Z2)=>{let J2=_.acquire(),e=Z2.getSize(R),U2=Z2.getOffset(R)-N(),$2=Y(k.id);J2.style.cssText=`width:${O.totalWidth}px;height:${e}px;transform:translateY(${U2}px)`,z(J2,R,y,s,$2),G(J2,"row",k.id,R),J2.id=`${Z}-item-${R}`,J2.setAttribute("aria-rowindex",String(R+2)),b(J2,y);let A2=V(J2,[]),G2=O.columns;for(let Y2=0;Y2<A2.length&&Y2<G2.length;Y2++){let v=A2[Y2],K2=G2[Y2];v.style.cssText=`left:${K2.offset}px;width:${K2.width}px`,v.setAttribute("role","gridcell"),v.setAttribute("aria-colindex",String(Y2+1)),f(v,K2),r(v,k,K2,R,$2)}return{element:J2,cells:A2,index:R,isGroupHeader:!1,_lastItem:k,lastItemId:k.id,lastSelected:y,lastFocused:s,lastOffset:U2,lastHeight:e}},n=(k,R,y,s)=>{let Z2=!1,J2=K();if(J2!==F)F=J2,Z2=!0;let e=null,U2=J();C=typeof q==="string"&&D?D():null;for(let $2=R.start;$2<=R.end;$2++){let A2=$2-R.start,G2=k[A2];if(!G2)continue;let Y2=y.has(G2.id),v=$2===s,K2=B?B(G2):!1,Q2=A.get($2);if(Q2){if(Q2.isGroupHeader!==K2){_.release(Q2.element),A.delete($2);let D2=K2?T(G2,$2,U2):i(G2,$2,Y2,v,U2);if(A.set($2,D2),!e)e=document.createDocumentFragment();e.appendChild(D2.element);continue}if(K2){if(Q2._lastItem!==G2){let R2=G2,F2=Q2.element.firstElementChild;if(F2&&P){let P2=P(R2.groupKey,R2.groupIndex);if(typeof P2==="string")F2.innerHTML=P2;else F2.replaceChildren(P2)}Q2.element.setAttribute("data-id",String(G2.id)),Q2._lastItem=G2,Q2.lastItemId=G2.id}let T2=U2.getOffset($2)-N();if(Q2.lastOffset!==T2)Q2.lastOffset=T2,Q2.element.style.transform=`translateY(${T2}px)`;let k2=U2.getSize($2);if(Q2.lastHeight!==k2)Q2.lastHeight=k2,Q2.element.style.height=`${k2}px`}else{let D2=Q2._lastItem!==G2,T2=Q2.lastSelected!==Y2,k2=Q2.lastFocused!==v;if(D2){let P2=Q2.lastItemId!=null&&Y(Q2.lastItemId),z2=Y(G2.id);if(!z2&&e2(y,$2,G2.id))Y2=!0;let c=O.columns;for(let H2=0;H2<Q2.cells.length&&H2<c.length;H2++)r(Q2.cells[H2],G2,c[H2],$2,z2);if(z(Q2.element,$2,Y2,v,z2),Q2.element.setAttribute("data-id",String(G2.id)),b(Q2.element,Y2),P2&&!z2)Q2.element.classList.add(j2),setTimeout(()=>{Q2.element.classList.remove(j2)},300);Q2._lastItem=G2,Q2.lastItemId=G2.id,Q2.lastSelected=Y2,Q2.lastFocused=v}else if(T2||k2)z(Q2.element,$2,Y2,v,Y(G2.id)),b(Q2.element,Y2),Q2.lastSelected=Y2,Q2.lastFocused=v;let R2=U2.getOffset($2)-N();if(Q2.lastOffset!==R2)Q2.lastOffset=R2,Q2.element.style.transform=`translateY(${R2}px)`;let F2=U2.getSize($2);if(Q2.lastHeight!==F2)Q2.lastHeight=F2,Q2.element.style.height=`${F2}px`;if(Z2)Q2.element.setAttribute("aria-rowindex",String($2+2))}}else{if(e2(y,$2,G2.id))Y2=!0;let D2=K2?T(G2,$2,U2):i(G2,$2,Y2,v,U2);if(A.set($2,D2),!e)e=document.createDocumentFragment();e.appendChild(D2.element)}}if(e)$.appendChild(e);for(let[$2,A2]of A)if($2<R.start||$2>R.end)_.release(A2.element),A.delete($2)},I=(k,R,y,s)=>{let Z2=A.get(k);if(!Z2)return;if(Z2.isGroupHeader)return;let J2=O.columns;for(let e=0;e<Z2.cells.length&&e<J2.length;e++)r(Z2.cells[e],R,J2[e],k);Z2.element.setAttribute("data-id",String(R.id)),Z2._lastItem=R,Z2.lastItemId=R.id,z(Z2.element,k,y,s),b(Z2.element,y),Z2.lastSelected=y,Z2.lastFocused=s},H=(k,R,y)=>{let s=A.get(k);if(!s)return;if(s.isGroupHeader)return;let Z2=s.lastSelected!==R,J2=s.lastFocused!==y;if(Z2||J2)z(s.element,k,R,y),b(s.element,R),s.lastSelected=R,s.lastFocused=y},d=(k)=>{O=k;let R=k.columns;for(let[,y]of A)if(y.element.style.width=`${k.totalWidth}px`,y.cells.length>0)for(let s=0;s<y.cells.length&&s<R.length;s++){let Z2=y.cells[s],J2=R[s];Z2.style.left=`${J2.offset}px`,Z2.style.width=`${J2.width}px`}},p=(k)=>{return A.get(k)?.element},a=()=>{for(let[,k]of A)_.release(k.element);A.clear(),F=-1};return{render:n,updateItem:I,updateItemClasses:H,getElement:p,updateColumnLayout:d,setGroupHeaderFn:M,clear:a,destroy:()=>{a(),_.clear()}}};var z4=new Set;function I0($){if(!$.columns?.length)throw Error("[vlist] table: columns must be a non-empty array");if($.rowHeight===void 0&&$.estimatedRowHeight===void 0)throw Error("[vlist] table: either rowHeight or estimatedRowHeight is required");let J=null,Q=null,j=null,U,Z,K=null,q=null,D=null,N=!1,_=-1,A=-1,F=null,O=!1;function C(){if(N||!K)return;N=!0,q=K.getMethod("_getSelectedIds")??null,D=K.getMethod("_getFocusedIndex")??null}let B=[],P={start:0,end:0};function M(){if(U.destroyed||!K||!j||!J)return;let{containerSize:G,totalItems:Y}=U;if(G<=0||Y===0)return;let w=Y+1;if(w!==_)_=w,K.dom.root.setAttribute("aria-rowcount",`${w}`);let L=U.scrollPosition,X=K.config.overscan,h=Z.indexAtOffset(L),u=Z.indexAtOffset(L+G);if(u<Y-1)u++;h=Math.max(0,h),u=Math.min(Y-1,u);let E=Math.max(0,h-X),m=Math.min(Y-1,u+X);if(E===U.prevRangeStart&&m===U.prevRangeEnd&&!U.renderPending)return;C();let o=q?.()??z4,g=D?.()??-1;B.length=0;for(let S=E;S<=m;S++){let l=K.getItem(S);if(l)B.push(l)}if(P.start=E,P.end=m,j.render(B,P,o,g),U.prevRangeStart=E,U.prevRangeEnd=m,U.renderPending=!1,!O)O=!0,F=K.getMethod?.("_layoutToDataIndex")??null;if(F){let S=F,l=-1;for(let z=E;z<=m;z++){let f=S(z);if(f>=0){l=f;break}}let r=-1;for(let z=m;z>=E;z--){let f=S(z);if(f>=0){r=f;break}}U.startIndex=l<0?E:l,U.visibleCount=l<0?0:r-l+1}else U.startIndex=E,U.visibleCount=m-E+1;let j2=Z.getTotalSize();if(j2!==A)A=j2,K.updateContentSize(j2)}function b(){if(U.destroyed)return;A=-1,U.prevRangeStart=-1,U.prevRangeEnd=-1,U.renderPending=!0,M()}return{name:"table",priority:10,conflicts:["grid","masonry"],setup(G){K=G,U=G.getState(),Z=G.sizeCache;let{dom:Y,config:w,emitter:L}=G,{classPrefix:X}=w;if(w.axis.primary==="x")throw Error("[vlist] table: cannot be used with horizontal orientation");if(w.reverse)throw Error("[vlist] table: cannot be used with reverse mode");let h=$.resizable??!0,u=$.minColumnWidth??50,E=$.maxColumnWidth??1/0,m=$.fillWidth===!1?"none":$.fillWidth===!0?"stretch":$.fillWidth??"spacer",o=$.rowBorders??!0,g=$.rowHeight,j2=$.headerHeight??(typeof g==="number"?g:40),S=$.sort?.key??null,l=$.sort?.direction??"asc";if(J=r1($.columns,u,E,h,m),typeof g==="function"||typeof g==="number")G.setSizeConfig(g);if(G.rebuildSizeCache(),Y.root.classList.add(`${X}--table`),o)Y.root.classList.add(`${X}--table-row-borders`);if($.columnBorders)Y.root.classList.add(`${X}--table-col-borders`);queueMicrotask(()=>{if(G.getMethod("_getSelectedIds"))Y.root.setAttribute("tabindex","0")}),Y.root.setAttribute("role","grid"),Y.root.setAttribute("aria-colcount",`${$.columns.length}`),Y.viewport.setAttribute("role","none"),Y.content.setAttribute("role","rowgroup");let r=U.crossSize;J.resolve(r);let z=()=>{if(!J)return;Y.content.style.minWidth=`${J.totalWidth}px`},f=(I,H)=>{if(!J)return;let d=J.getColumn(I);if(!d)return;let p=d.width,a=J.resizeColumn(I,H);Q?.update(J),j?.updateColumnLayout(J),z(),L.emit("column:resize",{key:d.def.key,index:I,previousWidth:p,width:a})},V=(I)=>{S=I.direction===null?null:I.key,l=I.direction??"asc",Q?.updateSort(S,l),L.emit("column:sort",I)};if(Q=s1(Y.root,j2,X,f,V),Q.rebuild(J),S)Q.updateSort(S,l);z(),j=o1(Y.content,()=>Z,J,$.columns,X,X,()=>U.totalItems,w.striped||void 0,void 0,()=>U.baseOffset),G.setRenderFn(M,b);let T=Q,i=-1,n=()=>{let I=Y.viewport.scrollLeft;if(I!==i)i=I,T?.syncScroll?.(I)};Y.viewport.addEventListener("scroll",n,{passive:!0}),G.registerMethod("updateColumns",(I)=>{if(!J||!Q)return;if(J.updateColumns(I),J.resolve(U.crossSize),Q.rebuild(J),S)Q.updateSort(S,l);z(),j?.updateColumnLayout(J),j?.clear(),G.forceRender()}),G.registerMethod("resizeColumn",(I,H)=>{if(!J)return;let d;if(typeof I==="string"){let p=J.columns;d=-1;for(let a=0;a<p.length;a++)if(p[a].def.key===I){d=a;break}if(d===-1)return}else d=I;f(d,H)}),G.registerMethod("getColumnWidths",()=>{if(!J)return{};let I={},H=J.columns;for(let d=0;d<H.length;d++)I[H[d].def.key]=H[d].width;return I}),G.registerMethod("setSort",(I,H)=>{S=I,l=H??"asc",Q?.updateSort(S,l)}),G.registerMethod("getSort",()=>{return{key:S,direction:l}}),G.registerMethod("_getTableLayout",()=>J),G.registerMethod("_getTableHeaderHeight",()=>j2),G.registerMethod("_updateRenderedItem",(I,H,d,p)=>{j?.updateItem(I,H,d,p)}),G.registerMethod("_replaceTableRenderer",(I)=>{j=I}),G.registerMethod("_updateTableForGroups",(I,H)=>{j?.setGroupHeaderFn(I,H)}),G.registerMethod("_updateItemClasses",(I,H,d)=>{j?.updateItemClasses(I,H,d)}),G.registerKeydownHandler((I)=>{if(I.key!=="ArrowLeft"&&I.key!=="ArrowRight")return;if(!J)return;let H=J.columns;if(H.length===0)return;let d=Y.viewport.clientWidth;if(J.totalWidth<=d)return;let p=Y.viewport.scrollLeft;if(I.key==="ArrowRight"){for(let a=0;a<H.length;a++)if(H[a].offset>p+1){Y.viewport.scrollLeft=H[a].offset,I.preventDefault();return}}else{for(let a=H.length-1;a>=0;a--)if(H[a].offset<p-1){Y.viewport.scrollLeft=H[a].offset,I.preventDefault();return}if(p>0)Y.viewport.scrollLeft=0,I.preventDefault()}}),G.registerDestroyHandler(()=>{Y.viewport.removeEventListener("scroll",n),Q?.destroy(),Q=null,j?.destroy(),j=null,Y.content.style.minWidth="",Y.root.classList.remove(`${X}--table`),Y.root.classList.remove(`${X}--table-row-borders`),Y.root.classList.remove(`${X}--table-col-borders`),Y.root.removeAttribute("role"),Y.root.removeAttribute("aria-colcount"),Y.root.removeAttribute("aria-rowcount"),Y.root.removeAttribute("tabindex"),Y.viewport.removeAttribute("role"),Y.content.removeAttribute("role")})},hooks:{onResize(G,Y){if(!J||!K)return;let w=U.crossSize;if(J.resolve(w),Q?.update(J),j?.updateColumnLayout(J),J)K.dom.content.style.minWidth=`${J.totalWidth}px`},onAfterScroll(){if(!K||!Q)return;Q?.syncScroll?.(K.dom.viewport.scrollLeft)}},destroy(){Q?.destroy(),Q=null,j?.destroy(),j=null,K=null}}}function f0($){let J=$?.handle??null,Q=$?.ghostClass??"vlist-sort-ghost",j=$?.shiftDuration??150,U=$?.edgeScrollZone??40,Z=$?.edgeScrollSpeed??20,K=$?.dragThreshold??5,q=$?.ghostContainer??null,D,N,_=null,A,F,O,C,B,P,M,b,G,Y,w=!1,L=-1,X=-1,h=0,u=0,E=0,m=0,o=!1,g=null,j2=0,S=null,l=0,r=0,z=0,f=null,V=!1,T="",i=-1,n=-1,I=[],H="",d=null,p=null,a="",W=!1,k=(x)=>{return x.closest("[data-index]")},R=(x)=>{let V2=x.dataset.index;return V2===void 0?-1:+V2},y=(x)=>{let V2=x.getBoundingClientRect(),q2=x.cloneNode(!0);return q2.className=`${C}-item ${Q}`,q2.removeAttribute("data-index"),q2.style.cssText=`position:fixed;pointer-events:none;z-index:10000;width:${V2.width}px;height:${V2.height}px;left:${V2.left}px;top:${V2.top}px;transition:none;will-change:transform`,(q||document.body).appendChild(q2),q2},s=()=>{if(!g)return;g.style.left=`${E-r}px`,g.style.top=`${m-z}px`},Z2=()=>{let x=D.totalItems;if(x===0)return 0;let V2=F.getBoundingClientRect(),q2=D.scrollPosition,E2=B?E-r-V2.left+F.scrollLeft+q2:m-z-V2.top+q2,w2=E2+l,X2=N.getOffset(L)+N.getSize(L);if(w2>X2){let L2=N.indexAtOffset(w2),v2=N.getOffset(L2)+N.getSize(L2)/2,C2=w2>v2?L2:L2-1;return Math.min(Math.max(C2,L),x-1)}let t=N.getOffset(L);if(E2<t){let L2=N.indexAtOffset(E2),v2=N.getOffset(L2)+N.getSize(L2)/2,C2=E2<v2?L2:L2+1;return Math.max(Math.min(C2,L),0)}return L},J2=()=>{let x=A.children,V2=l;for(let q2=0;q2<x.length;q2++){let E2=x[q2],w2=R(E2);if(w2<0||w2===L)continue;let X2=0;if(X>L){if(w2>L&&w2<=X)X2=-V2}else if(X<L){if(w2>=X&&w2<L)X2=V2}let t=N.getOffset(w2),L2=Math.round(t+X2);E2.style.transition=M,E2.style.transform=`${P}(${L2}px)`}},e=()=>{let x=A.children;for(let V2=0;V2<x.length;V2++){let q2=x[V2],E2=R(q2);if(E2>=0)q2.style.transform=`${P}(${Math.round(N.getOffset(E2))}px)`;q2.style.transition=""}},U2=()=>{if(!_)return;let x=Z2();if(x===X)return;X=x,J2(),_.emitter.emit("sort:move",{fromIndex:L,currentIndex:X})},$2=()=>{let x=F.getBoundingClientRect();if(B)return E<x.left||E>x.right;return m<x.top||m>x.bottom},A2=()=>{let x=_?.getMethod("_getFocusedIndex");return x?x():-1},G2=(x)=>{let V2=_?.getMethod("_focusById");if(V2)V2(x)},Y2=(x)=>{if(!_)return;let V2=B?F.clientWidth:F.clientHeight,q2=D.scrollPosition,E2=N.getOffset(x),w2=E2+N.getSize(x);if(E2<q2)_.scrollTo(Math.max(0,E2));else if(w2>q2+V2)_.scrollTo(w2-V2)},v=(x)=>{if(!p)return;p.textContent="",p.offsetHeight,p.textContent=x},K2=(x)=>{if(!_)return"";let q2=_.getItems()[x];if(!q2)return"";return A.querySelector(`[data-index="${x}"]`)?.textContent?.trim()||String(q2.id)},Q2=()=>String(D.totalItems),D2=(x)=>{let V2=A.children;for(let q2=0;q2<V2.length;q2++)V2[q2].style.transition=x},T2=()=>{let x=()=>{if(!w||!_)return;let V2=F.getBoundingClientRect(),q2=0,E2=3;if(B){let X2=E-V2.left,t=V2.right-E;if(X2<U){let L2=Math.min(E2,1-X2/U);q2=-Z*L2*L2}else if(t<U){let L2=Math.min(E2,1-t/U);q2=Z*L2*L2}}else{let X2=m-V2.top,t=V2.bottom-m;if(X2<U){let L2=Math.min(E2,1-X2/U);q2=-Z*L2*L2}else if(t<U){let L2=Math.min(E2,1-t/U);q2=Z*L2*L2}}let w2=$2();if(q2!==0){let X2=D.scrollPosition,t=N.getTotalSize()-(B?F.clientWidth:F.clientHeight);if(q2<0&&X2<=0||q2>0&&X2>=t)W=w2;else W=!0,_.scrollTo(X2+q2)}else W=w2;j2=requestAnimationFrame(x)};j2=requestAnimationFrame(x)},k2=()=>{if(j2)cancelAnimationFrame(j2),j2=0},R2=(x=!1)=>{if(w=!1,o=!1,g&&g.parentNode)g.remove();g=null,S=null;let V2=A.children;for(let E2=0;E2<V2.length;E2++){let w2=V2[E2];w2.classList.remove(Y);let X2=R(w2);if(X2>=0)w2.style.transform=`${P}(${Math.round(N.getOffset(X2))}px)`;w2.style.transition=""}k2(),O.classList.remove(b),document.body.style.cursor="";let q2=window.getSelection();if(q2)q2.removeAllRanges();if(document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),!x&&_)_.forceRender()},F2=(x,V2)=>{if(!_)return;let q2=x!==V2&&x>=0&&V2>=0,E2=()=>{if(!_)return;if(w=!1,q2){if(O.classList.add(G),_.emitter.emit("sort:end",{fromIndex:x,toIndex:V2}),f!==null)G2(f);R2(!0),requestAnimationFrame(()=>O.classList.remove(G))}else O.classList.add(G),_.emitter.emit("sort:cancel",{originalItems:[..._.getItems()]}),R2(!1),requestAnimationFrame(()=>O.classList.remove(G))};if(!g){E2();return}let w2=F.getBoundingClientRect(),X2=D.scrollPosition,t=N.getOffset(V2),L2=j>0?j:150;if(g.style.transition=`left ${L2}ms ease, top ${L2}ms ease`,B)g.style.left=`${w2.left-F.scrollLeft+t-X2}px`,g.style.top=`${w2.top}px`;else g.style.left=`${w2.left}px`,g.style.top=`${w2.top+t-X2}px`;let v2=!1,C2=()=>{if(v2)return;v2=!0,g?.removeEventListener("transitionend",C2),E2()};g.addEventListener("transitionend",C2),setTimeout(C2,L2+50)},P2=(x)=>{if(D.destroyed||!_)return;if(w)return;if(V)O2();if(x.button!==0)return;let V2=x.target;if(J){if(!V2.closest(J))return}let q2=k(V2);if(!q2)return;let E2=R(q2);if(E2<0)return;h=x.clientX,u=x.clientY,E=x.clientX,m=x.clientY,L=E2,o=!1,S=q2;let w2=q2.getBoundingClientRect();r=x.clientX-w2.left,z=x.clientY-w2.top,document.addEventListener("pointermove",z2),document.addEventListener("pointerup",c),document.addEventListener("pointercancel",B2)};function z2(x){if(!_)return;if(E=x.clientX,m=x.clientY,!o){let V2=E-h,q2=m-u;if(Math.sqrt(V2*V2+q2*q2)<K)return;if(o=!0,w=!0,X=L,O.classList.add(b),document.body.style.cursor="grabbing",l=N.getSize(L),S)g=y(S),S.classList.add(Y);let E2=A2();if(E2>=0){let X2=_.getItems()[E2];f=X2?X2.id:null}else f=null;_.emitter.emit("sort:start",{index:L}),T2()}if(w){if(x.preventDefault(),s(),!W)U2();else if($2()){if(X!==L)X=L,e()}}}function c(x){if(!o){document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),S=null;return}x.preventDefault(),document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),k2(),F2(L,X)}let H2=()=>{if(!o)return;document.removeEventListener("pointermove",z2),document.removeEventListener("pointerup",c),document.removeEventListener("pointercancel",B2),k2(),e(),F2(L,L)};function B2(){H2()}let M2=()=>{let x=A.querySelectorAll(`.${a}`);for(let V2=0;V2<x.length;V2++)x[V2].classList.remove(a)},_2=()=>{M2();let x=A.querySelector(`[data-id="${T}"]`);if(x)x.classList.add(a)},b2=(x)=>{if(!_)return;let V2=_.getItems(),q2=V2[x];if(!q2)return;V=!0,T=q2.id,i=x,n=x,I=[...V2],O.classList.add(b),_.emitter.emit("sort:start",{index:x}),_2(),v(`Grabbed ${K2(x)}. Current position ${x+1} of ${Q2()}. Use Up and Down arrow keys to move, Space to drop, Escape to cancel.`)},N2=()=>{if(!V||!_)return;V=!1;let x=n,V2=K2(x);D2("none"),O.classList.remove(b),M2(),G2(T),_.forceRender(),v(`${V2} dropped. Final position ${x+1} of ${Q2()}.`),I=[],requestAnimationFrame(()=>D2(""))},O2=()=>{if(!V||!_)return;V=!1;let x=i;if(D2("none"),O.classList.remove(b),M2(),n!==x)_.emitter.emit("sort:cancel",{originalItems:I});G2(T),_.forceRender(),Y2(x),v(`Reorder cancelled. Returned to position ${x+1} of ${Q2()}.`),I=[],requestAnimationFrame(()=>D2(""))},y2=(x)=>{if(!V||!_)return;let V2=D.totalItems,q2=n+x;if(q2<0||q2>=V2)return;let E2=n,w2=q2;D2("none"),_.emitter.emit("sort:end",{fromIndex:E2,toIndex:w2}),n=w2,G2(T),_.forceRender(),Y2(w2),_2(),v(`${K2(w2)} moved. New position ${w2+1} of ${Q2()}.`),requestAnimationFrame(()=>D2(""))},W2=(x)=>{if(D.destroyed)return;if(w){if(x.key==="Escape")x.preventDefault(),x.stopImmediatePropagation(),H2();return}if(V)switch(x.key){case" ":case"Enter":x.preventDefault(),x.stopImmediatePropagation(),N2();return;case"Escape":x.preventDefault(),x.stopImmediatePropagation(),O2();return;case"ArrowUp":case"ArrowLeft":x.preventDefault(),x.stopImmediatePropagation(),y2(-1);return;case"ArrowDown":case"ArrowRight":x.preventDefault(),x.stopImmediatePropagation(),y2(1);return;default:if(!x.key.startsWith("F")&&x.key!=="Tab")x.preventDefault(),x.stopImmediatePropagation();return}if(x.key===" "&&!x.shiftKey&&!x.ctrlKey&&!x.metaKey){let V2=A2();if(V2>=0)x.preventDefault(),x.stopImmediatePropagation(),b2(V2)}};return{name:"sortable",priority:30,conflicts:["grid","masonry","table","scale","tree"],setup(x){_=x,D=x.getState(),N=x.sizeCache,A=x.dom.content,F=x.dom.viewport,O=x.dom.root,C=x.config.classPrefix,B=x.config.axis.primary==="x",P=B?"translateX":"translateY",M=j>0?`transform ${j}ms ease`:"none",b=`${C}--sorting`,G=`${C}--settling`,Y=`${C}-item--drag-source`,a=`${C}-item--kb-sorting`,x.registerMethod("isSorting",()=>w||V),A.addEventListener("pointerdown",P2),O.addEventListener("keydown",W2),H=`${C}-sort-instructions`,d=document.createElement("div"),d.id=H,d.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",d.textContent="Press Space to reorder. Use arrow keys to move, Space to drop, Escape to cancel.",O.appendChild(d),p=document.createElement("div"),p.setAttribute("role","status"),p.setAttribute("aria-live","assertive"),p.setAttribute("aria-atomic","true"),p.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0",O.appendChild(p),x.registerDestroyHandler(()=>{if(V)O2();R2(),A.removeEventListener("pointerdown",P2),O.removeEventListener("keydown",W2),d?.remove(),p?.remove()})},hooks:{onCommit(){if(!_)return;let x=A.children;for(let V2=0;V2<x.length;V2++){let q2=x[V2],E2=R(q2);if(E2<0)continue;if(q2.setAttribute("aria-roledescription","sortable item"),q2.setAttribute("aria-describedby",H),V)if(q2.getAttribute("data-id")===String(T))q2.classList.add(a);else q2.classList.remove(a);if(w)if(E2===L)q2.classList.add(Y),S=q2;else{q2.classList.remove(Y);let w2=0;if(X>L){if(E2>L&&E2<=X)w2=-l}else if(X<L){if(E2>=X&&E2<L)w2=l}let X2=Math.round(N.getOffset(E2)+w2);q2.style.transform=`${P}(${X2}px)`}}}},destroy(){if(g&&g.parentNode)g.remove();g=null,k2(),d?.remove(),p?.remove(),_=null}}}function p0($,J){let Q=[],j=J,U=new Map,Z=[];function K(){U.clear();for(let L=0;L<Q.length;L++)U.set(Q[L].id,L)}function q(L){let X=Q[L].depth,h=0;for(let u=L+1;u<Q.length;u++){if(Q[u].depth<=X)break;h++}return h}function D(L,X,h,u){for(let E=0;E<L.length;E++){let m=L[E],o=m.id,g=$(m),j2=g.length>0,S=j2&&j.has(o);if(u.push({item:m,id:o,depth:h,parentId:X,hasChildren:j2,expanded:S,childCount:g.length,siblingCount:L.length,positionInSiblings:E,isLastChild:E===L.length-1,loading:!1}),S)D(g,o,h+1,u)}}function N(L,X,h){for(let u of L){if(u.id===X)return u;let E=$(u);if(E.length>0){h?.push(u.id);let m=N(E,X,h);if(m)return m;h?.pop()}}return}function _(L,X){if(X===null)return Z;let h=N(Z,X);return h?$(h):[]}function A(L,X){let h=N(Z,X);if(!h)return!1;return N($(h),L)!==void 0}function F(L){let X=new Set;function h(u){for(let E of u){if(X.has(E.id))throw Error(`[vlist] tree: duplicate id "${E.id}"`);X.add(E.id);let m=$(E);if(m.length>0)h(m)}}h(L)}function O(L,X){if(Z=L,!X)F(L);Q.length=0,D(L,null,0,Q),K()}function C(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X];if(!h.hasChildren||h.expanded)return 0;let u=[],E=$(h.item);if(D(E,L,h.depth+1,u),u.length===0)return 0;h.expanded=!0,j.add(L);let m=X+1,o=Q.splice(m);for(let g=0;g<u.length;g++)Q.push(u[g]);for(let g=0;g<o.length;g++)Q.push(o[g]);return K(),u.length}function B(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X];if(!h.hasChildren||!h.expanded)return 0;h.expanded=!1,j.delete(L);let u=q(X);if(u>0)Q.splice(X+1,u),K();return u}function P(L){function X(h){for(let u of h){let E=$(u);if(E.length>0)j.add(u.id),X(E)}}X(L),O(L)}function M(){j.clear(),O(Z,!0)}function b(L){let X=[];if(!N(Z,L,X))return;for(let h of X)j.add(h);O(Z,!0)}function G(L,X,h){if(U.has(X.id)||N(Z,X.id))throw Error(`[vlist] tree: duplicate id "${X.id}"`);if(L===null){let g=Z,j2=h??g.length;g.splice(j2,0,X),O(Z,!0);return}let u=U.get(L);if(u===void 0)throw Error(`[vlist] tree: parent "${L}" not found`);let E=Q[u],m=$(E.item),o=h??m.length;if(m.splice(o,0,X),!E.hasChildren)E.hasChildren=!0,E.childCount=1,E.expanded=!1;else E.childCount=m.length;if(E.expanded)O(Z,!0);else K()}function Y(L){let X=U.get(L);if(X===void 0)return 0;let h=Q[X],E=q(X)+1;for(let g=X;g<X+E;g++)j.delete(Q[g].id);if(Q.splice(X,E),h.parentId!==null){let g=U.get(h.parentId);if(g!==void 0){let j2=Q[g];if(j2.childCount--,j2.childCount===0)j2.hasChildren=!1,j2.expanded=!1,j.delete(j2.id)}}let m=_(L,h.parentId),o=m.findIndex((g)=>g.id===L);if(o>=0)m.splice(o,1);return O(Z,!0),E}function w(L,X,h){if(X!==null&&A(X,L))throw Error(`[vlist] tree: cannot move "${L}" to its own descendant "${X}"`);if(L===X)throw Error(`[vlist] tree: cannot move "${L}" to itself`);let u=U.get(L);if(u===void 0)return;let E=Q[u],m=_(L,E.parentId),o=m.findIndex((g)=>g.id===L);if(o>=0)m.splice(o,1);if(X===null){let g=Z,j2=h??g.length;g.splice(j2,0,E.item)}else{let g=N(Z,X);if(!g)throw Error(`[vlist] tree: new parent "${X}" not found`);let j2=$(g),S=h??j2.length;j2.splice(S,0,E.item)}O(Z,!0)}return{flatNodes:Q,expandedIds:j,idToIndex:U,rebuild:O,expand:C,collapse:B,expandAll:P,collapseAll:M,expandTo:b,getSubtreeSize:q,addChild:G,removeNode:Y,moveNode:w,get totalVisible(){return Q.length},get rootItems(){return Z}}}var y4=()=>[];function v4($){let{children:J,parentId:Q}=$;if(Q!==void 0)return y4;if(J===void 0||J==="children")return(j)=>j.children??[];if(typeof J==="string"){let j=J;return(U)=>U[j]??[]}return J}function C4($){let{label:J}=$;if(J===void 0)return(Q)=>{let j=Q;return String(j.name??j.label??j.title??Q.id)};if(typeof J==="string"){let Q=J;return(j)=>String(j[Q]??j.id)}return J}function S4($,J,Q){let{expanded:j}=$,U=new Set;if(j===void 0||j===!1)return U;if(Array.isArray(j)){for(let q of j)U.add(q);return U}let Z=j===!0?null:j;function K(q){for(let D of q){let N=Q(D);if(N.length>0){if(!Z||Z(D))U.add(D.id);K(N)}}}return K(J),U}function a1($,J){let{parentId:Q}=J;if(Q===void 0)throw Error("[vlist] tree: parentId not set");let j=typeof Q==="string"?(q)=>q[Q]??null:Q,U=(q)=>j(q)??null,Z=new Map,K=new Map;for(let q of $){K.set(q.id,q);let D=U(q),N=Z.get(D);if(!N)N=[],Z.set(D,N);N.push(q)}for(let q of $){let D=U(q);if(D!==null&&D!==void 0&&!K.has(D))console.warn(`[vlist] tree: orphaned node "${q.id}" — parentId "${D}" not found`)}return{roots:Z.get(null)??[],getChildren:(q)=>{let D=Z.get(q.id);if(!D)D=[],Z.set(q.id,D);return D}}}var g2={selected:!1,focused:!1},r2={depth:0,expanded:!1,hasChildren:!1,isLeaf:!0,isLastChild:!1,loading:!1};g2.tree=r2;function u0($){let J=$??{},Q=J.indent??24,j=J.paddingStart??0,U=J.expandOnClick??!1,Z=J.connectorLines??!1,K=J.parentId!==void 0,q,D,N,_,A,F,O,C,B,P,M=null,b,G,Y,w,L,X,h,u,E,m,o=new Map,g=-1,j2=-1,S=-1,l=!0,r=null,z=!1,f,V=-1,T=!1,i=!1,n="",I=null;function H(){if(i){let c=b("_getFocusedIndex");return c?c():-1}return T?V:-1}let d,p,a;function W(){if(p!==void 0)return;d=b("select")??null,p=b("_focusById")??null,a=b("_isFollowFocus")??null}function k(c){if(c<0||c>=q.totalVisible)return;let H2=q.flatNodes[c];if(!H2)return;if(i){if(W(),p)p(H2.id);if(a?.()&&d)d(H2.id);else s();R(c)}else V=c,T=!0,A.setAttribute("aria-activedescendant",`${B}-item-${c}`),R(c),s()}function R(c){let H2=D.getOffset(c),B2=D.getSize(c),M2=N.scrollPosition,_2=N.containerSize;if(H2<M2)y(H2);else if(H2+B2>M2+_2)y(H2-_2+B2)}let y,s,Z2;function J2(c){return C?`translate(${Math.round(c)}px, 0)`:`translate(0, ${Math.round(c)}px)`}function e(c){if(c===S)return;S=c,A.style[C?"width":"height"]=c+"px"}function U2(){o.forEach((c)=>{c.remove(),_.release(c)}),o.clear()}let $2=0;function A2(){let c=Z2();if(c===r&&c.length===$2)return;if(r=c,$2=c.length,K){let{roots:H2,getChildren:B2}=a1(c,J),M2=J.loadChildren?(_2)=>v.get(_2.id)??B2(_2):B2;q=p0(M2,q.expandedIds),q.rebuild(H2,!0)}else q.rebuild(c,!0);G2(),U2()}function G2(){N.totalItems=q.totalVisible,f(q.totalVisible);let c=D.getTotalSize();e(c);let H2=b("_scrollbar:getInstance");if(H2)H2()?.updateBounds(c,N.containerSize)}function Y2(){G2(),U2(),s()}let v=new Map,K2=new Set;async function Q2(c){if(!J.loadChildren||K2.has(c))return;let H2=q.idToIndex.get(c);if(H2===void 0)return;let B2=q.flatNodes[H2];K2.add(c),B2.loading=!0,queueMicrotask(()=>s());try{let M2=await J.loadChildren(B2.item);K2.delete(c);let _2=q.idToIndex.get(c);if(_2===void 0)return;let b2=q.flatNodes[_2];if(b2.loading=!1,v.set(c,M2),b2.hasChildren=M2.length>0,b2.childCount=M2.length,M2.length>0)b2.expanded=!0,q.expandedIds.add(c),q.rebuild(q.rootItems);Y2(),G.emit("tree:load",{id:c,item:b2.item,children:M2})}catch(M2){K2.delete(c),v.set(c,[]);let _2=q.idToIndex.get(c);if(_2!==void 0)q.flatNodes[_2].loading=!1;s(),G.emit("tree:load:error",{id:c,item:B2.item,error:M2})}}function D2(c){let H2=q.idToIndex.get(c);if(H2===void 0)return;let B2=q.flatNodes[H2];if(J.loadChildren&&!B2.hasChildren&&!B2.loading){if(!v.has(c)){Q2(c);return}}if(q.expand(c)===0)return;Y2(),G.emit("tree:expand",{id:c,item:B2.item,depth:B2.depth})}function T2(c){let H2=q.idToIndex.get(c);if(H2===void 0)return;let B2=q.flatNodes[H2],M2=q.collapse(c);if(M2===0)return;if(!i&&V>H2){if(V<=H2+M2)V=H2;else V-=M2;if(T)A.setAttribute("aria-activedescendant",`${B}-item-${V}`)}Y2(),G.emit("tree:collapse",{id:c,item:B2.item,depth:B2.depth})}function k2(c,H2,B2,M2){let{depth:_2,expanded:b2,hasChildren:N2,loading:O2,siblingCount:y2,positionInSiblings:W2,isLastChild:x,id:V2}=H2;if(c.className=w,b2)c.classList.add(L);if(!N2)c.classList.add(X);if(O2)c.classList.add(h);if(Z&&x)c.classList.add(u);if(c.setAttribute("role","treeitem"),c.setAttribute("data-index",String(B2)),c.setAttribute("data-id",String(V2)),c.id=`${B}-item-${B2}`,c.setAttribute("aria-level",String(_2+1)),c.setAttribute("aria-setsize",String(y2)),c.setAttribute("aria-posinset",String(W2+1)),N2)c.setAttribute("aria-expanded",String(b2));else c.removeAttribute("aria-expanded");if(c.style.paddingLeft=`${j+_2*Q}px`,c.style.setProperty("--vlist-tree-depth",String(_2)),Z)c.style.setProperty("--vlist-tree-indent",`${Q}px`),c.style.setProperty("--vlist-tree-pad",`${j}px`);if(M2)M2(B2,g2);else g2.selected=!1,g2.focused=!1;r2.depth=_2,r2.expanded=b2,r2.hasChildren=N2,r2.isLeaf=!N2,r2.isLastChild=x,r2.loading=O2;let q2=O(H2.item,B2,g2);if(typeof q2==="string")c.innerHTML=q2;else c.innerHTML="",c.appendChild(q2);u2(c)}function R2(){if(N.destroyed)return;if(A2(),!z){if(z=!0,A.setAttribute("role","tree"),A.setAttribute("tabindex","0"),F.classList.add(`${B}--tree`),Z)F.classList.add(`${B}--tree-lines`)}let{scrollPosition:c,containerSize:H2}=N;if(!l&&c===g&&H2===j2)return;g=c,j2=H2,l=!1;let B2=q.totalVisible;if(H2<=0||B2===0){if(o.size>0)U2();return}let M2=D.indexAtOffset(c),_2=D.indexAtOffset(c+H2);if(_2<B2-1)_2++;M2=Math.max(0,M2),_2=Math.min(B2-1,Math.max(0,_2));let b2=Math.max(0,M2-P),N2=Math.min(B2-1,_2+P);if(b2===N.prevRangeStart&&N2===N.prevRangeEnd&&!N.renderPending)return;o.forEach((x,V2)=>{if(V2<b2||V2>N2)x.remove(),_.release(x),o.delete(V2)});let O2=M?.()??null,y2=null;for(let x=b2;x<=N2;x++){let V2=q.flatNodes[x],q2=o.get(x);if(q2===void 0){if(q2=_.acquire(),k2(q2,V2,x,O2),q2.style[C?"width":"height"]=`${D.getSize(x)}px`,o.set(x,q2),!y2)y2=document.createDocumentFragment();y2.appendChild(q2)}else if(q2.getAttribute("data-id")!==String(V2.id)||q2.classList.contains(h)!==V2.loading)k2(q2,V2,x,O2);if(q2.style.transform=J2(D.getOffset(x)),O2)if(O2(x,g2),q2.classList.toggle(E,g2.selected),q2.classList.toggle(m,g2.focused),g2.selected)q2.setAttribute("aria-selected","true");else q2.removeAttribute("aria-selected");else if(!i){let E2=T&&V===x;q2.classList.toggle(m,E2)}}if(y2)A.appendChild(y2);e(D.getTotalSize()),N.prevRangeStart=b2,N.prevRangeEnd=N2,N.renderPending=!1;let W2=0;for(let x=b2;x<=N2&&W2<N.capacity;x++)N.visibleIndices[W2]=x,N.visibleOffsets[W2]=D.getOffset(x),N.visibleSizes[W2]=D.getSize(x),W2++;N.visibleCount=W2,N.startIndex=b2}function F2(){if(N.destroyed)return;N.prevRangeStart=-1,N.prevRangeEnd=-1,N.renderPending=!0,l=!0,R2()}function P2(c,H2){if(n+=c.toLowerCase(),I!==null)clearTimeout(I);I=setTimeout(()=>{n="",I=null},500);let B2=q.totalVisible;for(let M2=1;M2<=B2;M2++){let _2=(H2+M2)%B2,b2=q.flatNodes[_2];if(Y(b2.item).toLowerCase().startsWith(n)){k(_2);return}}}function z2(c){let H2=!1;for(let B2 of q.flatNodes)if(B2.parentId===c.parentId&&B2.hasChildren&&!B2.expanded)q.expandedIds.add(B2.id),H2=!0;if(!H2)return;q.rebuild(q.rootItems,!0),Y2()}return{name:"tree",priority:10,conflicts:["groups","grid","masonry","table"],setup(c){D=c.sizeCache,N=c.getState(),_=c.pool,A=c.dom.content,F=c.dom.root,O=c.template,C=c.config.axis.primary==="x",B=c.config.classPrefix,P=c.config.overscan,G=c.emitter,M=c.getItemStateFn.bind(c),b=c.getMethod.bind(c),y=c.scrollTo.bind(c),s=c.forceRender.bind(c),Z2=c.getItems.bind(c),w=`${B}-item ${B}-tree-node`,L=`${B}-tree-node--expanded`,X=`${B}-tree-node--leaf`,h=`${B}-tree-node--loading`,u=`${B}-tree-node--last`,E=`${B}-item--selected`,m=`${B}-item--focused`;let H2=c.getItems();r=H2,$2=H2.length;let B2,M2;if(K){let W2=a1(H2,J);B2=W2.getChildren,M2=W2.roots}else B2=v4(J),M2=H2;let _2=J.loadChildren?(W2)=>v.get(W2.id)??B2(W2):B2;Y=C4(J);let b2=S4(J,M2,_2);q=p0(_2,b2),q.rebuild(M2),f=D.rebuild,D.rebuild=(W2)=>{f(q.totalVisible)},D.rebuild(q.totalVisible),N.totalItems=q.totalVisible,c.setVirtualTotalFn(()=>q.totalVisible),c.setGetItemFn((W2)=>{let x=q.flatNodes[W2];return x?x.item:void 0}),c.setGetIndexByIdFn((W2)=>{return q.idToIndex.get(W2)??-1}),c.setRenderFn(R2,F2),c.registerMethod("_layoutToDataIndex",(W2)=>W2),c.registerMethod("_dataToLayoutIndex",(W2)=>W2),c.registerMethod("_getLoadedItem",(W2)=>{let x=q.flatNodes[W2];return x?x.item:void 0}),c.registerMethod("_getRenderedElement",(W2)=>o.get(W2)??null),queueMicrotask(()=>{i=!!(b("_getFocusedIndex")||c.getItemStateFn())}),c.setInsertItemFn((W2,x)=>{let V2=Z2(),q2=Math.min(x,V2.length);V2.splice(q2,0,W2),$2=V2.length,q.rebuild(V2),Y2()}),c.setRemoveItemFn((W2)=>{let x=q.idToIndex.get(W2),V2=null;if(K&&x!==void 0){V2=new Set,V2.add(W2);let E2=q.getSubtreeSize(x);for(let w2=x+1;w2<=x+E2;w2++)V2.add(q.flatNodes[w2].id)}let q2=q.removeNode(W2);if(q2===0)return-1;if(!i&&x!==void 0&&V>=x)V=Math.max(0,Math.min(V-q2,q.totalVisible-1));if(K&&V2){let E2=Z2();for(let w2=E2.length-1;w2>=0;w2--)if(V2.has(E2[w2].id))E2.splice(w2,1)}return $2=Z2().length,Y2(),G.emit("data:change",{type:"remove",id:W2}),q2}),c.setUpdateItemFn((W2,x)=>{let V2=q.idToIndex.get(W2);if(V2===void 0)return!1;let q2=q.flatNodes[V2];Object.assign(q2.item,x);let E2=o.get(V2);if(E2)k2(E2,q2,V2,M?.()??null);return G.emit("data:change",{type:"update",id:W2}),!0}),c.registerClickHandler((W2)=>{let x=W2.target.closest("[data-index]");if(!x)return;let V2=parseInt(x.dataset.index??"-1",10);if(V2<0)return;let q2=q.flatNodes[V2];if(!q2)return;let E2=q2.id,w2=!1;if(U&&(q2.hasChildren||J.loadChildren&&!q2.loading&&!v.has(E2))){let X2=q.totalVisible;if(q2.expanded)T2(E2);else D2(E2);w2=q.totalVisible!==X2}if(i&&w2){if(W(),p)p(E2);if(d)d(E2)}else if(!i)V=q.idToIndex.get(E2)??V2,T=!1,A.focus({preventScroll:!0})});let N2=()=>{if(N.destroyed||i)return;if(!A.matches(":focus-visible")&&!F.matches(":focus-visible"))return;let W2=q.totalVisible;if(W2===0)return;V=V>=0?Math.min(V,W2-1):0,T=!0,A.setAttribute("aria-activedescendant",`${B}-item-${V}`),R(V),F2()};F.addEventListener("focusin",N2);let O2=(W2)=>{if(N.destroyed||i)return;let x=W2.relatedTarget;if(x&&F.contains(x))return;T=!1,A.removeAttribute("aria-activedescendant"),F2()};F.addEventListener("focusout",O2),c.registerKeydownHandler((W2)=>{if(N.destroyed)return;let x=q.totalVisible;if(x===0)return;let V2=H();if(V2<0&&!i&&(W2.key==="ArrowDown"||W2.key==="Home")){k(0),W2.preventDefault();return}if(V2<0)return;let q2=q.flatNodes[V2];if(!q2)return;switch(W2.key){case"ArrowRight":{if(q2.hasChildren||J.loadChildren&&!q2.loading)if(!q2.expanded)D2(q2.id);else k(V2+1);W2.preventDefault();break}case"ArrowLeft":{if(q2.hasChildren&&q2.expanded)T2(q2.id);else if(q2.parentId!==null){let E2=q.idToIndex.get(q2.parentId);if(E2!==void 0)k(E2)}W2.preventDefault();break}case"*":{z2(q2),W2.preventDefault();break}default:{if(!i){if(W2.key==="ArrowDown"){if(V2<x-1)k(V2+1);W2.preventDefault();break}if(W2.key==="ArrowUp"){if(V2>0)k(V2-1);W2.preventDefault();break}if(W2.key==="Home"){k(0),W2.preventDefault();break}if(W2.key==="End"){k(x-1),W2.preventDefault();break}if(W2.key==="Enter"){G.emit("item:click",{item:q2.item,index:V2,event:W2}),W2.preventDefault();break}}if(W2.key.length===1&&!W2.ctrlKey&&!W2.altKey&&!W2.metaKey)P2(W2.key,V2),W2.preventDefault()}}}),c.registerMethod("expand",D2),c.registerMethod("collapse",T2),c.registerMethod("toggle",(W2)=>{let x=q.idToIndex.get(W2);if(x===void 0)return;if(q.flatNodes[x].expanded)T2(W2);else D2(W2)}),c.registerMethod("expandAll",()=>{q.expandAll(q.rootItems),Y2()}),c.registerMethod("collapseAll",()=>{q.collapseAll(),Y2()}),c.registerMethod("expandTo",(W2)=>{q.expandTo(W2),Y2();let x=q.idToIndex.get(W2);if(x!==void 0)R(x)}),c.registerMethod("getExpanded",()=>Array.from(q.expandedIds)),c.registerMethod("isExpanded",(W2)=>q.expandedIds.has(W2));let y2=K&&typeof J.parentId==="string"?J.parentId:null;c.registerMethod("addChild",(W2,x,V2)=>{if(y2)x[y2]=W2;if(K){let q2=Z2();q2.push(x),$2=q2.length}q.addChild(W2,x,V2),Y2(),G.emit("data:change",{type:"add",id:x.id})}),c.registerMethod("moveNode",(W2,x,V2)=>{if(y2){let q2=q.idToIndex.get(W2);if(q2!==void 0)q.flatNodes[q2].item[y2]=x}q.moveNode(W2,x,V2),Y2()}),c.registerMethod("getTreeLayout",()=>({totalVisible:q.totalVisible,flatNodes:q.flatNodes})),c.registerDestroyHandler(()=>{if(F.removeEventListener("focusin",N2),F.removeEventListener("focusout",O2),U2(),F.classList.remove(`${B}--tree`),F.classList.remove(`${B}--tree-lines`),I!==null)clearTimeout(I)})},destroy(){if(o.clear(),I!==null)clearTimeout(I)}}}var i1=($)=>{if(typeof $==="function")return $;if(typeof $==="string")return(J)=>{let Q=J[$];return Q==null?"":String(Q)};return(J)=>{if(J==null)return"";let Q="";for(let j in J){let U=J[j];if(typeof U==="string")Q+=Q?" "+U:U}return Q}},g0=($,J,Q)=>{if(!J)return!1;return(Q?$:$.toLowerCase()).includes(J)},h4=($,J)=>{let Q=$.querySelectorAll(`mark.${J}`);for(let j=Q.length-1;j>=0;j--){let U=Q[j],Z=U.parentNode;if(!Z)continue;let K=document.createTextNode(U.textContent??"");Z.replaceChild(K,U),Z.normalize()}},x0=($,J,Q,j)=>{if(!J)return;h4($,j);let U=Q?J:J.toLowerCase(),Z=J.length,K=document.createTreeWalker($,NodeFilter.SHOW_TEXT,{acceptNode(N){let _=N.nodeValue??"";return(Q?_:_.toLowerCase()).includes(U)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}),q=[],D;while((D=K.nextNode())!==null)q.push(D);for(let N of q){let _=N.nodeValue??"",A=Q?_:_.toLowerCase(),F=document.createDocumentFragment(),O=0,C=A.indexOf(U,0);while(C!==-1){if(C>O)F.appendChild(document.createTextNode(_.slice(O,C)));let B=document.createElement("mark");B.className=j,B.textContent=_.slice(C,C+Z),F.appendChild(B),O=C+Z,C=A.indexOf(U,O)}if(O<_.length)F.appendChild(document.createTextNode(_.slice(O)));N.parentNode?.replaceChild(F,N)}};var m0=($,J,Q,j)=>{let U=document.createElement("button");return U.type="button",U.className=$,U.tabIndex=j,U.setAttribute("aria-label",J),U.innerHTML=Q,U},n1=($,J,Q,j,U,Z,K)=>{let q=`${Q}-search`,D=document.createElement("div");if(D.className=`${q} ${q}--bar ${q}--${j}`,D.setAttribute("role","search"),D.setAttribute("aria-disabled","false"),U.region)D.setAttribute("aria-label",U.region);let N=document.createElement("div");N.className=`${q}__container`;let _=document.createElement("span");_.className=`${q}__leading-icon`,_.setAttribute("aria-hidden","true"),_.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path></svg>';let A=document.createElement("div");A.className=`${q}__input-wrapper`;let F=document.createElement("input");if(F.type="text",F.className=`${q}__input`,F.placeholder=U.placeholder,F.spellcheck=!1,F.autocomplete="off",F.setAttribute("aria-label",U.placeholder),Z)F.setAttribute("aria-controls",Z);A.appendChild(F);let O=document.createElement("span");O.className=`${q}__counter`,O.setAttribute("aria-live","polite");let C=m0(`${q}__nav-prev`,U.previous,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></svg>',-1),B=m0(`${q}__nav-next`,U.next,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"></path></svg>',-1),P=m0(`${q}__clear-button ${q}__clear-button--hidden`,U.clear,'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></svg>',-1);if(N.append(_,A,O,C,B,P),D.appendChild(N),j==="top"&&J)$.insertBefore(D,J);else if(j==="top")$.insertBefore(D,$.firstChild);else $.appendChild(D);let M=()=>{P.classList.toggle(`${q}__clear-button--hidden`,F.value.length===0)},b=()=>{M(),K.onInput(F.value)},G=(h)=>K.onKeydown(h),Y=()=>F.focus(),w=()=>{K.onClear(),F.focus()},L=()=>K.onPrev(),X=()=>K.onNext();return F.addEventListener("input",b),F.addEventListener("keydown",G),_.addEventListener("click",Y),P.addEventListener("click",w),C.addEventListener("click",L),B.addEventListener("click",X),{root:D,input:F,setCounter(h){O.textContent=h},showNav(h){C.classList.toggle(`${q}__nav-prev--hidden`,!h),B.classList.toggle(`${q}__nav-next--hidden`,!h)},focus(){F.focus(),F.select()},setValue(h){F.value=h,M()},destroy(){F.removeEventListener("input",b),F.removeEventListener("keydown",G),_.removeEventListener("click",Y),P.removeEventListener("click",w),C.removeEventListener("click",L),B.removeEventListener("click",X),D.remove()}}};var c0={placeholder:"Search…",clear:"Clear search",previous:"Previous match",next:"Next match",noResults:"No results",results:($)=>`${$} result${$===1?"":"s"}`,position:($,J)=>`${$} of ${J}`,region:""};function d0($={}){let J=$.mode??"filter",Q=$.position??"top",j={...c0,...$.text},U=$.caseSensitive??!1,Z=$.highlight!==!1,K=typeof $.highlight==="object"&&$.highlight!==null?$.highlight.within:void 0,q=$.minLength??1,D=$.cancelTimeout??0,N=$.variant??"default",_=i1($.field),A,F,O,C,B,P=null,M=!1,b="",G=[],Y=new Set,w=0,L=!1,X=null,h=!1,u=null,E=null,m=null,o=()=>{if(h)return;h=!0,u=A.getMethod("scrollToIndex")??null,E=A.getMethod("filterTree")??null,m=A.getMethod("clearTreeFilter")??null},g=()=>{if(G=[],Y.clear(),b.length<q)return;let W=U?b:b.toLowerCase(),k=A.getItems();for(let R=0;R<k.length;R++){let y=k[R];if(y!==void 0&&g0(_(y),W,U))G.push(R),Y.add(R)}},j2=()=>{if(o(),E){let R=U?b:b.toLowerCase();E((y)=>g0(_(y),R,U)),L=!0;return}let W=A.getItems(),k=G;A.setGetItemFn((R)=>W[k[R]]),A.setVirtualTotalFn(()=>k.length),F.totalItems=k.length,A.rebuildSizeCache(),A.updateContentSize(A.sizeCache.getTotalSize()),L=!0},S=()=>{if(!L)return;if(L=!1,m){m();return}A.setGetItemFn((W)=>A.getItems()[W]),A.setVirtualTotalFn(()=>A.getItems().length),F.totalItems=A.getItems().length,A.rebuildSizeCache(),A.updateContentSize(A.sizeCache.getTotalSize())},l=()=>{o();let W=G[w];if(W===void 0)return;if(u)u(W,"center");else A.scrollTo(Math.max(0,A.sizeCache.getOffset(W)-A.getState().containerSize/2));let k=A.getItem(W);A.emitter.emit("search:match",{index:W,item:k,matchIndex:w,matches:G.length})},r=()=>{if(!P)return;if(b.length<q)P.setCounter("");else if(G.length===0)P.setCounter(j.noResults);else if(J==="navigate")P.setCounter(j.position(w+1,G.length));else P.setCounter(j.results(G.length))},z=()=>{let W=M&&b.length>=q;A.dom.root.classList.toggle(`${O}--searching`,W)},f=(W)=>{if(b=W,P?.setValue(b),g(),w=0,J==="filter")if(b.length>=q)j2();else S();if(z(),r(),A.forceRender(),J==="navigate"&&G.length>0)l();A.emitter.emit("search:change",{query:b,matches:G.length,total:A.getItems().length}),I()},V=()=>{if(!M)M=!0,A.dom.root.classList.add(`${O}--search-open`),A.emitter.emit("search:open",void 0);P?.focus(),I()},T=()=>{n();let W=M||b.length>0;if(M=!1,b.length>0)f("");if(A.dom.root.classList.remove(`${O}--search-open`),z(),W)A.emitter.emit("search:close",void 0)},i=(W)=>{if(G.length===0)return;if(w=(w+W+G.length)%G.length,r(),J==="navigate")l(),A.forceRender()},n=()=>{if(X!==null)clearTimeout(X),X=null},I=()=>{if(n(),D>0&&M)X=setTimeout(()=>{X=null,T()},D)},H=(W)=>{if(!Z||b.length<q)return;let k=W.startIndex,R=k+Math.max(0,W.visibleCount-1),y=J==="navigate"?G[w]:-1;for(let s=k;s<=R;s++){let Z2=A.getRenderedElement(s);if(!Z2)continue;if(K){let J2=Z2.querySelectorAll(K);for(let e=0;e<J2.length;e++)x0(J2[e],b,U,C)}else x0(Z2,b,U,C);if(J==="navigate"){let J2=s===y,e=Z2.querySelectorAll(`.${C}`);for(let U2=0;U2<e.length;U2++)e[U2].classList.toggle(B,J2)}}},d=(W)=>W.key.length===1&&!W.ctrlKey&&!W.metaKey&&!W.altKey,p=(W)=>{if((W.ctrlKey||W.metaKey)&&(W.key==="f"||W.key==="F")){W.preventDefault(),V();return}if(!M){if(Q==="none"&&d(W))W.preventDefault(),V(),f(b+W.key);return}switch(W.key){case"Escape":W.preventDefault(),T();break;case"Enter":W.preventDefault(),i(W.shiftKey?-1:1);break;case"ArrowDown":W.preventDefault(),i(1);break;case"ArrowUp":W.preventDefault(),i(-1);break;default:if(Q==="none"){if(W.key==="Backspace"){if(W.preventDefault(),f(b.slice(0,-1)),b.length===0)T()}else if(d(W))W.preventDefault(),f(b+W.key)}}},a=(W)=>{if(W.key==="Escape"||W.key==="Enter"||W.key==="ArrowDown"||W.key==="ArrowUp")p(W)};return{name:"search",priority:55,setup(W){if(A=W,F=A.getState(),O=A.config.classPrefix,C=`${O}-search-match`,B=`${O}-search-match--current`,Q!=="none"){let R=A.dom.root.id||void 0;if(P=n1(A.dom.root,A.dom.viewport,O,Q,{placeholder:j.placeholder,clear:j.clear,previous:j.previous,next:j.next,region:j.region},R,{onInput:(y)=>f(y),onClear:()=>f(""),onPrev:()=>i(-1),onNext:()=>i(1),onKeydown:a}),P.showNav(J==="navigate"),N!=="default")P.root.classList.add(`${O}-search--${N}`);A.dom.root.classList.add(`${O}--has-search`)}let k=A.getItemStateFn();A.setItemStateFn((R,y)=>{if(k)k(R,y);if(b.length<q){delete y.search;return}if(J==="filter")y.search={matched:!0,query:b,matchIndex:R,isCurrent:!1};else{let s=G.indexOf(R);y.search={matched:Y.has(R),query:b,matchIndex:s,isCurrent:s!==-1&&s===w}}}),A.registerMethod("openSearch",V),A.registerMethod("closeSearch",T),A.registerMethod("setQuery",(R)=>{if(!M)V();f(R)}),A.registerMethod("getQuery",()=>b),A.registerMethod("nextMatch",()=>i(1)),A.registerMethod("prevMatch",()=>i(-1)),A.registerMethod("getMatches",()=>G.slice()),A.registerKeydownHandler(p),A.registerDestroyHandler(()=>{n(),S(),P?.destroy(),P=null,A.dom.root.classList.remove(`${O}--search-open`,`${O}--searching`,`${O}--has-search`)})},hooks:{onCommit(W){H(W)}}}}function t1($){let{slots:J,focalSlot:Q,containerSize:j,gap:U=0}=$,Z=J.length,K=Math.max(0,Z-1)*U,q=j-K,D=J.map((P)=>Math.round(P*q)),N=q-D.reduce((P,M)=>P+M,0);if(Q<D.length)D[Q]+=N;let _=(D[Q]??0)+U,A=(P)=>P>=U?U:Math.max(0,P);function F(P,M,b){let G=P-M,Y=Q+G,w=Y-1,L=O(Y),X=O(w);return L+b*(X-L)}function O(P){if(P<0||P>=Z)return 0;return D[P]??0}function C(P,M,b,G){let Y=P-M,w=F(P,M,b),L=G;if(Y>0)for(let g=0;g<Y;g++){let j2=F(M+g,M,b);L+=j2+A(j2)}else if(Y<0)for(let g=-1;g>=Y;g--){let j2=F(M+g,M,b);L-=j2+A(j2)}let X=Q+Y,h=X-1,u;if(X===Q)u=b;else if(h===Q)u=1-b;else u=1;let E=D[Q]??0,m=E>0?w/E:0,o=m>0.6?"large":m>0.3?"medium":"small";return{size:w,offset:L,progress:u,relOffset:Y,role:o}}function B(P,M){if(Q===0)return 0;let b=0;for(let G=-1;G>=-Q;G--){let Y=F(P+G,P,M);b+=Y+A(Y)}return b}return{slotWidths:D,stepSize:_,focalSlot:Q,getItemLayout:C,getItemSize:F,getAnchorOffset:B}}var l0=new Map;function d2($,J){l0.set($,J)}function r0($){return l0.get($)}function $0($,J,Q){let j=l0.get($);return j?j(J,Q):null}function s0($){return $!==null&&"slots"in $}var N0=()=>{return{slots:[1],focalSlot:0}},V0=($,J)=>{return{slots:[($-J)/$,J/$],focalSlot:0}},X0=($,J)=>{return{slots:[J/$,($-2*J)/$,J/$],focalSlot:1}},M0=()=>{return{slots:[0.4,0.3,0.2,0.09999999999999998],focalSlot:0}},G0=($)=>{let J=Math.max(2,Math.floor($/($*0.33))),Q=1/J;return{slots:Array.from({length:J},()=>Q),focalSlot:0,textFade:"size"}};d2("full",N0);d2("hero",V0);d2("hero-center",X0);d2("multi",M0);d2("uncontained",G0);var o0=101,A0=50,I4=10;function f4($){if(typeof $==="function")return{variant:"custom",resolveSlots:$};if(typeof $==="object"){let J=$;return{variant:"custom",resolveSlots:()=>J}}return{variant:$,resolveSlots:(J,Q)=>$0($,J,Q)}}function a0($){let J=$?.variant??"full",{variant:Q,resolveSlots:j}=f4(J),U=Q==="full"||($?.snap??Q!=="free"),Z=$?.snapDirection??!0,K=$?.snapDuration??400,q=$?.snapEasing,D=$?.initialIndex??0,N=$?.peek??"auto",_,A,F=null,O,C=D,B=0,P=0,M=0,b=0,G=!1,Y="vlist",w=-1,L=0,X=[],h=[],u=!1,E="role",m=$?.gap??0;function o(p){if(B<=0)return 0;return(p%B+B)%B}function g(p,a,W){if(B<=1)return 0;let k=((a-p)%B+B)%B,R=B-k;if(W==="forward")return k;if(W==="backward")return-R;return k<=R?k:-R}function j2(p){return A0*B+p}function S(p){if(B<=0)return 0;return(p%B+B)%B}function l(p){X=p;let a=p.length;h=Array(a+1),h[0]=0;for(let W=0;W<a;W++)h[W+1]=h[W]+p[W];M=a>0?h[a]:0}function r(p){if(B<=0||M<=0)return{vi:0,frac:0};let a=Math.floor(p/M),W=p-a*M;if(W<0)W=0;if(!u){let J2=X[0],e=Math.min(Math.floor(W/J2),B-1);return{vi:a*B+e,frac:J2>0?W/J2-e:0}}let k=0,R=B-1;while(k<R){let J2=k+R+1>>1;if(h[J2]<=W)k=J2;else R=J2-1}let y=h[k],s=X[k],Z2=s>0?Math.max(0,Math.min((W-y)/s,1)):0;return{vi:a*B+k,frac:Z2}}function z(p){if(typeof N==="number")return N;if(typeof N==="string"&&N.endsWith("%"))return Math.round(p*parseFloat(N)/100);return Math.max(40,Math.min(Math.round(p*0.15),120))}function f(p){if(B<=0||M<=0)return 0;let a=Math.floor(p/B),W=(p%B+B)%B;return a*M+(h[W]??0)}function V(p){let{vi:a,frac:W}=r(p);return W>=0.5?a+1:a}function T(){if(w>=0)return w;return V(_.scrollPosition)}function i(p,a){F?.smoothScrollTo(p,a,q)}let n=null;function I(){if(!F)return;let p=F.getItems().length;if(p===B)return;let a=C;if(B=p,u){let W=F.rawSizeSpec,k=typeof W==="function"?(R)=>W(R)+m:()=>W+m;l(Array.from({length:B},(R,y)=>k(y)))}else l(Array.from({length:B},()=>X[0]??P));if(b=B*o0,_.totalItems=b,B>1){let W=a<B?a:0;C=W,F.scrollTo(f(A0*B+W))}}function H(){if(!F||B<=0)return;if(!n&&!u&&B<=1)return;let a=F.dom.content.children,W=_.scrollPosition,k=_.baseOffset,R=Math.round(W-k),y=O?"width":"height",{vi:s,frac:Z2}=r(W),J2=s-(s%B+B)%B,e=n?n.slotWidths[n.focalSlot]??0:0;if(n){let U2=W+n.getAnchorOffset(s,Z2);for(let $2=0;$2<a.length;$2++){let A2=a[$2],G2=A2.dataset.index;if(G2===void 0)continue;let Y2=parseInt(G2,10),v=J2+Y2;if(v-s>B/2)v-=B;if(s-v>B/2)v+=B;let K2=n.getItemLayout(v,s,Z2,U2),Q2=Math.max(0,Math.round(K2.size)),D2=Math.round(K2.offset-k);if(Q2<=0)A2.style.display="none",A2.classList.remove(`${Y}-item--focused`,`${Y}-item--selected`),A2.removeAttribute("aria-selected");else A2.style.display="",A2.style[y]=Q2+"px",A2.style.transform=O?`translateX(${D2}px)`:`translateY(${D2}px)`;let T2;if(E==="size"){let k2=n.slotWidths[n.focalSlot]??1;T2=Math.min(1,Math.max(0,Q2/k2))}else if(E==="viewport"){let k2=D2-R,R2=Math.max(0,k2),F2=Math.min(_.containerSize,k2+Q2),P2=Q2>0?Math.max(0,(F2-R2)/Q2):0;T2=Math.min(1,P2)}else T2=K2.role==="large"?1-K2.progress:0;A2.style.setProperty("--vlist-carousel-progress",K2.progress.toFixed(3)),A2.style.setProperty("--vlist-carousel-offset",String(K2.relOffset)),A2.style.setProperty("--vlist-carousel-role",K2.role),A2.style.setProperty("--vlist-carousel-role-weight",T2.toFixed(3)),A2.style.setProperty("--vlist-carousel-width",Q2+"px"),A2.style.setProperty("--vlist-carousel-focal-width",e+"px")}}else for(let U2=0;U2<a.length;U2++){let $2=a[U2],A2=$2.dataset.index;if(A2===void 0)continue;let G2=parseInt(A2,10),Y2=J2+G2;if(Y2-s>B/2)Y2-=B;if(s-Y2>B/2)Y2+=B;let v=S(Y2),K2=Math.max(0,Math.round((X[v]??0)-m)),Q2=f(Y2),D2=Math.round(Q2-k);if(K2<=0)$2.style.display="none";else $2.style.display="",$2.style[y]=K2+"px",$2.style.transform=O?`translateX(${D2}px)`:`translateY(${D2}px)`;let T2=Y2-s,k2=Math.min(1,Math.abs(T2)+(T2===0?Z2:0)),R2;if(E==="viewport"||E==="size"){let F2=D2-R,P2=Math.max(0,F2),z2=Math.min(_.containerSize,F2+K2),c=K2>0?Math.max(0,(z2-P2)/K2):0;R2=Math.min(1,c)}else R2=1-k2;$2.style.setProperty("--vlist-carousel-progress",k2.toFixed(3)),$2.style.setProperty("--vlist-carousel-offset",String(T2)),$2.style.setProperty("--vlist-carousel-role","large"),$2.style.setProperty("--vlist-carousel-role-weight",R2.toFixed(3)),$2.style.setProperty("--vlist-carousel-width",K2+"px")}}function d(p,a,W){if(!F)return;if(C=p,B<=1)return;let k=T(),R=S(k),y=((p-R)%B+B)%B,s=B-y,Z2=y<=s?y:-s,J2=k+Z2;w=J2;let e=f(J2);if(a)i(e,W);else F.scrollTo(e),H()}return{name:"carousel",priority:10,conflicts:["scale"],setup(p){_=p.getState(),A=p.sizeCache,F=p,O=p.config.axis.primary==="x",Y=p.config.classPrefix,B=_.totalItems;let a=B>0?A.getSize(0):0,W=_.containerSize,k=z(W),R=j(W,k);if(s0(R))E=R.textFade??"role",n=t1({slots:R.slots,focalSlot:R.focalSlot,containerSize:W,gap:m}),P=n.stepSize,l(Array.from({length:Math.max(1,B)},()=>P)),u=!1;else if(typeof p.rawSizeSpec==="function"){E=R?.textFade??"viewport";let J2=p.rawSizeSpec;l(Array.from({length:B},(e,U2)=>J2(U2)+m)),P=X[0]??a,u=!0}else E=R?.textFade??"viewport",P=a,l(Array.from({length:Math.max(1,B)},()=>P)),u=!1;if(b=B*o0,C=o(D),B>1)p.setGetItemFn((J2)=>{let e=S(J2);return p.getItems()[e]}),A.getTotalSize=()=>M*o0,A.getOffset=(J2)=>f(J2),A.getSize=(J2)=>{let e=S(J2);return X[e]??X[0]??0},A.indexAtOffset=(J2)=>{if(M<=0)return 0;let e=Math.floor(J2/M),U2=J2-e*M;if(!u){let G2=X[0]??1;return Math.max(0,Math.min(e*B+Math.floor(U2/G2),b-1))}let $2=0,A2=B-1;while($2<A2){let G2=$2+A2+1>>1;if(h[G2]<=U2)$2=G2;else A2=G2-1}return Math.max(0,Math.min(e*B+$2,b-1))},A.getTotal=()=>b,_.totalItems=b,p.setVirtualTotalFn(()=>B),p.setIndexMapFn(S),p.registerMethod("_layoutToDataIndex",S),p.setBoundedWrap({lapSize:()=>M,home:()=>A0*M,thresholdLaps:A0-I4}),G=!0;if(p.registerMethod("next",(J2,e)=>{if(B<=1)return;let U2=J2??1,$2=C,A2=e?.behavior!=="auto",G2=e?.duration??K;F.cancelScroll();let v=T()+U2;w=v,C=S(v);let K2=f(v);if(A2)i(K2,G2);else F.scrollTo(K2),H();if(C!==$2)F.emitter.emit("carousel:change",{index:C,scrollPosition:_.scrollPosition})}),p.registerMethod("prev",(J2,e)=>{if(B<=1)return;let U2=J2??1,$2=C,A2=e?.behavior!=="auto",G2=e?.duration??K;F.cancelScroll();let v=T()-U2;w=v,C=S(v);let K2=f(v);if(A2)i(K2,G2);else F.scrollTo(K2),H();if(C!==$2)F.emitter.emit("carousel:change",{index:C,scrollPosition:_.scrollPosition})}),p.registerMethod("goTo",(J2,e)=>{if(B<=0)return;let U2=o(J2),$2=e?.direction??"auto",A2=e?.behavior==="smooth",G2=e?.duration??K;if(B<=1){C=U2;return}if(F.cancelScroll(),$2==="forward"||$2==="backward"){let Y2=g(C,U2,$2==="forward"?"forward":"backward");C=U2;let K2=T()+Y2;w=K2;let Q2=f(K2);if(A2)i(Q2,G2);else F.scrollTo(Q2),H()}else d(U2,A2,G2)}),p.registerMethod("getCarouselState",()=>{let J2=_.scrollPosition,e=B>0&&M>0?(J2%M+M)%M:0;return{index:C,progress:0,offset:0,scrollPosition:e,role:"large"}}),p.setScrollToIndexFn((J2,e,U2,$2,A2)=>{if(B<=1)return!1;let G2=o(J2);d(G2,U2==="smooth",$2??K)}),p.setNavConfig({total:()=>B,navigate:(J2,e,U2)=>{let $2=J2;if(e==="ArrowRight"||e==="ArrowDown")$2=(J2+1)%U2;else if(e==="ArrowLeft"||e==="ArrowUp")$2=(J2-1+U2)%U2;else if(e==="Home")$2=0;else if(e==="End")$2=U2-1;if($2!==J2)d($2,!1,0),F?.forceRender(),H();return $2}}),!p.dom.content.getAttribute("tabindex"))p.dom.content.setAttribute("tabindex","0");let y=p.getMethod("next"),s=p.getMethod("prev"),Z2=p.getMethod("goTo");p.registerKeydownHandler((J2)=>{let e=J2.key;if(e==="ArrowRight"||e==="ArrowDown")J2.preventDefault(),y(1,{behavior:"smooth",duration:K});else if(e==="ArrowLeft"||e==="ArrowUp")J2.preventDefault(),s(1,{behavior:"smooth",duration:K});else if(e==="Home")J2.preventDefault(),Z2(0,{behavior:"smooth",duration:K});else if(e==="End")J2.preventDefault(),Z2(B-1,{behavior:"smooth",duration:K})}),p.registerDestroyHandler(()=>{F?.cancelScroll()})},destroy(){F?.cancelScroll(),F=null},hooks:{onCommit(){if(!G||!F)return;G=!1;let p=f(j2(C));F.scrollTo(p),F.forceRender(),H()},onAfterScroll(p){if(G||!F)return;if(I(),B<=1)return;if(_.scrollDirection!==0)L=_.scrollDirection;if(w<0){let a=_.scrollPosition,W=V(a),k=S(W);if(k!==C)C=k,F.emitter.emit("carousel:change",{index:C,scrollPosition:a})}H()},onIdle(){let p=L;if(w=-1,L=0,!U||!F||B<=1)return;let a=_.scrollPosition,{vi:W,frac:k}=r(a),R;if(Z&&p!==0&&k>0.02&&k<0.98)R=p>0?W+1:W;else R=k>=0.5?W+1:W;let y=f(R);if(Math.abs(a-y)>1)C=S(R),i(y,K)}}}}var p4=50,u4=0.1;function e1($){let J=0,Q=0,j=0;function U(){return j>0?Q/j:0}function Z(D){if(J=D,D>u4&&D<p4)Q+=D,j++}function K(){let D=$.getTotal();if(D===0)return 0;let N=$.getItemSize();if(N<=0)return 0;let _=$.getContainerSize();if(_<=0)return 0;let A=$.getScrollPosition(),F=typeof $.getColumns==="function"?$.getColumns():1,C=Math.ceil(D/F)*N,P=Math.min(C,a2)-_,M=C-_,b=P>0?M/P:1,G=A*b,Y=Math.ceil((G+_)/N);return Math.min(Y*F,D)}function q(){let D=$.getTotal(),N=K();return{progress:D>0?Math.min(100,Math.max(0,N/D*100)):0,velocity:J,velocityAvg:U(),itemCount:N,total:D}}return{getState:q,onVelocity:Z}}async function J4($,J,Q){let j=Q?.key,U=$?.getScrollSnapshot,Z=typeof U==="function"?U():void 0,K=J0(Z?j?{restore:Z,autoSave:j}:{restore:Z}:j?{autoSave:j}:void 0),q=J(K),D=q.element;if(D.style.position="absolute",D.style.inset="0",D.style.visibility="hidden",Q?.ready)await Q.ready(q);else await new Promise((O)=>requestAnimationFrame(()=>O()));if(Q?.delay&&Q.delay>0)await new Promise((O)=>setTimeout(O,Q.delay));let N=Q?.transition,_=typeof N==="number"?N:N?.fadeIn??0,A=typeof N==="number"?N:N?.fadeOut??0,F=typeof N==="object"?N?.fadeOutDelay??0:0;if($&&(_>0||A>0)){let O=$.element;D.style.visibility="",D.style.opacity="0",D.offsetHeight,D.style.transition=`opacity ${_}ms ease`,O.style.transition=`opacity ${A}ms ease ${F}ms`,D.style.opacity="1",O.style.opacity="0",await new Promise((C)=>setTimeout(C,Math.max(_,A+F)+50)),D.style.transition="",D.style.opacity="",O.style.transition="",O.style.opacity=""}else D.style.visibility="";if(D.style.position="",D.style.inset="",$)$.destroy();return q}export{G0 as uncontained,u0 as tree,w0 as transition,I0 as table,f0 as sortable,J0 as snapshots,T0 as selection,d0 as search,E0 as scrollbar,$0 as resolvePreset,d2 as registerPreset,J4 as rebuild,P0 as page,M0 as multi,y0 as masonry,X0 as heroCenter,V0 as hero,h0 as groups,k0 as grid,r0 as getPreset,N0 as full,v0 as data,z1 as createVList,e1 as createStats,a0 as carousel,z0 as autosize,b0 as a11y};
|