vlist 2.6.4 → 2.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.github.md +1 -1
- package/README.md +1 -1
- package/dist/config.js +1 -1
- package/dist/core/state.d.ts +2 -0
- package/dist/index.js +1 -1
- package/dist/size.json +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var it=3,tn="vlist";var lt=50;var nn=50,on=2,rn=15,sn=6,It=2000,ln=30000,Je=16000000,We=150,Qe=1,at=(t)=>t<0.5?2*t*t:1-(-2*t+2)**2/2,an=300,dn=2,un=1.5,cn=0.25,mn=0.75;var fn="x",gn=20,xt="_isPlaceholder",Ve="__placeholder_";var dt={top:0,right:0,bottom:0,left:0},pn=(t)=>{if(t==null)return dt;if(typeof t==="number")return t===0?dt:{top:t,right:t,bottom:t,left:t};if(t.length===2){let[r,i]=t;return r===0&&i===0?dt:{top:r,right:i,bottom:r,left:i}}let[e,n,o,s]=t;return e===0&&n===0&&o===0&&s===0?dt:{top:e,right:n,bottom:o,left:s}},bn=(t,e)=>e?t.left+t.right:t.top+t.bottom,hn=(t,e)=>e?t.top+t.bottom:t.left+t.right;function vn(t){let e={visibleIndices:new Int32Array(t),visibleOffsets:new Float64Array(t),visibleSizes:new Float64Array(t),visibleCount:0,startIndex:0,totalSize:0,capacity:t,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(n,o,s=it){if(o<=0||n<=0)return;let r=Math.ceil(n/o)+s*2;if(r<=e.capacity)return;let i=r+8,l=new Int32Array(i),y=new Float64Array(i),f=new Float64Array(i);l.set(e.visibleIndices),y.set(e.visibleOffsets),f.set(e.visibleSizes),e.visibleIndices=l,e.visibleOffsets=y,e.visibleSizes=f,e.capacity=i},clear(){e.visibleCount=0,e.startIndex=0}};return e}var ao=(t,e)=>{let n=e;return{getOffset:(o)=>o*t,getSize:(o)=>t,indexAtOffset:(o)=>{if(n===0||t===0)return 0;return Math.max(0,Math.min(Math.floor(o/t),n-1))},getTotalSize:()=>n*t,getTotal:()=>n,rebuild:(o)=>{n=o},isVariable:()=>!1}},uo=(t,e)=>{let n=e,o=new Float64Array(0),s=(i)=>{n=i,o=new Float64Array(i+1),o[0]=0;for(let l=0;l<i;l++)o[l+1]=o[l]+t(l)};s(e);let r=(i)=>{if(n===0)return 0;if(i<=0)return 0;if(i>=o[n])return n-1;let l=0,y=n-1;while(l<y){let f=l+y+1>>>1;if(o[f]<=i)l=f;else y=f-1}return l};return{getOffset:(i)=>{if(i<=0)return 0;if(i>=n)return o[n];return o[i]},getSize:(i)=>t(i),indexAtOffset:(i)=>r(i),getTotalSize:()=>o[n]??0,getTotal:()=>n,rebuild:(i)=>s(i),isVariable:()=>!0}},ut=(t,e)=>{if(typeof t==="number")return ao(t,e);return uo(t,e)};function yn(t){let e=[],n=`${t}-item`,o=document.createElement("div");return o.className=n,{acquire(){if(e.length>0)return e.pop();return o.cloneNode(!1)},release(s){if(s.className=n,s.removeAttribute("style"),s.removeAttribute("id"),s.removeAttribute("role"),s.removeAttribute("aria-selected"),s.removeAttribute("aria-posinset"),s.removeAttribute("aria-setsize"),s.removeAttribute("data-index"),s.removeAttribute("data-id"),s.textContent="",e.length<100)e.push(s)},get size(){return e.length},clear(){e.length=0}}}function Ge(t){let e=t.querySelectorAll("a[href],button,input,select,textarea,[tabindex]");for(let n=0;n<e.length;n++)e[n].setAttribute("tabindex","-1")}function Sn(t){if(typeof t==="string"){let e=document.querySelector(t);if(!e)throw Error(`[vlist] Container not found: ${t}`);return e}return t}function Tn(t,e,n,o){let s=n?`${e} ${e}--horizontal`:e,r=n?"overflow-x:auto;overflow-y:hidden;height:100%;width:100%":"overflow:auto;height:100%;width:100%",i=n?"position:relative;height:100%;overflow-anchor:none":"position:relative;width:100%;overflow-anchor:none",l=' role="list"';if(o)l+=` aria-label="${o.replace(/"/g,""")}"`;if(n)l+=' aria-orientation="horizontal"';t.insertAdjacentHTML("beforeend",`<div class="${s}"><div class="${e}-viewport" style="${r}" tabindex="-1"><div class="${e}-content" style="${i}"${l}></div></div></div>`);let y=t.lastElementChild,f=y.firstElementChild,c=f.firstElementChild,v=document.createElement("div");return v.className=`${e}-live`,v.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",v.setAttribute("aria-live","polite"),v.setAttribute("aria-atomic","true"),v.setAttribute("role","status"),y.appendChild(v),{root:y,viewport:f,content:c,liveRegion:v}}function In(t){let{state:e,viewport:n,isX:o,wheelEnabled:s,onFrame:r,onIdle:i}=t,l=t.idleTimeout||We,y=t.scrollTarget??n,f=null,c=null;function v(){let w=o?n.scrollLeft:n.scrollTop;if(Math.abs(w-e.scrollPosition)<0.5)return;e.prevScrollPosition=e.scrollPosition,e.scrollPosition=w,e.scrollDirection=w>e.prevScrollPosition?1:w<e.prevScrollPosition?-1:0,r(),S()}function I(w){let p;if(o){if(Math.abs(w.deltaX)>Math.abs(w.deltaY))return;let M=n.scrollLeft,b=n.scrollWidth-n.clientWidth;if(p=Math.max(0,Math.min(M+w.deltaY*Qe,b)),Math.abs(p-M)<1)return;w.preventDefault(),n.scrollLeft=p}else{let M=n.scrollWidth>n.clientWidth;if(M&&Math.abs(w.deltaX)>Math.abs(w.deltaY))return;if(M&&w.deltaX!==0)w.preventDefault(),n.scrollLeft+=w.deltaX;let b=n.scrollTop,u=n.scrollHeight-n.clientHeight;if(p=Math.max(0,Math.min(b+w.deltaY*Qe,u)),Math.abs(p-b)<1)return;w.preventDefault(),n.scrollTop=p}e.prevScrollPosition=e.scrollPosition,e.scrollPosition=p,e.scrollDirection=p>e.prevScrollPosition?1:-1,r(),S()}function S(){if(f!==null)clearTimeout(f);f=setTimeout(()=>{f=null,e.scrollDirection=0,i()},l)}function H(){if(c!==null)cancelAnimationFrame(c),c=null}function d(w,p,M,b=at,u){H();let A=e.scrollPosition,L=typeof w==="function"?w:()=>w,a=L();if(Math.abs(a-A)<1){if(M)M(a);else if(o)n.scrollLeft=a;else n.scrollTop=a;u?.();return}let F=performance.now();function V(T){a=L();let B=T-F,q=Math.min(B/p,1),D=A+(a-A)*b(q);if(M)M(D);else if(o)n.scrollLeft=D;else n.scrollTop=D;if(!M)e.scrollPosition=D;if(r(),q<1)c=requestAnimationFrame(V);else c=null,S(),u?.()}c=requestAnimationFrame(V)}return{attach(){if(y.addEventListener("scroll",v,{passive:!0}),s)y.addEventListener("wheel",I,{passive:!1})},detach(){if(y.removeEventListener("scroll",v),s)y.removeEventListener("wheel",I);if(H(),f!==null)clearTimeout(f),f=null},cancelScroll:H,smoothScrollTo:d}}function je(t,e,n){if(t<e)return e;if(t>n)return n;return t}function xn(t){let{state:e,viewport:n,content:o,isX:s,wheelEnabled:r,onFrame:i,onIdle:l,mainAxisPadding:y}=t,f=t.idleTimeout||We,c=t.runwayFactor??dn,v=t.wrap??null,I=v!==null,S=t.scrollTarget??n,H=0,d=0,w=0,p=null,M=null;function b(){return s?n.scrollLeft:n.scrollTop}function u(_){if(s)n.scrollLeft=_;else n.scrollTop=_}function A(_){let Y=I?_:je(_,0,d);e.prevScrollPosition=e.scrollPosition,e.scrollPosition=Y,e.scrollDirection=Y>e.prevScrollPosition?1:Y<e.prevScrollPosition?-1:0;let U=H/2;if(I){e.baseOffset=Y-U,u(U);return}let P=je(Y-U,0,w);e.baseOffset=P,u(je(Y-P,0,H))}function L(_){A(_),i(),B()}function a(){let _=b(),Y=e.baseOffset+_;if(Math.abs(Y-e.scrollPosition)<0.5)return;if(e.prevScrollPosition=e.scrollPosition,e.scrollPosition=Y,e.scrollDirection=Y>e.prevScrollPosition?1:Y<e.prevScrollPosition?-1:0,F(_),I)V();i(),B()}function F(_){let Y=H*cn,U=H*mn,P=H/2;if(I){if(_>=Y&&_<=U)return;e.baseOffset=e.scrollPosition-P,u(P);return}if(w<=0)return;let O=e.baseOffset,g=_<Y&&O>0,C=_>U&&O<w;if(!g&&!C)return;let j=e.scrollPosition,J=je(j-P,0,w);if(J===O)return;e.baseOffset=J,u(je(j-J,0,H))}function V(){let _=v.lapSize();if(_<=0)return;let Y=e.scrollPosition-v.home(),U=Math.trunc(Y/_);if(Math.abs(U)<v.thresholdLaps)return;let P=U*_;e.scrollPosition-=P,e.prevScrollPosition-=P,e.baseOffset-=P}function T(_){let Y;if(s)if(Math.abs(_.deltaX)>Math.abs(_.deltaY)){if(!I)return;Y=_.deltaX}else Y=_.deltaY;else{let g=n.scrollWidth>n.clientWidth;if(g&&Math.abs(_.deltaX)>Math.abs(_.deltaY))return;if(g&&_.deltaX!==0)_.preventDefault(),n.scrollLeft+=_.deltaX;Y=_.deltaY}let U=e.scrollPosition,P=U+Y*Qe,O=I?P:je(P,0,d);if(Math.abs(O-U)<1)return;if(_.preventDefault(),L(O),I)V()}function B(){if(p!==null)clearTimeout(p);p=setTimeout(()=>{p=null,e.scrollDirection=0,l()},f)}function q(){if(M!==null)cancelAnimationFrame(M),M=null}function D(_,Y,U,P=at,O){q();let g=e.scrollPosition,C=typeof _==="function"?_:()=>_,j=C();if(Math.abs(j-g)<1){L(j),O?.();return}let J=performance.now();function k(h){j=C();let W=Math.min((h-J)/Y,1);if(A(g+(j-g)*P(W)),i(),W<1)M=requestAnimationFrame(k);else M=null,B(),O?.()}M=requestAnimationFrame(k)}function oe(_){let Y=e.containerSize,U=_+y,P=Y*c,O=I?P:Math.min(U,P);H=Math.max(0,O-Y),d=Math.max(0,U-Y),w=Math.max(0,U-O),e.totalSize=_,o.style[s?"width":"height"]=O+"px",A(e.scrollPosition)}return{attach(){if(S.addEventListener("scroll",a,{passive:!0}),r)S.addEventListener("wheel",T,{passive:!1})},detach(){if(S.removeEventListener("scroll",a),r)S.removeEventListener("wheel",T);if(q(),p!==null)clearTimeout(p),p=null},cancelScroll:q,smoothScrollTo:D,setLogical:L,getLogical(){return e.scrollPosition},getMaxLogical(){return d},refresh:oe}}function co(t,e){if(t.getTotal()<=0)return{index:0,offsetPx:0};let o=e<=0?0:e,s=t.indexAtOffset(o),r=o-t.getOffset(s);return{index:s,offsetPx:r>0?r:0}}function mo(t,e){let n=fo(t,e);return t.getOffset(n.index)+n.offsetPx}function fo(t,e){let n=t.getTotal();if(n<=0)return{index:0,offsetPx:0};let{index:o,offsetPx:s}=e;if(o<0)return{index:0,offsetPx:0};if(o>n-1)o=n-1;while(s>0&&o<n-1){let r=t.getSize(o);if(s<r)break;s-=r,o++}while(s<0&&o>0)o--,s+=t.getSize(o);if(s<0)s=0;return{index:o,offsetPx:s}}function Ln(t){let{sizeCache:e,getPixel:n,setPixel:o,getContainerSize:s}=t;function r(){let l=e.getTotalSize()-s();return l>0?l:0}function i(l){if(l<=0)return 0;let y=r();return l>y?y:l}return{getLogical(){return co(e,n())},setLogical(l){o(i(mo(e,l)))},getPixelEquivalent(){return n()},setPixelEquivalent(l){o(i(l))},getMaxPixelEquivalent:r,scrollByPx(l){o(i(n()+l))}}}var et=[],go={calculate:et,commit:et,afterScroll:et,idle:et,resize:et};function Cn(t){if(t.length===0)return go;let e=[],n=[],o=[],s=[],r=[];for(let i=0;i<t.length;i++){let l=t[i].hooks;if(l===void 0)continue;if(l.onCalculate!==void 0)e.push(l.onCalculate);if(l.onCommit!==void 0)n.push(l.onCommit);if(l.onAfterScroll!==void 0)o.push(l.onAfterScroll);if(l.onIdle!==void 0)s.push(l.onIdle);if(l.onResize!==void 0)r.push(l.onResize)}return{calculate:e,commit:n,afterScroll:o,idle:s,resize:r}}function En(t,e){for(let n=0;n<t.length;n++)t[n](e)}function Mn(t,e){for(let n=0;n<t.length;n++)t[n](e)}function Lt(t,e,n){for(let o=0;o<t.length;o++)t[o](e,n)}function Pn(t){for(let e=0;e<t.length;e++)t[e]()}function wn(t,e,n){for(let o=0;o<t.length;o++)t[o](e,n)}function An(t,e,n,o,s,r,i,l){let y=o!==0||s!==0;return{prefix:t,selectedClass:`${t}-item--selected`,focusedClass:`${t}-item--focused`,placeholderClass:`${t}-item--placeholder`,replacedClass:`${t}-item--replaced`,translateProp:e?"translateX(":"translateY(",sizeProp:e?"width":"height",itemRole:"listitem",interactive:!1,startPadding:n,gap:i,hasCrossPad:y,crossStartProp:y?e?"top":"left":"",crossEndProp:y?e?"bottom":"right":"",crossStartVal:y?o+"px":"",crossEndVal:y?s+"px":"",oddClass:r,emitter:l??null,indexMap:null,ariaTotalFn:null}}function po(t,e,n,o,s){if(t.containerSize<=0||t.totalItems===0)return t.clear(),!0;let{scrollPosition:r,containerSize:i,totalItems:l}=t,y=s??0;t.totalSize=e.getTotalSize();let f=e.indexAtOffset(y>0?Math.max(0,r-y):r),c=e.indexAtOffset(r+i);if(c<l-1)c++;f=Math.max(0,f),c=Math.min(l-1,Math.max(0,c));let v=Math.max(0,f-n),I=Math.min(l-1,c+n),S=Math.ceil(i/1)+n*2+10,H=I-v+1,d=Math.min(H,t.capacity,S);if(v===t.prevRangeStart&&I===t.prevRangeEnd&&!t.renderPending)return!1;t.visibleCount=d,t.startIndex=v;for(let w=0;w<d;w++){let p=v+w;t.visibleIndices[w]=p,t.visibleOffsets[w]=e.getOffset(p),t.visibleSizes[w]=e.getSize(p)}return En(o.calculate,t),t.prevRangeStart=v,t.prevRangeEnd=I,t.renderPending=!1,!0}var De={selected:!1,focused:!1};function bo(t,e,n){for(let o=0;o<e;o++)if(t[o]===n)return!0;return!1}function ho(t,e){if(e<=1)return!0;let n=t[0];for(let o=1;o<e;o++){let s=t[o];if(s!==n+1)return!1;n=s}return!0}function vo(t,e,n,o,s,r,i,l,y,f){let c=y?null:s(),{visibleCount:v,visibleIndices:I}=t,S=i.ariaTotalFn?i.ariaTotalFn():t.totalItems,H=i.interactive?String(S):"",d=i.interactive&&S!==t.prevAriaTotal,w=null,p=i.indexMap;for(let M=0;M<v;M++){let b=I[M],u=p?p(b):b,A=t.visibleOffsets[M],L=t.visibleSizes[M],a=y?y(b):c[b];if(f)f(u,De);else De.selected=!1,De.focused=!1;let F=r.get(b),V=F;if(F===void 0){let T=e.acquire();if(a!==void 0){let D;try{D=o(a,u,De)}catch(oe){if(i.emitter)i.emitter.emit("error",{error:oe instanceof Error?oe:Error(String(oe)),context:`template:render:${u}`});e.release(T);continue}if(typeof D==="string")T.innerHTML=D;else T.textContent="",T.appendChild(D);Ge(T)}if(T.setAttribute("role",i.itemRole),T.setAttribute("data-index",String(u)),i.interactive)T.id=i.prefix+"-item-"+b,T.setAttribute("aria-posinset",String(u+1)),T.setAttribute("aria-setsize",H);if(a!==void 0){let D=String(a.id);if(T.setAttribute("data-id",D),D.startsWith(Ve))T.classList.add(i.placeholderClass)}if(i.hasCrossPad)T.style.setProperty(i.crossStartProp,i.crossStartVal),T.style.setProperty(i.crossEndProp,i.crossEndVal);if(f){if(T.classList.toggle(i.selectedClass,De.selected),T.classList.toggle(i.focusedClass,De.focused),De.selected)T.setAttribute("aria-selected","true");else T.removeAttribute("aria-selected");T._lastSelected=De.selected,T._lastFocused=De.focused}if(i.oddClass)T.classList.toggle(i.oddClass,(b&1)===1);let B=A-t.baseOffset+i.startPadding;T.style.transform=i.translateProp+B+"px)",T._lastOffset=B;let q=L-i.gap;if(T.style[i.sizeProp]=q+"px",T._lastSize=q,T._lastItem=a,r.set(b,T),w===null)w=document.createDocumentFragment();w.appendChild(T)}else{if(d)F.setAttribute("aria-setsize",H);if(a!==void 0&&V._lastItem!==a){let q=F.getAttribute("data-id"),D=String(a.id),oe;try{oe=o(a,u,De)}catch(_){if(i.emitter)i.emitter.emit("error",{error:_ instanceof Error?_:Error(String(_)),context:`template:render:${u}`});continue}if(typeof oe==="string")F.innerHTML=oe;else F.textContent="",F.appendChild(oe);if(Ge(F),F.setAttribute("data-id",D),V._lastItem=a,q!==D){let _=q!==null&&q.startsWith(Ve),Y=D.startsWith(Ve);if(_!==Y)F.classList.toggle(i.placeholderClass,Y);if(_&&!Y)F.classList.add(i.replacedClass),setTimeout(()=>{F.classList.remove(i.replacedClass)},300)}}if(f){if(V._lastSelected!==De.selected){if(F.classList.toggle(i.selectedClass,De.selected),De.selected)F.setAttribute("aria-selected","true");else F.removeAttribute("aria-selected");V._lastSelected=De.selected}if(V._lastFocused!==De.focused)F.classList.toggle(i.focusedClass,De.focused),V._lastFocused=De.focused}let T=A-t.baseOffset+i.startPadding;if(V._lastOffset!==T)F.style.transform=i.translateProp+T+"px)",V._lastOffset=T;let B=L-i.gap;if(V._lastSize!==B)F.style[i.sizeProp]=B+"px",V._lastSize=B}}if(w!==null)n.appendChild(w);if(v>0&&ho(I,v)){let M=I[0],b=I[v-1];for(let[u,A]of r)if(u<M||u>b)A.remove(),e.release(A),r.delete(u)}else for(let[M,b]of r)if(!bo(I,v,M))b.remove(),e.release(b),r.delete(M);if(i.interactive)t.prevAriaTotal=t.totalItems;Mn(l.commit,t)}function Ct(t,e,n,o,s,r,i,l,y,f,c,v){if(po(t,e,n,f,y.startPadding))vo(t,o,s,r,i,l,y,f,c,v)}var Et=()=>{let t={},e=(r,i)=>{if(!t[r])t[r]=new Set;return t[r].add(i),()=>n(r,i)},n=(r,i)=>{t[r]?.delete(i)};return{on:e,off:n,emit:(r,i)=>{t[r]?.forEach((l)=>{try{l(i)}catch(y){console.error(`[vlist] Error in event handler for "${String(r)}":`,y)}})},clear:(r)=>{if(r)delete t[r];else for(let i in t)delete t[i]}}};var zn=2,Rn=(t=0)=>({velocity:0,sampleCount:0}),Hn=(t,e)=>{let n=performance.now(),o=t._lt??n,s=t._lp??e,r=n-o;if(t._lp=e,t._lt=n,r===0)return t.sampleCount=Math.min(t.sampleCount+1,5),t;if(r>100)return t.velocity=0,t.sampleCount=1,t;return t.velocity=Math.abs(e-s)/r,t.sampleCount=Math.min(t.sampleCount+1,5),t};function yo(t){let{item:e}=t;if(e.height!==void 0&&typeof e.height==="number"){if(!Number.isFinite(e.height)||e.height<=0)throw Error(`vlist: item.height must be a positive number, got ${e.height}`)}if(e.width!==void 0&&typeof e.width==="number"){if(!Number.isFinite(e.width)||e.width<=0)throw Error(`vlist: item.width must be a positive number, got ${e.width}`)}if(e.estimatedHeight!==void 0){if(!Number.isFinite(e.estimatedHeight)||e.estimatedHeight<=0)throw Error(`vlist: item.estimatedHeight must be a positive number, got ${e.estimatedHeight}`)}if(e.estimatedWidth!==void 0){if(!Number.isFinite(e.estimatedWidth)||e.estimatedWidth<=0)throw Error(`vlist: item.estimatedWidth must be a positive number, got ${e.estimatedWidth}`)}if(e.gap!==void 0){if(typeof e.gap!=="number"||!Number.isFinite(e.gap)||e.gap<0)throw Error(`vlist: item.gap must be a non-negative number, got ${e.gap}`)}if(t.overscan!==void 0){if(typeof t.overscan!=="number"||!Number.isFinite(t.overscan)||t.overscan<0)throw Error(`vlist: overscan must be a non-negative number, got ${t.overscan}`)}if(t.scroll?.runway!==void 0){if(typeof t.scroll.runway!=="number"||!Number.isFinite(t.scroll.runway)||t.scroll.runway<=0)throw Error(`vlist: scroll.runway must be a positive number, got ${t.scroll.runway}`)}}function So(t,e){let n=t==="horizontal"?"x":"y";if(e.some((s)=>s.name==="grid"))return{primary:n,cross:n==="x"?"y":"x"};return{primary:n}}function To(t,e){let n=So(t.orientation,e),o=n.primary==="x",s=pn(t.padding);return{axis:n,hasCrossAxis:n.cross!==void 0,overscan:t.overscan??it,reverse:t.reverse??!1,classPrefix:t.classPrefix??tn,mainAxisPadding:bn(s,o),crossAxisPadding:hn(s,o),startPadding:o?s.left:s.top,endPadding:o?s.right:s.bottom,crossPadStart:o?s.top:s.left,crossPadEnd:o?s.bottom:s.right,striped:t.item.striped||!1,gap:t.item.gap??0}}function Io(t,e){if(e)return t.item.width??t.item.estimatedWidth??100;return t.item.height??t.item.estimatedHeight??40}function xo(t){let e=[...t];return e.sort((n,o)=>(n.priority??50)-(o.priority??50)),e}function Lo(t){let e=new Set;for(let n of t){if(e.has(n.name))throw Error(`[vlist] Duplicate plugin: ${n.name}`);e.add(n.name)}for(let n of t)if(n.conflicts){for(let o of n.conflicts)if(e.has(o))throw Error(`[vlist] Plugin "${n.name}" conflicts with "${o}"`)}}function kn(t,e=[]){yo(t);let n=To(t,e),o=n.axis.primary==="x",s=t.scroll?.mode==="bounded",r=Io(t,o),i=n.gap,l=i>0?typeof r==="function"?(ye)=>r(ye)+i:r+i:r,y=typeof r==="number"?r:20,f=t.items?.length??0,c=n.striped?`${n.classPrefix}-item--odd`:"",v=Et(),I=An(n.classPrefix,o,n.startPadding,n.crossPadStart,n.crossPadEnd,c,i,v),S=e.length>0?xo(e):e;if(e.length>0)Lo(S);let H=Sn(t.container),d=Tn(H,n.classPrefix,o,t.ariaLabel);if(t.scroll?.scrollbar==="none")d.viewport.classList.add(`${n.classPrefix}-viewport--no-scrollbar`);if(t.scroll?.gutter==="stable")d.viewport.classList.add(`${n.classPrefix}-viewport--gutter-stable`);let p=ut(l,f);if(i>0){let ye=p.getTotalSize;p.getTotalSize=()=>{let Q=ye();return Q>0?Q-i:0}}let M=yn(n.classPrefix),b=Math.ceil(4096/y)+n.overscan*2+8,u=vn(b);u.totalItems=f;let A=t.items??[],L=()=>A,a=new Map,F=Rn(),V={velocity:0,reliable:!1},T={range:{start:0,end:-1}},B={scrollPosition:0,direction:"down"},q={scrollPosition:0},D=-1,oe=-1,_=-1,Y=null,U=Cn(S),P=new Map,O=[],g=[],C=[],j=null,J=null,k=null,h=null,W=null,N=null,Z=null,m=null,E=null,x=null,z=null,X=!1,se=!1,te=null,ee=0,ie=0,ne=null,ve=null,be=null,de=null,R=null,le=null,re=null,Se=null,Me=null;u.containerSize=o?d.viewport.clientWidth:d.viewport.clientHeight,u.crossSize=o?d.viewport.clientHeight:d.viewport.clientWidth;let xe=Ln({sizeCache:p,getPixel:()=>J?J():u.scrollPosition,setPixel:(ye)=>{if(k)k(ye);else if(o)d.viewport.scrollLeft=ye;else d.viewport.scrollTop=ye},getContainerSize:()=>u.containerSize});if(e.length>0){let ye={dom:d,sizeCache:p,scroll:xe,pool:M,config:n,emitter:v,template:t.item.template,registerMethod(Q,we){P.set(Q,we)},getMethod(Q){return P.get(Q)},registerClickHandler(Q){O.push(Q)},registerKeydownHandler(Q){g.push(Q)},registerDestroyHandler(Q){C.push(Q)},enableListboxRole(){let Q=d.content.getAttribute("role");if(!Q||Q==="list")d.content.setAttribute("role","listbox"),d.content.setAttribute("tabindex","0");I.itemRole="option",I.interactive=!0},setSizeConfig(Q){let we=ut(Q,u.totalItems),ke=P.get("_setSizeCacheBase");if(ke){let _e=p.rebuild;Object.assign(p,we),p.rebuild=_e,ke(we.rebuild)}else Object.assign(p,we)},setScrollFns(Q,we){J=Q,k=we},setBoundedWrap(Q){Me=Q},cancelScroll(){ze?.cancelScroll()},setVirtualTotalFn(Q){j=Q,I.ariaTotalFn=Q},setIndexMapFn(Q){I.indexMap=Q},getItems:L,getItem(Q){return N?N(Q):A[Q]},getState(){return u},rebuildSizeCache(){p.rebuild(u.totalItems)},updateContentSize(Q){if(Se){Se.refresh(Q);return}u.totalSize=Q,d.content.style[o?"width":"height"]=Q+n.mainAxisPadding+"px"},setRenderFn(Q,we){h=Q,W=we},renderIfNeeded(){pe()},forceRender(){fe()},setGetItemFn(Q){N=Q},setItemStateFn(Q){Z=Q},getItemStateFn(){return Z},get rawSizeSpec(){return r},scrollTo(Q){if(k)k(Q);else if(o)d.viewport.scrollLeft=Q;else d.viewport.scrollTop=Q},smoothScrollTo(Q,we,ke,_e){if(de)de(Q,we,k??void 0,ke,_e);else ye.scrollTo(typeof Q==="function"?Q():Q)},disableDefaultScroll(){X=!0},disableDefaultResize(){se=!0},setScrollTarget(Q){te=Q},setScrollToPosFn(Q){R=Q},setScrollToIndexFn(Q){le=Q},onScrollFrame:me,onScrollIdle:Ce,removeItemById(Q){if(m)return m(Q);let we=A.findIndex((ke)=>ke.id===Q);if(we===-1)return-1;return A.splice(we,1),u.totalItems=A.length,p.rebuild(u.totalItems),he(),we},insertItemAt(Q,we){if(E){E(Q,we);return}A.splice(we,0,Q),u.totalItems=A.length,p.rebuild(u.totalItems),he()},setRemoveItemFn(Q){m=Q},setInsertItemFn(Q){E=Q},setUpdateItemFn(Q){x=Q},setGetIndexByIdFn(Q){z=Q},getRenderedElement(Q){let we=P.get("_getRenderedElement");if(we)return we(Q);return a.get(Q)??null},setNavConfig(Q){if(Q.ud!==void 0)ee=Q.ud;if(Q.lr!==void 0)ie=Q.lr;if(Q.scrollIndex)ne=Q.scrollIndex;if(Q.navigate)ve=Q.navigate;if(Q.total)be=Q.total},getNavConfig:(()=>{let Q={ud:0,lr:0,scrollIndex:null,navigate:null,total:null};return()=>(Q.ud=ee,Q.lr=ie,Q.scrollIndex=ne,Q.navigate=ve,Q.total=be,Q)})()};for(let Q of S)if(Q.setup)try{Q.setup(ye)}catch(we){v.emit("error",{error:we instanceof Error?we:Error(String(we)),context:`plugin:setup:${Q.name}`})}}let Le=n.classPrefix+"--scrolling",Te=!1,Pe=t.scroll?.idleTimeout??We;function Re(){if(B.scrollPosition=xe.getPixelEquivalent(),o)B.direction=u.scrollDirection>0?"right":"left";else B.direction=u.scrollDirection>0?"down":"up";if(v.emit("scroll",B),Hn(F,u.scrollPosition),V.velocity=F.velocity,V.reliable=F.sampleCount>=zn,v.emit("velocity:change",V),u.startIndex!==D||u.prevRangeEnd!==oe)D=u.startIndex,oe=u.prevRangeEnd,T.range.start=u.startIndex,T.range.end=u.prevRangeEnd,v.emit("range:change",T)}let K=!1;function he(){if(h)return;let ye=p.getTotalSize();if(Se){Se.refresh(ye);return}if(d.content.style[o?"width":"height"]=ye+n.mainAxisPadding+"px",!K&&ye>Je)K=!0,v.emit("error",{error:Error(`Content size (${ye}px) exceeds browser limit (${Je}px). Enable bounded scroll (scroll: { mode: "bounded" }) for large datasets.`),context:"content:size:overflow"})}function ue(){if(!re)return;if((j?j():A.length)===0)return;let Q=re;re=null,Fe.scrollToIndex(Q.index,Q.alignOrOptions)}function pe(){if(ue(),h)h();else Ct(u,p,n.overscan,M,d.content,t.item.template,L,a,I,U,N,Z)}function me(){if(!Te)Te=!0,d.root.classList.add(Le);if(pe(),Lt(U.afterScroll,u.scrollPosition,u.scrollDirection),u.scrollPosition!==_)_=u.scrollPosition,Re()}function Ce(){if(Te)Te=!1,d.root.classList.remove(Le);u.scrollDirection=0,Pn(U.idle),V.velocity=0,V.reliable=!1,v.emit("velocity:change",V),q.scrollPosition=xe.getPixelEquivalent(),v.emit("scroll:idle",q)}function fe(){if(ue(),u.renderPending=!0,W)W();else Ct(u,p,n.overscan,M,d.content,t.item.template,L,a,I,U,N,Z);if(Lt(U.afterScroll,u.scrollPosition,u.scrollDirection),u.scrollPosition!==_){if(_=u.scrollPosition,Re(),Y!==null)clearTimeout(Y);Y=setTimeout(Ce,Pe)}}let Ie=X?!1:t.scroll?.wheel!==!1,ze;if(X&&(s||Me))throw Error(`vlist: page() is not compatible with ${Me?"the carousel plugin":'scroll: { mode: "bounded" }'} — bounded page-mode scrolling is not implemented yet.`);if(s||Me)Se=xn({state:u,viewport:d.viewport,content:d.content,isX:o,wheelEnabled:Ie,idleTimeout:t.scroll?.idleTimeout??We,...te?{scrollTarget:te}:{},mainAxisPadding:n.mainAxisPadding,...t.scroll?.runway!==void 0?{runwayFactor:Math.max(un,t.scroll.runway)}:{},...Me?{wrap:Me}:{},onFrame:me,onIdle:Ce}),ze=Se,J=()=>u.scrollPosition,k=(ye)=>Se.setLogical(ye);else ze=In({state:u,viewport:d.viewport,isX:o,wheelEnabled:Ie,idleTimeout:t.scroll?.idleTimeout??We,...te?{scrollTarget:te}:{},onFrame:me,onIdle:Ce});de=ze.smoothScrollTo;function ce(ye){let we=ye.target.closest("[data-index]");if(!we)return null;let ke=parseInt(we.getAttribute("data-index"),10);if(Number.isNaN(ke))return null;let _e=P.get("_layoutToDataIndex"),$e;if(_e){let Oe=_e(ke);if(Oe<0)return null;let Ze=P.get("_getItem");$e=Ze?Ze(Oe):N?N(Oe):A[Oe]}else $e=N?N(ke):A[ke];if($e===void 0)return null;return{item:$e,index:ke}}function G(ye){for(let we=0;we<O.length;we++)O[we](ye);let Q=ce(ye);if(Q)v.emit("item:click",{item:Q.item,index:Q.index,event:ye})}function ge(ye){let Q=ce(ye);if(Q)v.emit("item:dblclick",{item:Q.item,index:Q.index,event:ye})}function ae(ye){let Q=ce(ye);if(Q)v.emit("item:contextmenu",{item:Q.item,index:Q.index,event:ye})}function Ee(ye){let Q=ye.target?.tagName;if((Q==="INPUT"||Q==="TEXTAREA"||Q==="SELECT")&&!((ye.ctrlKey||ye.metaKey)&&(ye.key==="f"||ye.key==="F")))return;for(let we=0;we<g.length;we++)g[we](ye)}if(d.content.addEventListener("click",G),d.content.addEventListener("dblclick",ge),d.content.addEventListener("contextmenu",ae),g.length>0)d.root.addEventListener("keydown",Ee);let Ae=null;if(!se)setTimeout(()=>{if(u.destroyed)return;Ae=new ResizeObserver((Q)=>{for(let we of Q){let{width:ke,height:_e}=we.contentRect,$e=o?ke:_e,Oe=o?_e:ke;if(Math.abs($e-u.containerSize)<1&&Math.abs(Oe-u.crossSize)<1)continue;if(u.containerSize=$e,u.crossSize=Oe,u.resizeCapacity($e,y,n.overscan),Se)Se.refresh(p.getTotalSize());fe(),wn(U.resize,ke,_e),v.emit("resize",{width:ke,height:_e})}}),Ae.observe(d.viewport)},0);u.resizeCapacity(u.containerSize,y,n.overscan),he(),u.initialized=!0;let He=null;if(t.defer)He=requestAnimationFrame(()=>{if(He=null,!u.destroyed)pe()});else pe();if(!X)ze.attach();let Fe={get element(){return d.root},get items(){return A},get total(){return j?j():A.length},setItems(ye){A=[...ye],u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},appendItems(ye){A.push(...ye),u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},prependItems(ye){A.unshift(...ye),u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},updateItem(ye,Q){if(x){if(!x(ye,Q))return}else{let we=A.findIndex((ke)=>ke.id===ye);if(we===-1)return;A[we]={...A[we],...Q}}fe()},insertItem(ye,Q){if(E)E(ye,Q??u.totalItems);else{if(Q===void 0)A.push(ye);else A.splice(Q,0,ye);u.totalItems=A.length,p.rebuild(u.totalItems),he()}fe()},removeItem(ye){if(m){if(m(ye)<0)return}else{let Q=A.findIndex((we)=>we.id===ye);if(Q===-1)return;A.splice(Q,1),u.totalItems=A.length,p.rebuild(u.totalItems),he()}fe()},removeItems(ye){if(m){let _e=0;for(let $e of ye)if(m($e)>=0)_e++;if(_e>0)fe();return _e}let Q=new Set(ye),we=A.length;A=A.filter((_e)=>!Q.has(_e.id));let ke=we-A.length;if(ke>0)u.totalItems=A.length,p.rebuild(u.totalItems),he(),u.renderPending=!0,pe();return ke},getItemAt(ye){if(I.indexMap)return A[ye];return N?N(ye):A[ye]},getIndexById(ye){if(z)return z(ye);return A.findIndex((Q)=>Q.id===ye)},scrollToIndex(ye,Q="start"){let we=j?j():A.length;if(we===0){re={index:ye,alignOrOptions:Q};return}let ke=Math.max(0,Math.min(ye,we-1)),_e=typeof Q==="string"?Q:Q.align??"start",$e=typeof Q==="object"?Q.behavior:void 0,Oe=typeof Q==="object"?Q.duration:void 0,Ze=typeof Q==="object"?Q.easing:void 0;if(le&&le(ke,_e,$e,Oe,Ze)!==!1)return;let Tt=p.getOffset(ke),Qt=p.getSize(ke),st=u.containerSize,so=p.getTotalSize(),en=n.mainAxisPadding,io=Math.max(0,so+en-st),Ne;if(R)Ne=R(ke,p,st,we,_e);else{let lo=n.startPadding;switch(_e){case"center":Ne=lo+Tt-(st-Qt)/2;break;case"end":Ne=Tt+Qt+en-st;break;default:Ne=Tt}Ne=Math.max(0,Math.min(Ne,io))}if($e==="smooth")ze.smoothScrollTo(Ne,Oe??an,k??void 0,Ze);else if(k)k(Ne);else if(o)d.viewport.scrollLeft=Ne;else d.viewport.scrollTop=Ne},getScrollPosition(){return xe.getPixelEquivalent()},on:v.on.bind(v),off:v.off.bind(v),destroy(){if(u.destroyed)return;if(u.destroyed=!0,Te)Te=!1,d.root.classList.remove(Le);if(He!==null)cancelAnimationFrame(He),He=null;if(Y!==null)clearTimeout(Y),Y=null;ze.detach(),Ae?.disconnect(),d.content.removeEventListener("click",G),d.content.removeEventListener("dblclick",ge),d.content.removeEventListener("contextmenu",ae),d.root.removeEventListener("keydown",Ee);let ye=[];for(let Q of C)try{Q()}catch(we){ye.push(we instanceof Error?we:Error(String(we)))}for(let Q of S)if(Q.destroy)try{Q.destroy()}catch(we){ye.push(we instanceof Error?we:Error(String(we)))}for(let[,Q]of a)Q.remove();if(a.clear(),M.clear(),d.root.remove(),v.emit("destroy",void 0),v.clear(),ye.length>0)for(let Q of ye)console.error("vlist: error during destroy:",Q)}};for(let[ye,Q]of P)Fe[ye]=Q;return Fe}var Co=(t)=>{if(typeof t!=="object"){let e=t??2;return{top:e,right:e,bottom:e,left:e}}return{top:t.top??2,right:t.right??2,bottom:t.bottom??2,left:t.left??2}},_n=(t,e,n={},o="vlist",s=!1,r)=>{let{autoHide:i=!0,autoHideDelay:l=1000,minThumbSize:y=15,showOnHover:f=!0,showOnViewportEnter:c=!0,clickBehavior:v="scroll"}=n,I=v==="page"?"scroll":v,S=r??t,H=Co(n.padding),d=s?H.left:H.top,w=s?H.right:H.bottom,p=s?H.bottom:H.right,M=n.hoverZoneWidth??p+16,b=0,u=0,A=0,L=0,a=!1,F=!1,V=0,T=0,B=0,q=null,D=!1,oe=null,_=0,Y=0,U=null,P=null,O=null,g=s?"width":"height",C=s?"translateX":"translateY",j=s?(me)=>me.clientX:(me)=>me.clientY,J=s?"left":"top",k=document.createElement("div"),h=document.createElement("div"),W=document.createElement("div"),N=s?"--vlist-custom-scrollbar-padding-left":"--vlist-custom-scrollbar-padding-top",Z=()=>{if(S===t)return;let me=t.offsetTop;k.style[s?"left":"top"]=me?`calc(var(${N}) + ${me}px)`:`var(${N})`,W.style[s?"left":"top"]=`${me}px`},m=()=>{if(k.className=`${o}-scrollbar`,h.className=`${o}-scrollbar__thumb`,s)k.classList.add(`${o}-scrollbar--horizontal`);if(n.padding!==void 0)S.style.setProperty("--vlist-custom-scrollbar-padding-top",`${H.top}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-right",`${H.right}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-bottom",`${H.bottom}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-left",`${H.left}px`);if(n.minThumbSize!==void 0)k.style.setProperty("--vlist-custom-scrollbar-min-thumb-size",`${y}px`);if(k.appendChild(h),S.appendChild(k),W.className=`${o}-scrollbar__hover`,s)W.classList.add(`${o}-scrollbar__hover--horizontal`),W.style.height=`${M}px`;else W.style.width=`${M}px`;if(S.appendChild(W),S!==t)Z()},E=()=>{if(q)clearTimeout(q),q=null},x=()=>{if(!i)return;E(),q=setTimeout(X,l)},z=()=>{if(b<=u)return;if(E(),!D)k.classList.add(`${o}-scrollbar--visible`),D=!0;if(i&&!a&&!F)x()},X=()=>{if(a||F)return;k.classList.remove(`${o}-scrollbar--visible`),D=!1},se=(me,Ce)=>{if(b=me,u=Ce,Z(),b<=u){k.style.display="none",X();return}k.style.display="";let fe=Math.max(0,u-d-w),Ie=u/b;if(A=Math.max(y,Ie*fe),h.style[g]=`${A}px`,L=fe-A,te(B),!i)z()},te=(me)=>{if(B=me,b<=u||L<=0)return;let Ce=b-u,fe=Math.min(1,Math.max(0,me/Ce));h.style.transform=`${C}(${fe*L}px)`},ee=(me)=>{if(me.target===h||I!=="jump"||L<=0)return;let Ce=b-u,fe=k.getBoundingClientRect(),Ie=j(me)-fe[J],ze=Math.max(0,Math.min(Ie-A/2,L));e(ze/L*Ce),z()},ie=()=>{if(U!==null)clearTimeout(U),U=null;if(P!==null)cancelAnimationFrame(P),P=null;O=null},ne=(me)=>{let Ce=L>0?Y/me*L:0;if(_<Ce)return-1;if(_>=Ce+A)return 1;return 0},ve=()=>{let me=b-u,Ce=ne(me);if(Ce===0){ie();return}if(Ce===-1){if(Y<=0){ie();return}let fe=Math.max(0,Y-u);Y=fe,e(fe)}else{if(Y>=me){ie();return}let fe=Math.min(me,Y+u);Y=fe,e(fe)}z()},be=(me)=>{if(O===null){O=me,P=requestAnimationFrame(be);return}let Ce=b-u,fe=me-O;O=me;let Ie=ne(Ce);if(Ie===0){ie();return}let ze=12*u/1000,ce=Math.min(ze*fe,u);if(Ie===-1){if(Y<=0){ie();return}let G=Math.max(0,Y-ce);Y=G,e(G)}else{if(Y>=Ce){ie();return}let G=Math.min(Ce,Y+ce);Y=G,e(G)}E(),P=requestAnimationFrame(be)},de=()=>{ie(),x(),document.removeEventListener("mouseup",de)},R=(me)=>{if(me.target===h||I!=="scroll")return;me.preventDefault();let Ce=k.getBoundingClientRect();_=j(me)-Ce[J],Y=B,ve(),U=setTimeout(()=>{P=requestAnimationFrame(be)},350),document.addEventListener("mouseup",de)},le=(me)=>{me.preventDefault(),me.stopPropagation(),a=!0,V=j(me),T=B,E(),k.classList.add(`${o}-scrollbar--dragging`),document.addEventListener("mousemove",re),document.addEventListener("mouseup",Se)},re=(me)=>{if(!a)return;let Ce=j(me)-V,fe=L>0?Ce/L:0,Ie=b-u,ze=fe*Ie,ce=Math.max(0,Math.min(T+ze,Ie));h.style.transform=`${C}(${ce/Ie*L}px)`,e(ce)},Se=()=>{if(a=!1,k.classList.remove(`${o}-scrollbar--dragging`),i&&!F)x();document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",Se)},Me=s?(me)=>me.touches[0].clientX:(me)=>me.touches[0].clientY,xe=(me)=>{me.stopPropagation(),a=!0,V=Me(me),T=B,E(),k.classList.add(`${o}-scrollbar--dragging`)},Le=(me)=>{if(!a)return;me.preventDefault();let Ce=Me(me)-V,fe=L>0?Ce/L:0,Ie=b-u,ze=fe*Ie,ce=Math.max(0,Math.min(T+ze,Ie));h.style.transform=`${C}(${ce/Ie*L}px)`,e(ce)},Te=()=>{if(a=!1,k.classList.remove(`${o}-scrollbar--dragging`),i)x()},Pe=(me)=>{if(me.target===h)return;if(L<=0)return;let Ce=me.touches[0],fe=k.getBoundingClientRect(),Ie=(s?Ce.clientX:Ce.clientY)-fe[J];if(I==="jump"){let ze=b-u,ce=Math.max(0,Math.min(Ie-A/2,L));e(ce/L*ze)}else _=Ie,Y=B,ve();z()},Re=()=>{if(c)z()},K=()=>{if(!a){if(F=!1,i)x()}},he=()=>{F=!0,E(),z()},ue=()=>{if(F=!1,!a&&i)x()},pe=()=>{if(E(),ie(),oe!==null)cancelAnimationFrame(oe),oe=null;k.removeEventListener("click",ee),k.removeEventListener("mousedown",R),k.removeEventListener("mouseenter",he),document.removeEventListener("mouseup",de),k.removeEventListener("mouseleave",ue),k.removeEventListener("touchstart",Pe),h.removeEventListener("mousedown",le),h.removeEventListener("touchstart",xe),h.removeEventListener("touchmove",Le),h.removeEventListener("touchend",Te),t.removeEventListener("mouseenter",Re),t.removeEventListener("mouseleave",K),document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",Se),W.removeEventListener("click",ee),W.removeEventListener("mousedown",R),W.removeEventListener("mouseenter",he),W.removeEventListener("mouseleave",ue),W.remove(),S.style.removeProperty("--vlist-custom-scrollbar-padding-top"),S.style.removeProperty("--vlist-custom-scrollbar-padding-right"),S.style.removeProperty("--vlist-custom-scrollbar-padding-bottom"),S.style.removeProperty("--vlist-custom-scrollbar-padding-left"),k.remove()};if(m(),k.addEventListener("click",ee),k.addEventListener("mousedown",R),k.addEventListener("mouseenter",he),k.addEventListener("mouseleave",ue),k.addEventListener("touchstart",Pe,{passive:!0}),h.addEventListener("mousedown",le),h.addEventListener("touchstart",xe,{passive:!0}),h.addEventListener("touchmove",Le,{passive:!1}),h.addEventListener("touchend",Te,{passive:!0}),t.addEventListener("mouseenter",Re),t.addEventListener("mouseleave",K),W.addEventListener("click",ee),W.addEventListener("mousedown",R),f)W.addEventListener("mouseenter",he),W.addEventListener("mouseleave",ue);return{show:z,hide:X,updateBounds:se,updatePosition:te,isVisible:()=>D,destroy:pe}};function Mt(t){let e=null,n,o=0,s=0,r=0;return{name:"scrollbar",priority:15,setup(i){let{dom:l,config:y}=i,{classPrefix:f}=y,c=y.axis.primary==="x";n=i.getState(),o=y.mainAxisPadding;let v=(I)=>{i.scrollTo(I)};if(i.registerMethod("_scrollbar:setCallback",(I)=>{v=I}),e=_n(l.viewport,(I)=>{v(I)},t,f,c,l.root),l.viewport.classList.add(`${f}-viewport--custom-scrollbar`),t?.gutter)l.viewport.classList.add(`${f}-viewport--gutter`);queueMicrotask(()=>{e?.updateBounds(n.totalSize+o,n.containerSize)}),i.registerMethod("_scrollbar:getInstance",()=>e),i.registerDestroyHandler(()=>{if(e?.destroy(),e=null,l.viewport.classList.remove(`${f}-viewport--custom-scrollbar`),t?.gutter)l.viewport.classList.remove(`${f}-viewport--gutter`)})},hooks:{onAfterScroll(i){let l=n.totalSize+o,y=n.containerSize;if(l!==s||y!==r)s=l,r=y,e?.updateBounds(l,y);e?.updatePosition(i),e?.show()},onResize(){let i=n.totalSize+o,l=n.containerSize;s=i,r=l,e?.updateBounds(i,l)}},destroy(){e?.destroy(),e=null}}}var Fn=(t)=>{let e=Math.max(1,Math.floor(t.columns)),n=t.gap??0,o=t.isHeaderFn,s={row:0,col:0},r=(d)=>{if(d<=0)return 0;if(!o)return Math.ceil(d/e);let w=0,p=0,M=0;for(let b=0;b<d;b++)if(o(b)){if(M++,p)w++,p=0;w++,p=0}else if(p++,p>=e)w++,p=0;if(p)w++;return w},i=(d)=>(s.row=l(d),s.col=y(d),s),l=(d)=>{if(!o)return Math.floor(d/e);let w=0,p=0;for(let M=0;M<=d;M++)if(o(M)){if(p)w++,p=0;if(M===d)return w;w++,p=0}else{if(M===d)return w;if(p++,p>=e)w++,p=0}return console.warn(`⚠️ getRow(${d}) fell through - returning ${w}`),w},y=(d)=>{if(!o)return d%e;if(o(d))return 0;let w=0;for(let p=0;p<=d;p++)if(o(p))w=0;else{if(p===d)return w;if(w++,w>=e)w=0}return w},f=(d,w,p,M)=>{if(p<=0){M.start=0,M.end=-1;return}if(!o){M.start=Math.max(0,d*e),M.end=Math.min(p-1,(w+1)*e-1);return}let b=c(d,w,p);M.start=b.start,M.end=b.end},c=(d,w,p)=>{if(p<=0)return{start:0,end:-1};if(!o){let L=Math.max(0,d*e),a=Math.min(p-1,(w+1)*e-1);return{start:L,end:a}}let M=-1,b=-1,u=0,A=0;for(let L=0;L<p;L++){if(o(L)){if(A)u++,A=0;if(u>=d&&u<=w){if(M<0)M=L;b=L}u++,A=0}else{if(u>=d&&u<=w){if(M<0)M=L;b=L}if(A++,A>=e)u++,A=0}if(u>w&&!A)break}if(M<0)return{start:0,end:-1};return{start:M,end:b}},v=(d,w,p)=>{if(w<0||w>=e)return-1;let M=d*e+w;if(M<0||M>=p)return-1;return M},I=(d)=>{let w=(e-1)*n;return Math.max(0,(d-w)/e)};return{get columns(){return e},get gap(){return n},update:(d)=>{if(d.columns!==void 0)e=Math.max(1,Math.floor(d.columns));if(d.gap!==void 0)n=d.gap;if(d.isHeaderFn!==void 0)o=d.isHeaderFn},getTotalRows:r,getPosition:i,getRow:l,getCol:y,getItemRange:c,fillItemRange:f,getItemIndex:v,getColumnWidth:I,getColumnOffset:(d,w)=>{let p=I(w);return d*(p+n)}}};var Ke={selected:!1,focused:!1};function Pt(t){if(!t.columns||t.columns<1)throw Error("[vlist] grid: columns must be >= 1");let e,n,o,s,r=null,i,l,y,f,c,v,I=null,S=0,H=0,d=0,w=0,p=new Map,M=0,b=0,u=0,A=0,L=null,a=!1,F="",V="",T="",B={start:0,end:-1},q=-1,D=-1,oe=-1,_=!0,Y=(h)=>n.rebuild(h);function U(){let h=(b-1)*u;A=Math.max(0,(M-h)/b)}function P(){if(a)return;a=!0,L=I?.()??null}function O(){return e.getTotalRows(o.totalItems)}function g(h){let W=h/b|0,Z=(h-W*b)*(A+u)+S,m=n.getOffset(W)-o.baseOffset+d;if(f)return`translate(${Math.round(m)}px, ${Math.round(Z)}px)`;return`translate(${Math.round(Z)}px, ${Math.round(m)}px)`}function C(h,W){let N=n.getSize(W)-u;if(f)h.style.width=`${N}px`,h.style.height=`${A}px`;else h.style.width=`${A}px`,h.style.height=`${N}px`}function j(h,W,N){if(L)L(N,Ke);else Ke.selected=!1,Ke.focused=!1;let Z=l(W,N,Ke);if(typeof Z==="string")h.innerHTML=Z;else h.innerHTML="",h.appendChild(Z)}function J(){if(o.destroyed)return;let h=o.scrollPosition,W=o.containerSize;if(!_&&h===q&&W===D)return;q=h,D=W,_=!1;let N=O();if(W<=0||N===0)return;P();let Z=n.indexAtOffset(h),m=n.indexAtOffset(h+W);if(m<N-1)m++;Z=Math.max(0,Z),m=Math.min(N-1,Math.max(0,m));let E=Math.max(0,Z-v),x=Math.min(N-1,m+v);if(E===o.prevRangeStart&&x===o.prevRangeEnd&&!o.renderPending)return;e.fillItemRange(E,x,o.totalItems,B);let{start:z,end:X}=B;for(let[ee,ie]of p)if(ee<z||ee>X)ie.el.remove(),s.release(ie.el),p.delete(ee);for(let ee=z;ee<=X;ee++){let ie=y(ee);if(!ie)continue;let ne=ee/b|0,ve=ee-ne*b,be=p.get(ee);if(be===void 0){let le=s.acquire();le.className=F,le.setAttribute("data-index",String(ee)),le.setAttribute("data-id",String(ie.id)),j(le,ie,ee),be={el:le,lastItem:ie},p.set(ee,be),i.appendChild(le)}else if(be.lastItem!==ie)be.el.setAttribute("data-id",String(ie.id)),be.lastItem=ie,j(be.el,ie,ee);else if(L)L(ee,Ke);if(L)if(be.el.classList.toggle(V,Ke.selected),be.el.classList.toggle(T,Ke.focused),Ke.selected)be.el.setAttribute("aria-selected","true");else be.el.removeAttribute("aria-selected");C(be.el,ne);let de=ve*(A+u)+S,R=n.getOffset(ne)-o.baseOffset+d;be.el.style.transform=f?`translate(${Math.round(R)}px, ${Math.round(de)}px)`:`translate(${Math.round(de)}px, ${Math.round(R)}px)`}let se=n.getTotalSize();if(se!==oe)oe=se,r?.updateContentSize(se);o.prevRangeStart=E,o.prevRangeEnd=x,o.renderPending=!1;let te=X-z+1;o.visibleCount=Math.min(te,o.capacity),o.startIndex=z;for(let ee=0;ee<o.visibleCount;ee++){let ie=z+ee,ne=ie/b|0;o.visibleIndices[ee]=ie,o.visibleOffsets[ee]=n.getOffset(ne),o.visibleSizes[ee]=n.getSize(ne)}}function k(){if(o.destroyed)return;Y(O()),oe=-1,o.prevRangeStart=-1,o.prevRangeEnd=-1,o.renderPending=!0,_=!0,J()}return{name:"grid",priority:10,conflicts:["masonry","table"],setup(h){b=Math.max(1,Math.floor(t.columns)),u=t.gap??0,e=Fn({columns:t.columns,gap:u}),n=h.sizeCache,o=h.getState(),s=h.pool,r=h,i=h.dom.content,l=h.template,f=h.config.axis.primary==="x",c=h.config.classPrefix,v=h.config.overscan,y=h.getItem.bind(h),I=()=>h.getItemStateFn(),F=`${c}-item ${c}-grid-item`,V=`${c}-item--selected`,T=`${c}-item--focused`,S=h.config.crossPadStart,H=h.config.crossAxisPadding,d=h.config.startPadding,w=h.config.mainAxisPadding,M=o.crossSize-H,U();let W=h.rawSizeSpec,N;if(typeof W==="function"){let z={columnWidth:e.getColumnWidth(M),columns:t.columns,gap:u};N=W(0,z),h.setSizeConfig((X)=>{z.columnWidth=e.getColumnWidth(M);let se=X*t.columns;return W(se,z)+u})}else if(N=W,u>0)h.setSizeConfig(N+u);let Z=null,m=n.rebuild;function E(){if(n.rebuild===Z)return;m=n.rebuild,Y=(x)=>m(x),Z=(x)=>{Y(Math.ceil(x/b))},n.rebuild=Z}if(h.registerMethod("_setSizeCacheBase",(x)=>{m=x,Y=(z)=>m(z)}),E(),Y(O()),u>0){let x=n.getTotalSize;n.getTotalSize=()=>{let z=x();return z>0?z-u:0}}h.setVirtualTotalFn(()=>O()),h.dom.root.classList.add(`${c}--grid`),h.setRenderFn(J,k),h.registerMethod("getGridLayout",()=>e),h.registerMethod("_getRowGap",()=>e.gap),h.registerMethod("updateGrid",(x)=>{if(x.columns!==void 0){if(!Number.isInteger(x.columns)||x.columns<1)throw Error("[vlist] updateGrid: columns must be >= 1")}if(x.gap!==void 0&&x.gap<0)throw Error("[vlist] updateGrid: gap must be >= 0");if(e.update(x),x.columns!==void 0)b=Math.max(1,Math.floor(x.columns));if(x.gap!==void 0)u=x.gap;if(x.gap!==void 0||x.columns!==void 0){let z=e.gap;if(typeof W==="function"){let X={columnWidth:e.getColumnWidth(M),columns:e.columns,gap:z};h.setSizeConfig((se)=>{X.columnWidth=e.getColumnWidth(M);let te=se*e.columns;return W(te,X)+z})}else h.setSizeConfig(N+z);E(),Y(O())}if(x.columns!==void 0)h.setNavConfig({ud:e.columns});M=o.crossSize-H,U(),k()}),h.registerMethod("scrollToIndex",(x,z="start")=>{let X=e.getRow(x),se=O();if(se===0)return;let te=Math.max(0,Math.min(X,se-1)),ee=n.getOffset(te)+d,ie=n.getSize(te),ne=o.containerSize,ve=n.getTotalSize()+w,be=Math.max(0,ve-ne),de=typeof z==="string"?z:z.align??"start",R=typeof z==="object"?z.behavior:void 0,le=typeof z==="object"?z.duration:void 0,re;switch(de){case"center":re=ee-(ne-ie)/2;break;case"end":re=ee-ne+ie;break;default:re=ee}if(re=Math.max(0,Math.min(re,be)),R==="smooth"&&le&&le>0)h.smoothScrollTo(re,le);else h.scrollTo(re)}),h.setNavConfig({total:()=>o.totalItems,ud:t.columns,lr:1,scrollIndex:(x)=>e.getRow(x)}),h.registerDestroyHandler(()=>{for(let[,x]of p)x.el.remove();p.clear(),h.dom.root.classList.remove(`${c}--grid`)})},hooks:{onResize(h,W){let N=o.crossSize-H;if(Math.abs(N-M)<1)return;M=N,U();for(let[Z,m]of p){let E=Z/b|0;C(m.el,E),m.el.style.transform=g(Z)}}},destroy(){p.clear()}}}function tt(t,e,n,o){if(o<=0)return 0;let s=o-1;if(n<=1)return t<0?0:t>s?s:t;let r=(e%n+n)%n;if(t<0)return r;if(t>s){let i=Math.floor(s/n)*n;return Math.min(i+r,s)}return t}function wt(t){let e=t?.keyboard??!0;return{name:"a11y",priority:55,setup(n){if(n.getItemStateFn())return;n.enableListboxRole();let{dom:o,config:s,sizeCache:r}=n,i=n.getState(),l=n.emitter,y=s.classPrefix,f=o.liveRegion,c=-1,v=!1,I,S=-1,H=(T)=>n.getItem(T),d=()=>i.totalItems,w={id:0,index:0},p={selected:[],items:[]};n.setItemStateFn((T,B)=>{B.selected=S===T,B.focused=v&&c===T});function M(T){f.textContent="",f.textContent=T}let b=(T,B,q)=>{let D=T;while(D>=0&&D<q){let oe=H(D);if(!oe||!oe.__groupHeader)return D;D+=B}D=T-B;while(D>=0&&D<q){let oe=H(D);if(!oe||!oe.__groupHeader)return D;D-=B}return T},u=(T)=>{let B=n.getNavConfig(),q=B.scrollIndex?B.scrollIndex(T):T,D=r.getOffset(q),oe=r.getSize(q),{scrollPosition:_,containerSize:Y}=i,{startPadding:U,endPadding:P}=s,O=D+U,g=O+oe,C=_;if(O<_)C=Math.max(0,D);else if(g>_+Y)C=g+P-Y;if(C!==_)i.scrollPosition=C,n.scrollTo(C)},A=(T,B)=>{if(o.content.setAttribute("aria-activedescendant",`${y}-item-${T}`),B)u(T);n.forceRender()},L=(T)=>{c=T,v=!0,A(T,!0);let B=H(T);if(B)w.id=B.id,w.index=T,l.emit("focus:change",w),M(`Item ${T+1} of ${d()}`)},a=(T,B)=>{if(c=T,B)v=!0;let q=H(T);if(q&&I===q.id)I=void 0,S=-1;else I=q?.id,S=q?T:-1;if(A(T,B),I!==void 0&&q&&I===q.id)p.selected[0]=I,p.selected.length=1,p.items[0]=q,p.items.length=1,M(`Selected, item ${T+1} of ${d()}`);else p.selected.length=0,p.items.length=0,M("Deselected");l.emit("selection:change",p)},F=()=>{if(i.destroyed)return;if(!o.content.matches(":focus-visible"))return;let T=d();if(T===0)return;let B=c>=0?Math.min(c,T-1):0;B=b(B,1,T),L(B)},V=(T)=>{if(i.destroyed)return;let B=T.relatedTarget;if(B&&o.root.contains(B))return;v=!1,o.content.removeAttribute("aria-activedescendant"),n.forceRender()};if(o.content.addEventListener("focusin",F),o.content.addEventListener("focusout",V),e)n.registerKeydownHandler((T)=>{if(i.destroyed)return;let B=d();if(B===0)return;let q=c,D=q;if(T.key===" "||T.key==="Enter"){if(q>=0){let _=H(q);if(_&&!_.__groupHeader)a(q,!0)}T.preventDefault();return}let oe=n.getNavConfig();if(oe.navigate)switch(T.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"PageUp":case"PageDown":case"Home":case"End":D=oe.navigate(q,T.key,B);break;default:return}else{let _=oe.ud||1,Y=oe.lr,U=s.axis.primary==="x";switch(T.key){case"ArrowUp":if(U&&!Y)return;D=q-(U?Y:_);break;case"ArrowDown":if(U&&!Y)return;D=q+(U?Y:_);break;case"ArrowLeft":if(!U&&!Y)return;D=q-(U?_:Y);break;case"ArrowRight":if(!U&&!Y)return;D=q+(U?_:Y);break;case"PageUp":case"PageDown":{let P=r.getSize(Math.max(0,oe.scrollIndex?oe.scrollIndex(q):q)),g=Math.max(1,Math.floor(i.containerSize/P))*_;D=tt(T.key==="PageUp"?q-g:q+g,q,_,B);break}case"Home":D=0;break;case"End":D=B-1;break;default:return}}if(D<0)D=0;else if(D>=B)D=B-1;if(T.preventDefault(),D=b(D,D>=q?1:-1,B),D!==q)L(D)});n.registerClickHandler((T)=>{if(i.destroyed)return;let B=T.target.closest("[data-index]");if(!B)return;let q=parseInt(B.dataset.index??"-1",10);if(q<0)return;let D=H(q);if(!D||D.__groupHeader)return;v=!1,o.content.focus({preventScroll:!0}),a(q,!1)}),n.registerDestroyHandler(()=>{o.content.removeEventListener("focusin",F),o.content.removeEventListener("focusout",V)})}}}var nt=(t,e,n)=>{if(String(n).startsWith(Ve))return!1;let o=Ve+e;if(t.has(o))return t.delete(o),t.add(n),!0;return!1},Dn=(t)=>({selected:new Set(t??[]),focusedIndex:-1,focusVisible:!1});function Xe(t,e,n,o){if(n===0)return;let s=o?-e:e,r=t.focusedIndex+s;if(r<0)r=0;if(r>=n)r=n-1;t.focusedIndex=r}function ct(t){return Array.from(t)}var Eo={preventScroll:!0};function At(t){let e=t?.mode??"single",n=t?.followFocus??!1,o=t?.focusOnClick??!1,s=t?.keyboard??!0,r,i,l,y,f,c,v,I,S=-1,H=new Map,d=null,w=null,p=null,M=null,b,u=!1;function A(C){if(u)return;u=!0,d=C.getMethod("_layoutToDataIndex")??null,w=C.getMethod("_dataToLayoutIndex")??null,p=C.getMethod("_isGroupHeader")??null,M=C.getMethod("_scrollItemIntoView")??null,a=C.getMethod("_getLoadedItem")??null;let j=C.getMethod("getGroupLayout");if(j){let J=j();b=()=>J.totalEntries}}let L=(C)=>d?d(C):C,a=null,F=(C)=>{if(a)return a(C);return i()[C]},V=(C)=>{let j=L(C);return j>=0?F(j):void 0},T=(C,j,J)=>{if(!p)return C;let k=C;while(k>=0&&k<J){if(!p(k))return k;k+=j}k=C-j;while(k>=0&&k<J){if(!p(k))return k;k-=j}return C};function B(C,j){if(e==="single")r.selected.clear(),H.clear();if(r.selected.add(C),j)H.set(C,j)}function q(C,j){if(r.selected.has(C))r.selected.delete(C),H.delete(C);else B(C,j)}function D(){r.selected.clear(),H.clear()}function oe(C){r.selected.delete(C),H.delete(C)}function _(C,j){let J=Math.min(C,j),k=Math.max(C,j);for(let h=J;h<=k;h++){if(p?.(h))continue;let W=V(h);if(W)r.selected.add(W.id),H.set(W.id,W);else if(a){let N=L(h);if(N>=0)r.selected.add(Ve+N)}}}function Y(){let C=v.totalItems;for(let j=0;j<C;j++){if(p?.(j))continue;let J=V(j);if(J)r.selected.add(J.id),H.set(J.id,J);else if(a){let k=L(j);if(k>=0)r.selected.add(Ve+k)}}}function U(){if(r.selected.size===0)return[];if(H.size>=r.selected.size){let k=[];for(let h of r.selected){let W=H.get(h);if(W)k.push(W)}if(k.length===r.selected.size)return k}let C=[],j=new Set(r.selected),J=v.totalItems;for(let k=0;k<J&&j.size>0;k++){if(p?.(k))continue;let h=V(k);if(h&&j.has(h.id))C.push(h),H.set(h.id,h),j.delete(h.id)}return C}function P(){l(),y.emit("selection:change",{selected:ct(r.selected),items:U()})}let O=null,g=-1;return{name:"selection",priority:50,setup(C){C.enableListboxRole(),r=Dn(t?.initial),i=C.getItems.bind(C),l=C.forceRender.bind(C),y=C.emitter,f=C.dom;let j=C.config;if(c=C.sizeCache,v=C.getState(),I=C.scrollTo.bind(C),b=()=>v.totalItems,e==="none"){C.registerMethod("select",()=>{}),C.registerMethod("deselect",()=>{}),C.registerMethod("toggleSelect",()=>{}),C.registerMethod("selectAll",()=>{}),C.registerMethod("clearSelection",()=>{}),C.registerMethod("getSelected",()=>[]),C.registerMethod("getSelectedItems",()=>[]),C.registerMethod("selectNext",()=>{}),C.registerMethod("selectPrevious",()=>{}),C.registerMethod("_seedSelection",()=>{}),C.registerMethod("_getFocusedId",()=>{return}),C.registerMethod("_focusById",()=>{});return}let J=j.classPrefix;C.setItemStateFn((E,x)=>{if(A(C),r.selected.size>0){let z=L(E),X=z>=0?V(E):void 0,se=X?.id;if(se!==void 0)if(r.selected.has(se))x.selected=!0;else if(nt(r.selected,z,se))x.selected=!0,H.delete(Ve+z),H.set(se,X);else x.selected=!1;else x.selected=a!==null&&z>=0&&r.selected.has(Ve+z)}else x.selected=!1;x.focused=r.focusVisible&&r.focusedIndex===E}),C.registerMethod("_getSelectedIds",()=>r.selected),C.registerMethod("_getFocusedIndex",()=>r.focusVisible?r.focusedIndex:-1),f.root.classList.add(`${J}--selectable`);let k=(E)=>{O=null,g=-1;let x=E.target.closest("[data-index]");if(!x)return!1;let z=parseInt(x.dataset.index??"-1",10);if(z<0)return!1;if(p?.(z))return!1;if(L(z)<0)return!1;let se=V(z);if(!se)return!1;return O=se,g=z,!0},h=0,W=(E)=>{if(E<0)return;if(M){M(E);return}if(!h){let ve=C.getMethod("_getRowGap");h=ve?ve():0}let x=C.getNavConfig(),z=x.scrollIndex?x.scrollIndex(E):E,X=c.getOffset(z),se=c.getSize(z)-h,te=v.containerSize,ee=v.scrollPosition,{startPadding:ie,endPadding:ne}=j;if(X<ee)I(X);else if(ie+X+se+ne>ee+te)I(ie+X+se+ne-te)},N=(E)=>{let x=f.content.querySelectorAll(`[data-index="${E}"]`),z=null;for(let X=0;X<x.length;X++){let se=x[X];if(se.style.display!=="none"){z=se;break}}if(!z&&x.length>0)z=x[0];f.content.setAttribute("aria-activedescendant",z?.id??`${J}-item-${E}`)},Z=()=>{if(v.destroyed)return;if(A(C),!f.content.matches(":focus-visible")&&!f.root.matches(":focus-visible"))return;let E=b();if(E===0)return;let x=r.focusedIndex>=0?Math.min(r.focusedIndex,E-1):0;x=T(x,1,E),r.focusedIndex=x,r.focusVisible=!0,N(x),W(x),l()};f.root.addEventListener("focusin",Z);let m=(E)=>{if(v.destroyed)return;let x=E.relatedTarget;if(x&&f.root.contains(x))return;r.focusVisible=!1,l(),f.content.removeAttribute("aria-activedescendant")};if(f.root.addEventListener("focusout",m),C.registerDestroyHandler(()=>{f.root.removeEventListener("focusin",Z),f.root.removeEventListener("focusout",m)}),C.registerClickHandler((E)=>{if(A(C),!k(E))return;if(e==="multiple"&&E.shiftKey&&r.focusedIndex>=0){let z=S>=0?S:r.focusedIndex,X=L(z),se=L(g);if(X>=0&&se>=0)_(z,g);r.focusedIndex=g,r.focusVisible=o,S=g,P();return}if(r.focusedIndex=g,r.focusVisible=o,S=g,(f.content.getAttribute("tabindex")!==null?f.content:f.root).focus(Eo),e==="single")B(O.id,O);else q(O.id,O);P()}),s)C.registerKeydownHandler((E)=>{A(C);let x=b();if(x===0)return;let z=C.getNavConfig(),X=r.focusedIndex,se=!1,te=!1;if(z.navigate&&(E.key==="ArrowUp"||E.key==="ArrowDown"||E.key==="ArrowLeft"||E.key==="ArrowRight"||E.key==="PageUp"||E.key==="PageDown"||E.key==="Home"||E.key==="End")){let ie=z.total?z.total():x,ne=z.navigate(r.focusedIndex,E.key,ie);if(ne!==r.focusedIndex)r.focusedIndex=Math.max(0,Math.min(ne,ie-1));r.focusVisible=!0,se=!0}else switch(E.key){case"ArrowUp":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(ve&&!ne)break;Xe(r,-(ve?ne:ie),x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowDown":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(ve&&!ne)break;Xe(r,ve?ne:ie,x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowLeft":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(!ve&&!ne)break;Xe(r,-(ve?ie:ne),x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowRight":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(!ve&&!ne)break;Xe(r,ve?ie:ne,x,j.reverse),r.focusVisible=!0,se=!0;break}case"Home":if(x>0)r.focusedIndex=0;r.focusVisible=!0,se=!0;break;case"End":if(x>0)r.focusedIndex=x-1;r.focusVisible=!0,se=!0;break;case"PageUp":case"PageDown":{let ie=z.ud||1,ne=Math.max(0,r.focusedIndex),ve=z.scrollIndex?z.scrollIndex(ne):ne,be=c.getSize(ve),de=v.containerSize,le=(be>0?Math.max(1,Math.floor(de/be)):10)*ie;if(d&&w){let re=d(r.focusedIndex),Se=E.key==="PageUp"?-le:le,Me=v.totalItems-1;r.focusedIndex=w(tt(re+Se,re,ie,Me+1))}else{let re=E.key==="PageUp"?r.focusedIndex-le:r.focusedIndex+le;r.focusedIndex=tt(re,r.focusedIndex,ie,x)}r.focusVisible=!0,se=!0;break}case" ":case"Enter":if(E.key===" "&&E.shiftKey&&e==="multiple"&&r.focusedIndex>=0){if(S>=0){let ie=L(S),ne=L(r.focusedIndex);if(ie>=0&&ne>=0)_(S,r.focusedIndex)}r.focusVisible=!0,te=!0,se=!0;break}if(r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)q(ie.id,ie),S=r.focusedIndex;r.focusVisible=!0,te=!0,se=!0}break;case"a":if((E.ctrlKey||E.metaKey)&&e==="multiple"){if(r.selected.size===v.totalItems)D();else Y();r.focusVisible=!0,te=!0,se=!0}break;case"Delete":case"Backspace":if(r.selected.size>0)y.emit("delete",{selected:ct(r.selected),items:U()}),se=!0;break}if(r.focusedIndex!==X&&p){let ie=r.focusedIndex>X?1:-1;r.focusedIndex=T(r.focusedIndex,ie,x)}let ee=r.focusedIndex!==X;if(E.shiftKey&&e==="multiple"&&!te&&ee){if(E.key==="ArrowUp"||E.key==="ArrowDown"||E.key==="ArrowLeft"||E.key==="ArrowRight"){let ve=V(r.focusedIndex);if(ve)q(ve.id,ve);S=r.focusedIndex,te=!0}if((E.ctrlKey||E.metaKey)&&(E.key==="Home"||E.key==="End")){let ve=X>=0?X:r.focusedIndex,be=L(ve),de=L(r.focusedIndex);if(be>=0&&de>=0)_(ve,r.focusedIndex);S=r.focusedIndex,te=!0}}if(n&&e==="single"&&!te&&ee&&r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)B(ie.id,ie);te=!0}if(se){if(E.preventDefault(),ee&&r.focusedIndex>=0){if(M||!z.navigate)W(r.focusedIndex);N(r.focusedIndex)}if(te)P();else if(ee){if(l(),r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)y.emit("focus:change",{id:ie.id,index:r.focusedIndex})}}}});C.registerMethod("select",(...E)=>{for(let x of E)B(x);P()}),C.registerMethod("deselect",(...E)=>{for(let x of E)oe(x);P()}),C.registerMethod("toggleSelect",(E)=>{q(E),P()}),C.registerMethod("selectAll",()=>{if(e!=="multiple")return;A(C),Y(),P()}),C.registerMethod("clearSelection",()=>{D(),P()}),C.registerMethod("getSelected",()=>ct(r.selected)),C.registerMethod("getSelectedItems",()=>U()),C.registerMethod("selectNext",()=>{A(C);let E=b();if(E===0)return;if(Xe(r,1,E,j.reverse),p)r.focusedIndex=T(r.focusedIndex,1,E);let x=V(r.focusedIndex);if(x)B(x.id,x);P()}),C.registerMethod("selectPrevious",()=>{A(C);let E=b();if(E===0)return;if(Xe(r,-1,E,j.reverse),p)r.focusedIndex=T(r.focusedIndex,-1,E);let x=V(r.focusedIndex);if(x)B(x.id,x);P()}),C.registerMethod("_seedSelection",(E)=>{if(e==="single"){if(E.length===1)r.selected.add(E[0])}else for(let x of E)r.selected.add(x)}),C.registerMethod("_isFollowFocus",()=>n),C.registerMethod("_getFocusedId",()=>{if(r.focusedIndex<0)return;return V(r.focusedIndex)?.id}),C.registerMethod("_focusById",(E)=>{let x=v.totalItems;for(let z=0;z<x;z++){if(p?.(z))continue;let X=V(z);if(X&&X.id===E){r.focusedIndex=z,r.focusVisible=o,y.emit("focus:change",{id:E,index:z});return}}})},destroy(){H.clear()}}}var mt=(t)=>t==null?0:typeof t==="function"?t():t;function zt(t){let e=t?.scrollPadding,n,o;return{name:"page",priority:5,setup(s){let{dom:r,sizeCache:i,config:l,emitter:y}=s,f=l.axis.primary==="x",c=window,v=s.getState();if(s.disableDefaultScroll(),s.disableDefaultResize(),r.root.style.overflow="visible",r.root.style.height="auto",f)r.viewport.style.overflowX="visible",r.viewport.style.overflowY="visible";else r.viewport.style.overflow="visible";r.viewport.classList.remove(`${l.classPrefix}-viewport--custom-scrollbar`),s.setScrollFns(()=>{let p=r.viewport.getBoundingClientRect();return Math.max(0,f?-p.left:-p.top)},(p)=>{let M=r.viewport.getBoundingClientRect(),b=(f?M.left+c.scrollX:M.top+c.scrollY)+p;if(f)c.scrollTo({left:b,top:c.scrollY,behavior:"instant"});else c.scrollTo({left:c.scrollX,top:b,behavior:"instant"})}),v.containerSize=f?c.innerWidth:c.innerHeight,v.crossSize=f?c.innerHeight:c.innerWidth;let I=null,S=()=>{let p=r.viewport.getBoundingClientRect(),M=Math.max(0,f?-p.left:-p.top);if(v.prevScrollPosition=v.scrollPosition,v.scrollPosition=M,v.scrollDirection=M>v.prevScrollPosition?1:M<v.prevScrollPosition?-1:0,s.onScrollFrame(),I!==null)clearTimeout(I);I=setTimeout(()=>{I=null,s.onScrollIdle()},150)};c.addEventListener("scroll",S,{passive:!0}),o=()=>c.removeEventListener("scroll",S);let{innerWidth:H,innerHeight:d}=c,w=()=>{let{innerWidth:p,innerHeight:M}=c;if((f?Math.abs(p-H):Math.abs(M-d))<1)return;H=p,d=M,v.containerSize=f?p:M,v.crossSize=f?M:p,s.forceRender(),y.emit("resize",{width:p,height:M})};if(c.addEventListener("resize",w),n=()=>c.removeEventListener("resize",w),e)s.setScrollToPosFn((p,M,b,u,A)=>{let L=mt(f?e.left:e.top),a=mt(f?e.right:e.bottom);if(u===0)return 0;let F=Math.max(0,Math.min(p,u-1)),V=M.getOffset(F),T=M.getSize(F),B=M.getTotalSize(),q=Math.max(0,B-b+a),D;switch(A){case"center":D=V-L-(b-L-a-T)/2;break;case"end":D=V-b+T+a;break;default:D=V-L}return Math.max(-L,Math.min(D,q))}),s.registerMethod("_scrollItemIntoView",(p)=>{let M=f?c.innerWidth:c.innerHeight,b=mt(f?e.left:e.top),u=mt(f?e.right:e.bottom),A=r.viewport.getBoundingClientRect(),L=f?c.scrollX:c.scrollY,a=f?A.left:A.top,F=a+L,V=i.getOffset(p),T=i.getSize(p),B=a+V,q=M-u,D=L;if(B<b)D=F+V-b;else if(B+T>q)D=F+V+T-q;if(D!==L)if(f)c.scrollTo({left:D,top:c.scrollY,behavior:"instant"});else c.scrollTo({left:c.scrollX,top:D,behavior:"instant"})});s.registerDestroyHandler(()=>{if(o?.(),n?.(),I!==null)clearTimeout(I)})},destroy(){o?.(),n?.(),o=void 0,n=void 0}}}var Mo=(t)=>{try{let e=sessionStorage.getItem(t);if(!e)return;return JSON.parse(e)}catch{return}};function ot(t){let e=t?.autoSave,n=t?.restore??(e?Mo(e):void 0),o=!1,s=null;return{name:"snapshots",priority:50,setup(r){let{sizeCache:i,emitter:l}=r,y=r.getState(),f=()=>{let{scrollPosition:I,totalItems:S}=y,d=r.getMethod("getSelected")?.();if(S===0){let a={index:0,offsetInItem:0,total:0};if(d?.length)a.selectedIds=d;return a}let w=i.indexAtOffset(I),p=I-i.getOffset(w);p=Math.max(0,p);let M={index:w,offsetInItem:p,total:S,scrollTop:I},b=i.getSize(w);if(b)M.offsetRatio=p/b;let u=r.getMethod("_layoutToDataIndex");if(u){let a=u(w);if(a<0){for(let F=w+1;F<S;F++)if(a=u(F),a>=0)break}if(a>=0)M.dataIndex=a}let A=r.getMethod("_getTotal");if(A)M.dataTotal=A();if(d?.length)M.selectedIds=d;let L=r.getMethod("_getFocusedId");if(L){let a=L();if(a!==void 0)M.focusedId=a}return M};r.registerMethod("getScrollSnapshot",f);let c=(I,S=!0)=>{let{index:H,offsetInItem:d,selectedIds:w,focusedId:p}=I,M=y.totalItems,b=I.dataTotal??I.total;if(M===0&&b&&b>0){let Y=r.getMethod("_setTotal");if(Y)Y(b),M=y.totalItems;i.rebuild(M),r.updateContentSize(i.getTotalSize()),y.totalSize=i.getTotalSize()}if(M===0)return Promise.resolve();if(!Number.isFinite(H)||!Number.isFinite(d))return Promise.resolve();if(i.getTotal()===0)i.rebuild(M),r.updateContentSize(i.getTotalSize()),y.totalSize=i.getTotalSize();let A=r.getMethod("_dataToLayoutIndex"),L=H;if(I.dataIndex!==void 0&&I.dataIndex>=0)L=A?A(I.dataIndex):I.dataIndex;else if(A)L=A(H);let a=Math.max(0,Math.min(L,M-1)),F=i.getSize(a),V=I.offsetRatio!==void 0?I.offsetRatio*F:Math.min(d,F),T=r.getMethod("_getTotal")?.(),B=I.total===M||T!==void 0&&I.dataTotal===T,q;if(I.scrollTop!==void 0&&B)q=I.scrollTop;else q=i.getOffset(a)+V;let D=Math.max(0,y.totalSize-y.containerSize);if(q=Math.max(0,Math.min(q,D)),r.scrollTo(q),S&&w?.length){let Y=r.getMethod("select");if(Y)Y(...w)}let oe=r.getMethod("loadVisibleRange"),_=()=>{if(p===void 0)return;let Y=r.getMethod("_focusById");if(Y)Y(p)};return new Promise((Y)=>{let U=(P)=>{if(P)_();Y()};if(oe){let P=0,O=()=>{if(y.containerSize>0){if(Math.abs(y.scrollPosition-q)>1)r.scrollTo(q);oe().then(()=>U(!0),()=>U(!1))}else if(++P<10)requestAnimationFrame(O);else U(!1)};requestAnimationFrame(O)}else{let P=r.getMethod("reload");if(P)requestAnimationFrame(()=>{P().then(()=>U(!0),()=>U(!1))});else requestAnimationFrame(()=>U(!0))}})};r.registerMethod("restoreScroll",c);let v=!!(n&&e);if(r.registerDestroyHandler(()=>{o=!0}),e){s=()=>{if(o||v)return;let M=f();try{sessionStorage.setItem(e,JSON.stringify(M))}catch{}},r.registerMethod("_saveSnapshot",s);let I=0,S=()=>{if(I)return;I=requestAnimationFrame(()=>{if(I=0,s)s()})};l.on("selection:change",S),l.on("focus:change",S);let H=0,d=()=>{if(H=0,s)s()},w=()=>{if(H)clearTimeout(H);H=setTimeout(d,300)};l.on("scroll",w);let p=()=>{s?.()};if(window.addEventListener("beforeunload",p),r.registerDestroyHandler(()=>{if(I)cancelAnimationFrame(I);if(H)clearTimeout(H);window.removeEventListener("beforeunload",p)}),n&&n.total&&n.total>0){let M=r.getMethod("_cancelAutoLoad");if(M)M();let b=r.getMethod("_setTotal");if(b)b(n.total)}}if(n){let I=!0;if(n.selectedIds?.length){let S=r.getMethod("_seedSelection");if(S)S(n.selectedIds),I=!1}queueMicrotask(()=>{if(c(n,I),v=!1,s)s()})}},hooks:{onIdle(){if(s&&!o)s()}},destroy(){o=!0,s=null}}}function Vn(t,e){if(e===!1)return null;return{duration:Math.min(e?.duration??t.duration,1000),easing:e?.easing??t.easing}}function Rt(t){let e=t?.duration??200,n=t?.easing??"cubic-bezier(0.2, 0, 0, 1)",o={duration:e,easing:n},s=Vn(o,t?.remove),r=Vn(o,t?.insert),i=null,l=null;return{name:"transition",conflicts:["grid","table","masonry"],priority:45,setup(y){let{sizeCache:f,emitter:c}=y,{config:v,dom:I}=y,S=y.getState(),H=v.reverse?"bottom center":"top center",d=v.axis.primary==="x"?"translateX":"translateY",w=y.getMethod("_dataToLayoutIndex")??null,p=(u)=>w?w(u):u,M=(u)=>{let A=String(u).replace(/"/g,"\\\""),L=I.content.querySelector(`[data-id="${A}"]`),a=L?parseInt(L.dataset.index??"-1",10):-1;return{el:L,layoutIndex:a}},b=()=>{let u=I.content.children;for(let A=0;A<u.length;A++)u[A].style.transition="none";I.content.offsetHeight;for(let A=0;A<u.length;A++)u[A].style.transition=""};if(s){let u=(L)=>{if(i)i();let a=typeof document<"u"?document.activeElement:null,F=a&&I.content.contains(a)?parseInt(a.dataset?.index??"-1",10):-1,V=M(L),{layoutIndex:T,el:B}=V,q=T>=0?f.getSize(T):0,D=T>=0?f.getOffset(T):0;if(!B||T<0){if(y.removeItemById(L)<0)return!1;if(y.forceRender(),b(),c.emit("data:change",{type:"remove",id:L}),F>=0){let Z=S.totalItems;if(Z>0)y.getRenderedElement(Math.min(F,Z-1))?.focus()}return c.emit("remove:end",{id:L}),!0}let oe=B.cloneNode(!0);oe.style.pointerEvents="none",oe.style.overflow="hidden",oe.removeAttribute("data-index"),oe.removeAttribute("data-id"),oe.removeAttribute("id"),oe.removeAttribute("aria-selected"),oe.classList.remove(`${v.classPrefix}-item--selected`);let _=v.axis.primary==="x"?"scrollLeft":"scrollTop",Y=I.viewport[_];if(y.removeItemById(L)<0)return!1;y.forceRender(),b(),c.emit("data:change",{type:"remove",id:L});let P=Y-I.viewport[_];oe.style.zIndex="1",I.content.appendChild(oe);let O=s,g={duration:O.duration,easing:O.easing},C=[],j=Math.round(D-P);C.push(oe.animate([{transform:`${d}(${j}px) scaleY(1)`,opacity:1,transformOrigin:H},{transform:`${d}(${Math.round(D)}px) scaleY(0)`,opacity:0,transformOrigin:H}],g));let J=P>0,k=I.content.children;for(let N=0;N<k.length;N++){let Z=k[N];if(Z===oe)continue;let m=parseInt(Z.dataset?.index??"-1",10);if(m<0||!J&&m<T)continue;let E=f.getOffset(m),x=m>=T?Math.round(E+q-P):Math.round(E-P),z=Math.round(E);if(x===z)continue;C.push(Z.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],g))}let h=!1,W=()=>{if(h)return;h=!0,i=null,oe.remove();for(let N of C)if(N.playState!=="finished")N.cancel();if(F>=0){let N=S.totalItems;if(N>0)y.getRenderedElement(Math.min(F,N-1))?.focus()}c.emit("remove:end",{id:L})};return i=W,Promise.all(C.map((N)=>N.finished)).then(W,W),setTimeout(W,O.duration+50),!0},A=(L)=>{if(L.length===0)return 0;if(L.length===1)return u(L[0])?1:0;if(i)i();if(l)l();let a=typeof document<"u"?document.activeElement:null,F=a&&I.content.contains(a)?parseInt(a.dataset?.index??"-1",10):-1,V=[];for(let h of L){let W=M(h);V.push({id:h,layoutIndex:W.layoutIndex,el:W.el,size:W.layoutIndex>=0?f.getSize(W.layoutIndex):0,offset:W.layoutIndex>=0?f.getOffset(W.layoutIndex):0})}V.sort((h,W)=>W.layoutIndex-h.layoutIndex);let T=[];for(let h of V){if(!h.el||h.layoutIndex<0)continue;let W=h.el.cloneNode(!0);W.style.pointerEvents="none",W.style.overflow="hidden",W.removeAttribute("data-index"),W.removeAttribute("data-id"),W.removeAttribute("id"),W.removeAttribute("aria-selected"),W.classList.remove(`${v.classPrefix}-item--selected`),T.push({clone:W,offset:h.offset,size:h.size,layoutIndex:h.layoutIndex})}let B=new Map,q=I.content.children;for(let h=0;h<q.length;h++){let W=q[h],N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(N&&Z>=0)B.set(N,f.getOffset(Z))}let D=v.axis.primary==="x"?"scrollLeft":"scrollTop",oe=I.viewport[D],_=[];for(let h of V)if(y.removeItemById(h.id)>=0)_.push(h.id);if(_.length===0)return 0;y.forceRender(),b();for(let h of _)c.emit("data:change",{type:"remove",id:h});if(T.length===0){if(F>=0){let h=S.totalItems;if(h>0)y.getRenderedElement(Math.min(F,h-1))?.focus()}for(let h of _)c.emit("remove:end",{id:h});return _.length}let Y=oe-I.viewport[D],U=s,P={duration:U.duration,easing:U.easing},O=[];T.sort((h,W)=>h.layoutIndex-W.layoutIndex);let g=0;for(let h of T){h.clone.style.zIndex="1",I.content.appendChild(h.clone);let W=Math.round(h.offset-Y),N=Math.round(h.offset-g);O.push(h.clone.animate([{transform:`${d}(${W}px) scaleY(1)`,opacity:1,transformOrigin:H},{transform:`${d}(${N}px) scaleY(0)`,opacity:0,transformOrigin:H}],P)),g+=h.size}let C=new Set(T.map((h)=>h.clone)),j=I.content.children;for(let h=0;h<j.length;h++){let W=j[h];if(C.has(W))continue;let N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(!N||Z<0)continue;let m=B.get(N);if(m===void 0)continue;let E=f.getOffset(Z),x=Math.round(m-Y),z=Math.round(E);if(x===z)continue;O.push(W.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],P))}let J=!1,k=()=>{if(J)return;J=!0,i=null;for(let{clone:h}of T)h.remove();for(let h of O)if(h.playState!=="finished")h.cancel();if(F>=0){let h=S.totalItems;if(h>0)y.getRenderedElement(Math.min(F,h-1))?.focus()}for(let h of _)c.emit("remove:end",{id:h})};return i=k,Promise.all(O.map((h)=>h.finished)).then(k,k),setTimeout(k,U.duration+50),_.length};y.registerMethod("removeItem",u),y.registerMethod("removeItems",A)}if(r){let u=(A,L)=>{if(l)l();if(i)i();let a=L??0,F=new Map,V=I.content.children;for(let h=0;h<V.length;h++){let W=V[h],N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(N&&Z>=0)F.set(N,f.getOffset(Z))}let T=v.axis.primary==="x"?"scrollLeft":"scrollTop",B=v.axis.primary==="x"?"scrollWidth":"scrollHeight",q=v.axis.primary==="x"?"clientWidth":"clientHeight",D=I.viewport[T],oe=I.viewport[B]-I.viewport[q],_=D>=oe-1;y.insertItemAt(A,a),y.forceRender(),b(),c.emit("data:change",{type:"insert",id:A.id});let Y=I.viewport[T]-D,U=p(a);if(v.reverse&&Y===0&&_){I.viewport[T]=I.viewport[B]-I.viewport[q];let h=I.viewport[T];if(S.prevScrollPosition=S.scrollPosition,S.scrollPosition=h,Y=h-D,Y>0)y.forceRender(),b()}let P=y.getRenderedElement(U),O=r,g={duration:O.duration,easing:O.easing},C=[];if(P){let h=f.getOffset(U);C.push(P.animate([{transform:`${d}(${Math.round(h)}px) scaleY(0)`,opacity:0,transformOrigin:H},{transform:`${d}(${Math.round(h)}px) scaleY(1)`,opacity:1,transformOrigin:H}],g))}let j=I.content.children;for(let h=0;h<j.length;h++){let W=j[h];if(W===P)continue;let N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(!N||Z<0)continue;let m=F.get(N);if(m===void 0)continue;let E=f.getOffset(Z),x=Math.round(m+Y),z=Math.round(E);if(x===z)continue;C.push(W.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],g))}if(C.length===0)return;let J=!1,k=()=>{if(J)return;J=!0,l=null;for(let h of C)if(h.playState!=="finished")h.cancel()};l=k,Promise.all(C.map((h)=>h.finished)).then(k,k),setTimeout(k,O.duration+50)};y.registerMethod("insertItem",u)}},destroy(){if(i)i();if(l)l()}}}function Ht(t){let e=t?.gap??0,n=null,o=null,s,r,i,l,y=new Map,f=new Set,c=new WeakMap,v=0,I=!1,S=!1,H=!1,d=2;function w(a){return y.get(a)??l}function p(a){return y.has(a)&&!f.has(a)}function M(a){if(!o||s.destroyed)return;if(!y.has(a))return;f.add(a),o.forceRender()}function b(){return Math.max(0,o.sizeCache.getTotalSize()+o.config.mainAxisPadding-s.containerSize)}function u(){let a=b();return a>0&&s.scrollPosition>=a-d}function A(){let a=b();if(a>s.scrollPosition)o.scrollTo(a)}function L(){o.updateContentSize(o.sizeCache.getTotalSize())}return{name:"autosize",priority:5,setup(a){if(o=a,s=a.getState(),r=a.config.axis.primary==="x",i=r?"width":"height",e===0)e=a.config.gap;if(l=typeof a.rawSizeSpec==="function"?a.rawSizeSpec(0)+e:a.rawSizeSpec+e,a.setSizeConfig(w),e>0){let q=a.sizeCache.getTotalSize;a.sizeCache.getTotalSize=()=>{let D=q();return D>0?D-e:0}}n=new ResizeObserver((q)=>{if(s.destroyed||!o)return;let D=!1,oe=a.sizeCache.indexAtOffset(s.scrollPosition);for(let O of q){let g=O.target,C=c.get(g);if(C===void 0)continue;if(g.getAttribute("data-index")!==String(C)){n.unobserve(g);continue}if(p(C))continue;let j=O.borderBoxSize[0];if(!j)continue;let J=r?j.inlineSize:j.blockSize;if(J<=0)continue;let k=J+e,h=y.has(C),W=y.get(C)??l;if(y.set(C,k),f.delete(C),!h||k!==W)D=!0;if(C<oe&&k!==W)v+=k-W;n.unobserve(g),g.style[i]=`${J}px`}if(!D)return;let _=u();if(a.rebuildSizeCache(),v)a.scrollTo(s.scrollPosition+v),v=0;let Y=s.scrollDirection!==0,U=s.totalItems>0&&s.prevRangeEnd>=s.totalItems-1,P=S&&!H;if(P||_||U||!Y){if(L(),I=!1,P||_)A()}else I=!0;a.forceRender()}),a.setScrollToIndexFn((q,D,oe,_,Y)=>{let U=q>=s.totalItems-1&&D==="end";if(S=U,H=!1,!U)return!1;let P=a.config.mainAxisPadding,O=()=>{let g=a.sizeCache.getTotalSize();return Math.max(0,g+P-s.containerSize)};if(oe==="smooth")H=!0,a.smoothScrollTo(O,_??300,Y,()=>{H=!1});else a.scrollTo(O())});let F=()=>{S=!1},V=a.dom.viewport;V.addEventListener("wheel",F,{passive:!0}),V.addEventListener("touchstart",F,{passive:!0}),a.registerDestroyHandler(()=>{V.removeEventListener("wheel",F),V.removeEventListener("touchstart",F)});let T=a.dom.content,B=(q)=>{let D=q.target;if(!D||D===T)return;let oe=D.closest("[data-index]");if(!oe||oe.parentNode!==T)return;let _=Number(oe.getAttribute("data-index"));if(p(_))M(_)};T.addEventListener("load",B,!0),T.addEventListener("error",B,!0),a.registerDestroyHandler(()=>{T.removeEventListener("load",B,!0),T.removeEventListener("error",B,!0)}),a.registerMethod("isMeasured",p),a.registerMethod("setMeasuredSize",(q,D)=>{y.set(q,D)}),a.registerMethod("getMeasuredCount",()=>y.size),a.registerDestroyHandler(()=>{if(n)n.disconnect(),n=null})},hooks:{onCommit(a){if(!n||!o)return;for(let F=0;F<a.visibleCount;F++){let V=a.visibleIndices[F];if(p(V))continue;let T=o.getRenderedElement(V);if(!T)continue;T.style[i]="",c.set(T,V),n.observe(T)}},onIdle(){if(!o||!I)return;let a=u();if(L(),I=!1,a)A(),o.forceRender()}},destroy(){if(n)n.disconnect(),n=null;y.clear(),f.clear(),S=!1,H=!1,o=null}}}var $n=(t)=>{let e=Math.max(1,Math.floor(t.columns)),n=t.gap??0,o=t.containerSize,s=t.crossOffset??0,r=t.mainOffset??0,i=0,l=[],y=()=>{let p=(e-1)*n;i=Math.max(0,(o-p)/e),l=Array(e);let M=i+n;for(let b=0;b<e;b++)l[b]=s+b*M};y();let f=[],c=0,v=[],I=(p,M)=>{if(p<=0)return c=0,f=[],[];let b=Array(e).fill(r),u=Array(e);for(let a=0;a<e;a++)u[a]=[];let A=Array(p);for(let a=0;a<p;a++){let F=0,V=b[0];for(let q=1;q<e;q++){let D=b[q];if(D<V)V=D,F=q}let T=M(a),B=b[F];A[a]={index:a,x:l[F],y:B,lane:F,size:T,crossSize:i},u[F].push(a),b[F]=B+T+n}f=u;let L=0;for(let a=0;a<e;a++){let F=b[a],V=F>0?F-n:0;if(V>L)L=V}return c=L,A},S=(p)=>{if(p.length===0)return c;if(c)return c;let M=Array(e).fill(0);for(let u of p){let A=u.y+u.size,L=M[u.lane];if(A>L)M[u.lane]=A}let b=0;for(let u=0;u<e;u++)if(M[u]>b)b=M[u];return b},H=(p,M,b)=>{if(p.length===0||b<=M)return v.length=0,v;if(f.length===0||f.length!==e)return d(p,M,b);v.length=0;for(let u=0;u<e;u++){let A=f[u],L=A.length;if(!L)continue;let a=0,F=L;while(a<F){let V=a+F>>>1,T=p[A[V]];if(T.y+T.size<=M)a=V+1;else F=V}for(let V=a;V<L;V++){let T=p[A[V]];if(T.y>=b)break;v.push(T)}}return v},d=(p,M,b)=>{v.length=0;for(let u of p)if(u.y+u.size>M&&u.y<b)v.push(u);return v};return{get columns(){return e},get gap(){return n},get containerSize(){return o},update:(p)=>{let M=!1;if(p.columns!==void 0){let b=Math.max(1,Math.floor(p.columns));if(b!==e)e=b,M=!0}if(p.gap!==void 0&&p.gap!==n)n=p.gap,M=!0;if(p.containerSize!==void 0&&p.containerSize!==o)o=p.containerSize,M=!0;if(p.crossOffset!==void 0&&p.crossOffset!==s)s=p.crossOffset,M=!0;if(p.mainOffset!==void 0&&p.mainOffset!==r)r=p.mainOffset,M=!0;if(M)y()},calculateLayout:I,getTotalSize:S,getVisibleItems:H}};var On=(t,e,n)=>{let o=Array.from(e).sort((i,l)=>i-l);if(o.length<=1)return;let s=[];for(let i=0;i<o.length;i++){let l=n(o[i]);if(l)s.push(l)}if(s.length<=1)return;let r=t.firstChild;for(let i=0;i<s.length;i++){let l=s[i];if(l===r)r=r.nextSibling;else t.insertBefore(l,r)}};var Po=(t=200)=>{let e=[];return{acquire:()=>{let r=e.pop();if(r)return r;let i=document.createElement("div");return i.setAttribute("role","option"),i},release:(r)=>{if(r.remove(),e.length<t)r.className="",r.textContent="",r.removeAttribute("style"),r.removeAttribute("data-index"),r.removeAttribute("data-id"),r.removeAttribute("data-lane"),e.push(r)},clear:()=>{e.length=0}}},wo=1,Nn=(t,e,n,o=!1,s,r,i,l,y=()=>0)=>{let f=Po(),c=new Map,v=new Set,I=0,S="",H=-1,d={selected:!1,focused:!1},w=(_,Y)=>(d.selected=_,d.focused=Y,d),p=`${n}-item ${n}-masonry-item`,M=`${n}-group-header`,b=`${n}-item--selected`,u=`${n}-item--focused`,A=(_,Y)=>{if(typeof Y==="string")_.innerHTML=Y;else _.replaceChildren(Y);Ge(_)},L=(_,Y,U)=>{_.classList.toggle(b,Y),_.classList.toggle(u,U)},a=(_,Y)=>{let U=Math.round(Y.y-y());if(o)_.style.transform=`translate(${U}px, ${Math.round(Y.x)}px)`;else _.style.transform=`translate(${Math.round(Y.x)}px, ${U}px)`},F=(_,Y)=>{if(o)_.style.width=`${Y.size}px`,_.style.height=`${Y.crossSize}px`;else _.style.width=`${Y.crossSize}px`,_.style.height=`${Y.size}px`},V=(_,Y,U,P,O)=>{let g=f.acquire(),C=Y.__groupHeader,j=w(P,O);if(g.className=C?M:p,g.dataset.index=String(_),g.dataset.id=String(Y.id),g.dataset.lane=String(U.lane),C)g.setAttribute("role","presentation"),g.removeAttribute("aria-selected"),g.removeAttribute("aria-setsize"),g.removeAttribute("aria-posinset"),g.removeAttribute("id");else if(l===!0){if(g.setAttribute("role","option"),g.ariaSelected=String(P),r)g.id=`${r}-item-${_}`;if(s){let k=s();if(k!==H)H=k,S=String(k);g.setAttribute("aria-setsize",S);let h=i?i(_):_+1;g.setAttribute("aria-posinset",String(h))}}else if(g.setAttribute("role","listitem"),g.removeAttribute("aria-selected"),s){let k=s();if(k!==H)H=k,S=String(k);g.setAttribute("aria-setsize",S);let h=i?i(_):_+1;g.setAttribute("aria-posinset",String(h))}F(g,U);let J=e(Y,_,j);return A(g,J),L(g,P,O),a(g,U),{element:g,lastItem:Y,lastSelected:P,lastFocused:O,lastY:U.y-y(),lastX:U.x,lastSize:U.size,lastCrossSize:U.crossSize,lastSeenFrame:I}},T=(_,Y,U,P)=>{I++,v.clear();for(let g=0;g<Y.length;g++)v.add(Y[g].index);let O=null;for(let g=0;g<Y.length;g++){let C=Y[g],j=C.index,J=_(j);if(!J)continue;let k=U.has(J.id),h=j===P,W=c.get(j);if(W){let N=W.lastItem!==J,Z=W.lastSelected!==k,m=W.lastFocused!==h,E=W.lastY!==C.y-y()||W.lastX!==C.x,x=W.lastSize!==C.size||W.lastCrossSize!==C.crossSize;if(N){let z=w(k,h),X=e(J,j,z);if(A(W.element,X),W.element.dataset.id=String(J.id),W.lastItem=J,!J.__groupHeader){let te=i?i(j):j+1;W.element.setAttribute("aria-posinset",String(te))}}if(N||Z||m)L(W.element,k,h),W.element.ariaSelected=String(k),W.lastSelected=k,W.lastFocused=h;if(x)F(W.element,C),W.lastSize=C.size,W.lastCrossSize=C.crossSize;if(E)a(W.element,C),W.lastY=C.y-y(),W.lastX=C.x}else{let N=V(j,J,C,k,h);if(!O)O=document.createDocumentFragment();O.appendChild(N.element),c.set(j,N)}}if(O)t.appendChild(O);for(let[g,C]of c)if(v.has(g))C.lastSeenFrame=I;else if(I-C.lastSeenFrame>wo)f.release(C.element),c.delete(g)},B=()=>{for(let _ of c.values())f.release(_.element);c.clear(),t.innerHTML=""};return{render:T,getElement:(_)=>c.get(_)?.element,updateItemClasses:(_,Y,U)=>{let P=c.get(_);if(!P)return;let O=P.lastSelected!==Y,g=P.lastFocused!==U;if(O||g)L(P.element,Y,U),P.lastSelected=Y,P.lastFocused=U},sortDOM:()=>{On(t,c.keys(),(_)=>c.get(_)?.element)},clear:B,destroy:()=>{B(),f.clear()}}};var Ao=100,zo=new Set;function kt(t){if(!t.columns||t.columns<1)throw Error("[vlist] masonry: columns must be >= 1");let e,n=null,o,s=null,r,i,l,y=[],f=-1,c=-1,v=!0,I=-1,S=-1,H=0,d=0,w=0,p=0,M={columnWidth:0,columns:0,gap:0,containerWidth:0},b=[],u=(m)=>b[m],A=null,L=null,a=!1;function F(){if(a||!s)return;a=!0,A=s.getMethod("_getSelectedIds")??null,L=s.getMethod("_getFocusedIndex")??null}let V=[],T=new Int32Array(0),B=[],q=null,D=null,oe=null,_=null,Y=!1,U=!0;function P(){if(Y||!s)return;if(q=s.getMethod("_getItemLane")??null,D=s.getMethod("_getItemY")??null,oe=s.getMethod("_getItemH")??null,_=s.getMethod("_isGroupHeader")??null,q||_)Y=!0}function O(){P();let m=e.columns,E=!!q;if(E){let x=o.totalItems;V=Array(m);for(let z=0;z<m;z++)V[z]=[];if(T.length<x)T=new Int32Array(x);for(let z=0;z<x;z++){if(_?.(z))continue;let X=q(z);if(X<0||X>=m)continue;T[z]=V[X].length,V[X].push(z)}}else{let x=y.length;V=Array(m);for(let z=0;z<m;z++)V[z]=[];if(T.length<x)T=new Int32Array(x);for(let z=0;z<x;z++){let X=y[z];T[z]=V[X.lane].length,V[X.lane].push(z)}}B=Array(m);for(let x=0;x<m;x++){let z=V[x],X=new Float64Array(z.length);for(let se=0;se<z.length;se++){let te=z[se];if(E&&D&&oe){let ee=D(te),ie=oe(te);X[se]=ee>=0?ee+(ie>0?ie*0.5:0):0}else{let ee=y[te];X[se]=ee.y+ee.size*0.5}}B[x]=X}}function g(m,E){let x=m.length;if(!x)return-1;let z=0,X=x-1;while(z<X){let se=z+X>>1;if(m[se]<E)z=se+1;else X=se}if(z>0&&Math.abs(m[z-1]-E)<=Math.abs(m[z]-E))return z-1;return z}function C(m,E,x){if(U)O(),U=!1;let z=!!q,X,se;if(z){if(_?.(m))return m;if(X=q(m),X<0)return m;se=T[m]}else{let ne=y[m];if(!ne)return m;X=ne.lane,se=T[m]}let te=e.columns,ee=V[X];switch(r?E==="ArrowDown"?"ArrowRight":E==="ArrowUp"?"ArrowLeft":E==="ArrowRight"?"ArrowDown":E==="ArrowLeft"?"ArrowUp":E:E){case"ArrowDown":if(se+1<ee.length)return ee[se+1];return m;case"ArrowUp":if(se>0)return ee[se-1];return m;case"ArrowRight":{if(X>=te-1)return m;let ne=X+1,ve=V[ne];if(!ve.length)return m;let be=g(B[ne],B[X]?.[se]??0);return be>=0?ve[be]:m}case"ArrowLeft":{if(X<=0)return m;let ne=X-1,ve=V[ne];if(!ve.length)return m;let be=g(B[ne],B[X]?.[se]??0);return be>=0?ve[be]:m}case"Home":return 0;case"End":{let ne=V[te-1];return ne.length>0?ne[ne.length-1]:m}case"PageDown":{let ne=o.containerSize,ve=z?null:y[m],be=ve&&ve.size>0?ve.size:150,de=Math.max(1,Math.floor(ne/be)),R=Math.min(se+de,ee.length-1);return ee[R]}case"PageUp":{let ne=o.containerSize,ve=z?null:y[m],be=ve&&ve.size>0?ve.size:150,de=Math.max(1,Math.floor(ne/be)),R=Math.max(0,se-de);return ee[R]}}return m}let j=null;function J(){if(t.size)return(m)=>t.size(m,M);if(j!==null&&typeof j==="function")return(m)=>j(m,M);return(m)=>s.sizeCache.getSize(m)}function k(){let m=e.columns,E=e.gap;M.containerWidth=e.containerSize,M.columns=m,M.gap=E,M.columnWidth=Math.max(0,(e.containerSize-(m-1)*E)/m)}function h(){if(!s)return;k();let m=o.totalItems;y=e.calculateLayout(m,J()),I=m,U=!0,W()}function W(){if(!s)return;let m=e.getTotalSize(y)+p;if(m===S)return;S=m,s.updateContentSize(m)}function N(){if(o.destroyed||!s||!n)return;if(o.totalItems!==I)h();if(v)S=-1,W();F();let m=o.scrollPosition,E=o.containerSize;if(!v&&m===f&&E===c)return;if(f=m,c=E,v=!1,E<=0||y.length===0)return;let x=Math.max(0,m-l),z=m+E+l,X=e.getVisibleItems(y,x,z),se=A?.()??zo,te=L?.()??-1;b=s.getItems(),n.render(u,X,se,te);let ee=X.length,ie=ee>0?X[0].index:0,ne=ee>0?X[ee-1].index:0;o.prevRangeStart=ie,o.prevRangeEnd=ne,o.renderPending=!1;let ve=Math.min(ee,o.capacity);o.visibleCount=ve,o.startIndex=ie;for(let be=0;be<ve;be++){let de=X[be];o.visibleIndices[be]=de.index,o.visibleOffsets[be]=de.y,o.visibleSizes[be]=de.size}}function Z(){if(o.destroyed)return;S=-1,h(),o.prevRangeStart=-1,o.prevRangeEnd=-1,o.renderPending=!0,v=!0,N()}return{name:"masonry",priority:10,conflicts:["grid","table"],setup(m){if(s=m,o=m.getState(),j=m.rawSizeSpec,r=m.config.axis.primary==="x",i=m.config.classPrefix,l=m.config.overscan*Ao,m.config.reverse)throw Error("[vlist] masonry: cannot be combined with reverse mode");H=m.config.crossAxisPadding,d=m.config.crossPadStart,w=m.config.startPadding,p=m.config.endPadding;let E=o.crossSize-H;e=$n({columns:t.columns,gap:t.gap??0,containerSize:E,crossOffset:d,mainOffset:w}),n=Nn(m.dom.content,m.template,i,r,()=>o.totalItems,void 0,void 0,void 0,()=>o.baseOffset),m.dom.root.classList.add(`${i}--masonry`),m.setRenderFn(N,Z),h(),m.registerMethod("getMasonryLayout",()=>e),m.registerMethod("updateMasonry",(x)=>{if(x.columns!==void 0&&x.columns<1)throw Error("[vlist] updateMasonry: columns must be >= 1");if(x.gap!==void 0&&x.gap<0)throw Error("[vlist] updateMasonry: gap must be >= 0");let z={};if(x.columns!==void 0)z.columns=x.columns;if(x.gap!==void 0)z.gap=x.gap;e.update(z),n?.clear(),Z()}),m.registerMethod("scrollToIndex",(x,z="start")=>{let X=y[x];if(!X)return;let se=typeof z==="string"?z:z.align??"start",te=typeof z==="object"?z.behavior:void 0,ee=typeof z==="object"?z.duration:void 0,ie=o.containerSize,ne=e.getTotalSize(y)+p,ve=Math.max(0,ne-ie),be=X.y;if(se==="center")be=X.y-ie/2+X.size/2;else if(se==="end"){if(be=X.y-ie+X.size,x>=o.totalItems-1&&X.y+X.size>ve)be=ve}if(be=Math.max(0,Math.min(be,ve)),te==="smooth"&&ee&&ee>0)m.smoothScrollTo(be,ee);else m.scrollTo(be)}),m.registerMethod("_scrollItemIntoView",(x)=>{let z=y[x];if(!z)return;let X=o.scrollPosition,se=o.containerSize,te=e.getTotalSize(y)+p,ee=Math.max(0,te-se),ie=z.y,ne=ie+z.size;if(ie-w<X)m.scrollTo(Math.max(0,ie-w));else if(ne+p>X+se){let ve=V[e.columns-1];if(ve&&ve.length>0&&x===ve[ve.length-1]&&ie>=ee)m.scrollTo(ee);else m.scrollTo(Math.min(ne+p-se,ee))}}),m.setNavConfig({total:()=>o.totalItems,navigate:C}),m.registerDestroyHandler(()=>{n?.destroy(),n=null,m.dom.root.classList.remove(`${i}--masonry`)})},hooks:{onResize(m,E){if(!e||!s)return;let x=o.crossSize-H;if(Math.abs(x-e.containerSize)<1)return;e.update({containerSize:x}),n?.clear(),Z()},onIdle(){n?.sortDOM()}},destroy(){n?.destroy(),n=null,y=[],s=null}}}var Gn=(t={})=>{let{chunkSize:e=100,maxCachedItems:n=5000,evictionBuffer:o=200,onEvict:s}=t,r=new Map,i=0,l=0,y=(U)=>{let P=r.get(U);if(!P)P={items:Array(e),count:0,lastAccess:Date.now()},r.set(U,P);else P.lastAccess=Date.now();return P},f=(U)=>Math.floor(U/e),c=(U)=>U%e,v=()=>i,I=(U)=>{i=U},S=(U)=>{if(U<0||U>=i)return;let P=f(U),O=r.get(P);if(!O)return;return O.items[c(U)]},H=(U)=>{if(U<0||U>=i)return!1;let P=f(U),O=r.get(P);if(!O)return!1;return O.items[c(U)]!==void 0},d=(U,P)=>{let O=f(U),g=y(O),C=c(U),j=g.items[C]===void 0;if(g.items[C]=P,j)g.count++,l++;if(U>=i)i=U+1},w=(U,P)=>{for(let O=0;O<P.length;O++){let g=P[O];if(g!==void 0)d(U+O,g)}},p=(U,P)=>{if(U<0||U>i)return;let O=f(U),g=Array.from(r.keys()).filter((h)=>h>=O).sort((h,W)=>h-W),C=[];for(let h of g){let W=r.get(h),N=h*e;for(let Z=0;Z<e;Z++){if(W.items[Z]===void 0)continue;let m=N+Z;if(m<U)continue;C.push({oldIndex:m,item:W.items[Z]})}}for(let{oldIndex:h}of C){let W=f(h),N=r.get(W);if(!N)continue;let Z=c(h);if(N.items[Z]!==void 0){if(N.items[Z]=void 0,N.count--,l--,N.count===0)r.delete(W)}}i++;for(let{oldIndex:h,item:W}of C){let N=h+1,Z=f(N),m=y(Z),E=c(N);m.items[E]=W,m.count++,l++}let j=f(U),J=y(j),k=c(U);J.items[k]=P,J.count++,l++},M=(U)=>{if(U<0||U>=i)return!1;let P=f(U),O=r.get(P),g=c(U);if(!(O!==void 0&&O.items[g]!==void 0))return!1;let j=P,J=Array.from(r.keys()).filter((h)=>h>=j).sort((h,W)=>h-W),k=[];for(let h of J){let W=r.get(h),N=h*e;for(let Z=0;Z<e;Z++){if(W.items[Z]===void 0)continue;let m=N+Z;if(m<=U)continue;k.push({oldIndex:m,item:W.items[Z]})}}if(O.items[g]=void 0,O.count--,l--,O.count===0)r.delete(P);for(let{oldIndex:h}of k){let W=f(h),N=r.get(W);if(!N)continue;let Z=c(h);if(N.items[Z]!==void 0){if(N.items[Z]=void 0,N.count--,l--,N.count===0)r.delete(W)}}for(let{oldIndex:h,item:W}of k){let N=h-1,Z=f(N),m=y(Z),E=c(N);m.items[E]=W,m.count++,l++}return i--,!0},b=(U,P)=>{let O=[];for(let g=U;g<=P&&g<i;g++)O.push(S(g));return O},u=(U,P)=>{for(let O=U;O<=P&&O<i;O++)if(!H(O))return!1;return!0},A=()=>{let U=[],P=null,O=Array.from(r.keys()).sort((g,C)=>g-C);for(let g of O){let C=r.get(g);if(!C)continue;let j=g*e;for(let J=0;J<e;J++){let k=j+J;if(k>=i)break;if(C.items[J]!==void 0)if(P===null)P={start:k,end:k};else if(k===P.end+1)P.end=k;else U.push(P),P={start:k,end:k};else if(P!==null)U.push(P),P=null}}if(P!==null)U.push(P);return U},L=(U,P)=>{let O=[],g=null;for(let C=U;C<=P&&C<i;C++)if(!H(C))if(g===null)g={start:C,end:C};else g.end=C;else if(g!==null)O.push(g),g=null;if(g!==null)O.push(g);return O},a=(U)=>r.has(U),F=(U)=>{let P=r.get(U);if(!P)return!1;let O=U*e,g=Math.min(e,i-O);return P.count>=g},V=(U)=>{let P=r.get(U);if(P)P.lastAccess=Date.now()},T=(U,P)=>{if(U>P||r.size===0)return;let O=Date.now(),g=f(Math.max(0,U)),C=f(Math.min(i-1,P));for(let j=g;j<=C;j++){let J=r.get(j);if(J)J.lastAccess=O}},B=(U,P)=>{if(l<=n)return 0;let O=Math.max(0,U-o),g=Math.min(i-1,P+o),C=f(O),j=f(g),J=0,k=[];for(let[h,W]of r)if(h<C||h>j)J+=W.count,k.push(h),l-=W.count,r.delete(h);if(J>0&&s)s(J,k);return J},q=()=>{if(l<=n)return 0;let U=Array.from(r.entries()).sort(([,g],[,C])=>g.lastAccess-C.lastAccess),P=0,O=[];for(let[g,C]of U){if(l<=n)break;P+=C.count,l-=C.count,O.push(g),r.delete(g)}if(P>0&&s)s(P,O);return P},D=()=>({totalItems:i,cachedItems:l,cachedChunks:r.size,chunkSize:e,maxCachedItems:n,memoryEfficiency:i>0?1-l/i:1}),oe=()=>l,_=()=>{r.clear(),l=0};return{chunkSize:e,maxCachedItems:n,getTotal:v,setTotal:I,get:S,has:H,set:d,setRange:w,insert:p,delete:M,getRange:b,isRangeLoaded:u,getLoadedRanges:A,findUnloadedRanges:L,getChunkIndex:f,isChunkLoaded:a,isChunkFullyLoaded:F,touchChunk:V,touchChunksForRange:T,evictDistant:B,evictToLimit:q,getStats:D,getCachedCount:oe,clear:_,reset:()=>{_(),i=0}}};var Bn=(t={})=>{let{maskCharacter:e=fn,maxSampleSize:n=gn}=t,o=[],s=!1,r=(c)=>{if(s||c.length===0)return;let v=Math.min(c.length,n);for(let I=0;I<v;I++){let S=c[I];if(!S||typeof S!=="object")continue;let H={},d=!1;for(let[w,p]of Object.entries(S)){if(w.startsWith("_")||w==="id")continue;H[w]=String(p??"").length,d=!0}if(d)o.push(H)}s=!0},i=()=>s,l=(c)=>{let v={id:`${Ve}${c}`,[xt]:!0,_index:c};if(o.length===0)return v.label=e.repeat(12),v;let I=o[c%o.length];for(let[S,H]of Object.entries(I))v[S]=e.repeat(Math.max(1,H));return v};return{analyzeStructure:r,hasAnalyzedStructure:i,generate:l,generateRange:(c,v)=>{let I=[];for(let S=c;S<=v;S++)I.push(l(S));return I},clear:()=>{o=[],s=!1}}},ft=(t)=>{if(!t||typeof t!=="object")return!1;return t[xt]===!0};var Ro=50,Wn=(t={})=>{let{adapter:e,initialItems:n,initialTotal:o,storage:s,placeholder:r,pageSize:i=Ro,maxConcurrent:l=0,onStateChange:y,onDataChange:f,onItemsLoaded:c,onItemsEvicted:v,onLoadError:I}=t,S=Gn({...s,onEvict:(de,R)=>{v?.(de),B(),T()}}),H=null,d=()=>{if(!H)H=Bn(r);return H},w=new Map,p=!1,M,b=!0,u,A,L=[],a=0,F=new Map,V=()=>{for(let de of F.values())de[1].abort();F.clear()},T=()=>{y?.(g())},B=()=>{f?.()},q=()=>{w.clear();let de=S.getLoadedRanges();for(let R of de)for(let le=R.start;le<=R.end;le++){let re=S.get(le);if(re&&!ft(re))w.set(re.id,le)}},D=(de,R)=>{if(!ft(R))w.set(R.id,de)},oe=(de)=>{w.delete(de)},_=(de,R)=>`${de}-${R}`,Y=()=>S.getTotal(),U=()=>S.getCachedCount(),P=()=>p,O=()=>b,g=()=>({total:S.getTotal(),cached:S.getCachedCount(),isLoading:p,pendingRanges:L,error:M,hasMore:b,cursor:u}),C=()=>S,j=()=>d(),J=(de)=>{let R=S.get(de);if(R!==void 0)return R;if(de>=0&&de<S.getTotal())return d().generate(de);return},k=(de)=>{let R=w.get(de);if(R===void 0)return;return S.get(R)},h=(de)=>w.get(de)??-1,W=(de)=>{let R=S.get(de);return R!==void 0&&!ft(R)},N=(de,R)=>{let le=[],re=S.getTotal();S.touchChunksForRange(de,Math.min(R,re-1));for(let Se=de;Se<=R&&Se<re;Se++){let Me=S.get(Se);if(Me!==void 0)le.push(Me);else le.push(d().generate(Se))}return le},Z=(de)=>{S.setTotal(de),b=S.getCachedCount()<de,B(),T()},m=(de,R=0,le)=>{if(e&&de.length>0){let re=d();if(!re.hasAnalyzedStructure())re.analyzeStructure(de)}for(let re=0;re<de.length;re++){let Se=de[re];if(Se!==void 0){let Me=R+re;S.set(Me,Se),D(Me,Se)}}if(le!==void 0)S.setTotal(le);else if(R+de.length>S.getTotal())S.setTotal(R+de.length);if(S.getCachedCount()>=S.getTotal()&&S.getTotal()>0)b=!1;B(),T(),c?.(de,R,S.getTotal())},E=(de,R)=>{let le=S.get(de);if(!le)return!1;let re=le.id,Se={...le,...R};if(S.set(de,Se),R.id!==void 0&&R.id!==re)oe(re);return D(de,Se),B(),T(),!0},x=(de,R)=>{S.insert(R,de),q(),V(),B(),T()},z=(de)=>{let R=w.get(de);if(R===void 0)return!1;if(!S.delete(R))return!1;return q(),V(),B(),T(),!0},X=async(de,R)=>{if(!e)return;let le=S.chunkSize,re=Math.floor(de/le),Se=Math.floor(R/le),Me=le*2;for(let[Te,Pe]of F){let Re=Te.indexOf("-"),K=parseInt(Te.slice(0,Re),10);if(Math.abs(K-de)>Me)Pe[1].abort(),F.delete(Te)}let xe=[],Le=[];for(let Te=re;Te<=Se;Te++){let Pe=Te*le,Re=Pe+le-1,K=_(Pe,Re);if(S.isChunkFullyLoaded(Te))continue;let ue=F.get(K);if(ue)Le.push(ue[0]);else xe.push({start:Pe,end:Re})}if(xe.length===0){if(Le.length>0)await Promise.all(Le);return}if(l>0){let Te=F.size+xe.length;if(Te>l){let Pe=(de+R)/2,Re=Math.min(Te-l,F.size);while(Re>0){let he=null,ue=-1,pe=null;for(let[me,Ce]of F){let fe=me.indexOf("-"),Ie=parseInt(me.slice(0,fe),10),ze=parseInt(me.slice(fe+1),10),ce=Math.abs((Ie+ze)/2-Pe);if(ce>ue)ue=ce,he=me,pe=Ce[1]}if(he)pe.abort(),F.delete(he);Re--}let K=l-F.size;if(xe.length>K)xe.sort((he,ue)=>{let pe=Math.abs((he.start+he.end)/2-Pe),me=Math.abs((ue.start+ue.end)/2-Pe);return pe-me}),xe.length=Math.max(0,K)}}if(xe.length===0){if(Le.length>0)await Promise.all(Le);return}for(let Te of xe){let Pe=_(Te.start,Te.end),Re=new AbortController,K=(async()=>{L.push(Te),p=!0,M=void 0,T();try{let he=Te.end-Te.start+1,ue={offset:Te.start,limit:he,cursor:Te.start===A?u:void 0,signal:Re.signal},pe=await e.read(ue);if(m(pe.items,Te.start,pe.total),pe.cursor)u=pe.cursor,A=Te.start+pe.items.length;let me=Te.start+pe.items.length;if(me>=a){if(a=me,pe.hasMore!==void 0)b=pe.hasMore;else if(pe.total!==void 0)b=me<pe.total}}catch(he){if(he?.name==="AbortError")return;M=he instanceof Error?he:Error(String(he)),I?.(M,Te)}finally{F.delete(Pe);let he=L.findIndex((ue)=>ue.start===Te.start&&ue.end===Te.end);if(he>=0)L.splice(he,1);p=F.size>0,T()}})();F.set(Pe,[K,Re]),Le.push(K)}await Promise.all(Le)},se=async(de,R)=>{if(S.isRangeLoaded(de,R))return;await X(de,R)},te=async()=>{if(!e)return;await X(0,i-1)},ee=async()=>{if(!e||p||!b)return!1;let de=S.getCachedCount(),R=S.getTotal(),le=de,re=Math.min(le+i-1,R>0?R-1:le+i-1);if(le>=R&&R>0)return b=!1,!1;return await X(le,re),S.getCachedCount()>de},ie=async()=>{if(S.clear(),w.clear(),H)H.clear();V(),L=[],p=!1,u=void 0,A=void 0,b=!0,a=0,M=void 0,B(),T()},ne=(de,R)=>{if(S.evictDistant(de,R)>0)q()},ve=()=>{S.clear(),w.clear(),u=void 0,A=void 0,M=void 0,L=[],p=!1,B(),T()},be=()=>{if(S.reset(),w.clear(),H)H.clear();u=void 0,A=void 0,b=!0,a=0,M=void 0,L=[],p=!1,B(),T()};if(n&&n.length>0)m(n,0,o??n.length);else if(o!==void 0)S.setTotal(o),B(),T();return{getState:g,getTotal:Y,getCached:U,getIsLoading:P,getHasMore:O,getStorage:C,getPlaceholders:j,getItem:J,getItemById:k,getIndexById:h,isItemLoaded:W,getItemsInRange:N,setTotal:Z,setItems:m,updateItem:E,insertItem:x,removeItem:z,loadRange:X,ensureRange:se,loadInitial:te,loadMore:ee,reload:ie,evictDistant:ne,clear:ve,reset:be}};function _t(t){let{adapter:e,total:n,autoLoad:o=!0,storage:s}=t,r=t.loading?.cancelThreshold??rn,i=t.loading?.preloadThreshold??on,l=t.loading?.preloadAhead??nn,y=t.loading?.maxConcurrent??sn,f,c,v,I,S,H,d=null,w=null,p=null,M=0,b=!1,u=null,A=It,L=-1,a=-1,F=-1,V=-1,T=s?.chunkSize??lt,B=()=>{if(d=null,w!==null)clearTimeout(w),w=null},q=(g,C)=>f.ensureRange(g,C),D=(g,C=lt)=>{I.emit("load:start",{offset:g,limit:C})},oe=(g)=>{I.emit("error",{error:g,context:"ensureRange"})},_=()=>{d=null;let g={start:c.startIndex,end:c.startIndex+Math.max(0,c.visibleCount-1)};if(g.end<g.start)return;q(g.start,g.end).catch(oe)},Y=()=>{if(u!==null)clearTimeout(u),u=null},U=()=>{if(c.destroyed)return;let g=f.getTotal();if(c.visibleCount<=0||c.startIndex>=g)return;let C=Math.min(c.startIndex+c.visibleCount-1,g-1);if(C<c.startIndex)return;q(c.startIndex,C).catch(oe)},P=()=>{if(u!==null||c.destroyed)return;u=setTimeout(()=>{u=null,U()},A),A=Math.min(A*2,ln)},O=()=>{Y(),A=It};return{name:"data",priority:20,setup(g){c=g.getState(),v=g.sizeCache,I=g.emitter,S=g.dom,H=g.forceRender.bind(g);let C=null;g.setVirtualTotalFn(()=>C?.getTotal()??0),g.setGetIndexByIdFn((J)=>C?.getIndexById(J)??-1),f=C=Wn({adapter:e,...n!==void 0&&{initialTotal:n},pageSize:s?.chunkSize??lt,maxConcurrent:y,...s&&{storage:{...s.chunkSize!==void 0&&{chunkSize:s.chunkSize},...s.maxCachedItems!==void 0&&{maxCachedItems:s.maxCachedItems},...s.evictionBuffer!==void 0&&{evictionBuffer:s.evictionBuffer}}},onDataChange:()=>{if(c.initialized){let J=f.getTotal(),k=f.getCached();if(c.totalItems=J,J!==L||k!==a)L=J,a=k,v.rebuild(J);g.updateContentSize(v.getTotalSize()),g.renderIfNeeded()}},onItemsLoaded:(J)=>{if(O(),c.initialized)g.updateContentSize(v.getTotalSize()),H(),I.emit("load:end",{items:J,total:f.getTotal()})},onLoadError:(J)=>{if(I.emit("error",{error:J,context:"load"}),c.initialized)g.renderIfNeeded();P()}}),g.setGetItemFn((J)=>f.getItem(J)),g.setRemoveItemFn((J)=>{let k=f.getIndexById(J);if(k<0)return-1;if(!f.removeItem(J))return-1;return k}),g.setInsertItemFn((J,k)=>{f.insertItem(J,k)}),g.setUpdateItemFn((J,k)=>{let h=f.getIndexById(J);if(h<0)return!1;return f.updateItem(h,k)}),g.registerMethod("reload",async()=>{if(d=null,F=-1,V=-1,O(),g.forceRender(),await f.reload(),g.scrollTo(0),o)D(0),await f.loadInitial(),g.forceRender()}),g.registerMethod("loadVisibleRange",async()=>{d=null,g.forceRender();let J=f.getTotal();if(c.visibleCount>0&&c.startIndex<J){let k=Math.min(c.startIndex+c.visibleCount-1,J-1);D(c.startIndex,k-c.startIndex+1),await q(c.startIndex,k)}}),g.registerMethod("loadInitial",async()=>{D(0),await f.loadInitial(),g.forceRender()}),g.registerMethod("getTotal",()=>f.getTotal()),g.registerMethod("setTotal",(J)=>{f.setTotal(J)}),g.registerMethod("_getTotal",()=>f.getTotal()),g.registerMethod("_setTotal",(J)=>{f.setTotal(J)}),g.registerMethod("_cancelAutoLoad",()=>{b=!0}),g.registerMethod("_getLoadedItem",(J)=>f.getStorage().get(J)),g.registerMethod("_getItem",(J)=>f.getItem(J)),g.registerMethod("_getLoadedCount",()=>f.getCached()),I.on("load:start",()=>{S.root.setAttribute("aria-busy","true")}),I.on("load:end",()=>{S.root.removeAttribute("aria-busy")}),g.registerDestroyHandler(()=>{if(p!==null)clearTimeout(p),p=null;B(),Y()}),I.on("velocity:change",({velocity:J})=>{M=Math.abs(J)});let j=()=>{if(c.destroyed)return;O(),U(),_()};if(window.addEventListener("online",j),g.registerDestroyHandler(()=>{window.removeEventListener("online",j)}),o)queueMicrotask(()=>{if(b)return;D(0),f.loadInitial().catch((J)=>{I.emit("error",{error:J,context:"loadInitial"})})});else if(n!==void 0)f.setTotal(n)},hooks:{onAfterScroll(){if(c.destroyed)return;let g=c.startIndex+Math.max(0,c.visibleCount-1);if(M>r){if(w!==null)clearTimeout(w),w=null;d={start:c.startIndex,end:g};return}if(M>i){let J=Math.floor(c.startIndex/T),k=Math.floor(g/T);if(J!==F||k!==V){if(F=J,V=k,g>=c.startIndex)q(c.startIndex,g).catch(oe)}let h=c.startIndex,W=g,N=c.scrollDirection;if(N>0)W=Math.min(W+l,f.getTotal()-1);else if(N<0)h=Math.max(0,h-l);if(d={start:h,end:W},w!==null)clearTimeout(w);w=setTimeout(()=>{if(w=null,c.destroyed||!d)return;let{start:Z,end:m}=d;if(d=null,m>=Z)q(Z,m).catch(oe)},100);return}B();let C=Math.floor(c.startIndex/T),j=Math.floor(g/T);if(C!==F||j!==V){if(F=C,V=j,g>=c.startIndex)q(c.startIndex,g).catch(oe)}},onIdle(){if(c.destroyed)return;M=0,F=-1,V=-1,_(),B()},onResize(){if(c.destroyed)return;let g=f.getTotal();if(g<=0)return;if(c.visibleCount<=0||c.startIndex>=g)return;let C=Math.min(c.startIndex+c.visibleCount-1,g-1);if(C<c.startIndex)return;D(c.startIndex,C-c.startIndex+1),q(c.startIndex,C).catch(oe)}},destroy(){if(p!==null)clearTimeout(p);B(),Y()}}}var Ft=(t,e)=>{let n=0,o=t.length-1;while(n<o){let s=n+o+1>>>1;if(t[s].headerLayoutIndex<=e)n=s;else o=s-1}return n},Kn=(t,e)=>{let n=0,o=t.length-1;while(n<o){let s=n+o+1>>>1;if(t[s].firstDataIndex<=e)n=s;else o=s-1}return n},Un=(t,e,n)=>{if(t===0)return[];let o=[],s=null,r=0,i=0;for(let l=0;l<t;l++){let y=n?.(l);if(!y)continue;let f=e(l,y);if(s===null)s=f,r=0;else if(f!==s){let c=l-r;o.push({key:s,groupIndex:o.length,headerLayoutIndex:i,firstDataIndex:r,count:c}),i=i+1+c,s=f,r=l}}if(s!==null)o.push({key:s,groupIndex:o.length,headerLayoutIndex:i,firstDataIndex:r,count:t-r});return o};var Yn=(t,e,n)=>{let o=Un(t,e.getGroupForIndex,n),s=t+o.length,r=e.header?.height??e.header?.width??e.headerHeight;return{get totalEntries(){return s},get groupCount(){return o.length},get groups(){return o},getEntry:(S)=>{if(o.length===0)return{type:"item",dataIndex:S,group:{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0}};let H=Ft(o,S),d=o[H];if(S===d.headerLayoutIndex)return{type:"header",group:d};let w=S-d.headerLayoutIndex-1;return{type:"item",dataIndex:d.firstDataIndex+w,group:d}},layoutToDataIndex:(S)=>{if(o.length===0)return S;let H=Ft(o,S),d=o[H];if(S===d.headerLayoutIndex)return-1;let w=S-d.headerLayoutIndex-1;return d.firstDataIndex+w},dataToLayoutIndex:(S)=>{if(o.length===0)return S;let H=Kn(o,S),d=o[H],w=S-d.firstDataIndex;return d.headerLayoutIndex+1+w},getGroupAtLayoutIndex:(S)=>{if(o.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let H=Ft(o,S);return o[H]},getGroupAtDataIndex:(S)=>{if(o.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let H=Kn(o,S);return o[H]},getHeaderHeight:typeof r==="number"?(S)=>r:(S)=>{let H=o[S];if(!H)return 0;return r(H.key,S)},rebuild:(S,H)=>{o=Un(S,e.getGroupForIndex,H??n),s=S+o.length}}};var Dt=(t,e,n,o,s=0)=>{let r=n?"width":"height",i=document.createElement("div");return i.className=`${e}-sticky-header`,i.setAttribute("role","presentation"),i.setAttribute("aria-hidden","true"),i.style.cssText="z-index:5;pointer-events:none;overflow:hidden;"+(n?`position:absolute;top:0;bottom:0;left:${s||0}px`:`position:relative;top:${s||0}px`),i.style[r]=`${o}px`,t.insertBefore(i,t.firstChild),i},Xn=(t,e,n,o,s,r=!1,i=0,l,y)=>{let f=r?"width":"height",c=r?"height":"width",v=r?"X":"Y",I=(m,E)=>{m.style[f]=`${E}px`},S=l??Dt(t,s,r,0,i),H=()=>{let m=document.createElement("div");return m.className="sticky-group",m.style.position="absolute",m.style.willChange="transform",m.style[c]="100%",m},d=H(),w=H();S.append(d,w);let p=d,M=w,b=e.groups,u=[],A=[],L=[],a=0,F=()=>{b=e.groups,a=b.length,u=Array(a),A=Array(a),L=Array(a);for(let m=0;m<a;m++)u[m]=y?y(b[m].headerLayoutIndex):n.getOffset(b[m].headerLayoutIndex),A[m]=e.getHeaderHeight(m),L[m]=A[m]};F();let V=-1,T=0,B=0,q=-1,D=!1,oe=0,_=!1,Y=(m,E)=>{o(m,E);let x=A[E];return I(m,x),x},U=(m)=>{m.replaceChildren(),m.style.transform=""},P=(m)=>{if(m===V)return;if(V=m,T=0,B=0,m<0||m>=a){U(p);return}T=Y(p,m),B=L[m],I(S,T),p.style.transform=""},O=(m)=>{if(m===oe)return;oe=m;let E=Math.round(m);p.style.transform=`translate${v}(${E}px)`,M.style.transform=`translate${v}(${E+T}px)`},g=()=>{oe=0,p.style.transform="",M.style.transform=""},C=()=>{if(!_)return;let m=p;p=M,M=m,V=q,T=V>=0?A[V]:0,B=V>=0?L[V]:0,I(S,T),U(M),q=-1,_=!1,g()},j=()=>{if(!_)return;U(M),q=-1,_=!1,g()},J=!!l,k=()=>{if(D)return;if(D=!0,J)S.style.visibility="";else S.style.display=""},h=()=>{if(!D)return;if(D=!1,J)S.style.visibility="hidden";else S.style.display="none";U(p),V=-1,T=0,B=0,j()},W=(m)=>{if(a===0){if(_)j();if(!D)k();P(-1);return}if(m<u[0]){h();return}let E=0,x=a-1;while(E<x){let X=E+x+1>>>1;if(u[X]+L[X]<=m)E=X;else x=X-1}if(!D)k();P(E);let z=E+1;if(z<a){let X=u[z]-m;if(X<=0&&X>-B){if(q!==z||!_)q=z,Y(M,z),_=!0;let se=B>0?X/B*T:X;O(se)}else if(X<=-B){if(_)C()}else if(_)j()}else if(_)j()},N=()=>{F();let m=V;if(V=-1,T=0,B=0,m>=0)P(m)},Z=()=>{S.remove(),V=-1,T=0,B=0,q=-1,D=!1,_=!1};if(!l)S.style.display="none";return{update:W,refresh:N,show:k,hide:h,destroy:Z}};var Ue={selected:!1,focused:!1},qn=typeof process<"u"&&process.env?.NODE_ENV!=="production";function Vt(t){if(!t.getGroupForIndex)throw Error("[vlist] groups: getGroupForIndex is required");let e=t.header?.height??t.header?.width??t.headerHeight;if(e==null||typeof e==="number"&&e<=0)throw Error("[vlist] groups: header height/width must be a positive number or function");let n=t.header?.template??t.headerTemplate;if(!n)throw Error("[vlist] groups: header.template is required");let o=n,s,r=null,i,l,y,f,c=null,v,I,S,H=null,d,w,p,M=null,b,u,A=null,L=null,a=0,F=0,V=0,T=0,B=0,q=!1,D=null,oe=new Map,_=new Set,Y=new Map,U=-1,P=-1,O=0,g=!0,C=-1,j=0,J=null,k;function h(){return s.totalEntries}function W(){let R=l.totalItems;if(R===C)return;if(qn)console.log(`[groups] syncLayout: ${C} → ${R}`);let le=C>0;C=R,s.rebuild(R,H??S),k(s.totalEntries),x();let re=Z?z():i.getTotalSize();if(c?.(re),r)r.refresh(),r.update(l.scrollPosition);if(le)te();let Se=A?.("_scrollbar:getInstance");if(Se)Se()?.updateBounds(re,l.containerSize)}let N=0,Z=null,m=null,E=null;function x(){if(a<=0){Z=null,m=null;return}N=((l.crossSize||f.clientWidth)-T-(a-1)*F)/a,Z=new Map;let re=s.totalEntries,Se=Array(re),Me=0;if(q){let xe=D??((K)=>i.getSize(K)),Le=new Float64Array(a),Te=[],Pe=0,Re=-1;for(let K=0;K<re;K++){let he=s.getEntry(K);if(he.type==="header"){let ue=0;for(let me=0;me<a;me++)if(Le[me]>ue)ue=Le[me];if(Re>=0)Te[Re]=Pe+ue;Pe+=ue;let pe=i.getSize(K);Z.set(K,{col:-1,rowY:Pe}),Se[Me++]=[K,Pe,Pe+pe],Pe+=pe,Le.fill(0),Re=he.group.groupIndex}else{let ue=0,pe=Le[0];for(let fe=1;fe<a;fe++)if(Le[fe]<pe)pe=Le[fe],ue=fe;let me=xe(he.dataIndex),Ce=Pe+Le[ue];Z.set(K,{col:ue,rowY:Ce,h:me}),Se[Me++]=[K,Ce,Ce+me],Le[ue]=Le[ue]+me+F}}if(Re>=0){let K=0;for(let he=0;he<a;he++)if(Le[he]>K)K=Le[he];Te[Re]=Pe+K}E=Te}else{E=null;let xe=0,Le=0,Te=0;for(let Pe=0;Pe<re;Pe++)if(s.getEntry(Pe).type==="header"){if(Le>0&&Te>0)xe+=Te;let K=i.getSize(Pe);Z.set(Pe,{col:-1,rowY:xe}),Se[Me++]=[Pe,xe,xe+K],xe+=K,Le=0,Te=0}else{let K=Le%a,he=i.getSize(Pe);if(K===0){if(Le>0&&Te>0)xe+=Te+F;Te=he}else if(he>Te)Te=he;Z.set(Pe,{col:K,rowY:xe}),Se[Me++]=[Pe,xe,xe+he],Le++}}Se.length=Me,m=Se}function z(){if(!Z||Z.size===0)return i.getTotalSize();let R=s.totalEntries;if(q)return E?.[E.length-1]??0;let le=0;for(let re=R-1;re>=0;re--){let Se=Z.get(re);if(Se){le=Se.rowY+(Se.h??i.getSize(re));break}if(s.getEntry(re).type==="header"){le=i.getOffset(re)+i.getSize(re);break}}return le}function X(R){let le=l.baseOffset;if(Z){let Se=Z.get(R);if(Se){let Me=Se.col<0?0:V+Se.col*(N+F),xe=Se.rowY-le;if(d)return`translate(${Math.round(xe)}px, ${Math.round(Me)}px)`;return`translate(${Math.round(Me)}px, ${Math.round(xe)}px)`}}let re=i.getOffset(R)-le;if(d)return`translate(${Math.round(re)}px, 0)`;return`translate(0, ${Math.round(re)}px)`}function se(R,le){let re=Z?.get(le);if(re){let Me=re.h??i.getSize(le);if(re.col<0)if(d)R.style.width=`${Me}px`,R.style.height="";else R.style.height=`${Me}px`,R.style.width="100%";else if(d)R.style.width=`${Me}px`,R.style.height=`${N}px`;else R.style.height=`${Me}px`,R.style.width=`${N}px`;return}let Se=i.getSize(le);if(d)R.style.width=`${Se}px`;else R.style.height=`${Se}px`}function te(){oe.forEach((R)=>{R.remove();let le=R.getAttribute("data-id");if(le)Y.set(le,R);else y.release(R)}),oe.clear(),_.clear()}function ee(){if(Y.size>0)Y.forEach((R)=>y.release(R)),Y.clear()}function ie(R,le,re,Se){if(L===null)L=!!A?.("_getSelectedIds");if(le.type==="header"){let Re=`__group_header_${le.group.groupIndex}`;if(R.getAttribute("data-id")===Re)return!0;if(R.className=u,R.setAttribute("role","presentation"),R.removeAttribute("aria-selected"),R.setAttribute("data-id",Re),d&&r&&le.group.groupIndex===0)R.style.display="none";else{R.style.display="";let K=o(le.group.key,le.group.groupIndex);if(typeof K==="string")R.innerHTML=K;else R.innerHTML="",R.appendChild(K)}return!0}let Me=le.dataIndex,xe=S(Me);if(!xe)return R.innerHTML="",!1;let Le=xe._isPlaceholder===!0,Te=String(xe.id);if(!Le&&R.getAttribute("data-id")===Te){if(L)R.id=`${w}-item-${Se}`,R.setAttribute("aria-posinset",String(Me+1)),R.setAttribute("aria-setsize",String(l.totalItems));return!0}if(R.className=b,R.setAttribute("role",L?"option":"listitem"),R.setAttribute("data-id",Te),L)R.id=`${w}-item-${Se}`,R.setAttribute("aria-posinset",String(Me+1)),R.setAttribute("aria-setsize",String(l.totalItems));if(Le)R.classList.add(`${w}-item--placeholder`);if(re)re(Se,Ue);else Ue.selected=!1,Ue.focused=!1;let Pe=I(xe,Me,Ue);if(typeof Pe==="string")R.innerHTML=Pe;else R.innerHTML="",R.appendChild(Pe);return Ge(R),!Le}let ne=0;function ve(){if(a<=0)return;let R=l.crossSize;if(R===ne)return;ne=R,x();let le=z();if(c?.(le),r)r.refresh(),r.update(l.scrollPosition);g=!0}function be(){if(l.destroyed)return;W(),ve();let R=l.scrollPosition,le=l.containerSize,re=l.baseOffset,Se=re!==O;if(!g&&R===U&&le===P&&!Se)return;U=R,P=le;let Me=g;g=!1;let xe=h();if(le<=0||xe===0){if(oe.size>0)oe.forEach((fe)=>{fe.remove(),y.release(fe)}),oe.clear(),_.clear();return}let Le,Te;if(m){let fe=m,Ie=fe.length,ze=0,ce=Ie-1;while(ze<ce){let He=ze+ce>>>1;if(fe[He][2]<=R)ze=He+1;else ce=He}let G=ze;ce=Ie-1;while(ze<ce){let He=ze+ce+1>>>1;if(fe[He][1]>=R+le)ce=He-1;else ze=He}let ge=ze,ae=fe[G][0],Ee=fe[ge][0];for(let He=ae-1;He>=0;He--)if(s.getEntry(He).type==="header"){ae=He;break}let Ae=p*a;Le=Math.max(0,ae-Ae),Te=Math.min(xe-1,Ee+Ae)}else{let fe=i.indexAtOffset(R),Ie=i.indexAtOffset(R+le);if(Ie<xe-1)Ie++;fe=Math.max(0,fe),Ie=Math.min(xe-1,Math.max(0,Ie)),Le=Math.max(0,fe-p),Te=Math.min(xe-1,Ie+p)}if(Le===l.prevRangeStart&&Te===l.prevRangeEnd&&!l.renderPending&&!Se)return;O=re,oe.forEach((fe,Ie)=>{if(Ie<Le||Ie>Te)fe.remove(),y.release(fe),oe.delete(Ie),_.delete(Ie)});let Pe=M?.()??null,Re=Pe?`${w}-item--selected`:"",K=Pe?`${w}-item--focused`:"",he=null;for(let fe=Le;fe<=Te;fe++){let Ie=oe.get(fe),ze=!1;if(Ie===void 0){let ce=s.getEntry(fe);ze=ce.type==="header";let G;if(ce.type==="header")G=`__group_header_${ce.group.groupIndex}`;else{let ae=S(ce.dataIndex);if(ae&&ae._isPlaceholder!==!0)G=String(ae.id)}if(G!==void 0){let ae=Y.get(G);if(ae)Y.delete(G),Ie=ae}if(!Ie)Ie=y.acquire();if(Ie.setAttribute("data-index",String(fe)),ie(Ie,ce,Pe,fe))_.delete(fe);else _.add(fe);if(se(Ie,fe),Ie.style.transform=X(fe),oe.set(fe,Ie),!he)he=document.createDocumentFragment();he.appendChild(Ie)}else if(Me&&_.has(fe)){let ce=s.getEntry(fe);if(ce.type==="item")if(ie(Ie,ce,Pe,fe))_.delete(fe);else _.add(fe)}else if(ze=Ie.classList.contains(u),Me)se(Ie,fe),Ie.style.transform=X(fe);else if(Se)Ie.style.transform=X(fe);if(!ze&&Pe)if(Pe(fe,Ue),Ie.classList.toggle(Re,Ue.selected),Ie.classList.toggle(K,Ue.focused),Ue.selected)Ie.setAttribute("aria-selected","true");else Ie.removeAttribute("aria-selected")}if(he)f.appendChild(he);ee();let ue=Z?z():i.getTotalSize();c?.(ue),l.prevRangeStart=Le,l.prevRangeEnd=Te,l.renderPending=!1;let pe=0,me=0,Ce=!1;for(let fe=Le;fe<=Te&&pe<l.capacity;fe++){let Ie=s.getEntry(fe);if(Ie.type==="item"){if(!Ce)me=Ie.dataIndex,Ce=!0;l.visibleIndices[pe]=Ie.dataIndex,l.visibleOffsets[pe]=i.getOffset(fe),l.visibleSizes[pe]=i.getSize(fe),pe++}}l.visibleCount=pe,l.startIndex=me}function de(){if(l.destroyed)return;if(ve(),qn)console.log(`[groups] forceRender, placeholders: ${_.size}, rendered: ${oe.size}`);let R=J?.()??0;if(R!==j){j=R;let le=s.groups,re=le.length;s.rebuild(C,H??S);let Se=s.groups,Me=Se.length!==re;if(!Me){for(let xe=0;xe<re;xe++)if(Se[xe].headerLayoutIndex!==le[xe].headerLayoutIndex){Me=!0;break}}if(Me){k(s.totalEntries),x();let xe=Z?z():i.getTotalSize();if(c?.(xe),r)r.refresh(),r.update(l.scrollPosition);let Le=1/0,Te=Math.min(re,Se.length);for(let Re=0;Re<Te;Re++)if(Se[Re].headerLayoutIndex!==le[Re].headerLayoutIndex){Le=Math.min(Se[Re].headerLayoutIndex,le[Re].headerLayoutIndex);break}if(Se.length>re&&Te<Se.length)Le=Math.min(Le,Se[Te].headerLayoutIndex);else if(re>Se.length&&Te<re)Le=Math.min(Le,le[Te].headerLayoutIndex);if(Le<=l.prevRangeEnd)te();let Pe=A?.("_scrollbar:getInstance");if(Pe)Pe()?.updateBounds(xe,l.containerSize)}}l.prevRangeStart=-1,l.prevRangeEnd=-1,l.renderPending=!0,g=!0,be()}return{name:"groups",priority:10,setup(R){i=R.sizeCache,l=R.getState(),y=R.pool,f=R.dom.content,c=R.updateContentSize.bind(R),v=R.dom.root,I=R.template,d=R.config.axis.primary==="x",w=R.config.classPrefix,p=R.config.overscan,B=R.config.mainAxisPadding,S=R.getItem.bind(R),M=()=>R.getItemStateFn(),A=R.getMethod.bind(R),L=null,b=`${w}-item`,u=`${w}-group-header`;let le=A?.("getGridLayout"),re=A?.("getMasonryLayout");if(le){let ue=le();a=ue.columns,F=ue.gap,V=R.config.crossPadStart,T=R.config.crossAxisPadding}else if(re){let ue=re();a=ue.columns,F=ue.gap,V=R.config.crossPadStart,T=R.config.crossAxisPadding,q=!0;let pe=R.rawSizeSpec;if(typeof pe==="function")D=(me)=>pe(me,{columnWidth:N})}queueMicrotask(()=>{let ue=A?.("_getLoadedItem");if(ue)H=ue;let pe=A?.("_getLoadedCount");if(pe)J=pe});let Se=l.totalItems;s=Yn(Se,t,H??S),C=Se;let Me=typeof e==="number"?(ue)=>e:(ue)=>{let pe=s.groups[ue];if(!pe)return 0;return e(pe.key,ue)},xe=i.getSize,Le=(ue)=>{let pe=s.getEntry(ue);if(pe.type==="header"){if(t.sticky!==!1&&pe.group.groupIndex===0)return 0;return Me(pe.group.groupIndex)}return xe(pe.dataIndex)};R.setSizeConfig(Le);let Te=!1,Pe=-1;if(R.registerMethod("_setSizeCacheBase",(ue)=>{k=ue}),k=i.rebuild,i.rebuild=(ue)=>{if(Te){if(!J)J=A?.("_getLoadedCount")??null;let pe=J?.()??0;if(ue!==C||pe!==Pe){if(C=ue,Pe=pe,!H)H=A?.("_getLoadedItem")??null;if(s.rebuild(ue,H??((me)=>R.getItems()[me])),l.totalItems=s.totalEntries,r)r.refresh(),r.update(l.scrollPosition)}}k(s.totalEntries)},i.rebuild(s.totalEntries),x(),R.setVirtualTotalFn(()=>s.totalEntries),v.classList.add(`${w}--grouped`),t.sticky!==!1){let ue=(fe,Ie)=>{let ze=s.groups[Ie];if(!ze)return;let ce=o(ze.key,Ie);if(typeof ce==="string")fe.innerHTML=ce;else fe.replaceChildren(ce)},pe=s.getHeaderHeight(0),me=Dt(v,w,d,pe),Ce=a>0?(fe)=>{let Ie=Z?.get(fe);return Ie?Ie.rowY:i.getOffset(fe)}:void 0;if(r=Xn(v,s,i,ue,w,d,0,me,Ce),r.update(l.scrollPosition),!d)R.dom.viewport.style.height=`calc(100% - ${pe}px)`;else R.dom.viewport.style.width=`calc(100% - ${pe}px)`,R.dom.viewport.style.marginLeft=`${pe}px`}let Re=!!A?.("_updateTableForGroups");if(Te=Re,Re)queueMicrotask(()=>{let ue=A?.("_getItem")??null,pe=R.getItems.bind(R);R.setGetItemFn((Ce)=>{let fe=s.getEntry(Ce);if(fe.type==="header")return{id:`__group_header_${fe.group.groupIndex}`,__groupHeader:!0,groupKey:fe.group.key,groupIndex:fe.group.groupIndex};return ue?ue(fe.dataIndex):pe()[fe.dataIndex]});let me=A?.("_updateTableForGroups");if(me)me((Ce)=>!!Ce.__groupHeader,o)});else R.setRenderFn(be,de);R.registerMethod("getGroupLayout",()=>s),R.registerMethod("_dataToLayoutIndex",(ue)=>s.dataToLayoutIndex(ue)),R.registerMethod("_layoutToDataIndex",(ue)=>s.layoutToDataIndex(ue)),R.registerMethod("_getRenderedElement",(ue)=>oe.get(ue)??null),R.registerMethod("_isGroupHeader",(ue)=>s.getEntry(ue).type==="header"),R.registerMethod("_getItemLane",(ue)=>{let pe=Z?.get(ue);return pe?pe.col:-1}),R.registerMethod("_getItemY",(ue)=>{let pe=Z?.get(ue);return pe?pe.rowY:-1}),R.registerMethod("_getItemH",(ue)=>Z?.get(ue)?.h??-1);let K=R.config.startPadding,he=B-K;R.registerMethod("_scrollItemIntoView",(ue)=>{if(ue<0)return;let pe=Z?.get(ue),me=pe?pe.rowY:i.getOffset(ue),Ce=pe?.h??i.getSize(ue),fe=l.containerSize,Ie=l.scrollPosition;if(me<Ie+K)R.scrollTo(Math.max(0,me-K));else if(me+Ce+he>Ie+fe)R.scrollTo(me+Ce+he-fe)}),R.registerMethod("scrollToIndex",(ue,pe="start")=>{let me=s.dataToLayoutIndex(ue),Ce=s.totalEntries;if(Ce===0)return;let fe=Math.max(0,Math.min(me,Ce-1)),Ie=l.containerSize,ze=Z?.get(fe),ce=ze?ze.rowY:i.getOffset(fe),G=ze?ze.h??i.getSize(fe):i.getSize(fe),ge=Z?z()+B:i.getTotalSize(),ae=Math.max(0,ge-Ie),Ee=typeof pe==="string"?pe:pe.align??"start",Ae=typeof pe==="object"?pe.behavior:void 0,He=typeof pe==="object"?pe.duration:void 0,Fe=Z?B:0,ye=ce+G;if(q&&E){let we=s.getEntry(fe).group.groupIndex,ke=E[we];if(ke!==void 0)ye=ke}let Q;switch(Ee){case"center":Q=ce-(Ie-G)/2;break;case"end":Q=ye-Ie+Fe;break;default:Q=ce}if(Q=Math.max(0,Math.min(Q,ae)),Ae==="smooth"&&He&&He>0)R.smoothScrollTo(Q,He);else R.scrollTo(Q)}),R.registerDestroyHandler(()=>{for(let[,ue]of oe)ue.remove();if(oe.clear(),_.clear(),r)r.destroy(),r=null;v.classList.remove(`${w}--grouped`)})},hooks:{onAfterScroll(R,le){if(r)r.update(R)},onResize(R,le){if(a<=0)return;k(s.totalEntries),ne=l.crossSize,x();let re=z();if(c?.(re),r)r.refresh(),r.update(l.scrollPosition);g=!0,be()}},destroy(){if(r)r.destroy(),r=null;oe.clear(),_.clear(),Y.clear()}}}var jn=(t,e=50,n=1/0,o=!0,s="none")=>{let r=t,i=[],l=0,y=0,f=()=>{i=r.map((b,u)=>({def:b,index:u,width:0,minWidth:Ho(b.minWidth??e,1),maxWidth:b.maxWidth??n,resizable:b.resizable??o,offset:0}))},c=()=>{if(s==="none"||l<=0||l>=y)return;if(s==="spacer"){l=y;return}let b=y-l,u=l;for(let A=0;A<i.length;A++){let L=i[A];L.width=gt(L.width+b*(L.width/u),L.minWidth,L.maxWidth)}I()},v=(b)=>{if(y=b,i.length===0){l=0;return}let u=0,A=0;for(let L=0;L<i.length;L++){let a=i[L],F=a.def;if(F.width!==void 0)a.width=gt(F.width,a.minWidth,a.maxWidth),u+=a.width;else A++}if(A){let a=Math.max(0,b-u)/A;for(let F=0;F<i.length;F++){let V=i[F];if(V.def.width===void 0)V.width=gt(a,V.minWidth,V.maxWidth)}}I(),c()},I=()=>{let b=0;for(let u=0;u<i.length;u++){let A=i[u];A.offset=b,b+=A.width}l=b},S=(b,u)=>{if(b<0||b>=i.length)return 0;let A=i[b];if(!A.resizable)return A.width;let L=gt(u,A.minWidth,A.maxWidth);if(A.width=L,I(),s==="spacer")c();return L},H=(b)=>i[b],d=(b)=>{if(i.length===0)return;if(b<0)return i[0];if(b>=l)return i[i.length-1];let u=0,A=i.length-1;while(u<A){let L=u+A>>>1,a=i[L];if(b<a.offset)A=L-1;else if(b>=a.offset+a.width)u=L+1;else return a}return i[u]},w=(b)=>{if(b<0||b>=i.length)return 0;return i[b].offset},p=(b)=>{if(b<0||b>=i.length)return 0;return i[b].width},M=(b)=>{r=b,f()};return f(),{get columns(){return i},get totalWidth(){return l},resolve:v,updateColumns:M,resizeColumn:S,getColumn:H,getColumnAtX:d,getColumnOffset:w,getColumnWidth:p}},gt=(t,e,n)=>Math.min(n,Math.max(e,t)),Ho=(t,e)=>Math.max(e,t);var Zn=(t,e,n,o,s,r)=>{let i=document.createElement("div");i.setAttribute("role","rowgroup");let l=document.createElement("div");l.className=`${n}-table-header`,l.setAttribute("role","row"),l.setAttribute("aria-rowindex","1"),l.style.height=`${e}px`;let y=document.createElement("div");y.className=`${n}-table-header-scroll`,y.setAttribute("role","presentation"),l.appendChild(y),i.appendChild(l),t.insertBefore(i,t.firstChild),t.style.setProperty("--vlist-table-header-height",`${e}px`);let f=[],c=[],v=!0,I=null,S="asc",H=null,d=!1,w=-1,p=0,M=0,b=0,u=(P,O)=>{let g=document.createElement("div");g.className=`${n}-table-header-cell`,g.setAttribute("role","columnheader"),g.setAttribute("aria-colindex",String(O+1)),g.setAttribute("tabindex",O===0?"0":"-1"),g.dataset.columnKey=P.def.key;let C=P.def.align;if(C==="center")g.classList.add(`${n}-table-header-cell--center`);else if(C==="right")g.classList.add(`${n}-table-header-cell--right`);let j=document.createElement("div");j.className=`${n}-table-header-content`;let J=P.def.header?P.def.header(P.def):P.def.label;if(typeof J==="string")j.textContent=J;else j.appendChild(J);if(g.appendChild(j),P.def.sortable){let k=document.createElement("span");k.className=`${n}-table-header-sort`,k.setAttribute("aria-hidden","true"),g.appendChild(k),c.push(k),g.classList.add(`${n}-table-header-cell--sortable`)}else c.push(null);if(P.resizable){let k=document.createElement("div");k.className=`${n}-table-header-resize`,k.dataset.resizeIndex=String(O),g.appendChild(k)}return g},A=(P)=>{H=P,y.textContent="",f=[],c=[];let O=P.columns;for(let g=0;g<O.length;g++){let C=O[g],j=u(C,g);f.push(j),y.appendChild(j)}if(L(P),I)a(I,S)},L=(P)=>{H=P;let O=P.columns;y.style.width=`${P.totalWidth}px`;for(let g=0;g<f.length&&g<O.length;g++){let C=f[g],j=O[g];C.style.width=`${j.width}px`}},a=(P,O)=>{if(I=P,S=O,!H)return;let g=H.columns;for(let C=0;C<c.length&&C<g.length;C++){let j=c[C];if(!j)continue;if(g[C].def.key===P)j.textContent=O==="asc"?"▲":"▼",j.style.opacity="0.7",f[C].setAttribute("aria-sort",O==="asc"?"ascending":"descending");else j.textContent="",j.style.opacity="0",f[C].removeAttribute("aria-sort")}},F=(P)=>{y.style.transform=`translateX(${-P}px)`},V=(P)=>{let O=P.target;if(!O.dataset.resizeIndex)return;if(P.preventDefault(),P.stopPropagation(),w=+O.dataset.resizeIndex,!H)return;let g=H.getColumn(w);if(!g?.resizable)return;d=!0,p=P.clientX,M=g.width,t.classList.add(`${n}--col-resizing`),t.style.cursor="col-resize",O.classList.add(`${n}-table-header-resize--active`),O.setPointerCapture(P.pointerId),O.addEventListener("pointermove",T),O.addEventListener("pointerup",B),O.addEventListener("pointercancel",B)},T=(P)=>{if(!d||!H)return;let O=P.clientX-p;if(Math.abs(O)<1)return;let g=Math.max(0,M+O);o(w,g)},B=(P)=>{if(!d)return;let O=P.target;O.removeEventListener("pointermove",T),O.removeEventListener("pointerup",B),O.removeEventListener("pointercancel",B);try{O.releasePointerCapture(P.pointerId)}catch{}O.classList.remove(`${n}-table-header-resize--active`),t.classList.remove(`${n}--col-resizing`),t.style.cursor="",d=!1,w=-1},q=(P)=>{let O=P.target;if(O.dataset.resizeIndex)return;if(d)return;let g=O;while(g&&!g.dataset.columnKey)if(g=g.parentElement,g===l||g===null)return;let C=g.dataset.columnKey;if(!H)return;let j=H.columns,J=-1;for(let h=0;h<j.length;h++)if(j[h].def.key===C){J=h;break}if(J===-1)return;let k=j[J];if(r)r({key:C,index:J,event:P});if(k.def.sortable&&s){let h;if(I===C)h=S==="asc"?"desc":null;else h="asc";s({key:C,index:J,direction:h})}},D=(P)=>{if(P<0||P>=f.length)return;f[b]?.setAttribute("tabindex","-1"),b=P;let O=f[b];O.setAttribute("tabindex","0"),O.focus()},oe=(P)=>{let O=P.key;if(O==="ArrowRight"){if(P.ctrlKey||P.metaKey){if(!H)return;let g=H.getColumn(b);if(g?.resizable)o(b,g.width+10),P.preventDefault()}else if(b<f.length-1)D(b+1),P.preventDefault();P.stopPropagation();return}if(O==="ArrowLeft"){if(P.ctrlKey||P.metaKey){if(!H)return;let g=H.getColumn(b);if(g?.resizable)o(b,g.width-10),P.preventDefault()}else if(b>0)D(b-1),P.preventDefault();P.stopPropagation();return}if(O==="Home"){D(0),P.preventDefault(),P.stopPropagation();return}if(O==="End"){D(f.length-1),P.preventDefault(),P.stopPropagation();return}if(O==="Enter"||O===" "){if(!H)return;let g=H.getColumn(b);if(g?.def.sortable&&s){let C;if(I===g.def.key)C=S==="asc"?"desc":null;else C="asc";s({key:g.def.key,index:b,direction:C}),P.preventDefault()}P.stopPropagation();return}if(O==="ArrowDown"){t.focus(),P.preventDefault(),P.stopPropagation();return}};return l.addEventListener("pointerdown",V),l.addEventListener("click",q),l.addEventListener("keydown",oe),{element:l,update:L,updateSort:a,rebuild:A,show:()=>{if(v)return;v=!0,l.style.display=""},hide:()=>{if(!v)return;v=!1,l.style.display="none"},destroy:()=>{l.removeEventListener("pointerdown",V),l.removeEventListener("click",q),l.removeEventListener("keydown",oe),t.style.removeProperty("--vlist-table-header-height"),i.remove(),f=[],c=[],H=null,v=!1},syncScroll:F}};var ko=()=>{let t=[];return{acquire:()=>t.pop()||document.createElement("div"),release:(e)=>{if(e.parentNode?.removeChild(e),t.length<200)e.className="",e.removeAttribute("data-id"),e.removeAttribute("data-index"),e.removeAttribute("aria-selected"),e.removeAttribute("aria-rowindex"),e.removeAttribute("role"),e.style.cssText="",e.textContent="",t.push(e)},clear:()=>{t.length=0}}},Jn=(t,e,n,o,s,r,i,l,y,f=()=>0)=>{let c=ko(),v=new Map,I=-1,S=n,H=null,d=null,w=null,p=(E,x)=>{d=E,w=x},M=(E,x)=>{x?E.setAttribute("aria-selected","true"):E.removeAttribute("aria-selected")},b=(E,x,z,X)=>{E.setAttribute("role",x),E.setAttribute("data-id",String(z)),E.setAttribute("data-index",String(X))},u=(E)=>String(E).startsWith("__placeholder_"),A=`${s}-item ${s}-table-row`,L=`${s}-item--selected`,a=`${s}-item--focused`,F=`${s}-table-cell`,V=`${s}-table-cell--center`,T=`${s}-table-cell--right`,B=`${s}-table-cell-skeleton`,q=`${s}-item--odd`,D=`${s}-item--placeholder`,oe=`${s}-item--replaced`,_=`${s}-table-row ${s}-table-group-header`,Y=`${s}-table-group-header-content`,U=(E,x,z,X,se=!1)=>{if(z.def.cell){let te=z.def.cell(x,z.def,X);if(typeof te==="string")E.innerHTML=te;else E.replaceChildren(te)}else{let te=x[z.def.key],ee=te!=null?String(te):"";if(se&&ee)E.innerHTML=`<span>${ee}</span>`;else E.textContent=ee}if(se&&E.firstElementChild===null){E.replaceChildren();let te=document.createElement("span");te.className=B,E.appendChild(te)}},P=(E,x,z,X,se=!1)=>{let te=A;if(l){if(H){let ee=H(x);if(ee>=0&&(ee&1)===1)te+=` ${q}`}else if((x&1)===1)te+=` ${q}`}if(se)te+=` ${D}`;if(z)te+=` ${L}`;if(X)te+=` ${a}`;E.className=te},O=(E,x)=>{let z=x.def.align;if(z==="center")E.classList.add(V),E.classList.remove(T);else if(z==="right")E.classList.add(T),E.classList.remove(V);else E.classList.remove(V,T)},g=(E,x)=>{let X=S.columns.length;if(x.length===X)return x;let se=[];for(let te=0;te<X;te++){let ee;if(te<x.length)ee=x[te];else ee=document.createElement("div"),ee.className=F,E.appendChild(ee);se.push(ee)}for(let te=X;te<x.length;te++)x[te].remove();return se},C=(E,x,z)=>{let X=c.acquire(),se=E,te=z.getSize(x),ee=z.getOffset(x)-f();X.style.cssText=`width:${S.totalWidth}px;height:${te}px;transform:translateY(${ee}px)`,X.className=_,b(X,"presentation",E.id,x),X.removeAttribute("aria-selected"),X.removeAttribute("aria-rowindex"),X.replaceChildren();let ie=document.createElement("div");if(ie.className=Y,w){let ne=w(se.groupKey,se.groupIndex);if(typeof ne==="string")ie.innerHTML=ne;else ie.appendChild(ne)}return X.appendChild(ie),{element:X,cells:[],index:x,isGroupHeader:!0,_lastItem:E,lastItemId:E.id,lastSelected:!1,lastFocused:!1,lastOffset:ee,lastHeight:te}},j=(E,x,z,X,se)=>{let te=c.acquire(),ee=se.getSize(x),ie=se.getOffset(x)-f(),ne=u(E.id);te.style.cssText=`width:${S.totalWidth}px;height:${ee}px;transform:translateY(${ie}px)`,P(te,x,z,X,ne),b(te,"row",E.id,x),te.id=`${r}-item-${x}`,te.setAttribute("aria-rowindex",String(x+2)),M(te,z);let ve=g(te,[]),be=S.columns;for(let de=0;de<ve.length&&de<be.length;de++){let R=ve[de],le=be[de];R.style.cssText=`left:${le.offset}px;width:${le.width}px`,R.setAttribute("role","gridcell"),R.setAttribute("aria-colindex",String(de+1)),O(R,le),U(R,E,le,x,ne)}return{element:te,cells:ve,index:x,isGroupHeader:!1,_lastItem:E,lastItemId:E.id,lastSelected:z,lastFocused:X,lastOffset:ie,lastHeight:ee}},J=(E,x,z,X)=>{let se=!1,te=i();if(te!==I)I=te,se=!0;let ee=null,ie=e();H=typeof l==="string"&&y?y():null;for(let ne=x.start;ne<=x.end;ne++){let ve=ne-x.start,be=E[ve];if(!be)continue;let de=z.has(be.id),R=ne===X,le=d?d(be):!1,re=v.get(ne);if(re){if(re.isGroupHeader!==le){c.release(re.element),v.delete(ne);let Se=le?C(be,ne,ie):j(be,ne,de,R,ie);if(v.set(ne,Se),!ee)ee=document.createDocumentFragment();ee.appendChild(Se.element);continue}if(le){if(re._lastItem!==be){let Le=be,Te=re.element.firstElementChild;if(Te&&w){let Pe=w(Le.groupKey,Le.groupIndex);if(typeof Pe==="string")Te.innerHTML=Pe;else Te.replaceChildren(Pe)}re.element.setAttribute("data-id",String(be.id)),re._lastItem=be,re.lastItemId=be.id}let Me=ie.getOffset(ne)-f();if(re.lastOffset!==Me)re.lastOffset=Me,re.element.style.transform=`translateY(${Me}px)`;let xe=ie.getSize(ne);if(re.lastHeight!==xe)re.lastHeight=xe,re.element.style.height=`${xe}px`}else{let Se=re._lastItem!==be,Me=re.lastSelected!==de,xe=re.lastFocused!==R;if(Se){let Pe=re.lastItemId!=null&&u(re.lastItemId),Re=u(be.id);if(!Re&&nt(z,ne,be.id))de=!0;let K=S.columns;for(let he=0;he<re.cells.length&&he<K.length;he++)U(re.cells[he],be,K[he],ne,Re);if(P(re.element,ne,de,R,Re),re.element.setAttribute("data-id",String(be.id)),M(re.element,de),Pe&&!Re)re.element.classList.add(oe),setTimeout(()=>{re.element.classList.remove(oe)},300);re._lastItem=be,re.lastItemId=be.id,re.lastSelected=de,re.lastFocused=R}else if(Me||xe)P(re.element,ne,de,R,u(be.id)),M(re.element,de),re.lastSelected=de,re.lastFocused=R;let Le=ie.getOffset(ne)-f();if(re.lastOffset!==Le)re.lastOffset=Le,re.element.style.transform=`translateY(${Le}px)`;let Te=ie.getSize(ne);if(re.lastHeight!==Te)re.lastHeight=Te,re.element.style.height=`${Te}px`;if(se)re.element.setAttribute("aria-rowindex",String(ne+2))}}else{if(nt(z,ne,be.id))de=!0;let Se=le?C(be,ne,ie):j(be,ne,de,R,ie);if(v.set(ne,Se),!ee)ee=document.createDocumentFragment();ee.appendChild(Se.element)}}if(ee)t.appendChild(ee);for(let[ne,ve]of v)if(ne<x.start||ne>x.end)c.release(ve.element),v.delete(ne)},k=(E,x,z,X)=>{let se=v.get(E);if(!se)return;if(se.isGroupHeader)return;let te=S.columns;for(let ee=0;ee<se.cells.length&&ee<te.length;ee++)U(se.cells[ee],x,te[ee],E);se.element.setAttribute("data-id",String(x.id)),se._lastItem=x,se.lastItemId=x.id,P(se.element,E,z,X),M(se.element,z),se.lastSelected=z,se.lastFocused=X},h=(E,x,z)=>{let X=v.get(E);if(!X)return;if(X.isGroupHeader)return;let se=X.lastSelected!==x,te=X.lastFocused!==z;if(se||te)P(X.element,E,x,z),M(X.element,x),X.lastSelected=x,X.lastFocused=z},W=(E)=>{S=E;let x=E.columns;for(let[,z]of v)if(z.element.style.width=`${E.totalWidth}px`,z.cells.length>0)for(let X=0;X<z.cells.length&&X<x.length;X++){let se=z.cells[X],te=x[X];se.style.left=`${te.offset}px`,se.style.width=`${te.width}px`}},N=(E)=>v.get(E)?.element,Z=()=>{for(let[,E]of v)c.release(E.element);v.clear(),I=-1};return{render:J,updateItem:k,updateItemClasses:h,getElement:N,updateColumnLayout:W,setGroupHeaderFn:p,clear:Z,destroy:()=>{Z(),c.clear()}}};var _o=new Set;function $t(t){if(!t.columns?.length)throw Error("[vlist] table: columns must be a non-empty array");if(t.rowHeight===void 0&&t.estimatedRowHeight===void 0)throw Error("[vlist] table: either rowHeight or estimatedRowHeight is required");let e=null,n=null,o=null,s,r,i=null,l=null,y=null,f=!1,c=-1,v=-1,I=null,S=!1;function H(){if(f||!i)return;f=!0,l=i.getMethod("_getSelectedIds")??null,y=i.getMethod("_getFocusedIndex")??null}let d=[],w={start:0,end:0};function p(){if(s.destroyed||!i||!o||!e)return;let b=s.containerSize,u=s.totalItems;if(b<=0||u===0)return;let A=u+1;if(A!==c)c=A,i.dom.root.setAttribute("aria-rowcount",`${A}`);let L=s.scrollPosition,a=i.config.overscan,F=r.indexAtOffset(L),V=r.indexAtOffset(L+b);if(V<u-1)V++;F=Math.max(0,F),V=Math.min(u-1,V);let T=Math.max(0,F-a),B=Math.min(u-1,V+a);if(T===s.prevRangeStart&&B===s.prevRangeEnd&&!s.renderPending)return;H();let q=l?.()??_o,D=y?.()??-1;d.length=0;for(let _=T;_<=B;_++){let Y=i.getItem(_);if(Y)d.push(Y)}if(w.start=T,w.end=B,o.render(d,w,q,D),s.prevRangeStart=T,s.prevRangeEnd=B,s.renderPending=!1,!S)S=!0,I=i.getMethod?.("_layoutToDataIndex")??null;if(I){let _=I,Y=-1;for(let P=T;P<=B;P++){let O=_(P);if(O>=0){Y=O;break}}let U=-1;for(let P=B;P>=T;P--){let O=_(P);if(O>=0){U=O;break}}s.startIndex=Y<0?T:Y,s.visibleCount=Y<0?0:U-Y+1}else s.startIndex=T,s.visibleCount=B-T+1;let oe=r.getTotalSize();if(oe!==v)v=oe,i.updateContentSize(oe)}function M(){if(s.destroyed)return;v=-1,s.prevRangeStart=-1,s.prevRangeEnd=-1,s.renderPending=!0,p()}return{name:"table",priority:10,conflicts:["grid","masonry"],setup(b){i=b,s=b.getState(),r=b.sizeCache;let{dom:u,config:A,emitter:L}=b,{classPrefix:a}=A;if(A.axis.primary==="x")throw Error("[vlist] table: cannot be used with horizontal orientation");if(A.reverse)throw Error("[vlist] table: cannot be used with reverse mode");let F=t.resizable??!0,V=t.minColumnWidth??50,T=t.maxColumnWidth??1/0,B=t.fillWidth===!1?"none":t.fillWidth===!0?"stretch":t.fillWidth??"spacer",q=t.rowBorders??!0,D=t.rowHeight,oe=t.headerHeight??(typeof D==="number"?D:40),_=t.sort?.key??null,Y=t.sort?.direction??"asc";if(e=jn(t.columns,V,T,F,B),typeof D==="function"||typeof D==="number")b.setSizeConfig(D);if(b.rebuildSizeCache(),u.root.classList.add(`${a}--table`),q)u.root.classList.add(`${a}--table-row-borders`);if(t.columnBorders)u.root.classList.add(`${a}--table-col-borders`);queueMicrotask(()=>{if(b.getMethod("_getSelectedIds"))u.root.setAttribute("tabindex","0")}),u.root.setAttribute("role","grid"),u.root.setAttribute("aria-colcount",`${t.columns.length}`),u.viewport.setAttribute("role","none"),u.content.setAttribute("role","rowgroup");let U=s.crossSize;e.resolve(U);let P=()=>{if(!e)return;u.content.style.minWidth=`${e.totalWidth}px`},O=(k,h)=>{if(!e)return;let W=e.getColumn(k);if(!W)return;let N=W.width,Z=e.resizeColumn(k,h);n?.update(e),o?.updateColumnLayout(e),P(),L.emit("column:resize",{key:W.def.key,index:k,previousWidth:N,width:Z})},g=(k)=>{_=k.direction===null?null:k.key,Y=k.direction??"asc",n?.updateSort(_,Y),L.emit("column:sort",k)};if(n=Zn(u.root,oe,a,O,g),n.rebuild(e),_)n.updateSort(_,Y);P(),o=Jn(u.content,()=>r,e,t.columns,a,a,()=>s.totalItems,A.striped||void 0,void 0,()=>s.baseOffset),b.setRenderFn(p,M);let C=n,j=-1,J=()=>{let k=u.viewport.scrollLeft;if(k!==j)j=k,C?.syncScroll?.(k)};u.viewport.addEventListener("scroll",J,{passive:!0}),b.registerMethod("updateColumns",(k)=>{if(!e||!n)return;if(e.updateColumns(k),e.resolve(s.crossSize),n.rebuild(e),_)n.updateSort(_,Y);P(),o?.updateColumnLayout(e),o?.clear(),b.forceRender()}),b.registerMethod("resizeColumn",(k,h)=>{if(!e)return;let W;if(typeof k==="string"){let N=e.columns;W=-1;for(let Z=0;Z<N.length;Z++)if(N[Z].def.key===k){W=Z;break}if(W===-1)return}else W=k;O(W,h)}),b.registerMethod("getColumnWidths",()=>{if(!e)return{};let k={},h=e.columns;for(let W=0;W<h.length;W++)k[h[W].def.key]=h[W].width;return k}),b.registerMethod("setSort",(k,h)=>{_=k,Y=h??"asc",n?.updateSort(_,Y)}),b.registerMethod("getSort",()=>({key:_,direction:Y})),b.registerMethod("_getTableLayout",()=>e),b.registerMethod("_getTableHeaderHeight",()=>oe),b.registerMethod("_updateRenderedItem",(k,h,W,N)=>{o?.updateItem(k,h,W,N)}),b.registerMethod("_replaceTableRenderer",(k)=>{o=k}),b.registerMethod("_updateTableForGroups",(k,h)=>{o?.setGroupHeaderFn(k,h)}),b.registerMethod("_updateItemClasses",(k,h,W)=>{o?.updateItemClasses(k,h,W)}),b.registerKeydownHandler((k)=>{if(k.key!=="ArrowLeft"&&k.key!=="ArrowRight")return;if(!e)return;let h=e.columns;if(h.length===0)return;let W=u.viewport.clientWidth;if(e.totalWidth<=W)return;let N=u.viewport.scrollLeft;if(k.key==="ArrowRight"){for(let Z=0;Z<h.length;Z++)if(h[Z].offset>N+1){u.viewport.scrollLeft=h[Z].offset,k.preventDefault();return}}else{for(let Z=h.length-1;Z>=0;Z--)if(h[Z].offset<N-1){u.viewport.scrollLeft=h[Z].offset,k.preventDefault();return}if(N>0)u.viewport.scrollLeft=0,k.preventDefault()}}),b.registerDestroyHandler(()=>{u.viewport.removeEventListener("scroll",J),n?.destroy(),n=null,o?.destroy(),o=null,u.content.style.minWidth="",u.root.classList.remove(`${a}--table`),u.root.classList.remove(`${a}--table-row-borders`),u.root.classList.remove(`${a}--table-col-borders`),u.root.removeAttribute("role"),u.root.removeAttribute("aria-colcount"),u.root.removeAttribute("aria-rowcount"),u.root.removeAttribute("tabindex"),u.viewport.removeAttribute("role"),u.content.removeAttribute("role")})},hooks:{onResize(b,u){if(!e||!i)return;let A=s.crossSize;if(e.resolve(A),n?.update(e),o?.updateColumnLayout(e),e)i.dom.content.style.minWidth=`${e.totalWidth}px`},onAfterScroll(){if(!i||!n)return;n?.syncScroll?.(i.dom.viewport.scrollLeft)}},destroy(){n?.destroy(),n=null,o?.destroy(),o=null,i=null}}}function Ot(t){let e=t?.handle??null,n=t?.ghostClass??"vlist-sort-ghost",o=t?.shiftDuration??150,s=t?.edgeScrollZone??40,r=t?.edgeScrollSpeed??20,i=t?.dragThreshold??5,l=t?.ghostContainer??null,y,f,c=null,v,I,S,H,d,w,p,M,b,u,A=!1,L=-1,a=-1,F=0,V=0,T=0,B=0,q=!1,D=null,oe=0,_=null,Y=0,U=0,P=0,O=null,g=!1,C="",j=-1,J=-1,k=[],h="",W=null,N=null,Z="",m=!1,E=(G)=>G.closest("[data-index]"),x=(G)=>{let ge=G.dataset.index;return ge===void 0?-1:+ge},z=(G)=>{let ge=G.getBoundingClientRect(),ae=G.cloneNode(!0);return ae.className=`${H}-item ${n}`,ae.removeAttribute("data-index"),ae.style.cssText=`position:fixed;pointer-events:none;z-index:10000;width:${ge.width}px;height:${ge.height}px;left:${ge.left}px;top:${ge.top}px;transition:none;will-change:transform`,(l||document.body).appendChild(ae),ae},X=()=>{if(!D)return;D.style.left=`${T-U}px`,D.style.top=`${B-P}px`},se=()=>{let G=y.totalItems;if(G===0)return 0;let ge=I.getBoundingClientRect(),ae=y.scrollPosition,Ee=d?T-U-ge.left+I.scrollLeft+ae:B-P-ge.top+ae,Ae=Ee+Y,He=f.getOffset(L)+f.getSize(L);if(Ae>He){let ye=f.indexAtOffset(Ae),Q=f.getOffset(ye)+f.getSize(ye)/2,we=Ae>Q?ye:ye-1;return Math.min(Math.max(we,L),G-1)}let Fe=f.getOffset(L);if(Ee<Fe){let ye=f.indexAtOffset(Ee),Q=f.getOffset(ye)+f.getSize(ye)/2,we=Ee<Q?ye:ye+1;return Math.max(Math.min(we,L),0)}return L},te=()=>{let G=v.children,ge=Y;for(let ae=0;ae<G.length;ae++){let Ee=G[ae],Ae=x(Ee);if(Ae<0||Ae===L)continue;let He=0;if(a>L){if(Ae>L&&Ae<=a)He=-ge}else if(a<L){if(Ae>=a&&Ae<L)He=ge}let Fe=f.getOffset(Ae),ye=Math.round(Fe+He);Ee.style.transition=p,Ee.style.transform=`${w}(${ye}px)`}},ee=()=>{let G=v.children;for(let ge=0;ge<G.length;ge++){let ae=G[ge],Ee=x(ae);if(Ee>=0)ae.style.transform=`${w}(${Math.round(f.getOffset(Ee))}px)`;ae.style.transition=""}},ie=()=>{if(!c)return;let G=se();if(G===a)return;a=G,te(),c.emitter.emit("sort:move",{fromIndex:L,currentIndex:a})},ne=()=>{let G=I.getBoundingClientRect();if(d)return T<G.left||T>G.right;return B<G.top||B>G.bottom},ve=()=>{let G=c?.getMethod("_getFocusedIndex");return G?G():-1},be=(G)=>{let ge=c?.getMethod("_focusById");if(ge)ge(G)},de=(G)=>{if(!c)return;let ge=d?I.clientWidth:I.clientHeight,ae=y.scrollPosition,Ee=f.getOffset(G),Ae=Ee+f.getSize(G);if(Ee<ae)c.scrollTo(Math.max(0,Ee));else if(Ae>ae+ge)c.scrollTo(Ae-ge)},R=(G)=>{if(!N)return;N.textContent="",N.offsetHeight,N.textContent=G},le=(G)=>{if(!c)return"";let ae=c.getItems()[G];if(!ae)return"";return v.querySelector(`[data-index="${G}"]`)?.textContent?.trim()||String(ae.id)},re=()=>String(y.totalItems),Se=(G)=>{let ge=v.children;for(let ae=0;ae<ge.length;ae++)ge[ae].style.transition=G},Me=()=>{let G=()=>{if(!A||!c)return;let ge=I.getBoundingClientRect(),ae=0,Ee=3;if(d){let He=T-ge.left,Fe=ge.right-T;if(He<s){let ye=Math.min(Ee,1-He/s);ae=-r*ye*ye}else if(Fe<s){let ye=Math.min(Ee,1-Fe/s);ae=r*ye*ye}}else{let He=B-ge.top,Fe=ge.bottom-B;if(He<s){let ye=Math.min(Ee,1-He/s);ae=-r*ye*ye}else if(Fe<s){let ye=Math.min(Ee,1-Fe/s);ae=r*ye*ye}}let Ae=ne();if(ae!==0){let He=y.scrollPosition,Fe=f.getTotalSize()-(d?I.clientWidth:I.clientHeight);if(ae<0&&He<=0||ae>0&&He>=Fe)m=Ae;else m=!0,c.scrollTo(He+ae)}else m=Ae;oe=requestAnimationFrame(G)};oe=requestAnimationFrame(G)},xe=()=>{if(oe)cancelAnimationFrame(oe),oe=0},Le=(G=!1)=>{if(A=!1,q=!1,D&&D.parentNode)D.remove();D=null,_=null;let ge=v.children;for(let Ee=0;Ee<ge.length;Ee++){let Ae=ge[Ee];Ae.classList.remove(u);let He=x(Ae);if(He>=0)Ae.style.transform=`${w}(${Math.round(f.getOffset(He))}px)`;Ae.style.transition=""}xe(),S.classList.remove(M),document.body.style.cursor="";let ae=window.getSelection();if(ae)ae.removeAllRanges();if(document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),!G&&c)c.forceRender()},Te=(G,ge)=>{if(!c)return;let ae=G!==ge&&G>=0&&ge>=0,Ee=()=>{if(!c)return;if(A=!1,ae){if(S.classList.add(b),c.emitter.emit("sort:end",{fromIndex:G,toIndex:ge}),O!==null)be(O);Le(!0),requestAnimationFrame(()=>S.classList.remove(b))}else S.classList.add(b),c.emitter.emit("sort:cancel",{originalItems:[...c.getItems()]}),Le(!1),requestAnimationFrame(()=>S.classList.remove(b))};if(!D){Ee();return}let Ae=I.getBoundingClientRect(),He=y.scrollPosition,Fe=f.getOffset(ge),ye=o>0?o:150;if(D.style.transition=`left ${ye}ms ease, top ${ye}ms ease`,d)D.style.left=`${Ae.left-I.scrollLeft+Fe-He}px`,D.style.top=`${Ae.top}px`;else D.style.left=`${Ae.left}px`,D.style.top=`${Ae.top+Fe-He}px`;let Q=!1,we=()=>{if(Q)return;Q=!0,D?.removeEventListener("transitionend",we),Ee()};D.addEventListener("transitionend",we),setTimeout(we,ye+50)},Pe=(G)=>{if(y.destroyed||!c)return;if(A)return;if(g)Ie();if(G.button!==0)return;let ge=G.target;if(e){if(!ge.closest(e))return}let ae=E(ge);if(!ae)return;let Ee=x(ae);if(Ee<0)return;F=G.clientX,V=G.clientY,T=G.clientX,B=G.clientY,L=Ee,q=!1,_=ae;let Ae=ae.getBoundingClientRect();U=G.clientX-Ae.left,P=G.clientY-Ae.top,document.addEventListener("pointermove",Re),document.addEventListener("pointerup",K),document.addEventListener("pointercancel",ue)};function Re(G){if(!c)return;if(T=G.clientX,B=G.clientY,!q){let ge=T-F,ae=B-V;if(Math.sqrt(ge*ge+ae*ae)<i)return;if(q=!0,A=!0,a=L,S.classList.add(M),document.body.style.cursor="grabbing",Y=f.getSize(L),_)D=z(_),_.classList.add(u);let Ee=ve();if(Ee>=0){let He=c.getItems()[Ee];O=He?He.id:null}else O=null;c.emitter.emit("sort:start",{index:L}),Me()}if(A){if(G.preventDefault(),X(),!m)ie();else if(ne()){if(a!==L)a=L,ee()}}}function K(G){if(!q){document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),_=null;return}G.preventDefault(),document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),xe(),Te(L,a)}let he=()=>{if(!q)return;document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),xe(),ee(),Te(L,L)};function ue(){he()}let pe=()=>{let G=v.querySelectorAll(`.${Z}`);for(let ge=0;ge<G.length;ge++)G[ge].classList.remove(Z)},me=()=>{pe();let G=v.querySelector(`[data-id="${C}"]`);if(G)G.classList.add(Z)},Ce=(G)=>{if(!c)return;let ge=c.getItems(),ae=ge[G];if(!ae)return;g=!0,C=ae.id,j=G,J=G,k=[...ge],S.classList.add(M),c.emitter.emit("sort:start",{index:G}),me(),R(`Grabbed ${le(G)}. Current position ${G+1} of ${re()}. Use Up and Down arrow keys to move, Space to drop, Escape to cancel.`)},fe=()=>{if(!g||!c)return;g=!1;let G=J,ge=le(G);Se("none"),S.classList.remove(M),pe(),be(C),c.forceRender(),R(`${ge} dropped. Final position ${G+1} of ${re()}.`),k=[],requestAnimationFrame(()=>Se(""))},Ie=()=>{if(!g||!c)return;g=!1;let G=j;if(Se("none"),S.classList.remove(M),pe(),J!==G)c.emitter.emit("sort:cancel",{originalItems:k});be(C),c.forceRender(),de(G),R(`Reorder cancelled. Returned to position ${G+1} of ${re()}.`),k=[],requestAnimationFrame(()=>Se(""))},ze=(G)=>{if(!g||!c)return;let ge=y.totalItems,ae=J+G;if(ae<0||ae>=ge)return;let Ee=J,Ae=ae;Se("none"),c.emitter.emit("sort:end",{fromIndex:Ee,toIndex:Ae}),J=Ae,be(C),c.forceRender(),de(Ae),me(),R(`${le(Ae)} moved. New position ${Ae+1} of ${re()}.`),requestAnimationFrame(()=>Se(""))},ce=(G)=>{if(y.destroyed)return;if(A){if(G.key==="Escape")G.preventDefault(),G.stopImmediatePropagation(),he();return}if(g)switch(G.key){case" ":case"Enter":G.preventDefault(),G.stopImmediatePropagation(),fe();return;case"Escape":G.preventDefault(),G.stopImmediatePropagation(),Ie();return;case"ArrowUp":case"ArrowLeft":G.preventDefault(),G.stopImmediatePropagation(),ze(-1);return;case"ArrowDown":case"ArrowRight":G.preventDefault(),G.stopImmediatePropagation(),ze(1);return;default:if(!G.key.startsWith("F")&&G.key!=="Tab")G.preventDefault(),G.stopImmediatePropagation();return}if(G.key===" "&&!G.shiftKey&&!G.ctrlKey&&!G.metaKey){let ge=ve();if(ge>=0)G.preventDefault(),G.stopImmediatePropagation(),Ce(ge)}};return{name:"sortable",priority:30,conflicts:["grid","masonry","table","scale","tree"],setup(G){c=G,y=G.getState(),f=G.sizeCache,v=G.dom.content,I=G.dom.viewport,S=G.dom.root,H=G.config.classPrefix,d=G.config.axis.primary==="x",w=d?"translateX":"translateY",p=o>0?`transform ${o}ms ease`:"none",M=`${H}--sorting`,b=`${H}--settling`,u=`${H}-item--drag-source`,Z=`${H}-item--kb-sorting`,G.registerMethod("isSorting",()=>A||g),v.addEventListener("pointerdown",Pe),S.addEventListener("keydown",ce),h=`${H}-sort-instructions`,W=document.createElement("div"),W.id=h,W.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",W.textContent="Press Space to reorder. Use arrow keys to move, Space to drop, Escape to cancel.",S.appendChild(W),N=document.createElement("div"),N.setAttribute("role","status"),N.setAttribute("aria-live","assertive"),N.setAttribute("aria-atomic","true"),N.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",S.appendChild(N),G.registerDestroyHandler(()=>{if(g)Ie();Le(),v.removeEventListener("pointerdown",Pe),S.removeEventListener("keydown",ce),W?.remove(),N?.remove()})},hooks:{onCommit(){if(!c)return;let G=v.children;for(let ge=0;ge<G.length;ge++){let ae=G[ge],Ee=x(ae);if(Ee<0)continue;if(ae.setAttribute("aria-roledescription","sortable item"),ae.setAttribute("aria-describedby",h),g)if(ae.getAttribute("data-id")===String(C))ae.classList.add(Z);else ae.classList.remove(Z);if(A)if(Ee===L)ae.classList.add(u),_=ae;else{ae.classList.remove(u);let Ae=0;if(a>L){if(Ee>L&&Ee<=a)Ae=-Y}else if(a<L){if(Ee>=a&&Ee<L)Ae=Y}let He=Math.round(f.getOffset(Ee)+Ae);ae.style.transform=`${w}(${He}px)`}}}},destroy(){if(D&&D.parentNode)D.remove();D=null,xe(),W?.remove(),N?.remove(),c=null}}}function Nt(t,e){let n=[],o=e,s=new Map,r=[];function i(){s.clear();for(let L=0;L<n.length;L++)s.set(n[L].id,L)}function l(L){let a=n[L].depth,F=0;for(let V=L+1;V<n.length;V++){if(n[V].depth<=a)break;F++}return F}function y(L,a,F,V){for(let T=0;T<L.length;T++){let B=L[T],q=B.id,D=t(B),oe=D.length>0,_=oe&&o.has(q);if(V.push({item:B,id:q,depth:F,parentId:a,hasChildren:oe,expanded:_,childCount:D.length,siblingCount:L.length,positionInSiblings:T,isLastChild:T===L.length-1,loading:!1}),_)y(D,q,F+1,V)}}function f(L,a,F){for(let V of L){if(V.id===a)return V;let T=t(V);if(T.length>0){F?.push(V.id);let B=f(T,a,F);if(B)return B;F?.pop()}}return}function c(L,a){if(a===null)return r;let F=f(r,a);return F?t(F):[]}function v(L,a){let F=f(r,a);if(!F)return!1;return f(t(F),L)!==void 0}function I(L){let a=new Set;function F(V){for(let T of V){if(a.has(T.id))throw Error(`[vlist] tree: duplicate id "${T.id}"`);a.add(T.id);let B=t(T);if(B.length>0)F(B)}}F(L)}function S(L,a){if(r=L,!a)I(L);n.length=0,y(L,null,0,n),i()}function H(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a];if(!F.hasChildren||F.expanded)return 0;let V=[],T=t(F.item);if(y(T,L,F.depth+1,V),V.length===0)return 0;F.expanded=!0,o.add(L);let B=a+1,q=n.splice(B);for(let D=0;D<V.length;D++)n.push(V[D]);for(let D=0;D<q.length;D++)n.push(q[D]);return i(),V.length}function d(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a];if(!F.hasChildren||!F.expanded)return 0;F.expanded=!1,o.delete(L);let V=l(a);if(V>0)n.splice(a+1,V),i();return V}function w(L){function a(F){for(let V of F){let T=t(V);if(T.length>0)o.add(V.id),a(T)}}a(L),S(L)}function p(){o.clear(),S(r,!0)}function M(L){let a=[];if(!f(r,L,a))return;for(let F of a)o.add(F);S(r,!0)}function b(L,a,F){if(s.has(a.id)||f(r,a.id))throw Error(`[vlist] tree: duplicate id "${a.id}"`);if(L===null){let D=r,oe=F??D.length;D.splice(oe,0,a),S(r,!0);return}let V=s.get(L);if(V===void 0)throw Error(`[vlist] tree: parent "${L}" not found`);let T=n[V],B=t(T.item),q=F??B.length;if(B.splice(q,0,a),!T.hasChildren)T.hasChildren=!0,T.childCount=1,T.expanded=!1;else T.childCount=B.length;if(T.expanded)S(r,!0);else i()}function u(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a],T=l(a)+1;for(let D=a;D<a+T;D++)o.delete(n[D].id);if(n.splice(a,T),F.parentId!==null){let D=s.get(F.parentId);if(D!==void 0){let oe=n[D];if(oe.childCount--,oe.childCount===0)oe.hasChildren=!1,oe.expanded=!1,o.delete(oe.id)}}let B=c(L,F.parentId),q=B.findIndex((D)=>D.id===L);if(q>=0)B.splice(q,1);return S(r,!0),T}function A(L,a,F){if(a!==null&&v(a,L))throw Error(`[vlist] tree: cannot move "${L}" to its own descendant "${a}"`);if(L===a)throw Error(`[vlist] tree: cannot move "${L}" to itself`);let V=s.get(L);if(V===void 0)return;let T=n[V],B=c(L,T.parentId),q=B.findIndex((D)=>D.id===L);if(q>=0)B.splice(q,1);if(a===null){let D=r,oe=F??D.length;D.splice(oe,0,T.item)}else{let D=f(r,a);if(!D)throw Error(`[vlist] tree: new parent "${a}" not found`);let oe=t(D),_=F??oe.length;oe.splice(_,0,T.item)}S(r,!0)}return{flatNodes:n,expandedIds:o,idToIndex:s,rebuild:S,expand:H,collapse:d,expandAll:w,collapseAll:p,expandTo:M,getSubtreeSize:l,addChild:b,removeNode:u,moveNode:A,get totalVisible(){return n.length},get rootItems(){return r}}}var Fo=()=>[];function Do(t){let{children:e,parentId:n}=t;if(n!==void 0)return Fo;if(e===void 0||e==="children")return(o)=>o.children??[];if(typeof e==="string"){let o=e;return(s)=>s[o]??[]}return e}function Vo(t){let{label:e}=t;if(e===void 0)return(n)=>{let o=n;return String(o.name??o.label??o.title??n.id)};if(typeof e==="string"){let n=e;return(o)=>String(o[n]??o.id)}return e}function $o(t,e,n){let{expanded:o}=t,s=new Set;if(o===void 0||o===!1)return s;if(Array.isArray(o)){for(let l of o)s.add(l);return s}let r=o===!0?null:o;function i(l){for(let y of l){let f=n(y);if(f.length>0){if(!r||r(y))s.add(y.id);i(f)}}}return i(e),s}function Qn(t,e){let{parentId:n}=e;if(n===void 0)throw Error("[vlist] tree: parentId not set");let o=typeof n==="string"?(l)=>l[n]??null:n,s=(l)=>o(l)??null,r=new Map,i=new Map;for(let l of t){i.set(l.id,l);let y=s(l),f=r.get(y);if(!f)f=[],r.set(y,f);f.push(l)}for(let l of t){let y=s(l);if(y!==null&&y!==void 0&&!i.has(y))console.warn(`[vlist] tree: orphaned node "${l.id}" — parentId "${y}" not found`)}return{roots:r.get(null)??[],getChildren:(l)=>{let y=r.get(l.id);if(!y)y=[],r.set(l.id,y);return y}}}var Be={selected:!1,focused:!1},qe={depth:0,expanded:!1,hasChildren:!1,isLeaf:!0,isLastChild:!1,loading:!1};Be.tree=qe;function Gt(t){let e=t??{},n=e.indent??24,o=e.paddingStart??0,s=e.expandOnClick??!1,r=e.connectorLines??!1,i=e.parentId!==void 0,l,y,f,c,v,I,S,H,d,w,p=null,M,b,u,A,L,a,F,V,T,B,q=new Map,D=-1,oe=-1,_=-1,Y=!0,U=null,P=!1,O,g=-1,C=!1,j=!1,J="",k=null;function h(){if(j){let K=M("_getFocusedIndex");return K?K():-1}return C?g:-1}let W,N,Z;function m(){if(N!==void 0)return;W=M("select")??null,N=M("_focusById")??null,Z=M("_isFollowFocus")??null}function E(K){if(K<0||K>=l.totalVisible)return;let he=l.flatNodes[K];if(!he)return;if(j){if(m(),N)N(he.id);if(Z?.()&&W)W(he.id);else X();x(K)}else g=K,C=!0,v.setAttribute("aria-activedescendant",`${d}-item-${K}`),x(K),X()}function x(K){let he=y.getOffset(K),ue=y.getSize(K),pe=f.scrollPosition,me=f.containerSize;if(he<pe)z(he);else if(he+ue>pe+me)z(he-me+ue)}let z,X,se;function te(K){return H?`translate(${Math.round(K)}px, 0)`:`translate(0, ${Math.round(K)}px)`}function ee(K){if(K===_)return;_=K,v.style[H?"width":"height"]=K+"px"}function ie(){q.forEach((K)=>{K.remove(),c.release(K)}),q.clear()}let ne=0;function ve(){let K=se();if(K===U&&K.length===ne)return;if(U=K,ne=K.length,i){let{roots:he,getChildren:ue}=Qn(K,e),pe=e.loadChildren?(me)=>R.get(me.id)??ue(me):ue;l=Nt(pe,l.expandedIds),l.rebuild(he,!0)}else l.rebuild(K,!0);be(),ie()}function be(){f.totalItems=l.totalVisible,O(l.totalVisible);let K=y.getTotalSize();ee(K);let he=M("_scrollbar:getInstance");if(he)he()?.updateBounds(K,f.containerSize)}function de(){be(),ie(),X()}let R=new Map,le=new Set;async function re(K){if(!e.loadChildren||le.has(K))return;let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he];le.add(K),ue.loading=!0,queueMicrotask(()=>X());try{let pe=await e.loadChildren(ue.item);le.delete(K);let me=l.idToIndex.get(K);if(me===void 0)return;let Ce=l.flatNodes[me];if(Ce.loading=!1,R.set(K,pe),Ce.hasChildren=pe.length>0,Ce.childCount=pe.length,pe.length>0)Ce.expanded=!0,l.expandedIds.add(K),l.rebuild(l.rootItems);de(),b.emit("tree:load",{id:K,item:Ce.item,children:pe})}catch(pe){le.delete(K),R.set(K,[]);let me=l.idToIndex.get(K);if(me!==void 0)l.flatNodes[me].loading=!1;X(),b.emit("tree:load:error",{id:K,item:ue.item,error:pe})}}function Se(K){let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he];if(e.loadChildren&&!ue.hasChildren&&!ue.loading){if(!R.has(K)){re(K);return}}if(l.expand(K)===0)return;de(),b.emit("tree:expand",{id:K,item:ue.item,depth:ue.depth})}function Me(K){let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he],pe=l.collapse(K);if(pe===0)return;if(!j&&g>he){if(g<=he+pe)g=he;else g-=pe;if(C)v.setAttribute("aria-activedescendant",`${d}-item-${g}`)}de(),b.emit("tree:collapse",{id:K,item:ue.item,depth:ue.depth})}function xe(K,he,ue,pe){let{depth:me,expanded:Ce,hasChildren:fe,loading:Ie,siblingCount:ze,positionInSiblings:ce,isLastChild:G,id:ge}=he;if(K.className=A,Ce)K.classList.add(L);if(!fe)K.classList.add(a);if(Ie)K.classList.add(F);if(r&&G)K.classList.add(V);if(K.setAttribute("role","treeitem"),K.setAttribute("data-index",String(ue)),K.setAttribute("data-id",String(ge)),K.id=`${d}-item-${ue}`,K.setAttribute("aria-level",String(me+1)),K.setAttribute("aria-setsize",String(ze)),K.setAttribute("aria-posinset",String(ce+1)),fe)K.setAttribute("aria-expanded",String(Ce));else K.removeAttribute("aria-expanded");if(K.style.paddingLeft=`${o+me*n}px`,K.style.setProperty("--vlist-tree-depth",String(me)),r)K.style.setProperty("--vlist-tree-indent",`${n}px`),K.style.setProperty("--vlist-tree-pad",`${o}px`);if(pe)pe(ue,Be);else Be.selected=!1,Be.focused=!1;qe.depth=me,qe.expanded=Ce,qe.hasChildren=fe,qe.isLeaf=!fe,qe.isLastChild=G,qe.loading=Ie;let ae=S(he.item,ue,Be);if(typeof ae==="string")K.innerHTML=ae;else K.innerHTML="",K.appendChild(ae);Ge(K)}function Le(){if(f.destroyed)return;if(ve(),!P){if(P=!0,v.setAttribute("role","tree"),v.setAttribute("tabindex","0"),I.classList.add(`${d}--tree`),r)I.classList.add(`${d}--tree-lines`)}let K=f.scrollPosition,he=f.containerSize;if(!Y&&K===D&&he===oe)return;D=K,oe=he,Y=!1;let ue=l.totalVisible;if(he<=0||ue===0){if(q.size>0)ie();return}let pe=y.indexAtOffset(K),me=y.indexAtOffset(K+he);if(me<ue-1)me++;pe=Math.max(0,pe),me=Math.min(ue-1,Math.max(0,me));let Ce=Math.max(0,pe-w),fe=Math.min(ue-1,me+w);if(Ce===f.prevRangeStart&&fe===f.prevRangeEnd&&!f.renderPending)return;q.forEach((G,ge)=>{if(ge<Ce||ge>fe)G.remove(),c.release(G),q.delete(ge)});let Ie=p?.()??null,ze=null;for(let G=Ce;G<=fe;G++){let ge=l.flatNodes[G],ae=q.get(G);if(ae===void 0){if(ae=c.acquire(),xe(ae,ge,G,Ie),ae.style[H?"width":"height"]=`${y.getSize(G)}px`,q.set(G,ae),!ze)ze=document.createDocumentFragment();ze.appendChild(ae)}else if(ae.getAttribute("data-id")!==String(ge.id)||ae.classList.contains(F)!==ge.loading)xe(ae,ge,G,Ie);if(ae.style.transform=te(y.getOffset(G)),Ie)if(Ie(G,Be),ae.classList.toggle(T,Be.selected),ae.classList.toggle(B,Be.focused),Be.selected)ae.setAttribute("aria-selected","true");else ae.removeAttribute("aria-selected");else if(!j){let Ee=C&&g===G;ae.classList.toggle(B,Ee)}}if(ze)v.appendChild(ze);ee(y.getTotalSize()),f.prevRangeStart=Ce,f.prevRangeEnd=fe,f.renderPending=!1;let ce=0;for(let G=Ce;G<=fe&&ce<f.capacity;G++)f.visibleIndices[ce]=G,f.visibleOffsets[ce]=y.getOffset(G),f.visibleSizes[ce]=y.getSize(G),ce++;f.visibleCount=ce,f.startIndex=Ce}function Te(){if(f.destroyed)return;f.prevRangeStart=-1,f.prevRangeEnd=-1,f.renderPending=!0,Y=!0,Le()}function Pe(K,he){if(J+=K.toLowerCase(),k!==null)clearTimeout(k);k=setTimeout(()=>{J="",k=null},500);let ue=l.totalVisible;for(let pe=1;pe<=ue;pe++){let me=(he+pe)%ue,Ce=l.flatNodes[me];if(u(Ce.item).toLowerCase().startsWith(J)){E(me);return}}}function Re(K){let he=!1;for(let ue of l.flatNodes)if(ue.parentId===K.parentId&&ue.hasChildren&&!ue.expanded)l.expandedIds.add(ue.id),he=!0;if(!he)return;l.rebuild(l.rootItems,!0),de()}return{name:"tree",priority:10,conflicts:["groups","grid","masonry","table"],setup(K){y=K.sizeCache,f=K.getState(),c=K.pool,v=K.dom.content,I=K.dom.root,S=K.template,H=K.config.axis.primary==="x",d=K.config.classPrefix,w=K.config.overscan,b=K.emitter,p=K.getItemStateFn.bind(K),M=K.getMethod.bind(K),z=K.scrollTo.bind(K),X=K.forceRender.bind(K),se=K.getItems.bind(K),A=`${d}-item ${d}-tree-node`,L=`${d}-tree-node--expanded`,a=`${d}-tree-node--leaf`,F=`${d}-tree-node--loading`,V=`${d}-tree-node--last`,T=`${d}-item--selected`,B=`${d}-item--focused`;let he=K.getItems();U=he,ne=he.length;let ue,pe;if(i){let ce=Qn(he,e);ue=ce.getChildren,pe=ce.roots}else ue=Do(e),pe=he;let me=e.loadChildren?(ce)=>R.get(ce.id)??ue(ce):ue;u=Vo(e);let Ce=$o(e,pe,me);l=Nt(me,Ce),l.rebuild(pe),O=y.rebuild,y.rebuild=(ce)=>{O(l.totalVisible)},y.rebuild(l.totalVisible),f.totalItems=l.totalVisible,K.setVirtualTotalFn(()=>l.totalVisible),K.setGetItemFn((ce)=>{let G=l.flatNodes[ce];return G?G.item:void 0}),K.setGetIndexByIdFn((ce)=>l.idToIndex.get(ce)??-1),K.setRenderFn(Le,Te),K.registerMethod("_layoutToDataIndex",(ce)=>ce),K.registerMethod("_dataToLayoutIndex",(ce)=>ce),K.registerMethod("_getLoadedItem",(ce)=>{let G=l.flatNodes[ce];return G?G.item:void 0}),K.registerMethod("_getRenderedElement",(ce)=>q.get(ce)??null),queueMicrotask(()=>{j=!!(M("_getFocusedIndex")||K.getItemStateFn())}),K.setInsertItemFn((ce,G)=>{let ge=se(),ae=Math.min(G,ge.length);ge.splice(ae,0,ce),ne=ge.length,l.rebuild(ge),de()}),K.setRemoveItemFn((ce)=>{let G=l.idToIndex.get(ce),ge=null;if(i&&G!==void 0){ge=new Set,ge.add(ce);let Ee=l.getSubtreeSize(G);for(let Ae=G+1;Ae<=G+Ee;Ae++)ge.add(l.flatNodes[Ae].id)}let ae=l.removeNode(ce);if(ae===0)return-1;if(!j&&G!==void 0&&g>=G)g=Math.max(0,Math.min(g-ae,l.totalVisible-1));if(i&&ge){let Ee=se();for(let Ae=Ee.length-1;Ae>=0;Ae--)if(ge.has(Ee[Ae].id))Ee.splice(Ae,1)}return ne=se().length,de(),b.emit("data:change",{type:"remove",id:ce}),ae}),K.setUpdateItemFn((ce,G)=>{let ge=l.idToIndex.get(ce);if(ge===void 0)return!1;let ae=l.flatNodes[ge];Object.assign(ae.item,G);let Ee=q.get(ge);if(Ee)xe(Ee,ae,ge,p?.()??null);return b.emit("data:change",{type:"update",id:ce}),!0}),K.registerClickHandler((ce)=>{let G=ce.target.closest("[data-index]");if(!G)return;let ge=parseInt(G.dataset.index??"-1",10);if(ge<0)return;let ae=l.flatNodes[ge];if(!ae)return;let Ee=ae.id,Ae=!1;if(s&&(ae.hasChildren||e.loadChildren&&!ae.loading&&!R.has(Ee))){let He=l.totalVisible;if(ae.expanded)Me(Ee);else Se(Ee);Ae=l.totalVisible!==He}if(j&&Ae){if(m(),N)N(Ee);if(W)W(Ee)}else if(!j)g=l.idToIndex.get(Ee)??ge,C=!1,v.focus({preventScroll:!0})});let fe=()=>{if(f.destroyed||j)return;if(!v.matches(":focus-visible")&&!I.matches(":focus-visible"))return;let ce=l.totalVisible;if(ce===0)return;g=g>=0?Math.min(g,ce-1):0,C=!0,v.setAttribute("aria-activedescendant",`${d}-item-${g}`),x(g),Te()};I.addEventListener("focusin",fe);let Ie=(ce)=>{if(f.destroyed||j)return;let G=ce.relatedTarget;if(G&&I.contains(G))return;C=!1,v.removeAttribute("aria-activedescendant"),Te()};I.addEventListener("focusout",Ie),K.registerKeydownHandler((ce)=>{if(f.destroyed)return;let G=l.totalVisible;if(G===0)return;let ge=h();if(ge<0&&!j&&(ce.key==="ArrowDown"||ce.key==="Home")){E(0),ce.preventDefault();return}if(ge<0)return;let ae=l.flatNodes[ge];if(!ae)return;switch(ce.key){case"ArrowRight":{if(ae.hasChildren||e.loadChildren&&!ae.loading)if(!ae.expanded)Se(ae.id);else E(ge+1);ce.preventDefault();break}case"ArrowLeft":{if(ae.hasChildren&&ae.expanded)Me(ae.id);else if(ae.parentId!==null){let Ee=l.idToIndex.get(ae.parentId);if(Ee!==void 0)E(Ee)}ce.preventDefault();break}case"*":{Re(ae),ce.preventDefault();break}default:{if(!j){if(ce.key==="ArrowDown"){if(ge<G-1)E(ge+1);ce.preventDefault();break}if(ce.key==="ArrowUp"){if(ge>0)E(ge-1);ce.preventDefault();break}if(ce.key==="Home"){E(0),ce.preventDefault();break}if(ce.key==="End"){E(G-1),ce.preventDefault();break}if(ce.key==="Enter"){b.emit("item:click",{item:ae.item,index:ge,event:ce}),ce.preventDefault();break}}if(ce.key.length===1&&!ce.ctrlKey&&!ce.altKey&&!ce.metaKey)Pe(ce.key,ge),ce.preventDefault()}}}),K.registerMethod("expand",Se),K.registerMethod("collapse",Me),K.registerMethod("toggle",(ce)=>{let G=l.idToIndex.get(ce);if(G===void 0)return;if(l.flatNodes[G].expanded)Me(ce);else Se(ce)}),K.registerMethod("expandAll",()=>{l.expandAll(l.rootItems),de()}),K.registerMethod("collapseAll",()=>{l.collapseAll(),de()}),K.registerMethod("expandTo",(ce)=>{l.expandTo(ce),de();let G=l.idToIndex.get(ce);if(G!==void 0)x(G)}),K.registerMethod("getExpanded",()=>Array.from(l.expandedIds)),K.registerMethod("isExpanded",(ce)=>l.expandedIds.has(ce));let ze=i&&typeof e.parentId==="string"?e.parentId:null;K.registerMethod("addChild",(ce,G,ge)=>{if(ze)G[ze]=ce;if(i){let ae=se();ae.push(G),ne=ae.length}l.addChild(ce,G,ge),de(),b.emit("data:change",{type:"add",id:G.id})}),K.registerMethod("moveNode",(ce,G,ge)=>{if(ze){let ae=l.idToIndex.get(ce);if(ae!==void 0)l.flatNodes[ae].item[ze]=G}l.moveNode(ce,G,ge),de()}),K.registerMethod("getTreeLayout",()=>({totalVisible:l.totalVisible,flatNodes:l.flatNodes})),K.registerDestroyHandler(()=>{if(I.removeEventListener("focusin",fe),I.removeEventListener("focusout",Ie),ie(),I.classList.remove(`${d}--tree`),I.classList.remove(`${d}--tree-lines`),k!==null)clearTimeout(k)})},destroy(){if(q.clear(),k!==null)clearTimeout(k)}}}var eo=(t)=>{if(typeof t==="function")return t;if(typeof t==="string")return(e)=>{let n=e[t];return n==null?"":String(n)};return(e)=>{if(e==null)return"";let n="";for(let o in e){let s=e[o];if(typeof s==="string")n+=n?" "+s:s}return n}},Bt=(t,e,n)=>{if(!e)return!1;return(n?t:t.toLowerCase()).includes(e)},Oo=(t,e)=>{let n=t.querySelectorAll(`mark.${e}`);for(let o=n.length-1;o>=0;o--){let s=n[o],r=s.parentNode;if(!r)continue;let i=document.createTextNode(s.textContent??"");r.replaceChild(i,s),r.normalize()}},Wt=(t,e,n,o)=>{if(!e)return;Oo(t,o);let s=n?e:e.toLowerCase(),r=e.length,i=document.createTreeWalker(t,NodeFilter.SHOW_TEXT,{acceptNode(f){let c=f.nodeValue??"";return(n?c:c.toLowerCase()).includes(s)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}),l=[],y;while((y=i.nextNode())!==null)l.push(y);for(let f of l){let c=f.nodeValue??"",v=n?c:c.toLowerCase(),I=document.createDocumentFragment(),S=0,H=v.indexOf(s,0);while(H!==-1){if(H>S)I.appendChild(document.createTextNode(c.slice(S,H)));let d=document.createElement("mark");d.className=o,d.textContent=c.slice(H,H+r),I.appendChild(d),S=H+r,H=v.indexOf(s,S)}if(S<c.length)I.appendChild(document.createTextNode(c.slice(S)));f.parentNode?.replaceChild(I,f)}};var Kt=(t,e,n,o)=>{let s=document.createElement("button");return s.type="button",s.className=t,s.tabIndex=o,s.setAttribute("aria-label",e),s.innerHTML=n,s},to=(t,e,n,o,s,r,i)=>{let l=`${n}-search`,y=document.createElement("div");if(y.className=`${l} ${l}--bar ${l}--${o}`,y.setAttribute("role","search"),y.setAttribute("aria-disabled","false"),s.region)y.setAttribute("aria-label",s.region);let f=document.createElement("div");f.className=`${l}__container`;let c=document.createElement("span");c.className=`${l}__leading-icon`,c.setAttribute("aria-hidden","true"),c.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 v=document.createElement("div");v.className=`${l}__input-wrapper`;let I=document.createElement("input");if(I.type="text",I.className=`${l}__input`,I.placeholder=s.placeholder,I.spellcheck=!1,I.autocomplete="off",I.setAttribute("aria-label",s.placeholder),r)I.setAttribute("aria-controls",r);v.appendChild(I);let S=document.createElement("span");S.className=`${l}__counter`,S.setAttribute("aria-live","polite");let H=Kt(`${l}__nav-prev`,s.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),d=Kt(`${l}__nav-next`,s.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),w=Kt(`${l}__clear-button ${l}__clear-button--hidden`,s.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(f.append(c,v,S,H,d,w),y.appendChild(f),o==="top"&&e)t.insertBefore(y,e);else if(o==="top")t.insertBefore(y,t.firstChild);else t.appendChild(y);let p=()=>{w.classList.toggle(`${l}__clear-button--hidden`,I.value.length===0)},M=()=>{p(),i.onInput(I.value)},b=(F)=>i.onKeydown(F),u=()=>I.focus(),A=()=>{i.onClear(),I.focus()},L=()=>i.onPrev(),a=()=>i.onNext();return I.addEventListener("input",M),I.addEventListener("keydown",b),c.addEventListener("click",u),w.addEventListener("click",A),H.addEventListener("click",L),d.addEventListener("click",a),{root:y,input:I,setCounter(F){S.textContent=F},showNav(F){H.classList.toggle(`${l}__nav-prev--hidden`,!F),d.classList.toggle(`${l}__nav-next--hidden`,!F)},focus(){I.focus(),I.select()},setValue(F){I.value=F,p()},destroy(){I.removeEventListener("input",M),I.removeEventListener("keydown",b),c.removeEventListener("click",u),w.removeEventListener("click",A),H.removeEventListener("click",L),d.removeEventListener("click",a),y.remove()}}};var Ut={placeholder:"Search…",clear:"Clear search",previous:"Previous match",next:"Next match",noResults:"No results",results:(t)=>`${t} result${t===1?"":"s"}`,position:(t,e)=>`${t} of ${e}`,region:""};function Yt(t={}){let e=t.mode??"filter",n=t.position??"top",o={...Ut,...t.text},s=t.caseSensitive??!1,r=t.highlight!==!1,i=typeof t.highlight==="object"&&t.highlight!==null?t.highlight.within:void 0,l=t.minLength??1,y=t.cancelTimeout??0,f=t.variant??"default",c=eo(t.field),v,I,S,H,d,w=null,p=!1,M="",b=[],u=new Set,A=0,L=!1,a=null,F=!1,V=null,T=null,B=null,q=()=>{if(F)return;F=!0,V=v.getMethod("scrollToIndex")??null,T=v.getMethod("filterTree")??null,B=v.getMethod("clearTreeFilter")??null},D=()=>{if(b=[],u.clear(),M.length<l)return;let m=s?M:M.toLowerCase(),E=v.getItems();for(let x=0;x<E.length;x++){let z=E[x];if(z!==void 0&&Bt(c(z),m,s))b.push(x),u.add(x)}},oe=()=>{if(q(),T){let x=s?M:M.toLowerCase();T((z)=>Bt(c(z),x,s)),L=!0;return}let m=v.getItems(),E=b;v.setGetItemFn((x)=>m[E[x]]),v.setVirtualTotalFn(()=>E.length),I.totalItems=E.length,v.rebuildSizeCache(),v.updateContentSize(v.sizeCache.getTotalSize()),L=!0},_=()=>{if(!L)return;if(L=!1,B){B();return}v.setGetItemFn((m)=>v.getItems()[m]),v.setVirtualTotalFn(()=>v.getItems().length),I.totalItems=v.getItems().length,v.rebuildSizeCache(),v.updateContentSize(v.sizeCache.getTotalSize())},Y=()=>{q();let m=b[A];if(m===void 0)return;if(V)V(m,"center");else v.scrollTo(Math.max(0,v.sizeCache.getOffset(m)-v.getState().containerSize/2));let E=v.getItem(m);v.emitter.emit("search:match",{index:m,item:E,matchIndex:A,matches:b.length})},U=()=>{if(!w)return;if(M.length<l)w.setCounter("");else if(b.length===0)w.setCounter(o.noResults);else if(e==="navigate")w.setCounter(o.position(A+1,b.length));else w.setCounter(o.results(b.length))},P=()=>{let m=p&&M.length>=l;v.dom.root.classList.toggle(`${S}--searching`,m)},O=(m)=>{if(M=m,w?.setValue(M),D(),A=0,e==="filter")if(M.length>=l)oe();else _();if(P(),U(),v.forceRender(),e==="navigate"&&b.length>0)Y();v.emitter.emit("search:change",{query:M,matches:b.length,total:v.getItems().length}),k()},g=()=>{if(!p)p=!0,v.dom.root.classList.add(`${S}--search-open`),v.emitter.emit("search:open",void 0);w?.focus(),k()},C=()=>{J();let m=p||M.length>0;if(p=!1,M.length>0)O("");if(v.dom.root.classList.remove(`${S}--search-open`),P(),m)v.emitter.emit("search:close",void 0)},j=(m)=>{if(b.length===0)return;if(A=(A+m+b.length)%b.length,U(),e==="navigate")Y(),v.forceRender()},J=()=>{if(a!==null)clearTimeout(a),a=null},k=()=>{if(J(),y>0&&p)a=setTimeout(()=>{a=null,C()},y)},h=(m)=>{if(!r||M.length<l)return;let E=m.startIndex,x=E+Math.max(0,m.visibleCount-1),z=e==="navigate"?b[A]:-1;for(let X=E;X<=x;X++){let se=v.getRenderedElement(X);if(!se)continue;if(i){let te=se.querySelectorAll(i);for(let ee=0;ee<te.length;ee++)Wt(te[ee],M,s,H)}else Wt(se,M,s,H);if(e==="navigate"){let te=X===z,ee=se.querySelectorAll(`.${H}`);for(let ie=0;ie<ee.length;ie++)ee[ie].classList.toggle(d,te)}}},W=(m)=>m.key.length===1&&!m.ctrlKey&&!m.metaKey&&!m.altKey,N=(m)=>{if((m.ctrlKey||m.metaKey)&&(m.key==="f"||m.key==="F")){m.preventDefault(),g();return}if(!p){if(n==="none"&&W(m))m.preventDefault(),g(),O(M+m.key);return}switch(m.key){case"Escape":m.preventDefault(),C();break;case"Enter":m.preventDefault(),j(m.shiftKey?-1:1);break;case"ArrowDown":m.preventDefault(),j(1);break;case"ArrowUp":m.preventDefault(),j(-1);break;default:if(n==="none"){if(m.key==="Backspace"){if(m.preventDefault(),O(M.slice(0,-1)),M.length===0)C()}else if(W(m))m.preventDefault(),O(M+m.key)}}},Z=(m)=>{if(m.key==="Escape"||m.key==="Enter"||m.key==="ArrowDown"||m.key==="ArrowUp")N(m)};return{name:"search",priority:55,setup(m){if(v=m,I=v.getState(),S=v.config.classPrefix,H=`${S}-search-match`,d=`${S}-search-match--current`,n!=="none"){let x=v.dom.root.id||void 0;if(w=to(v.dom.root,v.dom.viewport,S,n,{placeholder:o.placeholder,clear:o.clear,previous:o.previous,next:o.next,region:o.region},x,{onInput:(z)=>O(z),onClear:()=>O(""),onPrev:()=>j(-1),onNext:()=>j(1),onKeydown:Z}),w.showNav(e==="navigate"),f!=="default")w.root.classList.add(`${S}-search--${f}`);v.dom.root.classList.add(`${S}--has-search`)}let E=v.getItemStateFn();v.setItemStateFn((x,z)=>{if(E)E(x,z);if(M.length<l){delete z.search;return}if(e==="filter")z.search={matched:!0,query:M,matchIndex:x,isCurrent:!1};else{let X=b.indexOf(x);z.search={matched:u.has(x),query:M,matchIndex:X,isCurrent:X!==-1&&X===A}}}),v.registerMethod("openSearch",g),v.registerMethod("closeSearch",C),v.registerMethod("setQuery",(x)=>{if(!p)g();O(x)}),v.registerMethod("getQuery",()=>M),v.registerMethod("nextMatch",()=>j(1)),v.registerMethod("prevMatch",()=>j(-1)),v.registerMethod("getMatches",()=>b.slice()),v.registerKeydownHandler(N),v.registerDestroyHandler(()=>{J(),_(),w?.destroy(),w=null,v.dom.root.classList.remove(`${S}--search-open`,`${S}--searching`,`${S}--has-search`)})},hooks:{onCommit(m){h(m)}}}}function no(t){let{slots:e,focalSlot:n,containerSize:o,gap:s=0}=t,r=e.length,i=Math.max(0,r-1)*s,l=o-i,y=e.map((w)=>Math.round(w*l)),f=l-y.reduce((w,p)=>w+p,0);if(n<y.length)y[n]+=f;let c=(y[n]??0)+s,v=(w)=>w>=s?s:Math.max(0,w);function I(w,p,M){let b=w-p,u=n+b,A=u-1,L=S(u),a=S(A);return L+M*(a-L)}function S(w){if(w<0||w>=r)return 0;return y[w]??0}function H(w,p,M,b){let u=w-p,A=I(w,p,M),L=b;if(u>0)for(let D=0;D<u;D++){let oe=I(p+D,p,M);L+=oe+v(oe)}else if(u<0)for(let D=-1;D>=u;D--){let oe=I(p+D,p,M);L-=oe+v(oe)}let a=n+u,F=a-1,V;if(a===n)V=M;else if(F===n)V=1-M;else V=1;let T=y[n]??0,B=T>0?A/T:0,q=B>0.6?"large":B>0.3?"medium":"small";return{size:A,offset:L,progress:V,relOffset:u,role:q}}function d(w,p){if(n===0)return 0;let M=0;for(let b=-1;b>=-n;b--){let u=I(w+b,w,p);M+=u+v(u)}return M}return{slotWidths:y,stepSize:c,focalSlot:n,getItemLayout:H,getItemSize:I,getAnchorOffset:d}}var Xt=new Map;function Ye(t,e){Xt.set(t,e)}function qt(t){return Xt.get(t)}function rt(t,e,n){let o=Xt.get(t);return o?o(e,n):null}function jt(t){return t!==null&&"slots"in t}var pt=()=>({slots:[1],focalSlot:0}),bt=(t,e)=>({slots:[(t-e)/t,e/t],focalSlot:0}),ht=(t,e)=>({slots:[e/t,(t-2*e)/t,e/t],focalSlot:1}),vt=()=>({slots:[0.4,0.3,0.2,0.09999999999999998],focalSlot:0}),yt=(t)=>{let e=Math.max(2,Math.floor(t/(t*0.33))),n=1/e;return{slots:Array.from({length:e},()=>n),focalSlot:0,textFade:"size"}};Ye("full",pt);Ye("hero",bt);Ye("hero-center",ht);Ye("multi",vt);Ye("uncontained",yt);var Zt=101,St=50,No=10;function Go(t){if(typeof t==="function")return{variant:"custom",resolveSlots:t};if(typeof t==="object"){let e=t;return{variant:"custom",resolveSlots:()=>e}}return{variant:t,resolveSlots:(e,n)=>rt(t,e,n)}}function Jt(t){let e=t?.variant??"full",{variant:n,resolveSlots:o}=Go(e),s=n==="full"||(t?.snap??n!=="free"),r=t?.snapDirection??!0,i=t?.snapDuration??400,l=t?.snapEasing,y=t?.initialIndex??0,f=t?.peek??"auto",c,v,I=null,S,H=y,d=0,w=0,p=0,M=0,b=!1,u="vlist",A=-1,L=0,a=[],F=[],V=!1,T="role",B=t?.gap??0;function q(N){if(d<=0)return 0;return(N%d+d)%d}function D(N,Z,m){if(d<=1)return 0;let E=((Z-N)%d+d)%d,x=d-E;if(m==="forward")return E;if(m==="backward")return-x;return E<=x?E:-x}function oe(N){return St*d+N}function _(N){if(d<=0)return 0;return(N%d+d)%d}function Y(N){a=N;let Z=N.length;F=Array(Z+1),F[0]=0;for(let m=0;m<Z;m++)F[m+1]=F[m]+N[m];p=Z>0?F[Z]:0}function U(N){if(d<=0||p<=0)return{vi:0,frac:0};let Z=Math.floor(N/p),m=N-Z*p;if(m<0)m=0;if(!V){let te=a[0],ee=Math.min(Math.floor(m/te),d-1);return{vi:Z*d+ee,frac:te>0?m/te-ee:0}}let E=0,x=d-1;while(E<x){let te=E+x+1>>1;if(F[te]<=m)E=te;else x=te-1}let z=F[E],X=a[E],se=X>0?Math.max(0,Math.min((m-z)/X,1)):0;return{vi:Z*d+E,frac:se}}function P(N){if(typeof f==="number")return f;if(typeof f==="string"&&f.endsWith("%"))return Math.round(N*parseFloat(f)/100);return Math.max(40,Math.min(Math.round(N*0.15),120))}function O(N){if(d<=0||p<=0)return 0;let Z=Math.floor(N/d),m=(N%d+d)%d;return Z*p+(F[m]??0)}function g(N){let{vi:Z,frac:m}=U(N);return m>=0.5?Z+1:Z}function C(){if(A>=0)return A;return g(c.scrollPosition)}function j(N,Z){I?.smoothScrollTo(N,Z,l)}let J=null;function k(){if(!I)return;let N=I.getItems().length;if(N===d)return;let Z=H;if(d=N,V){let m=I.rawSizeSpec,E=typeof m==="function"?(x)=>m(x)+B:()=>m+B;Y(Array.from({length:d},(x,z)=>E(z)))}else Y(Array.from({length:d},()=>a[0]??w));if(M=d*Zt,c.totalItems=M,d>1){let m=Z<d?Z:0;H=m,I.scrollTo(O(St*d+m))}}function h(){if(!I||d<=0)return;if(!J&&!V&&d<=1)return;let Z=I.dom.content.children,m=c.scrollPosition,E=c.baseOffset,x=Math.round(m-E),z=S?"width":"height",{vi:X,frac:se}=U(m),te=X-(X%d+d)%d,ee=J?J.slotWidths[J.focalSlot]??0:0;if(J){let ie=m+J.getAnchorOffset(X,se);for(let ne=0;ne<Z.length;ne++){let ve=Z[ne],be=ve.dataset.index;if(be===void 0)continue;let de=parseInt(be,10),R=te+de;if(R-X>d/2)R-=d;if(X-R>d/2)R+=d;let le=J.getItemLayout(R,X,se,ie),re=Math.max(0,Math.round(le.size)),Se=Math.round(le.offset-E);if(re<=0)ve.style.display="none",ve.classList.remove(`${u}-item--focused`,`${u}-item--selected`),ve.removeAttribute("aria-selected");else ve.style.display="",ve.style[z]=re+"px",ve.style.transform=S?`translateX(${Se}px)`:`translateY(${Se}px)`;let Me;if(T==="size"){let xe=J.slotWidths[J.focalSlot]??1;Me=Math.min(1,Math.max(0,re/xe))}else if(T==="viewport"){let xe=Se-x,Le=Math.max(0,xe),Te=Math.min(c.containerSize,xe+re),Pe=re>0?Math.max(0,(Te-Le)/re):0;Me=Math.min(1,Pe)}else Me=le.role==="large"?1-le.progress:0;ve.style.setProperty("--vlist-carousel-progress",le.progress.toFixed(3)),ve.style.setProperty("--vlist-carousel-offset",String(le.relOffset)),ve.style.setProperty("--vlist-carousel-role",le.role),ve.style.setProperty("--vlist-carousel-role-weight",Me.toFixed(3)),ve.style.setProperty("--vlist-carousel-width",re+"px"),ve.style.setProperty("--vlist-carousel-focal-width",ee+"px")}}else for(let ie=0;ie<Z.length;ie++){let ne=Z[ie],ve=ne.dataset.index;if(ve===void 0)continue;let be=parseInt(ve,10),de=te+be;if(de-X>d/2)de-=d;if(X-de>d/2)de+=d;let R=_(de),le=Math.max(0,Math.round((a[R]??0)-B)),re=O(de),Se=Math.round(re-E);if(le<=0)ne.style.display="none";else ne.style.display="",ne.style[z]=le+"px",ne.style.transform=S?`translateX(${Se}px)`:`translateY(${Se}px)`;let Me=de-X,xe=Math.min(1,Math.abs(Me)+(Me===0?se:0)),Le;if(T==="viewport"||T==="size"){let Te=Se-x,Pe=Math.max(0,Te),Re=Math.min(c.containerSize,Te+le),K=le>0?Math.max(0,(Re-Pe)/le):0;Le=Math.min(1,K)}else Le=1-xe;ne.style.setProperty("--vlist-carousel-progress",xe.toFixed(3)),ne.style.setProperty("--vlist-carousel-offset",String(Me)),ne.style.setProperty("--vlist-carousel-role","large"),ne.style.setProperty("--vlist-carousel-role-weight",Le.toFixed(3)),ne.style.setProperty("--vlist-carousel-width",le+"px")}}function W(N,Z,m){if(!I)return;if(H=N,d<=1)return;let E=C(),x=_(E),z=((N-x)%d+d)%d,X=d-z,se=z<=X?z:-X,te=E+se;A=te;let ee=O(te);if(Z)j(ee,m);else I.scrollTo(ee),h()}return{name:"carousel",priority:10,conflicts:["scale"],setup(N){c=N.getState(),v=N.sizeCache,I=N,S=N.config.axis.primary==="x",u=N.config.classPrefix,d=c.totalItems;let Z=d>0?v.getSize(0):0,m=c.containerSize,E=P(m),x=o(m,E);if(jt(x))T=x.textFade??"role",J=no({slots:x.slots,focalSlot:x.focalSlot,containerSize:m,gap:B}),w=J.stepSize,Y(Array.from({length:Math.max(1,d)},()=>w)),V=!1;else if(typeof N.rawSizeSpec==="function"){T=x?.textFade??"viewport";let te=N.rawSizeSpec;Y(Array.from({length:d},(ee,ie)=>te(ie)+B)),w=a[0]??Z,V=!0}else T=x?.textFade??"viewport",w=Z,Y(Array.from({length:Math.max(1,d)},()=>w)),V=!1;if(M=d*Zt,H=q(y),d>1)N.setGetItemFn((te)=>{let ee=_(te);return N.getItems()[ee]}),v.getTotalSize=()=>p*Zt,v.getOffset=(te)=>O(te),v.getSize=(te)=>{let ee=_(te);return a[ee]??a[0]??0},v.indexAtOffset=(te)=>{if(p<=0)return 0;let ee=Math.floor(te/p),ie=te-ee*p;if(!V){let be=a[0]??1;return Math.max(0,Math.min(ee*d+Math.floor(ie/be),M-1))}let ne=0,ve=d-1;while(ne<ve){let be=ne+ve+1>>1;if(F[be]<=ie)ne=be;else ve=be-1}return Math.max(0,Math.min(ee*d+ne,M-1))},v.getTotal=()=>M,c.totalItems=M,N.setVirtualTotalFn(()=>d),N.setIndexMapFn(_),N.registerMethod("_layoutToDataIndex",_),N.setBoundedWrap({lapSize:()=>p,home:()=>St*p,thresholdLaps:St-No}),b=!0;if(N.registerMethod("next",(te,ee)=>{if(d<=1)return;let ie=te??1,ne=H,ve=ee?.behavior!=="auto",be=ee?.duration??i;I.cancelScroll();let R=C()+ie;A=R,H=_(R);let le=O(R);if(ve)j(le,be);else I.scrollTo(le),h();if(H!==ne)I.emitter.emit("carousel:change",{index:H,scrollPosition:c.scrollPosition})}),N.registerMethod("prev",(te,ee)=>{if(d<=1)return;let ie=te??1,ne=H,ve=ee?.behavior!=="auto",be=ee?.duration??i;I.cancelScroll();let R=C()-ie;A=R,H=_(R);let le=O(R);if(ve)j(le,be);else I.scrollTo(le),h();if(H!==ne)I.emitter.emit("carousel:change",{index:H,scrollPosition:c.scrollPosition})}),N.registerMethod("goTo",(te,ee)=>{if(d<=0)return;let ie=q(te),ne=ee?.direction??"auto",ve=ee?.behavior==="smooth",be=ee?.duration??i;if(d<=1){H=ie;return}if(I.cancelScroll(),ne==="forward"||ne==="backward"){let de=D(H,ie,ne==="forward"?"forward":"backward");H=ie;let le=C()+de;A=le;let re=O(le);if(ve)j(re,be);else I.scrollTo(re),h()}else W(ie,ve,be)}),N.registerMethod("getCarouselState",()=>{let te=c.scrollPosition,ee=d>0&&p>0?(te%p+p)%p:0;return{index:H,progress:0,offset:0,scrollPosition:ee,role:"large"}}),N.setScrollToIndexFn((te,ee,ie,ne,ve)=>{if(d<=1)return!1;let be=q(te);W(be,ie==="smooth",ne??i)}),N.setNavConfig({total:()=>d,navigate:(te,ee,ie)=>{let ne=te;if(ee==="ArrowRight"||ee==="ArrowDown")ne=(te+1)%ie;else if(ee==="ArrowLeft"||ee==="ArrowUp")ne=(te-1+ie)%ie;else if(ee==="Home")ne=0;else if(ee==="End")ne=ie-1;if(ne!==te)W(ne,!1,0),I?.forceRender(),h();return ne}}),!N.dom.content.getAttribute("tabindex"))N.dom.content.setAttribute("tabindex","0");let z=N.getMethod("next"),X=N.getMethod("prev"),se=N.getMethod("goTo");N.registerKeydownHandler((te)=>{let ee=te.key;if(ee==="ArrowRight"||ee==="ArrowDown")te.preventDefault(),z(1,{behavior:"smooth",duration:i});else if(ee==="ArrowLeft"||ee==="ArrowUp")te.preventDefault(),X(1,{behavior:"smooth",duration:i});else if(ee==="Home")te.preventDefault(),se(0,{behavior:"smooth",duration:i});else if(ee==="End")te.preventDefault(),se(d-1,{behavior:"smooth",duration:i})}),N.registerDestroyHandler(()=>{I?.cancelScroll()})},destroy(){I?.cancelScroll(),I=null},hooks:{onCommit(){if(!b||!I)return;b=!1;let N=O(oe(H));I.scrollTo(N),I.forceRender(),h()},onAfterScroll(N){if(b||!I)return;if(k(),d<=1)return;if(c.scrollDirection!==0)L=c.scrollDirection;if(A<0){let Z=c.scrollPosition,m=g(Z),E=_(m);if(E!==H)H=E,I.emitter.emit("carousel:change",{index:H,scrollPosition:Z})}h()},onIdle(){let N=L;if(A=-1,L=0,!s||!I||d<=1)return;let Z=c.scrollPosition,{vi:m,frac:E}=U(Z),x;if(r&&N!==0&&E>0.02&&E<0.98)x=N>0?m+1:m;else x=E>=0.5?m+1:m;let z=O(x);if(Math.abs(Z-z)>1)H=_(x),j(z,i)}}}}var Bo=50,Wo=0.1;function oo(t){let e=0,n=0,o=0;function s(){return o>0?n/o:0}function r(y){if(e=y,y>Wo&&y<Bo)n+=y,o++}function i(){let y=t.getTotal();if(y===0)return 0;let f=t.getItemSize();if(f<=0)return 0;let c=t.getContainerSize();if(c<=0)return 0;let v=t.getScrollPosition(),I=typeof t.getColumns==="function"?t.getColumns():1,H=Math.ceil(y/I)*f,w=Math.min(H,Je)-c,p=H-c,M=w>0?p/w:1,b=v*M,u=Math.ceil((b+c)/f);return Math.min(u*I,y)}function l(){let y=t.getTotal(),f=i();return{progress:y>0?Math.min(100,Math.max(0,f/y*100)):0,velocity:e,velocityAvg:s(),itemCount:f,total:y}}return{getState:l,onVelocity:r}}async function ro(t,e,n){let o=n?.key,s=t?.getScrollSnapshot,r=typeof s==="function"?s():void 0,i=ot(r?o?{restore:r,autoSave:o}:{restore:r}:o?{autoSave:o}:void 0),l=e(i),y=l.element;if(y.style.position="absolute",y.style.inset="0",y.style.visibility="hidden",n?.ready)await n.ready(l);else await new Promise((S)=>requestAnimationFrame(()=>S()));if(n?.delay&&n.delay>0)await new Promise((S)=>setTimeout(S,n.delay));let f=n?.transition,c=typeof f==="number"?f:f?.fadeIn??0,v=typeof f==="number"?f:f?.fadeOut??0,I=typeof f==="object"?f?.fadeOutDelay??0:0;if(t&&(c>0||v>0)){let S=t.element;y.style.visibility="",y.style.opacity="0",y.offsetHeight,y.style.transition=`opacity ${c}ms ease`,S.style.transition=`opacity ${v}ms ease ${I}ms`,y.style.opacity="1",S.style.opacity="0",await new Promise((H)=>setTimeout(H,Math.max(c,v+I)+50)),y.style.transition="",y.style.opacity="",S.style.transition="",S.style.opacity=""}else y.style.visibility="";if(y.style.position="",y.style.inset="",t)t.destroy();return l}export{wt as a11y,Ht as autosize,Jt as carousel,oo as createStats,kn as createVList,_t as data,pt as full,qt as getPreset,Pt as grid,Vt as groups,bt as hero,ht as heroCenter,kt as masonry,vt as multi,zt as page,ro as rebuild,Ye as registerPreset,rt as resolvePreset,Mt as scrollbar,Yt as search,At as selection,ot as snapshots,Ot as sortable,$t as table,Rt as transition,Gt as tree,yt as uncontained};
|
|
1
|
+
var it=3,tn="vlist";var lt=50;var nn=50,on=2,rn=15,sn=6,It=2000,ln=30000,Je=16000000,We=150,Qe=1,at=(t)=>t<0.5?2*t*t:1-(-2*t+2)**2/2,an=300,dn=2,un=1.5,cn=0.25,mn=0.75;var fn="x",gn=20,xt="_isPlaceholder",Ve="__placeholder_";var dt={top:0,right:0,bottom:0,left:0},pn=(t)=>{if(t==null)return dt;if(typeof t==="number")return t===0?dt:{top:t,right:t,bottom:t,left:t};if(t.length===2){let[r,i]=t;return r===0&&i===0?dt:{top:r,right:i,bottom:r,left:i}}let[e,n,o,s]=t;return e===0&&n===0&&o===0&&s===0?dt:{top:e,right:n,bottom:o,left:s}},bn=(t,e)=>e?t.left+t.right:t.top+t.bottom,hn=(t,e)=>e?t.top+t.bottom:t.left+t.right;function vn(t){let e={visibleIndices:new Int32Array(t),visibleOffsets:new Float64Array(t),visibleSizes:new Float64Array(t),visibleCount:0,startIndex:0,totalSize:0,capacity:t,scrollPosition:0,prevScrollPosition:0,scrollDirection:0,baseOffset:0,prevBaseOffset:0,containerSize:0,crossSize:0,totalItems:0,prevRangeStart:0,prevRangeEnd:-1,renderPending:!1,initialized:!1,destroyed:!1,prevAriaTotal:-1,resizeCapacity(n,o,s=it){if(o<=0||n<=0)return;let r=Math.ceil(n/o)+s*2;if(r<=e.capacity)return;let i=r+8,l=new Int32Array(i),y=new Float64Array(i),f=new Float64Array(i);l.set(e.visibleIndices),y.set(e.visibleOffsets),f.set(e.visibleSizes),e.visibleIndices=l,e.visibleOffsets=y,e.visibleSizes=f,e.capacity=i},clear(){e.visibleCount=0,e.startIndex=0}};return e}var ao=(t,e)=>{let n=e;return{getOffset:(o)=>o*t,getSize:(o)=>t,indexAtOffset:(o)=>{if(n===0||t===0)return 0;return Math.max(0,Math.min(Math.floor(o/t),n-1))},getTotalSize:()=>n*t,getTotal:()=>n,rebuild:(o)=>{n=o},isVariable:()=>!1}},uo=(t,e)=>{let n=e,o=new Float64Array(0),s=(i)=>{n=i,o=new Float64Array(i+1),o[0]=0;for(let l=0;l<i;l++)o[l+1]=o[l]+t(l)};s(e);let r=(i)=>{if(n===0)return 0;if(i<=0)return 0;if(i>=o[n])return n-1;let l=0,y=n-1;while(l<y){let f=l+y+1>>>1;if(o[f]<=i)l=f;else y=f-1}return l};return{getOffset:(i)=>{if(i<=0)return 0;if(i>=n)return o[n];return o[i]},getSize:(i)=>t(i),indexAtOffset:(i)=>r(i),getTotalSize:()=>o[n]??0,getTotal:()=>n,rebuild:(i)=>s(i),isVariable:()=>!0}},ut=(t,e)=>{if(typeof t==="number")return ao(t,e);return uo(t,e)};function yn(t){let e=[],n=`${t}-item`,o=document.createElement("div");return o.className=n,{acquire(){if(e.length>0)return e.pop();return o.cloneNode(!1)},release(s){if(s.className=n,s.removeAttribute("style"),s.removeAttribute("id"),s.removeAttribute("role"),s.removeAttribute("aria-selected"),s.removeAttribute("aria-posinset"),s.removeAttribute("aria-setsize"),s.removeAttribute("data-index"),s.removeAttribute("data-id"),s.textContent="",e.length<100)e.push(s)},get size(){return e.length},clear(){e.length=0}}}function Ge(t){let e=t.querySelectorAll("a[href],button,input,select,textarea,[tabindex]");for(let n=0;n<e.length;n++)e[n].setAttribute("tabindex","-1")}function Sn(t){if(typeof t==="string"){let e=document.querySelector(t);if(!e)throw Error(`[vlist] Container not found: ${t}`);return e}return t}function Tn(t,e,n,o){let s=n?`${e} ${e}--horizontal`:e,r=n?"overflow-x:auto;overflow-y:hidden;height:100%;width:100%":"overflow:auto;height:100%;width:100%",i=n?"position:relative;height:100%;overflow-anchor:none":"position:relative;width:100%;overflow-anchor:none",l=' role="list"';if(o)l+=` aria-label="${o.replace(/"/g,""")}"`;if(n)l+=' aria-orientation="horizontal"';t.insertAdjacentHTML("beforeend",`<div class="${s}"><div class="${e}-viewport" style="${r}" tabindex="-1"><div class="${e}-content" style="${i}"${l}></div></div></div>`);let y=t.lastElementChild,f=y.firstElementChild,c=f.firstElementChild,v=document.createElement("div");return v.className=`${e}-live`,v.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",v.setAttribute("aria-live","polite"),v.setAttribute("aria-atomic","true"),v.setAttribute("role","status"),y.appendChild(v),{root:y,viewport:f,content:c,liveRegion:v}}function In(t){let{state:e,viewport:n,isX:o,wheelEnabled:s,onFrame:r,onIdle:i}=t,l=t.idleTimeout||We,y=t.scrollTarget??n,f=null,c=null;function v(){let w=o?n.scrollLeft:n.scrollTop;if(Math.abs(w-e.scrollPosition)<0.5)return;e.prevScrollPosition=e.scrollPosition,e.scrollPosition=w,e.scrollDirection=w>e.prevScrollPosition?1:w<e.prevScrollPosition?-1:0,r(),S()}function I(w){let p;if(o){if(Math.abs(w.deltaX)>Math.abs(w.deltaY))return;let M=n.scrollLeft,b=n.scrollWidth-n.clientWidth;if(p=Math.max(0,Math.min(M+w.deltaY*Qe,b)),Math.abs(p-M)<1)return;w.preventDefault(),n.scrollLeft=p}else{let M=n.scrollWidth>n.clientWidth;if(M&&Math.abs(w.deltaX)>Math.abs(w.deltaY))return;if(M&&w.deltaX!==0)w.preventDefault(),n.scrollLeft+=w.deltaX;let b=n.scrollTop,u=n.scrollHeight-n.clientHeight;if(p=Math.max(0,Math.min(b+w.deltaY*Qe,u)),Math.abs(p-b)<1)return;w.preventDefault(),n.scrollTop=p}e.prevScrollPosition=e.scrollPosition,e.scrollPosition=p,e.scrollDirection=p>e.prevScrollPosition?1:-1,r(),S()}function S(){if(f!==null)clearTimeout(f);f=setTimeout(()=>{f=null,e.scrollDirection=0,i()},l)}function H(){if(c!==null)cancelAnimationFrame(c),c=null}function d(w,p,M,b=at,u){H();let A=e.scrollPosition,L=typeof w==="function"?w:()=>w,a=L();if(Math.abs(a-A)<1){if(M)M(a);else if(o)n.scrollLeft=a;else n.scrollTop=a;u?.();return}let F=performance.now();function V(T){a=L();let B=T-F,q=Math.min(B/p,1),D=A+(a-A)*b(q);if(M)M(D);else if(o)n.scrollLeft=D;else n.scrollTop=D;if(!M)e.scrollPosition=D;if(r(),q<1)c=requestAnimationFrame(V);else c=null,S(),u?.()}c=requestAnimationFrame(V)}return{attach(){if(y.addEventListener("scroll",v,{passive:!0}),s)y.addEventListener("wheel",I,{passive:!1})},detach(){if(y.removeEventListener("scroll",v),s)y.removeEventListener("wheel",I);if(H(),f!==null)clearTimeout(f),f=null},cancelScroll:H,smoothScrollTo:d}}function je(t,e,n){if(t<e)return e;if(t>n)return n;return t}function xn(t){let{state:e,viewport:n,content:o,isX:s,wheelEnabled:r,onFrame:i,onIdle:l,mainAxisPadding:y}=t,f=t.idleTimeout||We,c=t.runwayFactor??dn,v=t.wrap??null,I=v!==null,S=t.scrollTarget??n,H=0,d=0,w=0,p=null,M=null;function b(){return s?n.scrollLeft:n.scrollTop}function u(_){if(s)n.scrollLeft=_;else n.scrollTop=_}function A(_){let Y=I?_:je(_,0,d);e.prevScrollPosition=e.scrollPosition,e.scrollPosition=Y,e.scrollDirection=Y>e.prevScrollPosition?1:Y<e.prevScrollPosition?-1:0;let U=H/2;if(I){e.baseOffset=Y-U,u(U);return}let P=je(Y-U,0,w);e.baseOffset=P,u(je(Y-P,0,H))}function L(_){A(_),i(),B()}function a(){let _=b(),Y=e.baseOffset+_;if(Math.abs(Y-e.scrollPosition)<0.5)return;if(e.prevScrollPosition=e.scrollPosition,e.scrollPosition=Y,e.scrollDirection=Y>e.prevScrollPosition?1:Y<e.prevScrollPosition?-1:0,F(_),I)V();i(),B()}function F(_){let Y=H*cn,U=H*mn,P=H/2;if(I){if(_>=Y&&_<=U)return;e.baseOffset=e.scrollPosition-P,u(P);return}if(w<=0)return;let O=e.baseOffset,g=_<Y&&O>0,C=_>U&&O<w;if(!g&&!C)return;let j=e.scrollPosition,J=je(j-P,0,w);if(J===O)return;e.baseOffset=J,u(je(j-J,0,H))}function V(){let _=v.lapSize();if(_<=0)return;let Y=e.scrollPosition-v.home(),U=Math.trunc(Y/_);if(Math.abs(U)<v.thresholdLaps)return;let P=U*_;e.scrollPosition-=P,e.prevScrollPosition-=P,e.baseOffset-=P}function T(_){let Y;if(s)if(Math.abs(_.deltaX)>Math.abs(_.deltaY)){if(!I)return;Y=_.deltaX}else Y=_.deltaY;else{let g=n.scrollWidth>n.clientWidth;if(g&&Math.abs(_.deltaX)>Math.abs(_.deltaY))return;if(g&&_.deltaX!==0)_.preventDefault(),n.scrollLeft+=_.deltaX;Y=_.deltaY}let U=e.scrollPosition,P=U+Y*Qe,O=I?P:je(P,0,d);if(Math.abs(O-U)<1)return;if(_.preventDefault(),L(O),I)V()}function B(){if(p!==null)clearTimeout(p);p=setTimeout(()=>{p=null,e.scrollDirection=0,l()},f)}function q(){if(M!==null)cancelAnimationFrame(M),M=null}function D(_,Y,U,P=at,O){q();let g=e.scrollPosition,C=typeof _==="function"?_:()=>_,j=C();if(Math.abs(j-g)<1){L(j),O?.();return}let J=performance.now();function k(h){j=C();let W=Math.min((h-J)/Y,1);if(A(g+(j-g)*P(W)),i(),W<1)M=requestAnimationFrame(k);else M=null,B(),O?.()}M=requestAnimationFrame(k)}function oe(_){let Y=e.containerSize,U=_+y,P=Y*c,O=I?P:Math.min(U,P);H=Math.max(0,O-Y),d=Math.max(0,U-Y),w=Math.max(0,U-O),e.totalSize=_,o.style[s?"width":"height"]=O+"px",A(e.scrollPosition)}return{attach(){if(S.addEventListener("scroll",a,{passive:!0}),r)S.addEventListener("wheel",T,{passive:!1})},detach(){if(S.removeEventListener("scroll",a),r)S.removeEventListener("wheel",T);if(q(),p!==null)clearTimeout(p),p=null},cancelScroll:q,smoothScrollTo:D,setLogical:L,getLogical(){return e.scrollPosition},getMaxLogical(){return d},refresh:oe}}function co(t,e){if(t.getTotal()<=0)return{index:0,offsetPx:0};let o=e<=0?0:e,s=t.indexAtOffset(o),r=o-t.getOffset(s);return{index:s,offsetPx:r>0?r:0}}function mo(t,e){let n=fo(t,e);return t.getOffset(n.index)+n.offsetPx}function fo(t,e){let n=t.getTotal();if(n<=0)return{index:0,offsetPx:0};let{index:o,offsetPx:s}=e;if(o<0)return{index:0,offsetPx:0};if(o>n-1)o=n-1;while(s>0&&o<n-1){let r=t.getSize(o);if(s<r)break;s-=r,o++}while(s<0&&o>0)o--,s+=t.getSize(o);if(s<0)s=0;return{index:o,offsetPx:s}}function Ln(t){let{sizeCache:e,getPixel:n,setPixel:o,getContainerSize:s}=t;function r(){let l=e.getTotalSize()-s();return l>0?l:0}function i(l){if(l<=0)return 0;let y=r();return l>y?y:l}return{getLogical(){return co(e,n())},setLogical(l){o(i(mo(e,l)))},getPixelEquivalent(){return n()},setPixelEquivalent(l){o(i(l))},getMaxPixelEquivalent:r,scrollByPx(l){o(i(n()+l))}}}var et=[],go={calculate:et,commit:et,afterScroll:et,idle:et,resize:et};function Cn(t){if(t.length===0)return go;let e=[],n=[],o=[],s=[],r=[];for(let i=0;i<t.length;i++){let l=t[i].hooks;if(l===void 0)continue;if(l.onCalculate!==void 0)e.push(l.onCalculate);if(l.onCommit!==void 0)n.push(l.onCommit);if(l.onAfterScroll!==void 0)o.push(l.onAfterScroll);if(l.onIdle!==void 0)s.push(l.onIdle);if(l.onResize!==void 0)r.push(l.onResize)}return{calculate:e,commit:n,afterScroll:o,idle:s,resize:r}}function En(t,e){for(let n=0;n<t.length;n++)t[n](e)}function Mn(t,e){for(let n=0;n<t.length;n++)t[n](e)}function Lt(t,e,n){for(let o=0;o<t.length;o++)t[o](e,n)}function Pn(t){for(let e=0;e<t.length;e++)t[e]()}function wn(t,e,n){for(let o=0;o<t.length;o++)t[o](e,n)}function An(t,e,n,o,s,r,i,l){let y=o!==0||s!==0;return{prefix:t,selectedClass:`${t}-item--selected`,focusedClass:`${t}-item--focused`,placeholderClass:`${t}-item--placeholder`,replacedClass:`${t}-item--replaced`,translateProp:e?"translateX(":"translateY(",sizeProp:e?"width":"height",itemRole:"listitem",interactive:!1,startPadding:n,gap:i,hasCrossPad:y,crossStartProp:y?e?"top":"left":"",crossEndProp:y?e?"bottom":"right":"",crossStartVal:y?o+"px":"",crossEndVal:y?s+"px":"",oddClass:r,emitter:l??null,indexMap:null,ariaTotalFn:null}}function po(t,e,n,o,s){if(t.containerSize<=0||t.totalItems===0)return t.clear(),!0;let{scrollPosition:r,containerSize:i,totalItems:l}=t,y=s??0;t.totalSize=e.getTotalSize();let f=e.indexAtOffset(y>0?Math.max(0,r-y):r),c=e.indexAtOffset(r+i);if(c<l-1)c++;f=Math.max(0,f),c=Math.min(l-1,Math.max(0,c));let v=Math.max(0,f-n),I=Math.min(l-1,c+n),S=Math.ceil(i/1)+n*2+10,H=I-v+1,d=Math.min(H,t.capacity,S);if(v===t.prevRangeStart&&I===t.prevRangeEnd&&!t.renderPending&&t.baseOffset===t.prevBaseOffset)return!1;t.visibleCount=d,t.startIndex=v;for(let w=0;w<d;w++){let p=v+w;t.visibleIndices[w]=p,t.visibleOffsets[w]=e.getOffset(p),t.visibleSizes[w]=e.getSize(p)}return En(o.calculate,t),t.prevRangeStart=v,t.prevRangeEnd=I,t.prevBaseOffset=t.baseOffset,t.renderPending=!1,!0}var De={selected:!1,focused:!1};function bo(t,e,n){for(let o=0;o<e;o++)if(t[o]===n)return!0;return!1}function ho(t,e){if(e<=1)return!0;let n=t[0];for(let o=1;o<e;o++){let s=t[o];if(s!==n+1)return!1;n=s}return!0}function vo(t,e,n,o,s,r,i,l,y,f){let c=y?null:s(),{visibleCount:v,visibleIndices:I}=t,S=i.ariaTotalFn?i.ariaTotalFn():t.totalItems,H=i.interactive?String(S):"",d=i.interactive&&S!==t.prevAriaTotal,w=null,p=i.indexMap;for(let M=0;M<v;M++){let b=I[M],u=p?p(b):b,A=t.visibleOffsets[M],L=t.visibleSizes[M],a=y?y(b):c[b];if(f)f(u,De);else De.selected=!1,De.focused=!1;let F=r.get(b),V=F;if(F===void 0){let T=e.acquire();if(a!==void 0){let D;try{D=o(a,u,De)}catch(oe){if(i.emitter)i.emitter.emit("error",{error:oe instanceof Error?oe:Error(String(oe)),context:`template:render:${u}`});e.release(T);continue}if(typeof D==="string")T.innerHTML=D;else T.textContent="",T.appendChild(D);Ge(T)}if(T.setAttribute("role",i.itemRole),T.setAttribute("data-index",String(u)),i.interactive)T.id=i.prefix+"-item-"+b,T.setAttribute("aria-posinset",String(u+1)),T.setAttribute("aria-setsize",H);if(a!==void 0){let D=String(a.id);if(T.setAttribute("data-id",D),D.startsWith(Ve))T.classList.add(i.placeholderClass)}if(i.hasCrossPad)T.style.setProperty(i.crossStartProp,i.crossStartVal),T.style.setProperty(i.crossEndProp,i.crossEndVal);if(f){if(T.classList.toggle(i.selectedClass,De.selected),T.classList.toggle(i.focusedClass,De.focused),De.selected)T.setAttribute("aria-selected","true");else T.removeAttribute("aria-selected");T._lastSelected=De.selected,T._lastFocused=De.focused}if(i.oddClass)T.classList.toggle(i.oddClass,(b&1)===1);let B=A-t.baseOffset+i.startPadding;T.style.transform=i.translateProp+B+"px)",T._lastOffset=B;let q=L-i.gap;if(T.style[i.sizeProp]=q+"px",T._lastSize=q,T._lastItem=a,r.set(b,T),w===null)w=document.createDocumentFragment();w.appendChild(T)}else{if(d)F.setAttribute("aria-setsize",H);if(a!==void 0&&V._lastItem!==a){let q=F.getAttribute("data-id"),D=String(a.id),oe;try{oe=o(a,u,De)}catch(_){if(i.emitter)i.emitter.emit("error",{error:_ instanceof Error?_:Error(String(_)),context:`template:render:${u}`});continue}if(typeof oe==="string")F.innerHTML=oe;else F.textContent="",F.appendChild(oe);if(Ge(F),F.setAttribute("data-id",D),V._lastItem=a,q!==D){let _=q!==null&&q.startsWith(Ve),Y=D.startsWith(Ve);if(_!==Y)F.classList.toggle(i.placeholderClass,Y);if(_&&!Y)F.classList.add(i.replacedClass),setTimeout(()=>{F.classList.remove(i.replacedClass)},300)}}if(f){if(V._lastSelected!==De.selected){if(F.classList.toggle(i.selectedClass,De.selected),De.selected)F.setAttribute("aria-selected","true");else F.removeAttribute("aria-selected");V._lastSelected=De.selected}if(V._lastFocused!==De.focused)F.classList.toggle(i.focusedClass,De.focused),V._lastFocused=De.focused}let T=A-t.baseOffset+i.startPadding;if(V._lastOffset!==T)F.style.transform=i.translateProp+T+"px)",V._lastOffset=T;let B=L-i.gap;if(V._lastSize!==B)F.style[i.sizeProp]=B+"px",V._lastSize=B}}if(w!==null)n.appendChild(w);if(v>0&&ho(I,v)){let M=I[0],b=I[v-1];for(let[u,A]of r)if(u<M||u>b)A.remove(),e.release(A),r.delete(u)}else for(let[M,b]of r)if(!bo(I,v,M))b.remove(),e.release(b),r.delete(M);if(i.interactive)t.prevAriaTotal=t.totalItems;Mn(l.commit,t)}function Ct(t,e,n,o,s,r,i,l,y,f,c,v){if(po(t,e,n,f,y.startPadding))vo(t,o,s,r,i,l,y,f,c,v)}var Et=()=>{let t={},e=(r,i)=>{if(!t[r])t[r]=new Set;return t[r].add(i),()=>n(r,i)},n=(r,i)=>{t[r]?.delete(i)};return{on:e,off:n,emit:(r,i)=>{t[r]?.forEach((l)=>{try{l(i)}catch(y){console.error(`[vlist] Error in event handler for "${String(r)}":`,y)}})},clear:(r)=>{if(r)delete t[r];else for(let i in t)delete t[i]}}};var zn=2,Rn=(t=0)=>({velocity:0,sampleCount:0}),Hn=(t,e)=>{let n=performance.now(),o=t._lt??n,s=t._lp??e,r=n-o;if(t._lp=e,t._lt=n,r===0)return t.sampleCount=Math.min(t.sampleCount+1,5),t;if(r>100)return t.velocity=0,t.sampleCount=1,t;return t.velocity=Math.abs(e-s)/r,t.sampleCount=Math.min(t.sampleCount+1,5),t};function yo(t){let{item:e}=t;if(e.height!==void 0&&typeof e.height==="number"){if(!Number.isFinite(e.height)||e.height<=0)throw Error(`vlist: item.height must be a positive number, got ${e.height}`)}if(e.width!==void 0&&typeof e.width==="number"){if(!Number.isFinite(e.width)||e.width<=0)throw Error(`vlist: item.width must be a positive number, got ${e.width}`)}if(e.estimatedHeight!==void 0){if(!Number.isFinite(e.estimatedHeight)||e.estimatedHeight<=0)throw Error(`vlist: item.estimatedHeight must be a positive number, got ${e.estimatedHeight}`)}if(e.estimatedWidth!==void 0){if(!Number.isFinite(e.estimatedWidth)||e.estimatedWidth<=0)throw Error(`vlist: item.estimatedWidth must be a positive number, got ${e.estimatedWidth}`)}if(e.gap!==void 0){if(typeof e.gap!=="number"||!Number.isFinite(e.gap)||e.gap<0)throw Error(`vlist: item.gap must be a non-negative number, got ${e.gap}`)}if(t.overscan!==void 0){if(typeof t.overscan!=="number"||!Number.isFinite(t.overscan)||t.overscan<0)throw Error(`vlist: overscan must be a non-negative number, got ${t.overscan}`)}if(t.scroll?.runway!==void 0){if(typeof t.scroll.runway!=="number"||!Number.isFinite(t.scroll.runway)||t.scroll.runway<=0)throw Error(`vlist: scroll.runway must be a positive number, got ${t.scroll.runway}`)}}function So(t,e){let n=t==="horizontal"?"x":"y";if(e.some((s)=>s.name==="grid"))return{primary:n,cross:n==="x"?"y":"x"};return{primary:n}}function To(t,e){let n=So(t.orientation,e),o=n.primary==="x",s=pn(t.padding);return{axis:n,hasCrossAxis:n.cross!==void 0,overscan:t.overscan??it,reverse:t.reverse??!1,classPrefix:t.classPrefix??tn,mainAxisPadding:bn(s,o),crossAxisPadding:hn(s,o),startPadding:o?s.left:s.top,endPadding:o?s.right:s.bottom,crossPadStart:o?s.top:s.left,crossPadEnd:o?s.bottom:s.right,striped:t.item.striped||!1,gap:t.item.gap??0}}function Io(t,e){if(e)return t.item.width??t.item.estimatedWidth??100;return t.item.height??t.item.estimatedHeight??40}function xo(t){let e=[...t];return e.sort((n,o)=>(n.priority??50)-(o.priority??50)),e}function Lo(t){let e=new Set;for(let n of t){if(e.has(n.name))throw Error(`[vlist] Duplicate plugin: ${n.name}`);e.add(n.name)}for(let n of t)if(n.conflicts){for(let o of n.conflicts)if(e.has(o))throw Error(`[vlist] Plugin "${n.name}" conflicts with "${o}"`)}}function kn(t,e=[]){yo(t);let n=To(t,e),o=n.axis.primary==="x",s=t.scroll?.mode==="bounded",r=Io(t,o),i=n.gap,l=i>0?typeof r==="function"?(ye)=>r(ye)+i:r+i:r,y=typeof r==="number"?r:20,f=t.items?.length??0,c=n.striped?`${n.classPrefix}-item--odd`:"",v=Et(),I=An(n.classPrefix,o,n.startPadding,n.crossPadStart,n.crossPadEnd,c,i,v),S=e.length>0?xo(e):e;if(e.length>0)Lo(S);let H=Sn(t.container),d=Tn(H,n.classPrefix,o,t.ariaLabel);if(t.scroll?.scrollbar==="none")d.viewport.classList.add(`${n.classPrefix}-viewport--no-scrollbar`);if(t.scroll?.gutter==="stable")d.viewport.classList.add(`${n.classPrefix}-viewport--gutter-stable`);let p=ut(l,f);if(i>0){let ye=p.getTotalSize;p.getTotalSize=()=>{let Q=ye();return Q>0?Q-i:0}}let M=yn(n.classPrefix),b=Math.ceil(4096/y)+n.overscan*2+8,u=vn(b);u.totalItems=f;let A=t.items??[],L=()=>A,a=new Map,F=Rn(),V={velocity:0,reliable:!1},T={range:{start:0,end:-1}},B={scrollPosition:0,direction:"down"},q={scrollPosition:0},D=-1,oe=-1,_=-1,Y=null,U=Cn(S),P=new Map,O=[],g=[],C=[],j=null,J=null,k=null,h=null,W=null,N=null,Z=null,m=null,E=null,x=null,z=null,X=!1,se=!1,te=null,ee=0,ie=0,ne=null,ve=null,be=null,de=null,R=null,le=null,re=null,Se=null,Me=null;u.containerSize=o?d.viewport.clientWidth:d.viewport.clientHeight,u.crossSize=o?d.viewport.clientHeight:d.viewport.clientWidth;let xe=Ln({sizeCache:p,getPixel:()=>J?J():u.scrollPosition,setPixel:(ye)=>{if(k)k(ye);else if(o)d.viewport.scrollLeft=ye;else d.viewport.scrollTop=ye},getContainerSize:()=>u.containerSize});if(e.length>0){let ye={dom:d,sizeCache:p,scroll:xe,pool:M,config:n,emitter:v,template:t.item.template,registerMethod(Q,we){P.set(Q,we)},getMethod(Q){return P.get(Q)},registerClickHandler(Q){O.push(Q)},registerKeydownHandler(Q){g.push(Q)},registerDestroyHandler(Q){C.push(Q)},enableListboxRole(){let Q=d.content.getAttribute("role");if(!Q||Q==="list")d.content.setAttribute("role","listbox"),d.content.setAttribute("tabindex","0");I.itemRole="option",I.interactive=!0},setSizeConfig(Q){let we=ut(Q,u.totalItems),ke=P.get("_setSizeCacheBase");if(ke){let _e=p.rebuild;Object.assign(p,we),p.rebuild=_e,ke(we.rebuild)}else Object.assign(p,we)},setScrollFns(Q,we){J=Q,k=we},setBoundedWrap(Q){Me=Q},cancelScroll(){ze?.cancelScroll()},setVirtualTotalFn(Q){j=Q,I.ariaTotalFn=Q},setIndexMapFn(Q){I.indexMap=Q},getItems:L,getItem(Q){return N?N(Q):A[Q]},getState(){return u},rebuildSizeCache(){p.rebuild(u.totalItems)},updateContentSize(Q){if(Se){Se.refresh(Q);return}u.totalSize=Q,d.content.style[o?"width":"height"]=Q+n.mainAxisPadding+"px"},setRenderFn(Q,we){h=Q,W=we},renderIfNeeded(){pe()},forceRender(){fe()},setGetItemFn(Q){N=Q},setItemStateFn(Q){Z=Q},getItemStateFn(){return Z},get rawSizeSpec(){return r},scrollTo(Q){if(k)k(Q);else if(o)d.viewport.scrollLeft=Q;else d.viewport.scrollTop=Q},smoothScrollTo(Q,we,ke,_e){if(de)de(Q,we,k??void 0,ke,_e);else ye.scrollTo(typeof Q==="function"?Q():Q)},disableDefaultScroll(){X=!0},disableDefaultResize(){se=!0},setScrollTarget(Q){te=Q},setScrollToPosFn(Q){R=Q},setScrollToIndexFn(Q){le=Q},onScrollFrame:me,onScrollIdle:Ce,removeItemById(Q){if(m)return m(Q);let we=A.findIndex((ke)=>ke.id===Q);if(we===-1)return-1;return A.splice(we,1),u.totalItems=A.length,p.rebuild(u.totalItems),he(),we},insertItemAt(Q,we){if(E){E(Q,we);return}A.splice(we,0,Q),u.totalItems=A.length,p.rebuild(u.totalItems),he()},setRemoveItemFn(Q){m=Q},setInsertItemFn(Q){E=Q},setUpdateItemFn(Q){x=Q},setGetIndexByIdFn(Q){z=Q},getRenderedElement(Q){let we=P.get("_getRenderedElement");if(we)return we(Q);return a.get(Q)??null},setNavConfig(Q){if(Q.ud!==void 0)ee=Q.ud;if(Q.lr!==void 0)ie=Q.lr;if(Q.scrollIndex)ne=Q.scrollIndex;if(Q.navigate)ve=Q.navigate;if(Q.total)be=Q.total},getNavConfig:(()=>{let Q={ud:0,lr:0,scrollIndex:null,navigate:null,total:null};return()=>(Q.ud=ee,Q.lr=ie,Q.scrollIndex=ne,Q.navigate=ve,Q.total=be,Q)})()};for(let Q of S)if(Q.setup)try{Q.setup(ye)}catch(we){v.emit("error",{error:we instanceof Error?we:Error(String(we)),context:`plugin:setup:${Q.name}`})}}let Le=n.classPrefix+"--scrolling",Te=!1,Pe=t.scroll?.idleTimeout??We;function Re(){if(B.scrollPosition=xe.getPixelEquivalent(),o)B.direction=u.scrollDirection>0?"right":"left";else B.direction=u.scrollDirection>0?"down":"up";if(v.emit("scroll",B),Hn(F,u.scrollPosition),V.velocity=F.velocity,V.reliable=F.sampleCount>=zn,v.emit("velocity:change",V),u.startIndex!==D||u.prevRangeEnd!==oe)D=u.startIndex,oe=u.prevRangeEnd,T.range.start=u.startIndex,T.range.end=u.prevRangeEnd,v.emit("range:change",T)}let K=!1;function he(){if(h)return;let ye=p.getTotalSize();if(Se){Se.refresh(ye);return}if(d.content.style[o?"width":"height"]=ye+n.mainAxisPadding+"px",!K&&ye>Je)K=!0,v.emit("error",{error:Error(`Content size (${ye}px) exceeds browser limit (${Je}px). Enable bounded scroll (scroll: { mode: "bounded" }) for large datasets.`),context:"content:size:overflow"})}function ue(){if(!re)return;if((j?j():A.length)===0)return;let Q=re;re=null,Fe.scrollToIndex(Q.index,Q.alignOrOptions)}function pe(){if(ue(),h)h();else Ct(u,p,n.overscan,M,d.content,t.item.template,L,a,I,U,N,Z)}function me(){if(!Te)Te=!0,d.root.classList.add(Le);if(pe(),Lt(U.afterScroll,u.scrollPosition,u.scrollDirection),u.scrollPosition!==_)_=u.scrollPosition,Re()}function Ce(){if(Te)Te=!1,d.root.classList.remove(Le);u.scrollDirection=0,Pn(U.idle),V.velocity=0,V.reliable=!1,v.emit("velocity:change",V),q.scrollPosition=xe.getPixelEquivalent(),v.emit("scroll:idle",q)}function fe(){if(ue(),u.renderPending=!0,W)W();else Ct(u,p,n.overscan,M,d.content,t.item.template,L,a,I,U,N,Z);if(Lt(U.afterScroll,u.scrollPosition,u.scrollDirection),u.scrollPosition!==_){if(_=u.scrollPosition,Re(),Y!==null)clearTimeout(Y);Y=setTimeout(Ce,Pe)}}let Ie=X?!1:t.scroll?.wheel!==!1,ze;if(X&&(s||Me))throw Error(`vlist: page() is not compatible with ${Me?"the carousel plugin":'scroll: { mode: "bounded" }'} — bounded page-mode scrolling is not implemented yet.`);if(s||Me)Se=xn({state:u,viewport:d.viewport,content:d.content,isX:o,wheelEnabled:Ie,idleTimeout:t.scroll?.idleTimeout??We,...te?{scrollTarget:te}:{},mainAxisPadding:n.mainAxisPadding,...t.scroll?.runway!==void 0?{runwayFactor:Math.max(un,t.scroll.runway)}:{},...Me?{wrap:Me}:{},onFrame:me,onIdle:Ce}),ze=Se,J=()=>u.scrollPosition,k=(ye)=>Se.setLogical(ye);else ze=In({state:u,viewport:d.viewport,isX:o,wheelEnabled:Ie,idleTimeout:t.scroll?.idleTimeout??We,...te?{scrollTarget:te}:{},onFrame:me,onIdle:Ce});de=ze.smoothScrollTo;function ce(ye){let we=ye.target.closest("[data-index]");if(!we)return null;let ke=parseInt(we.getAttribute("data-index"),10);if(Number.isNaN(ke))return null;let _e=P.get("_layoutToDataIndex"),$e;if(_e){let Oe=_e(ke);if(Oe<0)return null;let Ze=P.get("_getItem");$e=Ze?Ze(Oe):N?N(Oe):A[Oe]}else $e=N?N(ke):A[ke];if($e===void 0)return null;return{item:$e,index:ke}}function G(ye){for(let we=0;we<O.length;we++)O[we](ye);let Q=ce(ye);if(Q)v.emit("item:click",{item:Q.item,index:Q.index,event:ye})}function ge(ye){let Q=ce(ye);if(Q)v.emit("item:dblclick",{item:Q.item,index:Q.index,event:ye})}function ae(ye){let Q=ce(ye);if(Q)v.emit("item:contextmenu",{item:Q.item,index:Q.index,event:ye})}function Ee(ye){let Q=ye.target?.tagName;if((Q==="INPUT"||Q==="TEXTAREA"||Q==="SELECT")&&!((ye.ctrlKey||ye.metaKey)&&(ye.key==="f"||ye.key==="F")))return;for(let we=0;we<g.length;we++)g[we](ye)}if(d.content.addEventListener("click",G),d.content.addEventListener("dblclick",ge),d.content.addEventListener("contextmenu",ae),g.length>0)d.root.addEventListener("keydown",Ee);let Ae=null;if(!se)setTimeout(()=>{if(u.destroyed)return;Ae=new ResizeObserver((Q)=>{for(let we of Q){let{width:ke,height:_e}=we.contentRect,$e=o?ke:_e,Oe=o?_e:ke;if(Math.abs($e-u.containerSize)<1&&Math.abs(Oe-u.crossSize)<1)continue;if(u.containerSize=$e,u.crossSize=Oe,u.resizeCapacity($e,y,n.overscan),Se)Se.refresh(p.getTotalSize());fe(),wn(U.resize,ke,_e),v.emit("resize",{width:ke,height:_e})}}),Ae.observe(d.viewport)},0);u.resizeCapacity(u.containerSize,y,n.overscan),he(),u.initialized=!0;let He=null;if(t.defer)He=requestAnimationFrame(()=>{if(He=null,!u.destroyed)pe()});else pe();if(!X)ze.attach();let Fe={get element(){return d.root},get items(){return A},get total(){return j?j():A.length},setItems(ye){A=[...ye],u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},appendItems(ye){A.push(...ye),u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},prependItems(ye){A.unshift(...ye),u.totalItems=A.length,p.rebuild(u.totalItems),he(),fe()},updateItem(ye,Q){if(x){if(!x(ye,Q))return}else{let we=A.findIndex((ke)=>ke.id===ye);if(we===-1)return;A[we]={...A[we],...Q}}fe()},insertItem(ye,Q){if(E)E(ye,Q??u.totalItems);else{if(Q===void 0)A.push(ye);else A.splice(Q,0,ye);u.totalItems=A.length,p.rebuild(u.totalItems),he()}fe()},removeItem(ye){if(m){if(m(ye)<0)return}else{let Q=A.findIndex((we)=>we.id===ye);if(Q===-1)return;A.splice(Q,1),u.totalItems=A.length,p.rebuild(u.totalItems),he()}fe()},removeItems(ye){if(m){let _e=0;for(let $e of ye)if(m($e)>=0)_e++;if(_e>0)fe();return _e}let Q=new Set(ye),we=A.length;A=A.filter((_e)=>!Q.has(_e.id));let ke=we-A.length;if(ke>0)u.totalItems=A.length,p.rebuild(u.totalItems),he(),u.renderPending=!0,pe();return ke},getItemAt(ye){if(I.indexMap)return A[ye];return N?N(ye):A[ye]},getIndexById(ye){if(z)return z(ye);return A.findIndex((Q)=>Q.id===ye)},scrollToIndex(ye,Q="start"){let we=j?j():A.length;if(we===0){re={index:ye,alignOrOptions:Q};return}let ke=Math.max(0,Math.min(ye,we-1)),_e=typeof Q==="string"?Q:Q.align??"start",$e=typeof Q==="object"?Q.behavior:void 0,Oe=typeof Q==="object"?Q.duration:void 0,Ze=typeof Q==="object"?Q.easing:void 0;if(le&&le(ke,_e,$e,Oe,Ze)!==!1)return;let Tt=p.getOffset(ke),Qt=p.getSize(ke),st=u.containerSize,so=p.getTotalSize(),en=n.mainAxisPadding,io=Math.max(0,so+en-st),Ne;if(R)Ne=R(ke,p,st,we,_e);else{let lo=n.startPadding;switch(_e){case"center":Ne=lo+Tt-(st-Qt)/2;break;case"end":Ne=Tt+Qt+en-st;break;default:Ne=Tt}Ne=Math.max(0,Math.min(Ne,io))}if($e==="smooth")ze.smoothScrollTo(Ne,Oe??an,k??void 0,Ze);else if(k)k(Ne);else if(o)d.viewport.scrollLeft=Ne;else d.viewport.scrollTop=Ne},getScrollPosition(){return xe.getPixelEquivalent()},on:v.on.bind(v),off:v.off.bind(v),destroy(){if(u.destroyed)return;if(u.destroyed=!0,Te)Te=!1,d.root.classList.remove(Le);if(He!==null)cancelAnimationFrame(He),He=null;if(Y!==null)clearTimeout(Y),Y=null;ze.detach(),Ae?.disconnect(),d.content.removeEventListener("click",G),d.content.removeEventListener("dblclick",ge),d.content.removeEventListener("contextmenu",ae),d.root.removeEventListener("keydown",Ee);let ye=[];for(let Q of C)try{Q()}catch(we){ye.push(we instanceof Error?we:Error(String(we)))}for(let Q of S)if(Q.destroy)try{Q.destroy()}catch(we){ye.push(we instanceof Error?we:Error(String(we)))}for(let[,Q]of a)Q.remove();if(a.clear(),M.clear(),d.root.remove(),v.emit("destroy",void 0),v.clear(),ye.length>0)for(let Q of ye)console.error("vlist: error during destroy:",Q)}};for(let[ye,Q]of P)Fe[ye]=Q;return Fe}var Co=(t)=>{if(typeof t!=="object"){let e=t??2;return{top:e,right:e,bottom:e,left:e}}return{top:t.top??2,right:t.right??2,bottom:t.bottom??2,left:t.left??2}},_n=(t,e,n={},o="vlist",s=!1,r)=>{let{autoHide:i=!0,autoHideDelay:l=1000,minThumbSize:y=15,showOnHover:f=!0,showOnViewportEnter:c=!0,clickBehavior:v="scroll"}=n,I=v==="page"?"scroll":v,S=r??t,H=Co(n.padding),d=s?H.left:H.top,w=s?H.right:H.bottom,p=s?H.bottom:H.right,M=n.hoverZoneWidth??p+16,b=0,u=0,A=0,L=0,a=!1,F=!1,V=0,T=0,B=0,q=null,D=!1,oe=null,_=0,Y=0,U=null,P=null,O=null,g=s?"width":"height",C=s?"translateX":"translateY",j=s?(me)=>me.clientX:(me)=>me.clientY,J=s?"left":"top",k=document.createElement("div"),h=document.createElement("div"),W=document.createElement("div"),N=s?"--vlist-custom-scrollbar-padding-left":"--vlist-custom-scrollbar-padding-top",Z=()=>{if(S===t)return;let me=t.offsetTop;k.style[s?"left":"top"]=me?`calc(var(${N}) + ${me}px)`:`var(${N})`,W.style[s?"left":"top"]=`${me}px`},m=()=>{if(k.className=`${o}-scrollbar`,h.className=`${o}-scrollbar__thumb`,s)k.classList.add(`${o}-scrollbar--horizontal`);if(n.padding!==void 0)S.style.setProperty("--vlist-custom-scrollbar-padding-top",`${H.top}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-right",`${H.right}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-bottom",`${H.bottom}px`),S.style.setProperty("--vlist-custom-scrollbar-padding-left",`${H.left}px`);if(n.minThumbSize!==void 0)k.style.setProperty("--vlist-custom-scrollbar-min-thumb-size",`${y}px`);if(k.appendChild(h),S.appendChild(k),W.className=`${o}-scrollbar__hover`,s)W.classList.add(`${o}-scrollbar__hover--horizontal`),W.style.height=`${M}px`;else W.style.width=`${M}px`;if(S.appendChild(W),S!==t)Z()},E=()=>{if(q)clearTimeout(q),q=null},x=()=>{if(!i)return;E(),q=setTimeout(X,l)},z=()=>{if(b<=u)return;if(E(),!D)k.classList.add(`${o}-scrollbar--visible`),D=!0;if(i&&!a&&!F)x()},X=()=>{if(a||F)return;k.classList.remove(`${o}-scrollbar--visible`),D=!1},se=(me,Ce)=>{if(b=me,u=Ce,Z(),b<=u){k.style.display="none",X();return}k.style.display="";let fe=Math.max(0,u-d-w),Ie=u/b;if(A=Math.max(y,Ie*fe),h.style[g]=`${A}px`,L=fe-A,te(B),!i)z()},te=(me)=>{if(B=me,b<=u||L<=0)return;let Ce=b-u,fe=Math.min(1,Math.max(0,me/Ce));h.style.transform=`${C}(${fe*L}px)`},ee=(me)=>{if(me.target===h||I!=="jump"||L<=0)return;let Ce=b-u,fe=k.getBoundingClientRect(),Ie=j(me)-fe[J],ze=Math.max(0,Math.min(Ie-A/2,L));e(ze/L*Ce),z()},ie=()=>{if(U!==null)clearTimeout(U),U=null;if(P!==null)cancelAnimationFrame(P),P=null;O=null},ne=(me)=>{let Ce=L>0?Y/me*L:0;if(_<Ce)return-1;if(_>=Ce+A)return 1;return 0},ve=()=>{let me=b-u,Ce=ne(me);if(Ce===0){ie();return}if(Ce===-1){if(Y<=0){ie();return}let fe=Math.max(0,Y-u);Y=fe,e(fe)}else{if(Y>=me){ie();return}let fe=Math.min(me,Y+u);Y=fe,e(fe)}z()},be=(me)=>{if(O===null){O=me,P=requestAnimationFrame(be);return}let Ce=b-u,fe=me-O;O=me;let Ie=ne(Ce);if(Ie===0){ie();return}let ze=12*u/1000,ce=Math.min(ze*fe,u);if(Ie===-1){if(Y<=0){ie();return}let G=Math.max(0,Y-ce);Y=G,e(G)}else{if(Y>=Ce){ie();return}let G=Math.min(Ce,Y+ce);Y=G,e(G)}E(),P=requestAnimationFrame(be)},de=()=>{ie(),x(),document.removeEventListener("mouseup",de)},R=(me)=>{if(me.target===h||I!=="scroll")return;me.preventDefault();let Ce=k.getBoundingClientRect();_=j(me)-Ce[J],Y=B,ve(),U=setTimeout(()=>{P=requestAnimationFrame(be)},350),document.addEventListener("mouseup",de)},le=(me)=>{me.preventDefault(),me.stopPropagation(),a=!0,V=j(me),T=B,E(),k.classList.add(`${o}-scrollbar--dragging`),document.addEventListener("mousemove",re),document.addEventListener("mouseup",Se)},re=(me)=>{if(!a)return;let Ce=j(me)-V,fe=L>0?Ce/L:0,Ie=b-u,ze=fe*Ie,ce=Math.max(0,Math.min(T+ze,Ie));h.style.transform=`${C}(${ce/Ie*L}px)`,e(ce)},Se=()=>{if(a=!1,k.classList.remove(`${o}-scrollbar--dragging`),i&&!F)x();document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",Se)},Me=s?(me)=>me.touches[0].clientX:(me)=>me.touches[0].clientY,xe=(me)=>{me.stopPropagation(),a=!0,V=Me(me),T=B,E(),k.classList.add(`${o}-scrollbar--dragging`)},Le=(me)=>{if(!a)return;me.preventDefault();let Ce=Me(me)-V,fe=L>0?Ce/L:0,Ie=b-u,ze=fe*Ie,ce=Math.max(0,Math.min(T+ze,Ie));h.style.transform=`${C}(${ce/Ie*L}px)`,e(ce)},Te=()=>{if(a=!1,k.classList.remove(`${o}-scrollbar--dragging`),i)x()},Pe=(me)=>{if(me.target===h)return;if(L<=0)return;let Ce=me.touches[0],fe=k.getBoundingClientRect(),Ie=(s?Ce.clientX:Ce.clientY)-fe[J];if(I==="jump"){let ze=b-u,ce=Math.max(0,Math.min(Ie-A/2,L));e(ce/L*ze)}else _=Ie,Y=B,ve();z()},Re=()=>{if(c)z()},K=()=>{if(!a){if(F=!1,i)x()}},he=()=>{F=!0,E(),z()},ue=()=>{if(F=!1,!a&&i)x()},pe=()=>{if(E(),ie(),oe!==null)cancelAnimationFrame(oe),oe=null;k.removeEventListener("click",ee),k.removeEventListener("mousedown",R),k.removeEventListener("mouseenter",he),document.removeEventListener("mouseup",de),k.removeEventListener("mouseleave",ue),k.removeEventListener("touchstart",Pe),h.removeEventListener("mousedown",le),h.removeEventListener("touchstart",xe),h.removeEventListener("touchmove",Le),h.removeEventListener("touchend",Te),t.removeEventListener("mouseenter",Re),t.removeEventListener("mouseleave",K),document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",Se),W.removeEventListener("click",ee),W.removeEventListener("mousedown",R),W.removeEventListener("mouseenter",he),W.removeEventListener("mouseleave",ue),W.remove(),S.style.removeProperty("--vlist-custom-scrollbar-padding-top"),S.style.removeProperty("--vlist-custom-scrollbar-padding-right"),S.style.removeProperty("--vlist-custom-scrollbar-padding-bottom"),S.style.removeProperty("--vlist-custom-scrollbar-padding-left"),k.remove()};if(m(),k.addEventListener("click",ee),k.addEventListener("mousedown",R),k.addEventListener("mouseenter",he),k.addEventListener("mouseleave",ue),k.addEventListener("touchstart",Pe,{passive:!0}),h.addEventListener("mousedown",le),h.addEventListener("touchstart",xe,{passive:!0}),h.addEventListener("touchmove",Le,{passive:!1}),h.addEventListener("touchend",Te,{passive:!0}),t.addEventListener("mouseenter",Re),t.addEventListener("mouseleave",K),W.addEventListener("click",ee),W.addEventListener("mousedown",R),f)W.addEventListener("mouseenter",he),W.addEventListener("mouseleave",ue);return{show:z,hide:X,updateBounds:se,updatePosition:te,isVisible:()=>D,destroy:pe}};function Mt(t){let e=null,n,o=0,s=0,r=0;return{name:"scrollbar",priority:15,setup(i){let{dom:l,config:y}=i,{classPrefix:f}=y,c=y.axis.primary==="x";n=i.getState(),o=y.mainAxisPadding;let v=(I)=>{i.scrollTo(I)};if(i.registerMethod("_scrollbar:setCallback",(I)=>{v=I}),e=_n(l.viewport,(I)=>{v(I)},t,f,c,l.root),l.viewport.classList.add(`${f}-viewport--custom-scrollbar`),t?.gutter)l.viewport.classList.add(`${f}-viewport--gutter`);queueMicrotask(()=>{e?.updateBounds(n.totalSize+o,n.containerSize)}),i.registerMethod("_scrollbar:getInstance",()=>e),i.registerDestroyHandler(()=>{if(e?.destroy(),e=null,l.viewport.classList.remove(`${f}-viewport--custom-scrollbar`),t?.gutter)l.viewport.classList.remove(`${f}-viewport--gutter`)})},hooks:{onAfterScroll(i){let l=n.totalSize+o,y=n.containerSize;if(l!==s||y!==r)s=l,r=y,e?.updateBounds(l,y);e?.updatePosition(i),e?.show()},onResize(){let i=n.totalSize+o,l=n.containerSize;s=i,r=l,e?.updateBounds(i,l)}},destroy(){e?.destroy(),e=null}}}var Fn=(t)=>{let e=Math.max(1,Math.floor(t.columns)),n=t.gap??0,o=t.isHeaderFn,s={row:0,col:0},r=(d)=>{if(d<=0)return 0;if(!o)return Math.ceil(d/e);let w=0,p=0,M=0;for(let b=0;b<d;b++)if(o(b)){if(M++,p)w++,p=0;w++,p=0}else if(p++,p>=e)w++,p=0;if(p)w++;return w},i=(d)=>(s.row=l(d),s.col=y(d),s),l=(d)=>{if(!o)return Math.floor(d/e);let w=0,p=0;for(let M=0;M<=d;M++)if(o(M)){if(p)w++,p=0;if(M===d)return w;w++,p=0}else{if(M===d)return w;if(p++,p>=e)w++,p=0}return console.warn(`⚠️ getRow(${d}) fell through - returning ${w}`),w},y=(d)=>{if(!o)return d%e;if(o(d))return 0;let w=0;for(let p=0;p<=d;p++)if(o(p))w=0;else{if(p===d)return w;if(w++,w>=e)w=0}return w},f=(d,w,p,M)=>{if(p<=0){M.start=0,M.end=-1;return}if(!o){M.start=Math.max(0,d*e),M.end=Math.min(p-1,(w+1)*e-1);return}let b=c(d,w,p);M.start=b.start,M.end=b.end},c=(d,w,p)=>{if(p<=0)return{start:0,end:-1};if(!o){let L=Math.max(0,d*e),a=Math.min(p-1,(w+1)*e-1);return{start:L,end:a}}let M=-1,b=-1,u=0,A=0;for(let L=0;L<p;L++){if(o(L)){if(A)u++,A=0;if(u>=d&&u<=w){if(M<0)M=L;b=L}u++,A=0}else{if(u>=d&&u<=w){if(M<0)M=L;b=L}if(A++,A>=e)u++,A=0}if(u>w&&!A)break}if(M<0)return{start:0,end:-1};return{start:M,end:b}},v=(d,w,p)=>{if(w<0||w>=e)return-1;let M=d*e+w;if(M<0||M>=p)return-1;return M},I=(d)=>{let w=(e-1)*n;return Math.max(0,(d-w)/e)};return{get columns(){return e},get gap(){return n},update:(d)=>{if(d.columns!==void 0)e=Math.max(1,Math.floor(d.columns));if(d.gap!==void 0)n=d.gap;if(d.isHeaderFn!==void 0)o=d.isHeaderFn},getTotalRows:r,getPosition:i,getRow:l,getCol:y,getItemRange:c,fillItemRange:f,getItemIndex:v,getColumnWidth:I,getColumnOffset:(d,w)=>{let p=I(w);return d*(p+n)}}};var Ke={selected:!1,focused:!1};function Pt(t){if(!t.columns||t.columns<1)throw Error("[vlist] grid: columns must be >= 1");let e,n,o,s,r=null,i,l,y,f,c,v,I=null,S=0,H=0,d=0,w=0,p=new Map,M=0,b=0,u=0,A=0,L=null,a=!1,F="",V="",T="",B={start:0,end:-1},q=-1,D=-1,oe=-1,_=!0,Y=(h)=>n.rebuild(h);function U(){let h=(b-1)*u;A=Math.max(0,(M-h)/b)}function P(){if(a)return;a=!0,L=I?.()??null}function O(){return e.getTotalRows(o.totalItems)}function g(h){let W=h/b|0,Z=(h-W*b)*(A+u)+S,m=n.getOffset(W)-o.baseOffset+d;if(f)return`translate(${Math.round(m)}px, ${Math.round(Z)}px)`;return`translate(${Math.round(Z)}px, ${Math.round(m)}px)`}function C(h,W){let N=n.getSize(W)-u;if(f)h.style.width=`${N}px`,h.style.height=`${A}px`;else h.style.width=`${A}px`,h.style.height=`${N}px`}function j(h,W,N){if(L)L(N,Ke);else Ke.selected=!1,Ke.focused=!1;let Z=l(W,N,Ke);if(typeof Z==="string")h.innerHTML=Z;else h.innerHTML="",h.appendChild(Z)}function J(){if(o.destroyed)return;let h=o.scrollPosition,W=o.containerSize;if(!_&&h===q&&W===D)return;q=h,D=W,_=!1;let N=O();if(W<=0||N===0)return;P();let Z=n.indexAtOffset(h),m=n.indexAtOffset(h+W);if(m<N-1)m++;Z=Math.max(0,Z),m=Math.min(N-1,Math.max(0,m));let E=Math.max(0,Z-v),x=Math.min(N-1,m+v);if(E===o.prevRangeStart&&x===o.prevRangeEnd&&!o.renderPending)return;e.fillItemRange(E,x,o.totalItems,B);let{start:z,end:X}=B;for(let[ee,ie]of p)if(ee<z||ee>X)ie.el.remove(),s.release(ie.el),p.delete(ee);for(let ee=z;ee<=X;ee++){let ie=y(ee);if(!ie)continue;let ne=ee/b|0,ve=ee-ne*b,be=p.get(ee);if(be===void 0){let le=s.acquire();le.className=F,le.setAttribute("data-index",String(ee)),le.setAttribute("data-id",String(ie.id)),j(le,ie,ee),be={el:le,lastItem:ie},p.set(ee,be),i.appendChild(le)}else if(be.lastItem!==ie)be.el.setAttribute("data-id",String(ie.id)),be.lastItem=ie,j(be.el,ie,ee);else if(L)L(ee,Ke);if(L)if(be.el.classList.toggle(V,Ke.selected),be.el.classList.toggle(T,Ke.focused),Ke.selected)be.el.setAttribute("aria-selected","true");else be.el.removeAttribute("aria-selected");C(be.el,ne);let de=ve*(A+u)+S,R=n.getOffset(ne)-o.baseOffset+d;be.el.style.transform=f?`translate(${Math.round(R)}px, ${Math.round(de)}px)`:`translate(${Math.round(de)}px, ${Math.round(R)}px)`}let se=n.getTotalSize();if(se!==oe)oe=se,r?.updateContentSize(se);o.prevRangeStart=E,o.prevRangeEnd=x,o.renderPending=!1;let te=X-z+1;o.visibleCount=Math.min(te,o.capacity),o.startIndex=z;for(let ee=0;ee<o.visibleCount;ee++){let ie=z+ee,ne=ie/b|0;o.visibleIndices[ee]=ie,o.visibleOffsets[ee]=n.getOffset(ne),o.visibleSizes[ee]=n.getSize(ne)}}function k(){if(o.destroyed)return;Y(O()),oe=-1,o.prevRangeStart=-1,o.prevRangeEnd=-1,o.renderPending=!0,_=!0,J()}return{name:"grid",priority:10,conflicts:["masonry","table"],setup(h){b=Math.max(1,Math.floor(t.columns)),u=t.gap??0,e=Fn({columns:t.columns,gap:u}),n=h.sizeCache,o=h.getState(),s=h.pool,r=h,i=h.dom.content,l=h.template,f=h.config.axis.primary==="x",c=h.config.classPrefix,v=h.config.overscan,y=h.getItem.bind(h),I=()=>h.getItemStateFn(),F=`${c}-item ${c}-grid-item`,V=`${c}-item--selected`,T=`${c}-item--focused`,S=h.config.crossPadStart,H=h.config.crossAxisPadding,d=h.config.startPadding,w=h.config.mainAxisPadding,M=o.crossSize-H,U();let W=h.rawSizeSpec,N;if(typeof W==="function"){let z={columnWidth:e.getColumnWidth(M),columns:t.columns,gap:u};N=W(0,z),h.setSizeConfig((X)=>{z.columnWidth=e.getColumnWidth(M);let se=X*t.columns;return W(se,z)+u})}else if(N=W,u>0)h.setSizeConfig(N+u);let Z=null,m=n.rebuild;function E(){if(n.rebuild===Z)return;m=n.rebuild,Y=(x)=>m(x),Z=(x)=>{Y(Math.ceil(x/b))},n.rebuild=Z}if(h.registerMethod("_setSizeCacheBase",(x)=>{m=x,Y=(z)=>m(z)}),E(),Y(O()),u>0){let x=n.getTotalSize;n.getTotalSize=()=>{let z=x();return z>0?z-u:0}}h.setVirtualTotalFn(()=>O()),h.dom.root.classList.add(`${c}--grid`),h.setRenderFn(J,k),h.registerMethod("getGridLayout",()=>e),h.registerMethod("_getRowGap",()=>e.gap),h.registerMethod("updateGrid",(x)=>{if(x.columns!==void 0){if(!Number.isInteger(x.columns)||x.columns<1)throw Error("[vlist] updateGrid: columns must be >= 1")}if(x.gap!==void 0&&x.gap<0)throw Error("[vlist] updateGrid: gap must be >= 0");if(e.update(x),x.columns!==void 0)b=Math.max(1,Math.floor(x.columns));if(x.gap!==void 0)u=x.gap;if(x.gap!==void 0||x.columns!==void 0){let z=e.gap;if(typeof W==="function"){let X={columnWidth:e.getColumnWidth(M),columns:e.columns,gap:z};h.setSizeConfig((se)=>{X.columnWidth=e.getColumnWidth(M);let te=se*e.columns;return W(te,X)+z})}else h.setSizeConfig(N+z);E(),Y(O())}if(x.columns!==void 0)h.setNavConfig({ud:e.columns});M=o.crossSize-H,U(),k()}),h.registerMethod("scrollToIndex",(x,z="start")=>{let X=e.getRow(x),se=O();if(se===0)return;let te=Math.max(0,Math.min(X,se-1)),ee=n.getOffset(te)+d,ie=n.getSize(te),ne=o.containerSize,ve=n.getTotalSize()+w,be=Math.max(0,ve-ne),de=typeof z==="string"?z:z.align??"start",R=typeof z==="object"?z.behavior:void 0,le=typeof z==="object"?z.duration:void 0,re;switch(de){case"center":re=ee-(ne-ie)/2;break;case"end":re=ee-ne+ie;break;default:re=ee}if(re=Math.max(0,Math.min(re,be)),R==="smooth"&&le&&le>0)h.smoothScrollTo(re,le);else h.scrollTo(re)}),h.setNavConfig({total:()=>o.totalItems,ud:t.columns,lr:1,scrollIndex:(x)=>e.getRow(x)}),h.registerDestroyHandler(()=>{for(let[,x]of p)x.el.remove();p.clear(),h.dom.root.classList.remove(`${c}--grid`)})},hooks:{onResize(h,W){let N=o.crossSize-H;if(Math.abs(N-M)<1)return;M=N,U();for(let[Z,m]of p){let E=Z/b|0;C(m.el,E),m.el.style.transform=g(Z)}}},destroy(){p.clear()}}}function tt(t,e,n,o){if(o<=0)return 0;let s=o-1;if(n<=1)return t<0?0:t>s?s:t;let r=(e%n+n)%n;if(t<0)return r;if(t>s){let i=Math.floor(s/n)*n;return Math.min(i+r,s)}return t}function wt(t){let e=t?.keyboard??!0;return{name:"a11y",priority:55,setup(n){if(n.getItemStateFn())return;n.enableListboxRole();let{dom:o,config:s,sizeCache:r}=n,i=n.getState(),l=n.emitter,y=s.classPrefix,f=o.liveRegion,c=-1,v=!1,I,S=-1,H=(T)=>n.getItem(T),d=()=>i.totalItems,w={id:0,index:0},p={selected:[],items:[]};n.setItemStateFn((T,B)=>{B.selected=S===T,B.focused=v&&c===T});function M(T){f.textContent="",f.textContent=T}let b=(T,B,q)=>{let D=T;while(D>=0&&D<q){let oe=H(D);if(!oe||!oe.__groupHeader)return D;D+=B}D=T-B;while(D>=0&&D<q){let oe=H(D);if(!oe||!oe.__groupHeader)return D;D-=B}return T},u=(T)=>{let B=n.getNavConfig(),q=B.scrollIndex?B.scrollIndex(T):T,D=r.getOffset(q),oe=r.getSize(q),{scrollPosition:_,containerSize:Y}=i,{startPadding:U,endPadding:P}=s,O=D+U,g=O+oe,C=_;if(O<_)C=Math.max(0,D);else if(g>_+Y)C=g+P-Y;if(C!==_)i.scrollPosition=C,n.scrollTo(C)},A=(T,B)=>{if(o.content.setAttribute("aria-activedescendant",`${y}-item-${T}`),B)u(T);n.forceRender()},L=(T)=>{c=T,v=!0,A(T,!0);let B=H(T);if(B)w.id=B.id,w.index=T,l.emit("focus:change",w),M(`Item ${T+1} of ${d()}`)},a=(T,B)=>{if(c=T,B)v=!0;let q=H(T);if(q&&I===q.id)I=void 0,S=-1;else I=q?.id,S=q?T:-1;if(A(T,B),I!==void 0&&q&&I===q.id)p.selected[0]=I,p.selected.length=1,p.items[0]=q,p.items.length=1,M(`Selected, item ${T+1} of ${d()}`);else p.selected.length=0,p.items.length=0,M("Deselected");l.emit("selection:change",p)},F=()=>{if(i.destroyed)return;if(!o.content.matches(":focus-visible"))return;let T=d();if(T===0)return;let B=c>=0?Math.min(c,T-1):0;B=b(B,1,T),L(B)},V=(T)=>{if(i.destroyed)return;let B=T.relatedTarget;if(B&&o.root.contains(B))return;v=!1,o.content.removeAttribute("aria-activedescendant"),n.forceRender()};if(o.content.addEventListener("focusin",F),o.content.addEventListener("focusout",V),e)n.registerKeydownHandler((T)=>{if(i.destroyed)return;let B=d();if(B===0)return;let q=c,D=q;if(T.key===" "||T.key==="Enter"){if(q>=0){let _=H(q);if(_&&!_.__groupHeader)a(q,!0)}T.preventDefault();return}let oe=n.getNavConfig();if(oe.navigate)switch(T.key){case"ArrowUp":case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"PageUp":case"PageDown":case"Home":case"End":D=oe.navigate(q,T.key,B);break;default:return}else{let _=oe.ud||1,Y=oe.lr,U=s.axis.primary==="x";switch(T.key){case"ArrowUp":if(U&&!Y)return;D=q-(U?Y:_);break;case"ArrowDown":if(U&&!Y)return;D=q+(U?Y:_);break;case"ArrowLeft":if(!U&&!Y)return;D=q-(U?_:Y);break;case"ArrowRight":if(!U&&!Y)return;D=q+(U?_:Y);break;case"PageUp":case"PageDown":{let P=r.getSize(Math.max(0,oe.scrollIndex?oe.scrollIndex(q):q)),g=Math.max(1,Math.floor(i.containerSize/P))*_;D=tt(T.key==="PageUp"?q-g:q+g,q,_,B);break}case"Home":D=0;break;case"End":D=B-1;break;default:return}}if(D<0)D=0;else if(D>=B)D=B-1;if(T.preventDefault(),D=b(D,D>=q?1:-1,B),D!==q)L(D)});n.registerClickHandler((T)=>{if(i.destroyed)return;let B=T.target.closest("[data-index]");if(!B)return;let q=parseInt(B.dataset.index??"-1",10);if(q<0)return;let D=H(q);if(!D||D.__groupHeader)return;v=!1,o.content.focus({preventScroll:!0}),a(q,!1)}),n.registerDestroyHandler(()=>{o.content.removeEventListener("focusin",F),o.content.removeEventListener("focusout",V)})}}}var nt=(t,e,n)=>{if(String(n).startsWith(Ve))return!1;let o=Ve+e;if(t.has(o))return t.delete(o),t.add(n),!0;return!1},Dn=(t)=>({selected:new Set(t??[]),focusedIndex:-1,focusVisible:!1});function Xe(t,e,n,o){if(n===0)return;let s=o?-e:e,r=t.focusedIndex+s;if(r<0)r=0;if(r>=n)r=n-1;t.focusedIndex=r}function ct(t){return Array.from(t)}var Eo={preventScroll:!0};function At(t){let e=t?.mode??"single",n=t?.followFocus??!1,o=t?.focusOnClick??!1,s=t?.keyboard??!0,r,i,l,y,f,c,v,I,S=-1,H=new Map,d=null,w=null,p=null,M=null,b,u=!1;function A(C){if(u)return;u=!0,d=C.getMethod("_layoutToDataIndex")??null,w=C.getMethod("_dataToLayoutIndex")??null,p=C.getMethod("_isGroupHeader")??null,M=C.getMethod("_scrollItemIntoView")??null,a=C.getMethod("_getLoadedItem")??null;let j=C.getMethod("getGroupLayout");if(j){let J=j();b=()=>J.totalEntries}}let L=(C)=>d?d(C):C,a=null,F=(C)=>{if(a)return a(C);return i()[C]},V=(C)=>{let j=L(C);return j>=0?F(j):void 0},T=(C,j,J)=>{if(!p)return C;let k=C;while(k>=0&&k<J){if(!p(k))return k;k+=j}k=C-j;while(k>=0&&k<J){if(!p(k))return k;k-=j}return C};function B(C,j){if(e==="single")r.selected.clear(),H.clear();if(r.selected.add(C),j)H.set(C,j)}function q(C,j){if(r.selected.has(C))r.selected.delete(C),H.delete(C);else B(C,j)}function D(){r.selected.clear(),H.clear()}function oe(C){r.selected.delete(C),H.delete(C)}function _(C,j){let J=Math.min(C,j),k=Math.max(C,j);for(let h=J;h<=k;h++){if(p?.(h))continue;let W=V(h);if(W)r.selected.add(W.id),H.set(W.id,W);else if(a){let N=L(h);if(N>=0)r.selected.add(Ve+N)}}}function Y(){let C=v.totalItems;for(let j=0;j<C;j++){if(p?.(j))continue;let J=V(j);if(J)r.selected.add(J.id),H.set(J.id,J);else if(a){let k=L(j);if(k>=0)r.selected.add(Ve+k)}}}function U(){if(r.selected.size===0)return[];if(H.size>=r.selected.size){let k=[];for(let h of r.selected){let W=H.get(h);if(W)k.push(W)}if(k.length===r.selected.size)return k}let C=[],j=new Set(r.selected),J=v.totalItems;for(let k=0;k<J&&j.size>0;k++){if(p?.(k))continue;let h=V(k);if(h&&j.has(h.id))C.push(h),H.set(h.id,h),j.delete(h.id)}return C}function P(){l(),y.emit("selection:change",{selected:ct(r.selected),items:U()})}let O=null,g=-1;return{name:"selection",priority:50,setup(C){C.enableListboxRole(),r=Dn(t?.initial),i=C.getItems.bind(C),l=C.forceRender.bind(C),y=C.emitter,f=C.dom;let j=C.config;if(c=C.sizeCache,v=C.getState(),I=C.scrollTo.bind(C),b=()=>v.totalItems,e==="none"){C.registerMethod("select",()=>{}),C.registerMethod("deselect",()=>{}),C.registerMethod("toggleSelect",()=>{}),C.registerMethod("selectAll",()=>{}),C.registerMethod("clearSelection",()=>{}),C.registerMethod("getSelected",()=>[]),C.registerMethod("getSelectedItems",()=>[]),C.registerMethod("selectNext",()=>{}),C.registerMethod("selectPrevious",()=>{}),C.registerMethod("_seedSelection",()=>{}),C.registerMethod("_getFocusedId",()=>{return}),C.registerMethod("_focusById",()=>{});return}let J=j.classPrefix;C.setItemStateFn((E,x)=>{if(A(C),r.selected.size>0){let z=L(E),X=z>=0?V(E):void 0,se=X?.id;if(se!==void 0)if(r.selected.has(se))x.selected=!0;else if(nt(r.selected,z,se))x.selected=!0,H.delete(Ve+z),H.set(se,X);else x.selected=!1;else x.selected=a!==null&&z>=0&&r.selected.has(Ve+z)}else x.selected=!1;x.focused=r.focusVisible&&r.focusedIndex===E}),C.registerMethod("_getSelectedIds",()=>r.selected),C.registerMethod("_getFocusedIndex",()=>r.focusVisible?r.focusedIndex:-1),f.root.classList.add(`${J}--selectable`);let k=(E)=>{O=null,g=-1;let x=E.target.closest("[data-index]");if(!x)return!1;let z=parseInt(x.dataset.index??"-1",10);if(z<0)return!1;if(p?.(z))return!1;if(L(z)<0)return!1;let se=V(z);if(!se)return!1;return O=se,g=z,!0},h=0,W=(E)=>{if(E<0)return;if(M){M(E);return}if(!h){let ve=C.getMethod("_getRowGap");h=ve?ve():0}let x=C.getNavConfig(),z=x.scrollIndex?x.scrollIndex(E):E,X=c.getOffset(z),se=c.getSize(z)-h,te=v.containerSize,ee=v.scrollPosition,{startPadding:ie,endPadding:ne}=j;if(X<ee)I(X);else if(ie+X+se+ne>ee+te)I(ie+X+se+ne-te)},N=(E)=>{let x=f.content.querySelectorAll(`[data-index="${E}"]`),z=null;for(let X=0;X<x.length;X++){let se=x[X];if(se.style.display!=="none"){z=se;break}}if(!z&&x.length>0)z=x[0];f.content.setAttribute("aria-activedescendant",z?.id??`${J}-item-${E}`)},Z=()=>{if(v.destroyed)return;if(A(C),!f.content.matches(":focus-visible")&&!f.root.matches(":focus-visible"))return;let E=b();if(E===0)return;let x=r.focusedIndex>=0?Math.min(r.focusedIndex,E-1):0;x=T(x,1,E),r.focusedIndex=x,r.focusVisible=!0,N(x),W(x),l()};f.root.addEventListener("focusin",Z);let m=(E)=>{if(v.destroyed)return;let x=E.relatedTarget;if(x&&f.root.contains(x))return;r.focusVisible=!1,l(),f.content.removeAttribute("aria-activedescendant")};if(f.root.addEventListener("focusout",m),C.registerDestroyHandler(()=>{f.root.removeEventListener("focusin",Z),f.root.removeEventListener("focusout",m)}),C.registerClickHandler((E)=>{if(A(C),!k(E))return;if(e==="multiple"&&E.shiftKey&&r.focusedIndex>=0){let z=S>=0?S:r.focusedIndex,X=L(z),se=L(g);if(X>=0&&se>=0)_(z,g);r.focusedIndex=g,r.focusVisible=o,S=g,P();return}if(r.focusedIndex=g,r.focusVisible=o,S=g,(f.content.getAttribute("tabindex")!==null?f.content:f.root).focus(Eo),e==="single")B(O.id,O);else q(O.id,O);P()}),s)C.registerKeydownHandler((E)=>{A(C);let x=b();if(x===0)return;let z=C.getNavConfig(),X=r.focusedIndex,se=!1,te=!1;if(z.navigate&&(E.key==="ArrowUp"||E.key==="ArrowDown"||E.key==="ArrowLeft"||E.key==="ArrowRight"||E.key==="PageUp"||E.key==="PageDown"||E.key==="Home"||E.key==="End")){let ie=z.total?z.total():x,ne=z.navigate(r.focusedIndex,E.key,ie);if(ne!==r.focusedIndex)r.focusedIndex=Math.max(0,Math.min(ne,ie-1));r.focusVisible=!0,se=!0}else switch(E.key){case"ArrowUp":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(ve&&!ne)break;Xe(r,-(ve?ne:ie),x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowDown":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(ve&&!ne)break;Xe(r,ve?ne:ie,x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowLeft":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(!ve&&!ne)break;Xe(r,-(ve?ie:ne),x,j.reverse),r.focusVisible=!0,se=!0;break}case"ArrowRight":{let ie=z.ud||1,ne=z.lr,ve=j.axis.primary==="x";if(!ve&&!ne)break;Xe(r,ve?ie:ne,x,j.reverse),r.focusVisible=!0,se=!0;break}case"Home":if(x>0)r.focusedIndex=0;r.focusVisible=!0,se=!0;break;case"End":if(x>0)r.focusedIndex=x-1;r.focusVisible=!0,se=!0;break;case"PageUp":case"PageDown":{let ie=z.ud||1,ne=Math.max(0,r.focusedIndex),ve=z.scrollIndex?z.scrollIndex(ne):ne,be=c.getSize(ve),de=v.containerSize,le=(be>0?Math.max(1,Math.floor(de/be)):10)*ie;if(d&&w){let re=d(r.focusedIndex),Se=E.key==="PageUp"?-le:le,Me=v.totalItems-1;r.focusedIndex=w(tt(re+Se,re,ie,Me+1))}else{let re=E.key==="PageUp"?r.focusedIndex-le:r.focusedIndex+le;r.focusedIndex=tt(re,r.focusedIndex,ie,x)}r.focusVisible=!0,se=!0;break}case" ":case"Enter":if(E.key===" "&&E.shiftKey&&e==="multiple"&&r.focusedIndex>=0){if(S>=0){let ie=L(S),ne=L(r.focusedIndex);if(ie>=0&&ne>=0)_(S,r.focusedIndex)}r.focusVisible=!0,te=!0,se=!0;break}if(r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)q(ie.id,ie),S=r.focusedIndex;r.focusVisible=!0,te=!0,se=!0}break;case"a":if((E.ctrlKey||E.metaKey)&&e==="multiple"){if(r.selected.size===v.totalItems)D();else Y();r.focusVisible=!0,te=!0,se=!0}break;case"Delete":case"Backspace":if(r.selected.size>0)y.emit("delete",{selected:ct(r.selected),items:U()}),se=!0;break}if(r.focusedIndex!==X&&p){let ie=r.focusedIndex>X?1:-1;r.focusedIndex=T(r.focusedIndex,ie,x)}let ee=r.focusedIndex!==X;if(E.shiftKey&&e==="multiple"&&!te&&ee){if(E.key==="ArrowUp"||E.key==="ArrowDown"||E.key==="ArrowLeft"||E.key==="ArrowRight"){let ve=V(r.focusedIndex);if(ve)q(ve.id,ve);S=r.focusedIndex,te=!0}if((E.ctrlKey||E.metaKey)&&(E.key==="Home"||E.key==="End")){let ve=X>=0?X:r.focusedIndex,be=L(ve),de=L(r.focusedIndex);if(be>=0&&de>=0)_(ve,r.focusedIndex);S=r.focusedIndex,te=!0}}if(n&&e==="single"&&!te&&ee&&r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)B(ie.id,ie);te=!0}if(se){if(E.preventDefault(),ee&&r.focusedIndex>=0){if(M||!z.navigate)W(r.focusedIndex);N(r.focusedIndex)}if(te)P();else if(ee){if(l(),r.focusedIndex>=0){let ie=V(r.focusedIndex);if(ie)y.emit("focus:change",{id:ie.id,index:r.focusedIndex})}}}});C.registerMethod("select",(...E)=>{for(let x of E)B(x);P()}),C.registerMethod("deselect",(...E)=>{for(let x of E)oe(x);P()}),C.registerMethod("toggleSelect",(E)=>{q(E),P()}),C.registerMethod("selectAll",()=>{if(e!=="multiple")return;A(C),Y(),P()}),C.registerMethod("clearSelection",()=>{D(),P()}),C.registerMethod("getSelected",()=>ct(r.selected)),C.registerMethod("getSelectedItems",()=>U()),C.registerMethod("selectNext",()=>{A(C);let E=b();if(E===0)return;if(Xe(r,1,E,j.reverse),p)r.focusedIndex=T(r.focusedIndex,1,E);let x=V(r.focusedIndex);if(x)B(x.id,x);P()}),C.registerMethod("selectPrevious",()=>{A(C);let E=b();if(E===0)return;if(Xe(r,-1,E,j.reverse),p)r.focusedIndex=T(r.focusedIndex,-1,E);let x=V(r.focusedIndex);if(x)B(x.id,x);P()}),C.registerMethod("_seedSelection",(E)=>{if(e==="single"){if(E.length===1)r.selected.add(E[0])}else for(let x of E)r.selected.add(x)}),C.registerMethod("_isFollowFocus",()=>n),C.registerMethod("_getFocusedId",()=>{if(r.focusedIndex<0)return;return V(r.focusedIndex)?.id}),C.registerMethod("_focusById",(E)=>{let x=v.totalItems;for(let z=0;z<x;z++){if(p?.(z))continue;let X=V(z);if(X&&X.id===E){r.focusedIndex=z,r.focusVisible=o,y.emit("focus:change",{id:E,index:z});return}}})},destroy(){H.clear()}}}var mt=(t)=>t==null?0:typeof t==="function"?t():t;function zt(t){let e=t?.scrollPadding,n,o;return{name:"page",priority:5,setup(s){let{dom:r,sizeCache:i,config:l,emitter:y}=s,f=l.axis.primary==="x",c=window,v=s.getState();if(s.disableDefaultScroll(),s.disableDefaultResize(),r.root.style.overflow="visible",r.root.style.height="auto",f)r.viewport.style.overflowX="visible",r.viewport.style.overflowY="visible";else r.viewport.style.overflow="visible";r.viewport.classList.remove(`${l.classPrefix}-viewport--custom-scrollbar`),s.setScrollFns(()=>{let p=r.viewport.getBoundingClientRect();return Math.max(0,f?-p.left:-p.top)},(p)=>{let M=r.viewport.getBoundingClientRect(),b=(f?M.left+c.scrollX:M.top+c.scrollY)+p;if(f)c.scrollTo({left:b,top:c.scrollY,behavior:"instant"});else c.scrollTo({left:c.scrollX,top:b,behavior:"instant"})}),v.containerSize=f?c.innerWidth:c.innerHeight,v.crossSize=f?c.innerHeight:c.innerWidth;let I=null,S=()=>{let p=r.viewport.getBoundingClientRect(),M=Math.max(0,f?-p.left:-p.top);if(v.prevScrollPosition=v.scrollPosition,v.scrollPosition=M,v.scrollDirection=M>v.prevScrollPosition?1:M<v.prevScrollPosition?-1:0,s.onScrollFrame(),I!==null)clearTimeout(I);I=setTimeout(()=>{I=null,s.onScrollIdle()},150)};c.addEventListener("scroll",S,{passive:!0}),o=()=>c.removeEventListener("scroll",S);let{innerWidth:H,innerHeight:d}=c,w=()=>{let{innerWidth:p,innerHeight:M}=c;if((f?Math.abs(p-H):Math.abs(M-d))<1)return;H=p,d=M,v.containerSize=f?p:M,v.crossSize=f?M:p,s.forceRender(),y.emit("resize",{width:p,height:M})};if(c.addEventListener("resize",w),n=()=>c.removeEventListener("resize",w),e)s.setScrollToPosFn((p,M,b,u,A)=>{let L=mt(f?e.left:e.top),a=mt(f?e.right:e.bottom);if(u===0)return 0;let F=Math.max(0,Math.min(p,u-1)),V=M.getOffset(F),T=M.getSize(F),B=M.getTotalSize(),q=Math.max(0,B-b+a),D;switch(A){case"center":D=V-L-(b-L-a-T)/2;break;case"end":D=V-b+T+a;break;default:D=V-L}return Math.max(-L,Math.min(D,q))}),s.registerMethod("_scrollItemIntoView",(p)=>{let M=f?c.innerWidth:c.innerHeight,b=mt(f?e.left:e.top),u=mt(f?e.right:e.bottom),A=r.viewport.getBoundingClientRect(),L=f?c.scrollX:c.scrollY,a=f?A.left:A.top,F=a+L,V=i.getOffset(p),T=i.getSize(p),B=a+V,q=M-u,D=L;if(B<b)D=F+V-b;else if(B+T>q)D=F+V+T-q;if(D!==L)if(f)c.scrollTo({left:D,top:c.scrollY,behavior:"instant"});else c.scrollTo({left:c.scrollX,top:D,behavior:"instant"})});s.registerDestroyHandler(()=>{if(o?.(),n?.(),I!==null)clearTimeout(I)})},destroy(){o?.(),n?.(),o=void 0,n=void 0}}}var Mo=(t)=>{try{let e=sessionStorage.getItem(t);if(!e)return;return JSON.parse(e)}catch{return}};function ot(t){let e=t?.autoSave,n=t?.restore??(e?Mo(e):void 0),o=!1,s=null;return{name:"snapshots",priority:50,setup(r){let{sizeCache:i,emitter:l}=r,y=r.getState(),f=()=>{let{scrollPosition:I,totalItems:S}=y,d=r.getMethod("getSelected")?.();if(S===0){let a={index:0,offsetInItem:0,total:0};if(d?.length)a.selectedIds=d;return a}let w=i.indexAtOffset(I),p=I-i.getOffset(w);p=Math.max(0,p);let M={index:w,offsetInItem:p,total:S,scrollTop:I},b=i.getSize(w);if(b)M.offsetRatio=p/b;let u=r.getMethod("_layoutToDataIndex");if(u){let a=u(w);if(a<0){for(let F=w+1;F<S;F++)if(a=u(F),a>=0)break}if(a>=0)M.dataIndex=a}let A=r.getMethod("_getTotal");if(A)M.dataTotal=A();if(d?.length)M.selectedIds=d;let L=r.getMethod("_getFocusedId");if(L){let a=L();if(a!==void 0)M.focusedId=a}return M};r.registerMethod("getScrollSnapshot",f);let c=(I,S=!0)=>{let{index:H,offsetInItem:d,selectedIds:w,focusedId:p}=I,M=y.totalItems,b=I.dataTotal??I.total;if(M===0&&b&&b>0){let Y=r.getMethod("_setTotal");if(Y)Y(b),M=y.totalItems;i.rebuild(M),r.updateContentSize(i.getTotalSize()),y.totalSize=i.getTotalSize()}if(M===0)return Promise.resolve();if(!Number.isFinite(H)||!Number.isFinite(d))return Promise.resolve();if(i.getTotal()===0)i.rebuild(M),r.updateContentSize(i.getTotalSize()),y.totalSize=i.getTotalSize();let A=r.getMethod("_dataToLayoutIndex"),L=H;if(I.dataIndex!==void 0&&I.dataIndex>=0)L=A?A(I.dataIndex):I.dataIndex;else if(A)L=A(H);let a=Math.max(0,Math.min(L,M-1)),F=i.getSize(a),V=I.offsetRatio!==void 0?I.offsetRatio*F:Math.min(d,F),T=r.getMethod("_getTotal")?.(),B=I.total===M||T!==void 0&&I.dataTotal===T,q;if(I.scrollTop!==void 0&&B)q=I.scrollTop;else q=i.getOffset(a)+V;let D=Math.max(0,y.totalSize-y.containerSize);if(q=Math.max(0,Math.min(q,D)),r.scrollTo(q),S&&w?.length){let Y=r.getMethod("select");if(Y)Y(...w)}let oe=r.getMethod("loadVisibleRange"),_=()=>{if(p===void 0)return;let Y=r.getMethod("_focusById");if(Y)Y(p)};return new Promise((Y)=>{let U=(P)=>{if(P)_();Y()};if(oe){let P=0,O=()=>{if(y.containerSize>0){if(Math.abs(y.scrollPosition-q)>1)r.scrollTo(q);oe().then(()=>U(!0),()=>U(!1))}else if(++P<10)requestAnimationFrame(O);else U(!1)};requestAnimationFrame(O)}else{let P=r.getMethod("reload");if(P)requestAnimationFrame(()=>{P().then(()=>U(!0),()=>U(!1))});else requestAnimationFrame(()=>U(!0))}})};r.registerMethod("restoreScroll",c);let v=!!(n&&e);if(r.registerDestroyHandler(()=>{o=!0}),e){s=()=>{if(o||v)return;let M=f();try{sessionStorage.setItem(e,JSON.stringify(M))}catch{}},r.registerMethod("_saveSnapshot",s);let I=0,S=()=>{if(I)return;I=requestAnimationFrame(()=>{if(I=0,s)s()})};l.on("selection:change",S),l.on("focus:change",S);let H=0,d=()=>{if(H=0,s)s()},w=()=>{if(H)clearTimeout(H);H=setTimeout(d,300)};l.on("scroll",w);let p=()=>{s?.()};if(window.addEventListener("beforeunload",p),r.registerDestroyHandler(()=>{if(I)cancelAnimationFrame(I);if(H)clearTimeout(H);window.removeEventListener("beforeunload",p)}),n&&n.total&&n.total>0){let M=r.getMethod("_cancelAutoLoad");if(M)M();let b=r.getMethod("_setTotal");if(b)b(n.total)}}if(n){let I=!0;if(n.selectedIds?.length){let S=r.getMethod("_seedSelection");if(S)S(n.selectedIds),I=!1}queueMicrotask(()=>{if(c(n,I),v=!1,s)s()})}},hooks:{onIdle(){if(s&&!o)s()}},destroy(){o=!0,s=null}}}function Vn(t,e){if(e===!1)return null;return{duration:Math.min(e?.duration??t.duration,1000),easing:e?.easing??t.easing}}function Rt(t){let e=t?.duration??200,n=t?.easing??"cubic-bezier(0.2, 0, 0, 1)",o={duration:e,easing:n},s=Vn(o,t?.remove),r=Vn(o,t?.insert),i=null,l=null;return{name:"transition",conflicts:["grid","table","masonry"],priority:45,setup(y){let{sizeCache:f,emitter:c}=y,{config:v,dom:I}=y,S=y.getState(),H=v.reverse?"bottom center":"top center",d=v.axis.primary==="x"?"translateX":"translateY",w=y.getMethod("_dataToLayoutIndex")??null,p=(u)=>w?w(u):u,M=(u)=>{let A=String(u).replace(/"/g,"\\\""),L=I.content.querySelector(`[data-id="${A}"]`),a=L?parseInt(L.dataset.index??"-1",10):-1;return{el:L,layoutIndex:a}},b=()=>{let u=I.content.children;for(let A=0;A<u.length;A++)u[A].style.transition="none";I.content.offsetHeight;for(let A=0;A<u.length;A++)u[A].style.transition=""};if(s){let u=(L)=>{if(i)i();let a=typeof document<"u"?document.activeElement:null,F=a&&I.content.contains(a)?parseInt(a.dataset?.index??"-1",10):-1,V=M(L),{layoutIndex:T,el:B}=V,q=T>=0?f.getSize(T):0,D=T>=0?f.getOffset(T):0;if(!B||T<0){if(y.removeItemById(L)<0)return!1;if(y.forceRender(),b(),c.emit("data:change",{type:"remove",id:L}),F>=0){let Z=S.totalItems;if(Z>0)y.getRenderedElement(Math.min(F,Z-1))?.focus()}return c.emit("remove:end",{id:L}),!0}let oe=B.cloneNode(!0);oe.style.pointerEvents="none",oe.style.overflow="hidden",oe.removeAttribute("data-index"),oe.removeAttribute("data-id"),oe.removeAttribute("id"),oe.removeAttribute("aria-selected"),oe.classList.remove(`${v.classPrefix}-item--selected`);let _=v.axis.primary==="x"?"scrollLeft":"scrollTop",Y=I.viewport[_];if(y.removeItemById(L)<0)return!1;y.forceRender(),b(),c.emit("data:change",{type:"remove",id:L});let P=Y-I.viewport[_];oe.style.zIndex="1",I.content.appendChild(oe);let O=s,g={duration:O.duration,easing:O.easing},C=[],j=Math.round(D-P);C.push(oe.animate([{transform:`${d}(${j}px) scaleY(1)`,opacity:1,transformOrigin:H},{transform:`${d}(${Math.round(D)}px) scaleY(0)`,opacity:0,transformOrigin:H}],g));let J=P>0,k=I.content.children;for(let N=0;N<k.length;N++){let Z=k[N];if(Z===oe)continue;let m=parseInt(Z.dataset?.index??"-1",10);if(m<0||!J&&m<T)continue;let E=f.getOffset(m),x=m>=T?Math.round(E+q-P):Math.round(E-P),z=Math.round(E);if(x===z)continue;C.push(Z.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],g))}let h=!1,W=()=>{if(h)return;h=!0,i=null,oe.remove();for(let N of C)if(N.playState!=="finished")N.cancel();if(F>=0){let N=S.totalItems;if(N>0)y.getRenderedElement(Math.min(F,N-1))?.focus()}c.emit("remove:end",{id:L})};return i=W,Promise.all(C.map((N)=>N.finished)).then(W,W),setTimeout(W,O.duration+50),!0},A=(L)=>{if(L.length===0)return 0;if(L.length===1)return u(L[0])?1:0;if(i)i();if(l)l();let a=typeof document<"u"?document.activeElement:null,F=a&&I.content.contains(a)?parseInt(a.dataset?.index??"-1",10):-1,V=[];for(let h of L){let W=M(h);V.push({id:h,layoutIndex:W.layoutIndex,el:W.el,size:W.layoutIndex>=0?f.getSize(W.layoutIndex):0,offset:W.layoutIndex>=0?f.getOffset(W.layoutIndex):0})}V.sort((h,W)=>W.layoutIndex-h.layoutIndex);let T=[];for(let h of V){if(!h.el||h.layoutIndex<0)continue;let W=h.el.cloneNode(!0);W.style.pointerEvents="none",W.style.overflow="hidden",W.removeAttribute("data-index"),W.removeAttribute("data-id"),W.removeAttribute("id"),W.removeAttribute("aria-selected"),W.classList.remove(`${v.classPrefix}-item--selected`),T.push({clone:W,offset:h.offset,size:h.size,layoutIndex:h.layoutIndex})}let B=new Map,q=I.content.children;for(let h=0;h<q.length;h++){let W=q[h],N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(N&&Z>=0)B.set(N,f.getOffset(Z))}let D=v.axis.primary==="x"?"scrollLeft":"scrollTop",oe=I.viewport[D],_=[];for(let h of V)if(y.removeItemById(h.id)>=0)_.push(h.id);if(_.length===0)return 0;y.forceRender(),b();for(let h of _)c.emit("data:change",{type:"remove",id:h});if(T.length===0){if(F>=0){let h=S.totalItems;if(h>0)y.getRenderedElement(Math.min(F,h-1))?.focus()}for(let h of _)c.emit("remove:end",{id:h});return _.length}let Y=oe-I.viewport[D],U=s,P={duration:U.duration,easing:U.easing},O=[];T.sort((h,W)=>h.layoutIndex-W.layoutIndex);let g=0;for(let h of T){h.clone.style.zIndex="1",I.content.appendChild(h.clone);let W=Math.round(h.offset-Y),N=Math.round(h.offset-g);O.push(h.clone.animate([{transform:`${d}(${W}px) scaleY(1)`,opacity:1,transformOrigin:H},{transform:`${d}(${N}px) scaleY(0)`,opacity:0,transformOrigin:H}],P)),g+=h.size}let C=new Set(T.map((h)=>h.clone)),j=I.content.children;for(let h=0;h<j.length;h++){let W=j[h];if(C.has(W))continue;let N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(!N||Z<0)continue;let m=B.get(N);if(m===void 0)continue;let E=f.getOffset(Z),x=Math.round(m-Y),z=Math.round(E);if(x===z)continue;O.push(W.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],P))}let J=!1,k=()=>{if(J)return;J=!0,i=null;for(let{clone:h}of T)h.remove();for(let h of O)if(h.playState!=="finished")h.cancel();if(F>=0){let h=S.totalItems;if(h>0)y.getRenderedElement(Math.min(F,h-1))?.focus()}for(let h of _)c.emit("remove:end",{id:h})};return i=k,Promise.all(O.map((h)=>h.finished)).then(k,k),setTimeout(k,U.duration+50),_.length};y.registerMethod("removeItem",u),y.registerMethod("removeItems",A)}if(r){let u=(A,L)=>{if(l)l();if(i)i();let a=L??0,F=new Map,V=I.content.children;for(let h=0;h<V.length;h++){let W=V[h],N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(N&&Z>=0)F.set(N,f.getOffset(Z))}let T=v.axis.primary==="x"?"scrollLeft":"scrollTop",B=v.axis.primary==="x"?"scrollWidth":"scrollHeight",q=v.axis.primary==="x"?"clientWidth":"clientHeight",D=I.viewport[T],oe=I.viewport[B]-I.viewport[q],_=D>=oe-1;y.insertItemAt(A,a),y.forceRender(),b(),c.emit("data:change",{type:"insert",id:A.id});let Y=I.viewport[T]-D,U=p(a);if(v.reverse&&Y===0&&_){I.viewport[T]=I.viewport[B]-I.viewport[q];let h=I.viewport[T];if(S.prevScrollPosition=S.scrollPosition,S.scrollPosition=h,Y=h-D,Y>0)y.forceRender(),b()}let P=y.getRenderedElement(U),O=r,g={duration:O.duration,easing:O.easing},C=[];if(P){let h=f.getOffset(U);C.push(P.animate([{transform:`${d}(${Math.round(h)}px) scaleY(0)`,opacity:0,transformOrigin:H},{transform:`${d}(${Math.round(h)}px) scaleY(1)`,opacity:1,transformOrigin:H}],g))}let j=I.content.children;for(let h=0;h<j.length;h++){let W=j[h];if(W===P)continue;let N=W.dataset?.id,Z=parseInt(W.dataset?.index??"-1",10);if(!N||Z<0)continue;let m=F.get(N);if(m===void 0)continue;let E=f.getOffset(Z),x=Math.round(m+Y),z=Math.round(E);if(x===z)continue;C.push(W.animate([{transform:`${d}(${x}px)`},{transform:`${d}(${z}px)`}],g))}if(C.length===0)return;let J=!1,k=()=>{if(J)return;J=!0,l=null;for(let h of C)if(h.playState!=="finished")h.cancel()};l=k,Promise.all(C.map((h)=>h.finished)).then(k,k),setTimeout(k,O.duration+50)};y.registerMethod("insertItem",u)}},destroy(){if(i)i();if(l)l()}}}function Ht(t){let e=t?.gap??0,n=null,o=null,s,r,i,l,y=new Map,f=new Set,c=new WeakMap,v=0,I=!1,S=!1,H=!1,d=2;function w(a){return y.get(a)??l}function p(a){return y.has(a)&&!f.has(a)}function M(a){if(!o||s.destroyed)return;if(!y.has(a))return;f.add(a),o.forceRender()}function b(){return Math.max(0,o.sizeCache.getTotalSize()+o.config.mainAxisPadding-s.containerSize)}function u(){let a=b();return a>0&&s.scrollPosition>=a-d}function A(){let a=b();if(a>s.scrollPosition)o.scrollTo(a)}function L(){o.updateContentSize(o.sizeCache.getTotalSize())}return{name:"autosize",priority:5,setup(a){if(o=a,s=a.getState(),r=a.config.axis.primary==="x",i=r?"width":"height",e===0)e=a.config.gap;if(l=typeof a.rawSizeSpec==="function"?a.rawSizeSpec(0)+e:a.rawSizeSpec+e,a.setSizeConfig(w),e>0){let q=a.sizeCache.getTotalSize;a.sizeCache.getTotalSize=()=>{let D=q();return D>0?D-e:0}}n=new ResizeObserver((q)=>{if(s.destroyed||!o)return;let D=!1,oe=a.sizeCache.indexAtOffset(s.scrollPosition);for(let O of q){let g=O.target,C=c.get(g);if(C===void 0)continue;if(g.getAttribute("data-index")!==String(C)){n.unobserve(g);continue}if(p(C))continue;let j=O.borderBoxSize[0];if(!j)continue;let J=r?j.inlineSize:j.blockSize;if(J<=0)continue;let k=J+e,h=y.has(C),W=y.get(C)??l;if(y.set(C,k),f.delete(C),!h||k!==W)D=!0;if(C<oe&&k!==W)v+=k-W;n.unobserve(g),g.style[i]=`${J}px`}if(!D)return;let _=u();if(a.rebuildSizeCache(),v)a.scrollTo(s.scrollPosition+v),v=0;let Y=s.scrollDirection!==0,U=s.totalItems>0&&s.prevRangeEnd>=s.totalItems-1,P=S&&!H;if(P||_||U||!Y){if(L(),I=!1,P||_)A()}else I=!0;a.forceRender()}),a.setScrollToIndexFn((q,D,oe,_,Y)=>{let U=q>=s.totalItems-1&&D==="end";if(S=U,H=!1,!U)return!1;let P=a.config.mainAxisPadding,O=()=>{let g=a.sizeCache.getTotalSize();return Math.max(0,g+P-s.containerSize)};if(oe==="smooth")H=!0,a.smoothScrollTo(O,_??300,Y,()=>{H=!1});else a.scrollTo(O())});let F=()=>{S=!1},V=a.dom.viewport;V.addEventListener("wheel",F,{passive:!0}),V.addEventListener("touchstart",F,{passive:!0}),a.registerDestroyHandler(()=>{V.removeEventListener("wheel",F),V.removeEventListener("touchstart",F)});let T=a.dom.content,B=(q)=>{let D=q.target;if(!D||D===T)return;let oe=D.closest("[data-index]");if(!oe||oe.parentNode!==T)return;let _=Number(oe.getAttribute("data-index"));if(p(_))M(_)};T.addEventListener("load",B,!0),T.addEventListener("error",B,!0),a.registerDestroyHandler(()=>{T.removeEventListener("load",B,!0),T.removeEventListener("error",B,!0)}),a.registerMethod("isMeasured",p),a.registerMethod("setMeasuredSize",(q,D)=>{y.set(q,D)}),a.registerMethod("getMeasuredCount",()=>y.size),a.registerDestroyHandler(()=>{if(n)n.disconnect(),n=null})},hooks:{onCommit(a){if(!n||!o)return;for(let F=0;F<a.visibleCount;F++){let V=a.visibleIndices[F];if(p(V))continue;let T=o.getRenderedElement(V);if(!T)continue;T.style[i]="",c.set(T,V),n.observe(T)}},onIdle(){if(!o||!I)return;let a=u();if(L(),I=!1,a)A(),o.forceRender()}},destroy(){if(n)n.disconnect(),n=null;y.clear(),f.clear(),S=!1,H=!1,o=null}}}var $n=(t)=>{let e=Math.max(1,Math.floor(t.columns)),n=t.gap??0,o=t.containerSize,s=t.crossOffset??0,r=t.mainOffset??0,i=0,l=[],y=()=>{let p=(e-1)*n;i=Math.max(0,(o-p)/e),l=Array(e);let M=i+n;for(let b=0;b<e;b++)l[b]=s+b*M};y();let f=[],c=0,v=[],I=(p,M)=>{if(p<=0)return c=0,f=[],[];let b=Array(e).fill(r),u=Array(e);for(let a=0;a<e;a++)u[a]=[];let A=Array(p);for(let a=0;a<p;a++){let F=0,V=b[0];for(let q=1;q<e;q++){let D=b[q];if(D<V)V=D,F=q}let T=M(a),B=b[F];A[a]={index:a,x:l[F],y:B,lane:F,size:T,crossSize:i},u[F].push(a),b[F]=B+T+n}f=u;let L=0;for(let a=0;a<e;a++){let F=b[a],V=F>0?F-n:0;if(V>L)L=V}return c=L,A},S=(p)=>{if(p.length===0)return c;if(c)return c;let M=Array(e).fill(0);for(let u of p){let A=u.y+u.size,L=M[u.lane];if(A>L)M[u.lane]=A}let b=0;for(let u=0;u<e;u++)if(M[u]>b)b=M[u];return b},H=(p,M,b)=>{if(p.length===0||b<=M)return v.length=0,v;if(f.length===0||f.length!==e)return d(p,M,b);v.length=0;for(let u=0;u<e;u++){let A=f[u],L=A.length;if(!L)continue;let a=0,F=L;while(a<F){let V=a+F>>>1,T=p[A[V]];if(T.y+T.size<=M)a=V+1;else F=V}for(let V=a;V<L;V++){let T=p[A[V]];if(T.y>=b)break;v.push(T)}}return v},d=(p,M,b)=>{v.length=0;for(let u of p)if(u.y+u.size>M&&u.y<b)v.push(u);return v};return{get columns(){return e},get gap(){return n},get containerSize(){return o},update:(p)=>{let M=!1;if(p.columns!==void 0){let b=Math.max(1,Math.floor(p.columns));if(b!==e)e=b,M=!0}if(p.gap!==void 0&&p.gap!==n)n=p.gap,M=!0;if(p.containerSize!==void 0&&p.containerSize!==o)o=p.containerSize,M=!0;if(p.crossOffset!==void 0&&p.crossOffset!==s)s=p.crossOffset,M=!0;if(p.mainOffset!==void 0&&p.mainOffset!==r)r=p.mainOffset,M=!0;if(M)y()},calculateLayout:I,getTotalSize:S,getVisibleItems:H}};var On=(t,e,n)=>{let o=Array.from(e).sort((i,l)=>i-l);if(o.length<=1)return;let s=[];for(let i=0;i<o.length;i++){let l=n(o[i]);if(l)s.push(l)}if(s.length<=1)return;let r=t.firstChild;for(let i=0;i<s.length;i++){let l=s[i];if(l===r)r=r.nextSibling;else t.insertBefore(l,r)}};var Po=(t=200)=>{let e=[];return{acquire:()=>{let r=e.pop();if(r)return r;let i=document.createElement("div");return i.setAttribute("role","option"),i},release:(r)=>{if(r.remove(),e.length<t)r.className="",r.textContent="",r.removeAttribute("style"),r.removeAttribute("data-index"),r.removeAttribute("data-id"),r.removeAttribute("data-lane"),e.push(r)},clear:()=>{e.length=0}}},wo=1,Nn=(t,e,n,o=!1,s,r,i,l,y=()=>0)=>{let f=Po(),c=new Map,v=new Set,I=0,S="",H=-1,d={selected:!1,focused:!1},w=(_,Y)=>(d.selected=_,d.focused=Y,d),p=`${n}-item ${n}-masonry-item`,M=`${n}-group-header`,b=`${n}-item--selected`,u=`${n}-item--focused`,A=(_,Y)=>{if(typeof Y==="string")_.innerHTML=Y;else _.replaceChildren(Y);Ge(_)},L=(_,Y,U)=>{_.classList.toggle(b,Y),_.classList.toggle(u,U)},a=(_,Y)=>{let U=Math.round(Y.y-y());if(o)_.style.transform=`translate(${U}px, ${Math.round(Y.x)}px)`;else _.style.transform=`translate(${Math.round(Y.x)}px, ${U}px)`},F=(_,Y)=>{if(o)_.style.width=`${Y.size}px`,_.style.height=`${Y.crossSize}px`;else _.style.width=`${Y.crossSize}px`,_.style.height=`${Y.size}px`},V=(_,Y,U,P,O)=>{let g=f.acquire(),C=Y.__groupHeader,j=w(P,O);if(g.className=C?M:p,g.dataset.index=String(_),g.dataset.id=String(Y.id),g.dataset.lane=String(U.lane),C)g.setAttribute("role","presentation"),g.removeAttribute("aria-selected"),g.removeAttribute("aria-setsize"),g.removeAttribute("aria-posinset"),g.removeAttribute("id");else if(l===!0){if(g.setAttribute("role","option"),g.ariaSelected=String(P),r)g.id=`${r}-item-${_}`;if(s){let k=s();if(k!==H)H=k,S=String(k);g.setAttribute("aria-setsize",S);let h=i?i(_):_+1;g.setAttribute("aria-posinset",String(h))}}else if(g.setAttribute("role","listitem"),g.removeAttribute("aria-selected"),s){let k=s();if(k!==H)H=k,S=String(k);g.setAttribute("aria-setsize",S);let h=i?i(_):_+1;g.setAttribute("aria-posinset",String(h))}F(g,U);let J=e(Y,_,j);return A(g,J),L(g,P,O),a(g,U),{element:g,lastItem:Y,lastSelected:P,lastFocused:O,lastY:U.y-y(),lastX:U.x,lastSize:U.size,lastCrossSize:U.crossSize,lastSeenFrame:I}},T=(_,Y,U,P)=>{I++,v.clear();for(let g=0;g<Y.length;g++)v.add(Y[g].index);let O=null;for(let g=0;g<Y.length;g++){let C=Y[g],j=C.index,J=_(j);if(!J)continue;let k=U.has(J.id),h=j===P,W=c.get(j);if(W){let N=W.lastItem!==J,Z=W.lastSelected!==k,m=W.lastFocused!==h,E=W.lastY!==C.y-y()||W.lastX!==C.x,x=W.lastSize!==C.size||W.lastCrossSize!==C.crossSize;if(N){let z=w(k,h),X=e(J,j,z);if(A(W.element,X),W.element.dataset.id=String(J.id),W.lastItem=J,!J.__groupHeader){let te=i?i(j):j+1;W.element.setAttribute("aria-posinset",String(te))}}if(N||Z||m)L(W.element,k,h),W.element.ariaSelected=String(k),W.lastSelected=k,W.lastFocused=h;if(x)F(W.element,C),W.lastSize=C.size,W.lastCrossSize=C.crossSize;if(E)a(W.element,C),W.lastY=C.y-y(),W.lastX=C.x}else{let N=V(j,J,C,k,h);if(!O)O=document.createDocumentFragment();O.appendChild(N.element),c.set(j,N)}}if(O)t.appendChild(O);for(let[g,C]of c)if(v.has(g))C.lastSeenFrame=I;else if(I-C.lastSeenFrame>wo)f.release(C.element),c.delete(g)},B=()=>{for(let _ of c.values())f.release(_.element);c.clear(),t.innerHTML=""};return{render:T,getElement:(_)=>c.get(_)?.element,updateItemClasses:(_,Y,U)=>{let P=c.get(_);if(!P)return;let O=P.lastSelected!==Y,g=P.lastFocused!==U;if(O||g)L(P.element,Y,U),P.lastSelected=Y,P.lastFocused=U},sortDOM:()=>{On(t,c.keys(),(_)=>c.get(_)?.element)},clear:B,destroy:()=>{B(),f.clear()}}};var Ao=100,zo=new Set;function kt(t){if(!t.columns||t.columns<1)throw Error("[vlist] masonry: columns must be >= 1");let e,n=null,o,s=null,r,i,l,y=[],f=-1,c=-1,v=!0,I=-1,S=-1,H=0,d=0,w=0,p=0,M={columnWidth:0,columns:0,gap:0,containerWidth:0},b=[],u=(m)=>b[m],A=null,L=null,a=!1;function F(){if(a||!s)return;a=!0,A=s.getMethod("_getSelectedIds")??null,L=s.getMethod("_getFocusedIndex")??null}let V=[],T=new Int32Array(0),B=[],q=null,D=null,oe=null,_=null,Y=!1,U=!0;function P(){if(Y||!s)return;if(q=s.getMethod("_getItemLane")??null,D=s.getMethod("_getItemY")??null,oe=s.getMethod("_getItemH")??null,_=s.getMethod("_isGroupHeader")??null,q||_)Y=!0}function O(){P();let m=e.columns,E=!!q;if(E){let x=o.totalItems;V=Array(m);for(let z=0;z<m;z++)V[z]=[];if(T.length<x)T=new Int32Array(x);for(let z=0;z<x;z++){if(_?.(z))continue;let X=q(z);if(X<0||X>=m)continue;T[z]=V[X].length,V[X].push(z)}}else{let x=y.length;V=Array(m);for(let z=0;z<m;z++)V[z]=[];if(T.length<x)T=new Int32Array(x);for(let z=0;z<x;z++){let X=y[z];T[z]=V[X.lane].length,V[X.lane].push(z)}}B=Array(m);for(let x=0;x<m;x++){let z=V[x],X=new Float64Array(z.length);for(let se=0;se<z.length;se++){let te=z[se];if(E&&D&&oe){let ee=D(te),ie=oe(te);X[se]=ee>=0?ee+(ie>0?ie*0.5:0):0}else{let ee=y[te];X[se]=ee.y+ee.size*0.5}}B[x]=X}}function g(m,E){let x=m.length;if(!x)return-1;let z=0,X=x-1;while(z<X){let se=z+X>>1;if(m[se]<E)z=se+1;else X=se}if(z>0&&Math.abs(m[z-1]-E)<=Math.abs(m[z]-E))return z-1;return z}function C(m,E,x){if(U)O(),U=!1;let z=!!q,X,se;if(z){if(_?.(m))return m;if(X=q(m),X<0)return m;se=T[m]}else{let ne=y[m];if(!ne)return m;X=ne.lane,se=T[m]}let te=e.columns,ee=V[X];switch(r?E==="ArrowDown"?"ArrowRight":E==="ArrowUp"?"ArrowLeft":E==="ArrowRight"?"ArrowDown":E==="ArrowLeft"?"ArrowUp":E:E){case"ArrowDown":if(se+1<ee.length)return ee[se+1];return m;case"ArrowUp":if(se>0)return ee[se-1];return m;case"ArrowRight":{if(X>=te-1)return m;let ne=X+1,ve=V[ne];if(!ve.length)return m;let be=g(B[ne],B[X]?.[se]??0);return be>=0?ve[be]:m}case"ArrowLeft":{if(X<=0)return m;let ne=X-1,ve=V[ne];if(!ve.length)return m;let be=g(B[ne],B[X]?.[se]??0);return be>=0?ve[be]:m}case"Home":return 0;case"End":{let ne=V[te-1];return ne.length>0?ne[ne.length-1]:m}case"PageDown":{let ne=o.containerSize,ve=z?null:y[m],be=ve&&ve.size>0?ve.size:150,de=Math.max(1,Math.floor(ne/be)),R=Math.min(se+de,ee.length-1);return ee[R]}case"PageUp":{let ne=o.containerSize,ve=z?null:y[m],be=ve&&ve.size>0?ve.size:150,de=Math.max(1,Math.floor(ne/be)),R=Math.max(0,se-de);return ee[R]}}return m}let j=null;function J(){if(t.size)return(m)=>t.size(m,M);if(j!==null&&typeof j==="function")return(m)=>j(m,M);return(m)=>s.sizeCache.getSize(m)}function k(){let m=e.columns,E=e.gap;M.containerWidth=e.containerSize,M.columns=m,M.gap=E,M.columnWidth=Math.max(0,(e.containerSize-(m-1)*E)/m)}function h(){if(!s)return;k();let m=o.totalItems;y=e.calculateLayout(m,J()),I=m,U=!0,W()}function W(){if(!s)return;let m=e.getTotalSize(y)+p;if(m===S)return;S=m,s.updateContentSize(m)}function N(){if(o.destroyed||!s||!n)return;if(o.totalItems!==I)h();if(v)S=-1,W();F();let m=o.scrollPosition,E=o.containerSize;if(!v&&m===f&&E===c)return;if(f=m,c=E,v=!1,E<=0||y.length===0)return;let x=Math.max(0,m-l),z=m+E+l,X=e.getVisibleItems(y,x,z),se=A?.()??zo,te=L?.()??-1;b=s.getItems(),n.render(u,X,se,te);let ee=X.length,ie=ee>0?X[0].index:0,ne=ee>0?X[ee-1].index:0;o.prevRangeStart=ie,o.prevRangeEnd=ne,o.renderPending=!1;let ve=Math.min(ee,o.capacity);o.visibleCount=ve,o.startIndex=ie;for(let be=0;be<ve;be++){let de=X[be];o.visibleIndices[be]=de.index,o.visibleOffsets[be]=de.y,o.visibleSizes[be]=de.size}}function Z(){if(o.destroyed)return;S=-1,h(),o.prevRangeStart=-1,o.prevRangeEnd=-1,o.renderPending=!0,v=!0,N()}return{name:"masonry",priority:10,conflicts:["grid","table"],setup(m){if(s=m,o=m.getState(),j=m.rawSizeSpec,r=m.config.axis.primary==="x",i=m.config.classPrefix,l=m.config.overscan*Ao,m.config.reverse)throw Error("[vlist] masonry: cannot be combined with reverse mode");H=m.config.crossAxisPadding,d=m.config.crossPadStart,w=m.config.startPadding,p=m.config.endPadding;let E=o.crossSize-H;e=$n({columns:t.columns,gap:t.gap??0,containerSize:E,crossOffset:d,mainOffset:w}),n=Nn(m.dom.content,m.template,i,r,()=>o.totalItems,void 0,void 0,void 0,()=>o.baseOffset),m.dom.root.classList.add(`${i}--masonry`),m.setRenderFn(N,Z),h(),m.registerMethod("getMasonryLayout",()=>e),m.registerMethod("updateMasonry",(x)=>{if(x.columns!==void 0&&x.columns<1)throw Error("[vlist] updateMasonry: columns must be >= 1");if(x.gap!==void 0&&x.gap<0)throw Error("[vlist] updateMasonry: gap must be >= 0");let z={};if(x.columns!==void 0)z.columns=x.columns;if(x.gap!==void 0)z.gap=x.gap;e.update(z),n?.clear(),Z()}),m.registerMethod("scrollToIndex",(x,z="start")=>{let X=y[x];if(!X)return;let se=typeof z==="string"?z:z.align??"start",te=typeof z==="object"?z.behavior:void 0,ee=typeof z==="object"?z.duration:void 0,ie=o.containerSize,ne=e.getTotalSize(y)+p,ve=Math.max(0,ne-ie),be=X.y;if(se==="center")be=X.y-ie/2+X.size/2;else if(se==="end"){if(be=X.y-ie+X.size,x>=o.totalItems-1&&X.y+X.size>ve)be=ve}if(be=Math.max(0,Math.min(be,ve)),te==="smooth"&&ee&&ee>0)m.smoothScrollTo(be,ee);else m.scrollTo(be)}),m.registerMethod("_scrollItemIntoView",(x)=>{let z=y[x];if(!z)return;let X=o.scrollPosition,se=o.containerSize,te=e.getTotalSize(y)+p,ee=Math.max(0,te-se),ie=z.y,ne=ie+z.size;if(ie-w<X)m.scrollTo(Math.max(0,ie-w));else if(ne+p>X+se){let ve=V[e.columns-1];if(ve&&ve.length>0&&x===ve[ve.length-1]&&ie>=ee)m.scrollTo(ee);else m.scrollTo(Math.min(ne+p-se,ee))}}),m.setNavConfig({total:()=>o.totalItems,navigate:C}),m.registerDestroyHandler(()=>{n?.destroy(),n=null,m.dom.root.classList.remove(`${i}--masonry`)})},hooks:{onResize(m,E){if(!e||!s)return;let x=o.crossSize-H;if(Math.abs(x-e.containerSize)<1)return;e.update({containerSize:x}),n?.clear(),Z()},onIdle(){n?.sortDOM()}},destroy(){n?.destroy(),n=null,y=[],s=null}}}var Gn=(t={})=>{let{chunkSize:e=100,maxCachedItems:n=5000,evictionBuffer:o=200,onEvict:s}=t,r=new Map,i=0,l=0,y=(U)=>{let P=r.get(U);if(!P)P={items:Array(e),count:0,lastAccess:Date.now()},r.set(U,P);else P.lastAccess=Date.now();return P},f=(U)=>Math.floor(U/e),c=(U)=>U%e,v=()=>i,I=(U)=>{i=U},S=(U)=>{if(U<0||U>=i)return;let P=f(U),O=r.get(P);if(!O)return;return O.items[c(U)]},H=(U)=>{if(U<0||U>=i)return!1;let P=f(U),O=r.get(P);if(!O)return!1;return O.items[c(U)]!==void 0},d=(U,P)=>{let O=f(U),g=y(O),C=c(U),j=g.items[C]===void 0;if(g.items[C]=P,j)g.count++,l++;if(U>=i)i=U+1},w=(U,P)=>{for(let O=0;O<P.length;O++){let g=P[O];if(g!==void 0)d(U+O,g)}},p=(U,P)=>{if(U<0||U>i)return;let O=f(U),g=Array.from(r.keys()).filter((h)=>h>=O).sort((h,W)=>h-W),C=[];for(let h of g){let W=r.get(h),N=h*e;for(let Z=0;Z<e;Z++){if(W.items[Z]===void 0)continue;let m=N+Z;if(m<U)continue;C.push({oldIndex:m,item:W.items[Z]})}}for(let{oldIndex:h}of C){let W=f(h),N=r.get(W);if(!N)continue;let Z=c(h);if(N.items[Z]!==void 0){if(N.items[Z]=void 0,N.count--,l--,N.count===0)r.delete(W)}}i++;for(let{oldIndex:h,item:W}of C){let N=h+1,Z=f(N),m=y(Z),E=c(N);m.items[E]=W,m.count++,l++}let j=f(U),J=y(j),k=c(U);J.items[k]=P,J.count++,l++},M=(U)=>{if(U<0||U>=i)return!1;let P=f(U),O=r.get(P),g=c(U);if(!(O!==void 0&&O.items[g]!==void 0))return!1;let j=P,J=Array.from(r.keys()).filter((h)=>h>=j).sort((h,W)=>h-W),k=[];for(let h of J){let W=r.get(h),N=h*e;for(let Z=0;Z<e;Z++){if(W.items[Z]===void 0)continue;let m=N+Z;if(m<=U)continue;k.push({oldIndex:m,item:W.items[Z]})}}if(O.items[g]=void 0,O.count--,l--,O.count===0)r.delete(P);for(let{oldIndex:h}of k){let W=f(h),N=r.get(W);if(!N)continue;let Z=c(h);if(N.items[Z]!==void 0){if(N.items[Z]=void 0,N.count--,l--,N.count===0)r.delete(W)}}for(let{oldIndex:h,item:W}of k){let N=h-1,Z=f(N),m=y(Z),E=c(N);m.items[E]=W,m.count++,l++}return i--,!0},b=(U,P)=>{let O=[];for(let g=U;g<=P&&g<i;g++)O.push(S(g));return O},u=(U,P)=>{for(let O=U;O<=P&&O<i;O++)if(!H(O))return!1;return!0},A=()=>{let U=[],P=null,O=Array.from(r.keys()).sort((g,C)=>g-C);for(let g of O){let C=r.get(g);if(!C)continue;let j=g*e;for(let J=0;J<e;J++){let k=j+J;if(k>=i)break;if(C.items[J]!==void 0)if(P===null)P={start:k,end:k};else if(k===P.end+1)P.end=k;else U.push(P),P={start:k,end:k};else if(P!==null)U.push(P),P=null}}if(P!==null)U.push(P);return U},L=(U,P)=>{let O=[],g=null;for(let C=U;C<=P&&C<i;C++)if(!H(C))if(g===null)g={start:C,end:C};else g.end=C;else if(g!==null)O.push(g),g=null;if(g!==null)O.push(g);return O},a=(U)=>r.has(U),F=(U)=>{let P=r.get(U);if(!P)return!1;let O=U*e,g=Math.min(e,i-O);return P.count>=g},V=(U)=>{let P=r.get(U);if(P)P.lastAccess=Date.now()},T=(U,P)=>{if(U>P||r.size===0)return;let O=Date.now(),g=f(Math.max(0,U)),C=f(Math.min(i-1,P));for(let j=g;j<=C;j++){let J=r.get(j);if(J)J.lastAccess=O}},B=(U,P)=>{if(l<=n)return 0;let O=Math.max(0,U-o),g=Math.min(i-1,P+o),C=f(O),j=f(g),J=0,k=[];for(let[h,W]of r)if(h<C||h>j)J+=W.count,k.push(h),l-=W.count,r.delete(h);if(J>0&&s)s(J,k);return J},q=()=>{if(l<=n)return 0;let U=Array.from(r.entries()).sort(([,g],[,C])=>g.lastAccess-C.lastAccess),P=0,O=[];for(let[g,C]of U){if(l<=n)break;P+=C.count,l-=C.count,O.push(g),r.delete(g)}if(P>0&&s)s(P,O);return P},D=()=>({totalItems:i,cachedItems:l,cachedChunks:r.size,chunkSize:e,maxCachedItems:n,memoryEfficiency:i>0?1-l/i:1}),oe=()=>l,_=()=>{r.clear(),l=0};return{chunkSize:e,maxCachedItems:n,getTotal:v,setTotal:I,get:S,has:H,set:d,setRange:w,insert:p,delete:M,getRange:b,isRangeLoaded:u,getLoadedRanges:A,findUnloadedRanges:L,getChunkIndex:f,isChunkLoaded:a,isChunkFullyLoaded:F,touchChunk:V,touchChunksForRange:T,evictDistant:B,evictToLimit:q,getStats:D,getCachedCount:oe,clear:_,reset:()=>{_(),i=0}}};var Bn=(t={})=>{let{maskCharacter:e=fn,maxSampleSize:n=gn}=t,o=[],s=!1,r=(c)=>{if(s||c.length===0)return;let v=Math.min(c.length,n);for(let I=0;I<v;I++){let S=c[I];if(!S||typeof S!=="object")continue;let H={},d=!1;for(let[w,p]of Object.entries(S)){if(w.startsWith("_")||w==="id")continue;H[w]=String(p??"").length,d=!0}if(d)o.push(H)}s=!0},i=()=>s,l=(c)=>{let v={id:`${Ve}${c}`,[xt]:!0,_index:c};if(o.length===0)return v.label=e.repeat(12),v;let I=o[c%o.length];for(let[S,H]of Object.entries(I))v[S]=e.repeat(Math.max(1,H));return v};return{analyzeStructure:r,hasAnalyzedStructure:i,generate:l,generateRange:(c,v)=>{let I=[];for(let S=c;S<=v;S++)I.push(l(S));return I},clear:()=>{o=[],s=!1}}},ft=(t)=>{if(!t||typeof t!=="object")return!1;return t[xt]===!0};var Ro=50,Wn=(t={})=>{let{adapter:e,initialItems:n,initialTotal:o,storage:s,placeholder:r,pageSize:i=Ro,maxConcurrent:l=0,onStateChange:y,onDataChange:f,onItemsLoaded:c,onItemsEvicted:v,onLoadError:I}=t,S=Gn({...s,onEvict:(de,R)=>{v?.(de),B(),T()}}),H=null,d=()=>{if(!H)H=Bn(r);return H},w=new Map,p=!1,M,b=!0,u,A,L=[],a=0,F=new Map,V=()=>{for(let de of F.values())de[1].abort();F.clear()},T=()=>{y?.(g())},B=()=>{f?.()},q=()=>{w.clear();let de=S.getLoadedRanges();for(let R of de)for(let le=R.start;le<=R.end;le++){let re=S.get(le);if(re&&!ft(re))w.set(re.id,le)}},D=(de,R)=>{if(!ft(R))w.set(R.id,de)},oe=(de)=>{w.delete(de)},_=(de,R)=>`${de}-${R}`,Y=()=>S.getTotal(),U=()=>S.getCachedCount(),P=()=>p,O=()=>b,g=()=>({total:S.getTotal(),cached:S.getCachedCount(),isLoading:p,pendingRanges:L,error:M,hasMore:b,cursor:u}),C=()=>S,j=()=>d(),J=(de)=>{let R=S.get(de);if(R!==void 0)return R;if(de>=0&&de<S.getTotal())return d().generate(de);return},k=(de)=>{let R=w.get(de);if(R===void 0)return;return S.get(R)},h=(de)=>w.get(de)??-1,W=(de)=>{let R=S.get(de);return R!==void 0&&!ft(R)},N=(de,R)=>{let le=[],re=S.getTotal();S.touchChunksForRange(de,Math.min(R,re-1));for(let Se=de;Se<=R&&Se<re;Se++){let Me=S.get(Se);if(Me!==void 0)le.push(Me);else le.push(d().generate(Se))}return le},Z=(de)=>{S.setTotal(de),b=S.getCachedCount()<de,B(),T()},m=(de,R=0,le)=>{if(e&&de.length>0){let re=d();if(!re.hasAnalyzedStructure())re.analyzeStructure(de)}for(let re=0;re<de.length;re++){let Se=de[re];if(Se!==void 0){let Me=R+re;S.set(Me,Se),D(Me,Se)}}if(le!==void 0)S.setTotal(le);else if(R+de.length>S.getTotal())S.setTotal(R+de.length);if(S.getCachedCount()>=S.getTotal()&&S.getTotal()>0)b=!1;B(),T(),c?.(de,R,S.getTotal())},E=(de,R)=>{let le=S.get(de);if(!le)return!1;let re=le.id,Se={...le,...R};if(S.set(de,Se),R.id!==void 0&&R.id!==re)oe(re);return D(de,Se),B(),T(),!0},x=(de,R)=>{S.insert(R,de),q(),V(),B(),T()},z=(de)=>{let R=w.get(de);if(R===void 0)return!1;if(!S.delete(R))return!1;return q(),V(),B(),T(),!0},X=async(de,R)=>{if(!e)return;let le=S.chunkSize,re=Math.floor(de/le),Se=Math.floor(R/le),Me=le*2;for(let[Te,Pe]of F){let Re=Te.indexOf("-"),K=parseInt(Te.slice(0,Re),10);if(Math.abs(K-de)>Me)Pe[1].abort(),F.delete(Te)}let xe=[],Le=[];for(let Te=re;Te<=Se;Te++){let Pe=Te*le,Re=Pe+le-1,K=_(Pe,Re);if(S.isChunkFullyLoaded(Te))continue;let ue=F.get(K);if(ue)Le.push(ue[0]);else xe.push({start:Pe,end:Re})}if(xe.length===0){if(Le.length>0)await Promise.all(Le);return}if(l>0){let Te=F.size+xe.length;if(Te>l){let Pe=(de+R)/2,Re=Math.min(Te-l,F.size);while(Re>0){let he=null,ue=-1,pe=null;for(let[me,Ce]of F){let fe=me.indexOf("-"),Ie=parseInt(me.slice(0,fe),10),ze=parseInt(me.slice(fe+1),10),ce=Math.abs((Ie+ze)/2-Pe);if(ce>ue)ue=ce,he=me,pe=Ce[1]}if(he)pe.abort(),F.delete(he);Re--}let K=l-F.size;if(xe.length>K)xe.sort((he,ue)=>{let pe=Math.abs((he.start+he.end)/2-Pe),me=Math.abs((ue.start+ue.end)/2-Pe);return pe-me}),xe.length=Math.max(0,K)}}if(xe.length===0){if(Le.length>0)await Promise.all(Le);return}for(let Te of xe){let Pe=_(Te.start,Te.end),Re=new AbortController,K=(async()=>{L.push(Te),p=!0,M=void 0,T();try{let he=Te.end-Te.start+1,ue={offset:Te.start,limit:he,cursor:Te.start===A?u:void 0,signal:Re.signal},pe=await e.read(ue);if(m(pe.items,Te.start,pe.total),pe.cursor)u=pe.cursor,A=Te.start+pe.items.length;let me=Te.start+pe.items.length;if(me>=a){if(a=me,pe.hasMore!==void 0)b=pe.hasMore;else if(pe.total!==void 0)b=me<pe.total}}catch(he){if(he?.name==="AbortError")return;M=he instanceof Error?he:Error(String(he)),I?.(M,Te)}finally{F.delete(Pe);let he=L.findIndex((ue)=>ue.start===Te.start&&ue.end===Te.end);if(he>=0)L.splice(he,1);p=F.size>0,T()}})();F.set(Pe,[K,Re]),Le.push(K)}await Promise.all(Le)},se=async(de,R)=>{if(S.isRangeLoaded(de,R))return;await X(de,R)},te=async()=>{if(!e)return;await X(0,i-1)},ee=async()=>{if(!e||p||!b)return!1;let de=S.getCachedCount(),R=S.getTotal(),le=de,re=Math.min(le+i-1,R>0?R-1:le+i-1);if(le>=R&&R>0)return b=!1,!1;return await X(le,re),S.getCachedCount()>de},ie=async()=>{if(S.clear(),w.clear(),H)H.clear();V(),L=[],p=!1,u=void 0,A=void 0,b=!0,a=0,M=void 0,B(),T()},ne=(de,R)=>{if(S.evictDistant(de,R)>0)q()},ve=()=>{S.clear(),w.clear(),u=void 0,A=void 0,M=void 0,L=[],p=!1,B(),T()},be=()=>{if(S.reset(),w.clear(),H)H.clear();u=void 0,A=void 0,b=!0,a=0,M=void 0,L=[],p=!1,B(),T()};if(n&&n.length>0)m(n,0,o??n.length);else if(o!==void 0)S.setTotal(o),B(),T();return{getState:g,getTotal:Y,getCached:U,getIsLoading:P,getHasMore:O,getStorage:C,getPlaceholders:j,getItem:J,getItemById:k,getIndexById:h,isItemLoaded:W,getItemsInRange:N,setTotal:Z,setItems:m,updateItem:E,insertItem:x,removeItem:z,loadRange:X,ensureRange:se,loadInitial:te,loadMore:ee,reload:ie,evictDistant:ne,clear:ve,reset:be}};function _t(t){let{adapter:e,total:n,autoLoad:o=!0,storage:s}=t,r=t.loading?.cancelThreshold??rn,i=t.loading?.preloadThreshold??on,l=t.loading?.preloadAhead??nn,y=t.loading?.maxConcurrent??sn,f,c,v,I,S,H,d=null,w=null,p=null,M=0,b=!1,u=null,A=It,L=-1,a=-1,F=-1,V=-1,T=s?.chunkSize??lt,B=()=>{if(d=null,w!==null)clearTimeout(w),w=null},q=(g,C)=>f.ensureRange(g,C),D=(g,C=lt)=>{I.emit("load:start",{offset:g,limit:C})},oe=(g)=>{I.emit("error",{error:g,context:"ensureRange"})},_=()=>{d=null;let g={start:c.startIndex,end:c.startIndex+Math.max(0,c.visibleCount-1)};if(g.end<g.start)return;q(g.start,g.end).catch(oe)},Y=()=>{if(u!==null)clearTimeout(u),u=null},U=()=>{if(c.destroyed)return;let g=f.getTotal();if(c.visibleCount<=0||c.startIndex>=g)return;let C=Math.min(c.startIndex+c.visibleCount-1,g-1);if(C<c.startIndex)return;q(c.startIndex,C).catch(oe)},P=()=>{if(u!==null||c.destroyed)return;u=setTimeout(()=>{u=null,U()},A),A=Math.min(A*2,ln)},O=()=>{Y(),A=It};return{name:"data",priority:20,setup(g){c=g.getState(),v=g.sizeCache,I=g.emitter,S=g.dom,H=g.forceRender.bind(g);let C=null;g.setVirtualTotalFn(()=>C?.getTotal()??0),g.setGetIndexByIdFn((J)=>C?.getIndexById(J)??-1),f=C=Wn({adapter:e,...n!==void 0&&{initialTotal:n},pageSize:s?.chunkSize??lt,maxConcurrent:y,...s&&{storage:{...s.chunkSize!==void 0&&{chunkSize:s.chunkSize},...s.maxCachedItems!==void 0&&{maxCachedItems:s.maxCachedItems},...s.evictionBuffer!==void 0&&{evictionBuffer:s.evictionBuffer}}},onDataChange:()=>{if(c.initialized){let J=f.getTotal(),k=f.getCached();if(c.totalItems=J,J!==L||k!==a)L=J,a=k,v.rebuild(J);g.updateContentSize(v.getTotalSize()),g.renderIfNeeded()}},onItemsLoaded:(J)=>{if(O(),c.initialized)g.updateContentSize(v.getTotalSize()),H(),I.emit("load:end",{items:J,total:f.getTotal()})},onLoadError:(J)=>{if(I.emit("error",{error:J,context:"load"}),c.initialized)g.renderIfNeeded();P()}}),g.setGetItemFn((J)=>f.getItem(J)),g.setRemoveItemFn((J)=>{let k=f.getIndexById(J);if(k<0)return-1;if(!f.removeItem(J))return-1;return k}),g.setInsertItemFn((J,k)=>{f.insertItem(J,k)}),g.setUpdateItemFn((J,k)=>{let h=f.getIndexById(J);if(h<0)return!1;return f.updateItem(h,k)}),g.registerMethod("reload",async()=>{if(d=null,F=-1,V=-1,O(),g.forceRender(),await f.reload(),g.scrollTo(0),o)D(0),await f.loadInitial(),g.forceRender()}),g.registerMethod("loadVisibleRange",async()=>{d=null,g.forceRender();let J=f.getTotal();if(c.visibleCount>0&&c.startIndex<J){let k=Math.min(c.startIndex+c.visibleCount-1,J-1);D(c.startIndex,k-c.startIndex+1),await q(c.startIndex,k)}}),g.registerMethod("loadInitial",async()=>{D(0),await f.loadInitial(),g.forceRender()}),g.registerMethod("getTotal",()=>f.getTotal()),g.registerMethod("setTotal",(J)=>{f.setTotal(J)}),g.registerMethod("_getTotal",()=>f.getTotal()),g.registerMethod("_setTotal",(J)=>{f.setTotal(J)}),g.registerMethod("_cancelAutoLoad",()=>{b=!0}),g.registerMethod("_getLoadedItem",(J)=>f.getStorage().get(J)),g.registerMethod("_getItem",(J)=>f.getItem(J)),g.registerMethod("_getLoadedCount",()=>f.getCached()),I.on("load:start",()=>{S.root.setAttribute("aria-busy","true")}),I.on("load:end",()=>{S.root.removeAttribute("aria-busy")}),g.registerDestroyHandler(()=>{if(p!==null)clearTimeout(p),p=null;B(),Y()}),I.on("velocity:change",({velocity:J})=>{M=Math.abs(J)});let j=()=>{if(c.destroyed)return;O(),U(),_()};if(window.addEventListener("online",j),g.registerDestroyHandler(()=>{window.removeEventListener("online",j)}),o)queueMicrotask(()=>{if(b)return;D(0),f.loadInitial().catch((J)=>{I.emit("error",{error:J,context:"loadInitial"})})});else if(n!==void 0)f.setTotal(n)},hooks:{onAfterScroll(){if(c.destroyed)return;let g=c.startIndex+Math.max(0,c.visibleCount-1);if(M>r){if(w!==null)clearTimeout(w),w=null;d={start:c.startIndex,end:g};return}if(M>i){let J=Math.floor(c.startIndex/T),k=Math.floor(g/T);if(J!==F||k!==V){if(F=J,V=k,g>=c.startIndex)q(c.startIndex,g).catch(oe)}let h=c.startIndex,W=g,N=c.scrollDirection;if(N>0)W=Math.min(W+l,f.getTotal()-1);else if(N<0)h=Math.max(0,h-l);if(d={start:h,end:W},w!==null)clearTimeout(w);w=setTimeout(()=>{if(w=null,c.destroyed||!d)return;let{start:Z,end:m}=d;if(d=null,m>=Z)q(Z,m).catch(oe)},100);return}B();let C=Math.floor(c.startIndex/T),j=Math.floor(g/T);if(C!==F||j!==V){if(F=C,V=j,g>=c.startIndex)q(c.startIndex,g).catch(oe)}},onIdle(){if(c.destroyed)return;M=0,F=-1,V=-1,_(),B()},onResize(){if(c.destroyed)return;let g=f.getTotal();if(g<=0)return;if(c.visibleCount<=0||c.startIndex>=g)return;let C=Math.min(c.startIndex+c.visibleCount-1,g-1);if(C<c.startIndex)return;D(c.startIndex,C-c.startIndex+1),q(c.startIndex,C).catch(oe)}},destroy(){if(p!==null)clearTimeout(p);B(),Y()}}}var Ft=(t,e)=>{let n=0,o=t.length-1;while(n<o){let s=n+o+1>>>1;if(t[s].headerLayoutIndex<=e)n=s;else o=s-1}return n},Kn=(t,e)=>{let n=0,o=t.length-1;while(n<o){let s=n+o+1>>>1;if(t[s].firstDataIndex<=e)n=s;else o=s-1}return n},Un=(t,e,n)=>{if(t===0)return[];let o=[],s=null,r=0,i=0;for(let l=0;l<t;l++){let y=n?.(l);if(!y)continue;let f=e(l,y);if(s===null)s=f,r=0;else if(f!==s){let c=l-r;o.push({key:s,groupIndex:o.length,headerLayoutIndex:i,firstDataIndex:r,count:c}),i=i+1+c,s=f,r=l}}if(s!==null)o.push({key:s,groupIndex:o.length,headerLayoutIndex:i,firstDataIndex:r,count:t-r});return o};var Yn=(t,e,n)=>{let o=Un(t,e.getGroupForIndex,n),s=t+o.length,r=e.header?.height??e.header?.width??e.headerHeight;return{get totalEntries(){return s},get groupCount(){return o.length},get groups(){return o},getEntry:(S)=>{if(o.length===0)return{type:"item",dataIndex:S,group:{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0}};let H=Ft(o,S),d=o[H];if(S===d.headerLayoutIndex)return{type:"header",group:d};let w=S-d.headerLayoutIndex-1;return{type:"item",dataIndex:d.firstDataIndex+w,group:d}},layoutToDataIndex:(S)=>{if(o.length===0)return S;let H=Ft(o,S),d=o[H];if(S===d.headerLayoutIndex)return-1;let w=S-d.headerLayoutIndex-1;return d.firstDataIndex+w},dataToLayoutIndex:(S)=>{if(o.length===0)return S;let H=Kn(o,S),d=o[H],w=S-d.firstDataIndex;return d.headerLayoutIndex+1+w},getGroupAtLayoutIndex:(S)=>{if(o.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let H=Ft(o,S);return o[H]},getGroupAtDataIndex:(S)=>{if(o.length===0)return{key:"",groupIndex:0,headerLayoutIndex:0,firstDataIndex:0,count:0};let H=Kn(o,S);return o[H]},getHeaderHeight:typeof r==="number"?(S)=>r:(S)=>{let H=o[S];if(!H)return 0;return r(H.key,S)},rebuild:(S,H)=>{o=Un(S,e.getGroupForIndex,H??n),s=S+o.length}}};var Dt=(t,e,n,o,s=0)=>{let r=n?"width":"height",i=document.createElement("div");return i.className=`${e}-sticky-header`,i.setAttribute("role","presentation"),i.setAttribute("aria-hidden","true"),i.style.cssText="z-index:5;pointer-events:none;overflow:hidden;"+(n?`position:absolute;top:0;bottom:0;left:${s||0}px`:`position:relative;top:${s||0}px`),i.style[r]=`${o}px`,t.insertBefore(i,t.firstChild),i},Xn=(t,e,n,o,s,r=!1,i=0,l,y)=>{let f=r?"width":"height",c=r?"height":"width",v=r?"X":"Y",I=(m,E)=>{m.style[f]=`${E}px`},S=l??Dt(t,s,r,0,i),H=()=>{let m=document.createElement("div");return m.className="sticky-group",m.style.position="absolute",m.style.willChange="transform",m.style[c]="100%",m},d=H(),w=H();S.append(d,w);let p=d,M=w,b=e.groups,u=[],A=[],L=[],a=0,F=()=>{b=e.groups,a=b.length,u=Array(a),A=Array(a),L=Array(a);for(let m=0;m<a;m++)u[m]=y?y(b[m].headerLayoutIndex):n.getOffset(b[m].headerLayoutIndex),A[m]=e.getHeaderHeight(m),L[m]=A[m]};F();let V=-1,T=0,B=0,q=-1,D=!1,oe=0,_=!1,Y=(m,E)=>{o(m,E);let x=A[E];return I(m,x),x},U=(m)=>{m.replaceChildren(),m.style.transform=""},P=(m)=>{if(m===V)return;if(V=m,T=0,B=0,m<0||m>=a){U(p);return}T=Y(p,m),B=L[m],I(S,T),p.style.transform=""},O=(m)=>{if(m===oe)return;oe=m;let E=Math.round(m);p.style.transform=`translate${v}(${E}px)`,M.style.transform=`translate${v}(${E+T}px)`},g=()=>{oe=0,p.style.transform="",M.style.transform=""},C=()=>{if(!_)return;let m=p;p=M,M=m,V=q,T=V>=0?A[V]:0,B=V>=0?L[V]:0,I(S,T),U(M),q=-1,_=!1,g()},j=()=>{if(!_)return;U(M),q=-1,_=!1,g()},J=!!l,k=()=>{if(D)return;if(D=!0,J)S.style.visibility="";else S.style.display=""},h=()=>{if(!D)return;if(D=!1,J)S.style.visibility="hidden";else S.style.display="none";U(p),V=-1,T=0,B=0,j()},W=(m)=>{if(a===0){if(_)j();if(!D)k();P(-1);return}if(m<u[0]){h();return}let E=0,x=a-1;while(E<x){let X=E+x+1>>>1;if(u[X]+L[X]<=m)E=X;else x=X-1}if(!D)k();P(E);let z=E+1;if(z<a){let X=u[z]-m;if(X<=0&&X>-B){if(q!==z||!_)q=z,Y(M,z),_=!0;let se=B>0?X/B*T:X;O(se)}else if(X<=-B){if(_)C()}else if(_)j()}else if(_)j()},N=()=>{F();let m=V;if(V=-1,T=0,B=0,m>=0)P(m)},Z=()=>{S.remove(),V=-1,T=0,B=0,q=-1,D=!1,_=!1};if(!l)S.style.display="none";return{update:W,refresh:N,show:k,hide:h,destroy:Z}};var Ue={selected:!1,focused:!1},qn=typeof process<"u"&&process.env?.NODE_ENV!=="production";function Vt(t){if(!t.getGroupForIndex)throw Error("[vlist] groups: getGroupForIndex is required");let e=t.header?.height??t.header?.width??t.headerHeight;if(e==null||typeof e==="number"&&e<=0)throw Error("[vlist] groups: header height/width must be a positive number or function");let n=t.header?.template??t.headerTemplate;if(!n)throw Error("[vlist] groups: header.template is required");let o=n,s,r=null,i,l,y,f,c=null,v,I,S,H=null,d,w,p,M=null,b,u,A=null,L=null,a=0,F=0,V=0,T=0,B=0,q=!1,D=null,oe=new Map,_=new Set,Y=new Map,U=-1,P=-1,O=0,g=!0,C=-1,j=0,J=null,k;function h(){return s.totalEntries}function W(){let R=l.totalItems;if(R===C)return;if(qn)console.log(`[groups] syncLayout: ${C} → ${R}`);let le=C>0;C=R,s.rebuild(R,H??S),k(s.totalEntries),x();let re=Z?z():i.getTotalSize();if(c?.(re),r)r.refresh(),r.update(l.scrollPosition);if(le)te();let Se=A?.("_scrollbar:getInstance");if(Se)Se()?.updateBounds(re,l.containerSize)}let N=0,Z=null,m=null,E=null;function x(){if(a<=0){Z=null,m=null;return}N=((l.crossSize||f.clientWidth)-T-(a-1)*F)/a,Z=new Map;let re=s.totalEntries,Se=Array(re),Me=0;if(q){let xe=D??((K)=>i.getSize(K)),Le=new Float64Array(a),Te=[],Pe=0,Re=-1;for(let K=0;K<re;K++){let he=s.getEntry(K);if(he.type==="header"){let ue=0;for(let me=0;me<a;me++)if(Le[me]>ue)ue=Le[me];if(Re>=0)Te[Re]=Pe+ue;Pe+=ue;let pe=i.getSize(K);Z.set(K,{col:-1,rowY:Pe}),Se[Me++]=[K,Pe,Pe+pe],Pe+=pe,Le.fill(0),Re=he.group.groupIndex}else{let ue=0,pe=Le[0];for(let fe=1;fe<a;fe++)if(Le[fe]<pe)pe=Le[fe],ue=fe;let me=xe(he.dataIndex),Ce=Pe+Le[ue];Z.set(K,{col:ue,rowY:Ce,h:me}),Se[Me++]=[K,Ce,Ce+me],Le[ue]=Le[ue]+me+F}}if(Re>=0){let K=0;for(let he=0;he<a;he++)if(Le[he]>K)K=Le[he];Te[Re]=Pe+K}E=Te}else{E=null;let xe=0,Le=0,Te=0;for(let Pe=0;Pe<re;Pe++)if(s.getEntry(Pe).type==="header"){if(Le>0&&Te>0)xe+=Te;let K=i.getSize(Pe);Z.set(Pe,{col:-1,rowY:xe}),Se[Me++]=[Pe,xe,xe+K],xe+=K,Le=0,Te=0}else{let K=Le%a,he=i.getSize(Pe);if(K===0){if(Le>0&&Te>0)xe+=Te+F;Te=he}else if(he>Te)Te=he;Z.set(Pe,{col:K,rowY:xe}),Se[Me++]=[Pe,xe,xe+he],Le++}}Se.length=Me,m=Se}function z(){if(!Z||Z.size===0)return i.getTotalSize();let R=s.totalEntries;if(q)return E?.[E.length-1]??0;let le=0;for(let re=R-1;re>=0;re--){let Se=Z.get(re);if(Se){le=Se.rowY+(Se.h??i.getSize(re));break}if(s.getEntry(re).type==="header"){le=i.getOffset(re)+i.getSize(re);break}}return le}function X(R){let le=l.baseOffset;if(Z){let Se=Z.get(R);if(Se){let Me=Se.col<0?0:V+Se.col*(N+F),xe=Se.rowY-le;if(d)return`translate(${Math.round(xe)}px, ${Math.round(Me)}px)`;return`translate(${Math.round(Me)}px, ${Math.round(xe)}px)`}}let re=i.getOffset(R)-le;if(d)return`translate(${Math.round(re)}px, 0)`;return`translate(0, ${Math.round(re)}px)`}function se(R,le){let re=Z?.get(le);if(re){let Me=re.h??i.getSize(le);if(re.col<0)if(d)R.style.width=`${Me}px`,R.style.height="";else R.style.height=`${Me}px`,R.style.width="100%";else if(d)R.style.width=`${Me}px`,R.style.height=`${N}px`;else R.style.height=`${Me}px`,R.style.width=`${N}px`;return}let Se=i.getSize(le);if(d)R.style.width=`${Se}px`;else R.style.height=`${Se}px`}function te(){oe.forEach((R)=>{R.remove();let le=R.getAttribute("data-id");if(le)Y.set(le,R);else y.release(R)}),oe.clear(),_.clear()}function ee(){if(Y.size>0)Y.forEach((R)=>y.release(R)),Y.clear()}function ie(R,le,re,Se){if(L===null)L=!!A?.("_getSelectedIds");if(le.type==="header"){let Re=`__group_header_${le.group.groupIndex}`;if(R.getAttribute("data-id")===Re)return!0;if(R.className=u,R.setAttribute("role","presentation"),R.removeAttribute("aria-selected"),R.setAttribute("data-id",Re),d&&r&&le.group.groupIndex===0)R.style.display="none";else{R.style.display="";let K=o(le.group.key,le.group.groupIndex);if(typeof K==="string")R.innerHTML=K;else R.innerHTML="",R.appendChild(K)}return!0}let Me=le.dataIndex,xe=S(Me);if(!xe)return R.innerHTML="",!1;let Le=xe._isPlaceholder===!0,Te=String(xe.id);if(!Le&&R.getAttribute("data-id")===Te){if(L)R.id=`${w}-item-${Se}`,R.setAttribute("aria-posinset",String(Me+1)),R.setAttribute("aria-setsize",String(l.totalItems));return!0}if(R.className=b,R.setAttribute("role",L?"option":"listitem"),R.setAttribute("data-id",Te),L)R.id=`${w}-item-${Se}`,R.setAttribute("aria-posinset",String(Me+1)),R.setAttribute("aria-setsize",String(l.totalItems));if(Le)R.classList.add(`${w}-item--placeholder`);if(re)re(Se,Ue);else Ue.selected=!1,Ue.focused=!1;let Pe=I(xe,Me,Ue);if(typeof Pe==="string")R.innerHTML=Pe;else R.innerHTML="",R.appendChild(Pe);return Ge(R),!Le}let ne=0;function ve(){if(a<=0)return;let R=l.crossSize;if(R===ne)return;ne=R,x();let le=z();if(c?.(le),r)r.refresh(),r.update(l.scrollPosition);g=!0}function be(){if(l.destroyed)return;W(),ve();let R=l.scrollPosition,le=l.containerSize,re=l.baseOffset,Se=re!==O;if(!g&&R===U&&le===P&&!Se)return;U=R,P=le;let Me=g;g=!1;let xe=h();if(le<=0||xe===0){if(oe.size>0)oe.forEach((fe)=>{fe.remove(),y.release(fe)}),oe.clear(),_.clear();return}let Le,Te;if(m){let fe=m,Ie=fe.length,ze=0,ce=Ie-1;while(ze<ce){let He=ze+ce>>>1;if(fe[He][2]<=R)ze=He+1;else ce=He}let G=ze;ce=Ie-1;while(ze<ce){let He=ze+ce+1>>>1;if(fe[He][1]>=R+le)ce=He-1;else ze=He}let ge=ze,ae=fe[G][0],Ee=fe[ge][0];for(let He=ae-1;He>=0;He--)if(s.getEntry(He).type==="header"){ae=He;break}let Ae=p*a;Le=Math.max(0,ae-Ae),Te=Math.min(xe-1,Ee+Ae)}else{let fe=i.indexAtOffset(R),Ie=i.indexAtOffset(R+le);if(Ie<xe-1)Ie++;fe=Math.max(0,fe),Ie=Math.min(xe-1,Math.max(0,Ie)),Le=Math.max(0,fe-p),Te=Math.min(xe-1,Ie+p)}if(Le===l.prevRangeStart&&Te===l.prevRangeEnd&&!l.renderPending&&!Se)return;O=re,oe.forEach((fe,Ie)=>{if(Ie<Le||Ie>Te)fe.remove(),y.release(fe),oe.delete(Ie),_.delete(Ie)});let Pe=M?.()??null,Re=Pe?`${w}-item--selected`:"",K=Pe?`${w}-item--focused`:"",he=null;for(let fe=Le;fe<=Te;fe++){let Ie=oe.get(fe),ze=!1;if(Ie===void 0){let ce=s.getEntry(fe);ze=ce.type==="header";let G;if(ce.type==="header")G=`__group_header_${ce.group.groupIndex}`;else{let ae=S(ce.dataIndex);if(ae&&ae._isPlaceholder!==!0)G=String(ae.id)}if(G!==void 0){let ae=Y.get(G);if(ae)Y.delete(G),Ie=ae}if(!Ie)Ie=y.acquire();if(Ie.setAttribute("data-index",String(fe)),ie(Ie,ce,Pe,fe))_.delete(fe);else _.add(fe);if(se(Ie,fe),Ie.style.transform=X(fe),oe.set(fe,Ie),!he)he=document.createDocumentFragment();he.appendChild(Ie)}else if(Me&&_.has(fe)){let ce=s.getEntry(fe);if(ce.type==="item")if(ie(Ie,ce,Pe,fe))_.delete(fe);else _.add(fe)}else if(ze=Ie.classList.contains(u),Me)se(Ie,fe),Ie.style.transform=X(fe);else if(Se)Ie.style.transform=X(fe);if(!ze&&Pe)if(Pe(fe,Ue),Ie.classList.toggle(Re,Ue.selected),Ie.classList.toggle(K,Ue.focused),Ue.selected)Ie.setAttribute("aria-selected","true");else Ie.removeAttribute("aria-selected")}if(he)f.appendChild(he);ee();let ue=Z?z():i.getTotalSize();c?.(ue),l.prevRangeStart=Le,l.prevRangeEnd=Te,l.renderPending=!1;let pe=0,me=0,Ce=!1;for(let fe=Le;fe<=Te&&pe<l.capacity;fe++){let Ie=s.getEntry(fe);if(Ie.type==="item"){if(!Ce)me=Ie.dataIndex,Ce=!0;l.visibleIndices[pe]=Ie.dataIndex,l.visibleOffsets[pe]=i.getOffset(fe),l.visibleSizes[pe]=i.getSize(fe),pe++}}l.visibleCount=pe,l.startIndex=me}function de(){if(l.destroyed)return;if(ve(),qn)console.log(`[groups] forceRender, placeholders: ${_.size}, rendered: ${oe.size}`);let R=J?.()??0;if(R!==j){j=R;let le=s.groups,re=le.length;s.rebuild(C,H??S);let Se=s.groups,Me=Se.length!==re;if(!Me){for(let xe=0;xe<re;xe++)if(Se[xe].headerLayoutIndex!==le[xe].headerLayoutIndex){Me=!0;break}}if(Me){k(s.totalEntries),x();let xe=Z?z():i.getTotalSize();if(c?.(xe),r)r.refresh(),r.update(l.scrollPosition);let Le=1/0,Te=Math.min(re,Se.length);for(let Re=0;Re<Te;Re++)if(Se[Re].headerLayoutIndex!==le[Re].headerLayoutIndex){Le=Math.min(Se[Re].headerLayoutIndex,le[Re].headerLayoutIndex);break}if(Se.length>re&&Te<Se.length)Le=Math.min(Le,Se[Te].headerLayoutIndex);else if(re>Se.length&&Te<re)Le=Math.min(Le,le[Te].headerLayoutIndex);if(Le<=l.prevRangeEnd)te();let Pe=A?.("_scrollbar:getInstance");if(Pe)Pe()?.updateBounds(xe,l.containerSize)}}l.prevRangeStart=-1,l.prevRangeEnd=-1,l.renderPending=!0,g=!0,be()}return{name:"groups",priority:10,setup(R){i=R.sizeCache,l=R.getState(),y=R.pool,f=R.dom.content,c=R.updateContentSize.bind(R),v=R.dom.root,I=R.template,d=R.config.axis.primary==="x",w=R.config.classPrefix,p=R.config.overscan,B=R.config.mainAxisPadding,S=R.getItem.bind(R),M=()=>R.getItemStateFn(),A=R.getMethod.bind(R),L=null,b=`${w}-item`,u=`${w}-group-header`;let le=A?.("getGridLayout"),re=A?.("getMasonryLayout");if(le){let ue=le();a=ue.columns,F=ue.gap,V=R.config.crossPadStart,T=R.config.crossAxisPadding}else if(re){let ue=re();a=ue.columns,F=ue.gap,V=R.config.crossPadStart,T=R.config.crossAxisPadding,q=!0;let pe=R.rawSizeSpec;if(typeof pe==="function")D=(me)=>pe(me,{columnWidth:N})}queueMicrotask(()=>{let ue=A?.("_getLoadedItem");if(ue)H=ue;let pe=A?.("_getLoadedCount");if(pe)J=pe});let Se=l.totalItems;s=Yn(Se,t,H??S),C=Se;let Me=typeof e==="number"?(ue)=>e:(ue)=>{let pe=s.groups[ue];if(!pe)return 0;return e(pe.key,ue)},xe=i.getSize,Le=(ue)=>{let pe=s.getEntry(ue);if(pe.type==="header"){if(t.sticky!==!1&&pe.group.groupIndex===0)return 0;return Me(pe.group.groupIndex)}return xe(pe.dataIndex)};R.setSizeConfig(Le);let Te=!1,Pe=-1;if(R.registerMethod("_setSizeCacheBase",(ue)=>{k=ue}),k=i.rebuild,i.rebuild=(ue)=>{if(Te){if(!J)J=A?.("_getLoadedCount")??null;let pe=J?.()??0;if(ue!==C||pe!==Pe){if(C=ue,Pe=pe,!H)H=A?.("_getLoadedItem")??null;if(s.rebuild(ue,H??((me)=>R.getItems()[me])),l.totalItems=s.totalEntries,r)r.refresh(),r.update(l.scrollPosition)}}k(s.totalEntries)},i.rebuild(s.totalEntries),x(),R.setVirtualTotalFn(()=>s.totalEntries),v.classList.add(`${w}--grouped`),t.sticky!==!1){let ue=(fe,Ie)=>{let ze=s.groups[Ie];if(!ze)return;let ce=o(ze.key,Ie);if(typeof ce==="string")fe.innerHTML=ce;else fe.replaceChildren(ce)},pe=s.getHeaderHeight(0),me=Dt(v,w,d,pe),Ce=a>0?(fe)=>{let Ie=Z?.get(fe);return Ie?Ie.rowY:i.getOffset(fe)}:void 0;if(r=Xn(v,s,i,ue,w,d,0,me,Ce),r.update(l.scrollPosition),!d)R.dom.viewport.style.height=`calc(100% - ${pe}px)`;else R.dom.viewport.style.width=`calc(100% - ${pe}px)`,R.dom.viewport.style.marginLeft=`${pe}px`}let Re=!!A?.("_updateTableForGroups");if(Te=Re,Re)queueMicrotask(()=>{let ue=A?.("_getItem")??null,pe=R.getItems.bind(R);R.setGetItemFn((Ce)=>{let fe=s.getEntry(Ce);if(fe.type==="header")return{id:`__group_header_${fe.group.groupIndex}`,__groupHeader:!0,groupKey:fe.group.key,groupIndex:fe.group.groupIndex};return ue?ue(fe.dataIndex):pe()[fe.dataIndex]});let me=A?.("_updateTableForGroups");if(me)me((Ce)=>!!Ce.__groupHeader,o)});else R.setRenderFn(be,de);R.registerMethod("getGroupLayout",()=>s),R.registerMethod("_dataToLayoutIndex",(ue)=>s.dataToLayoutIndex(ue)),R.registerMethod("_layoutToDataIndex",(ue)=>s.layoutToDataIndex(ue)),R.registerMethod("_getRenderedElement",(ue)=>oe.get(ue)??null),R.registerMethod("_isGroupHeader",(ue)=>s.getEntry(ue).type==="header"),R.registerMethod("_getItemLane",(ue)=>{let pe=Z?.get(ue);return pe?pe.col:-1}),R.registerMethod("_getItemY",(ue)=>{let pe=Z?.get(ue);return pe?pe.rowY:-1}),R.registerMethod("_getItemH",(ue)=>Z?.get(ue)?.h??-1);let K=R.config.startPadding,he=B-K;R.registerMethod("_scrollItemIntoView",(ue)=>{if(ue<0)return;let pe=Z?.get(ue),me=pe?pe.rowY:i.getOffset(ue),Ce=pe?.h??i.getSize(ue),fe=l.containerSize,Ie=l.scrollPosition;if(me<Ie+K)R.scrollTo(Math.max(0,me-K));else if(me+Ce+he>Ie+fe)R.scrollTo(me+Ce+he-fe)}),R.registerMethod("scrollToIndex",(ue,pe="start")=>{let me=s.dataToLayoutIndex(ue),Ce=s.totalEntries;if(Ce===0)return;let fe=Math.max(0,Math.min(me,Ce-1)),Ie=l.containerSize,ze=Z?.get(fe),ce=ze?ze.rowY:i.getOffset(fe),G=ze?ze.h??i.getSize(fe):i.getSize(fe),ge=Z?z()+B:i.getTotalSize(),ae=Math.max(0,ge-Ie),Ee=typeof pe==="string"?pe:pe.align??"start",Ae=typeof pe==="object"?pe.behavior:void 0,He=typeof pe==="object"?pe.duration:void 0,Fe=Z?B:0,ye=ce+G;if(q&&E){let we=s.getEntry(fe).group.groupIndex,ke=E[we];if(ke!==void 0)ye=ke}let Q;switch(Ee){case"center":Q=ce-(Ie-G)/2;break;case"end":Q=ye-Ie+Fe;break;default:Q=ce}if(Q=Math.max(0,Math.min(Q,ae)),Ae==="smooth"&&He&&He>0)R.smoothScrollTo(Q,He);else R.scrollTo(Q)}),R.registerDestroyHandler(()=>{for(let[,ue]of oe)ue.remove();if(oe.clear(),_.clear(),r)r.destroy(),r=null;v.classList.remove(`${w}--grouped`)})},hooks:{onAfterScroll(R,le){if(r)r.update(R)},onResize(R,le){if(a<=0)return;k(s.totalEntries),ne=l.crossSize,x();let re=z();if(c?.(re),r)r.refresh(),r.update(l.scrollPosition);g=!0,be()}},destroy(){if(r)r.destroy(),r=null;oe.clear(),_.clear(),Y.clear()}}}var jn=(t,e=50,n=1/0,o=!0,s="none")=>{let r=t,i=[],l=0,y=0,f=()=>{i=r.map((b,u)=>({def:b,index:u,width:0,minWidth:Ho(b.minWidth??e,1),maxWidth:b.maxWidth??n,resizable:b.resizable??o,offset:0}))},c=()=>{if(s==="none"||l<=0||l>=y)return;if(s==="spacer"){l=y;return}let b=y-l,u=l;for(let A=0;A<i.length;A++){let L=i[A];L.width=gt(L.width+b*(L.width/u),L.minWidth,L.maxWidth)}I()},v=(b)=>{if(y=b,i.length===0){l=0;return}let u=0,A=0;for(let L=0;L<i.length;L++){let a=i[L],F=a.def;if(F.width!==void 0)a.width=gt(F.width,a.minWidth,a.maxWidth),u+=a.width;else A++}if(A){let a=Math.max(0,b-u)/A;for(let F=0;F<i.length;F++){let V=i[F];if(V.def.width===void 0)V.width=gt(a,V.minWidth,V.maxWidth)}}I(),c()},I=()=>{let b=0;for(let u=0;u<i.length;u++){let A=i[u];A.offset=b,b+=A.width}l=b},S=(b,u)=>{if(b<0||b>=i.length)return 0;let A=i[b];if(!A.resizable)return A.width;let L=gt(u,A.minWidth,A.maxWidth);if(A.width=L,I(),s==="spacer")c();return L},H=(b)=>i[b],d=(b)=>{if(i.length===0)return;if(b<0)return i[0];if(b>=l)return i[i.length-1];let u=0,A=i.length-1;while(u<A){let L=u+A>>>1,a=i[L];if(b<a.offset)A=L-1;else if(b>=a.offset+a.width)u=L+1;else return a}return i[u]},w=(b)=>{if(b<0||b>=i.length)return 0;return i[b].offset},p=(b)=>{if(b<0||b>=i.length)return 0;return i[b].width},M=(b)=>{r=b,f()};return f(),{get columns(){return i},get totalWidth(){return l},resolve:v,updateColumns:M,resizeColumn:S,getColumn:H,getColumnAtX:d,getColumnOffset:w,getColumnWidth:p}},gt=(t,e,n)=>Math.min(n,Math.max(e,t)),Ho=(t,e)=>Math.max(e,t);var Zn=(t,e,n,o,s,r)=>{let i=document.createElement("div");i.setAttribute("role","rowgroup");let l=document.createElement("div");l.className=`${n}-table-header`,l.setAttribute("role","row"),l.setAttribute("aria-rowindex","1"),l.style.height=`${e}px`;let y=document.createElement("div");y.className=`${n}-table-header-scroll`,y.setAttribute("role","presentation"),l.appendChild(y),i.appendChild(l),t.insertBefore(i,t.firstChild),t.style.setProperty("--vlist-table-header-height",`${e}px`);let f=[],c=[],v=!0,I=null,S="asc",H=null,d=!1,w=-1,p=0,M=0,b=0,u=(P,O)=>{let g=document.createElement("div");g.className=`${n}-table-header-cell`,g.setAttribute("role","columnheader"),g.setAttribute("aria-colindex",String(O+1)),g.setAttribute("tabindex",O===0?"0":"-1"),g.dataset.columnKey=P.def.key;let C=P.def.align;if(C==="center")g.classList.add(`${n}-table-header-cell--center`);else if(C==="right")g.classList.add(`${n}-table-header-cell--right`);let j=document.createElement("div");j.className=`${n}-table-header-content`;let J=P.def.header?P.def.header(P.def):P.def.label;if(typeof J==="string")j.textContent=J;else j.appendChild(J);if(g.appendChild(j),P.def.sortable){let k=document.createElement("span");k.className=`${n}-table-header-sort`,k.setAttribute("aria-hidden","true"),g.appendChild(k),c.push(k),g.classList.add(`${n}-table-header-cell--sortable`)}else c.push(null);if(P.resizable){let k=document.createElement("div");k.className=`${n}-table-header-resize`,k.dataset.resizeIndex=String(O),g.appendChild(k)}return g},A=(P)=>{H=P,y.textContent="",f=[],c=[];let O=P.columns;for(let g=0;g<O.length;g++){let C=O[g],j=u(C,g);f.push(j),y.appendChild(j)}if(L(P),I)a(I,S)},L=(P)=>{H=P;let O=P.columns;y.style.width=`${P.totalWidth}px`;for(let g=0;g<f.length&&g<O.length;g++){let C=f[g],j=O[g];C.style.width=`${j.width}px`}},a=(P,O)=>{if(I=P,S=O,!H)return;let g=H.columns;for(let C=0;C<c.length&&C<g.length;C++){let j=c[C];if(!j)continue;if(g[C].def.key===P)j.textContent=O==="asc"?"▲":"▼",j.style.opacity="0.7",f[C].setAttribute("aria-sort",O==="asc"?"ascending":"descending");else j.textContent="",j.style.opacity="0",f[C].removeAttribute("aria-sort")}},F=(P)=>{y.style.transform=`translateX(${-P}px)`},V=(P)=>{let O=P.target;if(!O.dataset.resizeIndex)return;if(P.preventDefault(),P.stopPropagation(),w=+O.dataset.resizeIndex,!H)return;let g=H.getColumn(w);if(!g?.resizable)return;d=!0,p=P.clientX,M=g.width,t.classList.add(`${n}--col-resizing`),t.style.cursor="col-resize",O.classList.add(`${n}-table-header-resize--active`),O.setPointerCapture(P.pointerId),O.addEventListener("pointermove",T),O.addEventListener("pointerup",B),O.addEventListener("pointercancel",B)},T=(P)=>{if(!d||!H)return;let O=P.clientX-p;if(Math.abs(O)<1)return;let g=Math.max(0,M+O);o(w,g)},B=(P)=>{if(!d)return;let O=P.target;O.removeEventListener("pointermove",T),O.removeEventListener("pointerup",B),O.removeEventListener("pointercancel",B);try{O.releasePointerCapture(P.pointerId)}catch{}O.classList.remove(`${n}-table-header-resize--active`),t.classList.remove(`${n}--col-resizing`),t.style.cursor="",d=!1,w=-1},q=(P)=>{let O=P.target;if(O.dataset.resizeIndex)return;if(d)return;let g=O;while(g&&!g.dataset.columnKey)if(g=g.parentElement,g===l||g===null)return;let C=g.dataset.columnKey;if(!H)return;let j=H.columns,J=-1;for(let h=0;h<j.length;h++)if(j[h].def.key===C){J=h;break}if(J===-1)return;let k=j[J];if(r)r({key:C,index:J,event:P});if(k.def.sortable&&s){let h;if(I===C)h=S==="asc"?"desc":null;else h="asc";s({key:C,index:J,direction:h})}},D=(P)=>{if(P<0||P>=f.length)return;f[b]?.setAttribute("tabindex","-1"),b=P;let O=f[b];O.setAttribute("tabindex","0"),O.focus()},oe=(P)=>{let O=P.key;if(O==="ArrowRight"){if(P.ctrlKey||P.metaKey){if(!H)return;let g=H.getColumn(b);if(g?.resizable)o(b,g.width+10),P.preventDefault()}else if(b<f.length-1)D(b+1),P.preventDefault();P.stopPropagation();return}if(O==="ArrowLeft"){if(P.ctrlKey||P.metaKey){if(!H)return;let g=H.getColumn(b);if(g?.resizable)o(b,g.width-10),P.preventDefault()}else if(b>0)D(b-1),P.preventDefault();P.stopPropagation();return}if(O==="Home"){D(0),P.preventDefault(),P.stopPropagation();return}if(O==="End"){D(f.length-1),P.preventDefault(),P.stopPropagation();return}if(O==="Enter"||O===" "){if(!H)return;let g=H.getColumn(b);if(g?.def.sortable&&s){let C;if(I===g.def.key)C=S==="asc"?"desc":null;else C="asc";s({key:g.def.key,index:b,direction:C}),P.preventDefault()}P.stopPropagation();return}if(O==="ArrowDown"){t.focus(),P.preventDefault(),P.stopPropagation();return}};return l.addEventListener("pointerdown",V),l.addEventListener("click",q),l.addEventListener("keydown",oe),{element:l,update:L,updateSort:a,rebuild:A,show:()=>{if(v)return;v=!0,l.style.display=""},hide:()=>{if(!v)return;v=!1,l.style.display="none"},destroy:()=>{l.removeEventListener("pointerdown",V),l.removeEventListener("click",q),l.removeEventListener("keydown",oe),t.style.removeProperty("--vlist-table-header-height"),i.remove(),f=[],c=[],H=null,v=!1},syncScroll:F}};var ko=()=>{let t=[];return{acquire:()=>t.pop()||document.createElement("div"),release:(e)=>{if(e.parentNode?.removeChild(e),t.length<200)e.className="",e.removeAttribute("data-id"),e.removeAttribute("data-index"),e.removeAttribute("aria-selected"),e.removeAttribute("aria-rowindex"),e.removeAttribute("role"),e.style.cssText="",e.textContent="",t.push(e)},clear:()=>{t.length=0}}},Jn=(t,e,n,o,s,r,i,l,y,f=()=>0)=>{let c=ko(),v=new Map,I=-1,S=n,H=null,d=null,w=null,p=(E,x)=>{d=E,w=x},M=(E,x)=>{x?E.setAttribute("aria-selected","true"):E.removeAttribute("aria-selected")},b=(E,x,z,X)=>{E.setAttribute("role",x),E.setAttribute("data-id",String(z)),E.setAttribute("data-index",String(X))},u=(E)=>String(E).startsWith("__placeholder_"),A=`${s}-item ${s}-table-row`,L=`${s}-item--selected`,a=`${s}-item--focused`,F=`${s}-table-cell`,V=`${s}-table-cell--center`,T=`${s}-table-cell--right`,B=`${s}-table-cell-skeleton`,q=`${s}-item--odd`,D=`${s}-item--placeholder`,oe=`${s}-item--replaced`,_=`${s}-table-row ${s}-table-group-header`,Y=`${s}-table-group-header-content`,U=(E,x,z,X,se=!1)=>{if(z.def.cell){let te=z.def.cell(x,z.def,X);if(typeof te==="string")E.innerHTML=te;else E.replaceChildren(te)}else{let te=x[z.def.key],ee=te!=null?String(te):"";if(se&&ee)E.innerHTML=`<span>${ee}</span>`;else E.textContent=ee}if(se&&E.firstElementChild===null){E.replaceChildren();let te=document.createElement("span");te.className=B,E.appendChild(te)}},P=(E,x,z,X,se=!1)=>{let te=A;if(l){if(H){let ee=H(x);if(ee>=0&&(ee&1)===1)te+=` ${q}`}else if((x&1)===1)te+=` ${q}`}if(se)te+=` ${D}`;if(z)te+=` ${L}`;if(X)te+=` ${a}`;E.className=te},O=(E,x)=>{let z=x.def.align;if(z==="center")E.classList.add(V),E.classList.remove(T);else if(z==="right")E.classList.add(T),E.classList.remove(V);else E.classList.remove(V,T)},g=(E,x)=>{let X=S.columns.length;if(x.length===X)return x;let se=[];for(let te=0;te<X;te++){let ee;if(te<x.length)ee=x[te];else ee=document.createElement("div"),ee.className=F,E.appendChild(ee);se.push(ee)}for(let te=X;te<x.length;te++)x[te].remove();return se},C=(E,x,z)=>{let X=c.acquire(),se=E,te=z.getSize(x),ee=z.getOffset(x)-f();X.style.cssText=`width:${S.totalWidth}px;height:${te}px;transform:translateY(${ee}px)`,X.className=_,b(X,"presentation",E.id,x),X.removeAttribute("aria-selected"),X.removeAttribute("aria-rowindex"),X.replaceChildren();let ie=document.createElement("div");if(ie.className=Y,w){let ne=w(se.groupKey,se.groupIndex);if(typeof ne==="string")ie.innerHTML=ne;else ie.appendChild(ne)}return X.appendChild(ie),{element:X,cells:[],index:x,isGroupHeader:!0,_lastItem:E,lastItemId:E.id,lastSelected:!1,lastFocused:!1,lastOffset:ee,lastHeight:te}},j=(E,x,z,X,se)=>{let te=c.acquire(),ee=se.getSize(x),ie=se.getOffset(x)-f(),ne=u(E.id);te.style.cssText=`width:${S.totalWidth}px;height:${ee}px;transform:translateY(${ie}px)`,P(te,x,z,X,ne),b(te,"row",E.id,x),te.id=`${r}-item-${x}`,te.setAttribute("aria-rowindex",String(x+2)),M(te,z);let ve=g(te,[]),be=S.columns;for(let de=0;de<ve.length&&de<be.length;de++){let R=ve[de],le=be[de];R.style.cssText=`left:${le.offset}px;width:${le.width}px`,R.setAttribute("role","gridcell"),R.setAttribute("aria-colindex",String(de+1)),O(R,le),U(R,E,le,x,ne)}return{element:te,cells:ve,index:x,isGroupHeader:!1,_lastItem:E,lastItemId:E.id,lastSelected:z,lastFocused:X,lastOffset:ie,lastHeight:ee}},J=(E,x,z,X)=>{let se=!1,te=i();if(te!==I)I=te,se=!0;let ee=null,ie=e();H=typeof l==="string"&&y?y():null;for(let ne=x.start;ne<=x.end;ne++){let ve=ne-x.start,be=E[ve];if(!be)continue;let de=z.has(be.id),R=ne===X,le=d?d(be):!1,re=v.get(ne);if(re){if(re.isGroupHeader!==le){c.release(re.element),v.delete(ne);let Se=le?C(be,ne,ie):j(be,ne,de,R,ie);if(v.set(ne,Se),!ee)ee=document.createDocumentFragment();ee.appendChild(Se.element);continue}if(le){if(re._lastItem!==be){let Le=be,Te=re.element.firstElementChild;if(Te&&w){let Pe=w(Le.groupKey,Le.groupIndex);if(typeof Pe==="string")Te.innerHTML=Pe;else Te.replaceChildren(Pe)}re.element.setAttribute("data-id",String(be.id)),re._lastItem=be,re.lastItemId=be.id}let Me=ie.getOffset(ne)-f();if(re.lastOffset!==Me)re.lastOffset=Me,re.element.style.transform=`translateY(${Me}px)`;let xe=ie.getSize(ne);if(re.lastHeight!==xe)re.lastHeight=xe,re.element.style.height=`${xe}px`}else{let Se=re._lastItem!==be,Me=re.lastSelected!==de,xe=re.lastFocused!==R;if(Se){let Pe=re.lastItemId!=null&&u(re.lastItemId),Re=u(be.id);if(!Re&&nt(z,ne,be.id))de=!0;let K=S.columns;for(let he=0;he<re.cells.length&&he<K.length;he++)U(re.cells[he],be,K[he],ne,Re);if(P(re.element,ne,de,R,Re),re.element.setAttribute("data-id",String(be.id)),M(re.element,de),Pe&&!Re)re.element.classList.add(oe),setTimeout(()=>{re.element.classList.remove(oe)},300);re._lastItem=be,re.lastItemId=be.id,re.lastSelected=de,re.lastFocused=R}else if(Me||xe)P(re.element,ne,de,R,u(be.id)),M(re.element,de),re.lastSelected=de,re.lastFocused=R;let Le=ie.getOffset(ne)-f();if(re.lastOffset!==Le)re.lastOffset=Le,re.element.style.transform=`translateY(${Le}px)`;let Te=ie.getSize(ne);if(re.lastHeight!==Te)re.lastHeight=Te,re.element.style.height=`${Te}px`;if(se)re.element.setAttribute("aria-rowindex",String(ne+2))}}else{if(nt(z,ne,be.id))de=!0;let Se=le?C(be,ne,ie):j(be,ne,de,R,ie);if(v.set(ne,Se),!ee)ee=document.createDocumentFragment();ee.appendChild(Se.element)}}if(ee)t.appendChild(ee);for(let[ne,ve]of v)if(ne<x.start||ne>x.end)c.release(ve.element),v.delete(ne)},k=(E,x,z,X)=>{let se=v.get(E);if(!se)return;if(se.isGroupHeader)return;let te=S.columns;for(let ee=0;ee<se.cells.length&&ee<te.length;ee++)U(se.cells[ee],x,te[ee],E);se.element.setAttribute("data-id",String(x.id)),se._lastItem=x,se.lastItemId=x.id,P(se.element,E,z,X),M(se.element,z),se.lastSelected=z,se.lastFocused=X},h=(E,x,z)=>{let X=v.get(E);if(!X)return;if(X.isGroupHeader)return;let se=X.lastSelected!==x,te=X.lastFocused!==z;if(se||te)P(X.element,E,x,z),M(X.element,x),X.lastSelected=x,X.lastFocused=z},W=(E)=>{S=E;let x=E.columns;for(let[,z]of v)if(z.element.style.width=`${E.totalWidth}px`,z.cells.length>0)for(let X=0;X<z.cells.length&&X<x.length;X++){let se=z.cells[X],te=x[X];se.style.left=`${te.offset}px`,se.style.width=`${te.width}px`}},N=(E)=>v.get(E)?.element,Z=()=>{for(let[,E]of v)c.release(E.element);v.clear(),I=-1};return{render:J,updateItem:k,updateItemClasses:h,getElement:N,updateColumnLayout:W,setGroupHeaderFn:p,clear:Z,destroy:()=>{Z(),c.clear()}}};var _o=new Set;function $t(t){if(!t.columns?.length)throw Error("[vlist] table: columns must be a non-empty array");if(t.rowHeight===void 0&&t.estimatedRowHeight===void 0)throw Error("[vlist] table: either rowHeight or estimatedRowHeight is required");let e=null,n=null,o=null,s,r,i=null,l=null,y=null,f=!1,c=-1,v=-1,I=null,S=!1;function H(){if(f||!i)return;f=!0,l=i.getMethod("_getSelectedIds")??null,y=i.getMethod("_getFocusedIndex")??null}let d=[],w={start:0,end:0};function p(){if(s.destroyed||!i||!o||!e)return;let b=s.containerSize,u=s.totalItems;if(b<=0||u===0)return;let A=u+1;if(A!==c)c=A,i.dom.root.setAttribute("aria-rowcount",`${A}`);let L=s.scrollPosition,a=i.config.overscan,F=r.indexAtOffset(L),V=r.indexAtOffset(L+b);if(V<u-1)V++;F=Math.max(0,F),V=Math.min(u-1,V);let T=Math.max(0,F-a),B=Math.min(u-1,V+a);if(T===s.prevRangeStart&&B===s.prevRangeEnd&&!s.renderPending)return;H();let q=l?.()??_o,D=y?.()??-1;d.length=0;for(let _=T;_<=B;_++){let Y=i.getItem(_);if(Y)d.push(Y)}if(w.start=T,w.end=B,o.render(d,w,q,D),s.prevRangeStart=T,s.prevRangeEnd=B,s.renderPending=!1,!S)S=!0,I=i.getMethod?.("_layoutToDataIndex")??null;if(I){let _=I,Y=-1;for(let P=T;P<=B;P++){let O=_(P);if(O>=0){Y=O;break}}let U=-1;for(let P=B;P>=T;P--){let O=_(P);if(O>=0){U=O;break}}s.startIndex=Y<0?T:Y,s.visibleCount=Y<0?0:U-Y+1}else s.startIndex=T,s.visibleCount=B-T+1;let oe=r.getTotalSize();if(oe!==v)v=oe,i.updateContentSize(oe)}function M(){if(s.destroyed)return;v=-1,s.prevRangeStart=-1,s.prevRangeEnd=-1,s.renderPending=!0,p()}return{name:"table",priority:10,conflicts:["grid","masonry"],setup(b){i=b,s=b.getState(),r=b.sizeCache;let{dom:u,config:A,emitter:L}=b,{classPrefix:a}=A;if(A.axis.primary==="x")throw Error("[vlist] table: cannot be used with horizontal orientation");if(A.reverse)throw Error("[vlist] table: cannot be used with reverse mode");let F=t.resizable??!0,V=t.minColumnWidth??50,T=t.maxColumnWidth??1/0,B=t.fillWidth===!1?"none":t.fillWidth===!0?"stretch":t.fillWidth??"spacer",q=t.rowBorders??!0,D=t.rowHeight,oe=t.headerHeight??(typeof D==="number"?D:40),_=t.sort?.key??null,Y=t.sort?.direction??"asc";if(e=jn(t.columns,V,T,F,B),typeof D==="function"||typeof D==="number")b.setSizeConfig(D);if(b.rebuildSizeCache(),u.root.classList.add(`${a}--table`),q)u.root.classList.add(`${a}--table-row-borders`);if(t.columnBorders)u.root.classList.add(`${a}--table-col-borders`);queueMicrotask(()=>{if(b.getMethod("_getSelectedIds"))u.root.setAttribute("tabindex","0")}),u.root.setAttribute("role","grid"),u.root.setAttribute("aria-colcount",`${t.columns.length}`),u.viewport.setAttribute("role","none"),u.content.setAttribute("role","rowgroup");let U=s.crossSize;e.resolve(U);let P=()=>{if(!e)return;u.content.style.minWidth=`${e.totalWidth}px`},O=(k,h)=>{if(!e)return;let W=e.getColumn(k);if(!W)return;let N=W.width,Z=e.resizeColumn(k,h);n?.update(e),o?.updateColumnLayout(e),P(),L.emit("column:resize",{key:W.def.key,index:k,previousWidth:N,width:Z})},g=(k)=>{_=k.direction===null?null:k.key,Y=k.direction??"asc",n?.updateSort(_,Y),L.emit("column:sort",k)};if(n=Zn(u.root,oe,a,O,g),n.rebuild(e),_)n.updateSort(_,Y);P(),o=Jn(u.content,()=>r,e,t.columns,a,a,()=>s.totalItems,A.striped||void 0,void 0,()=>s.baseOffset),b.setRenderFn(p,M);let C=n,j=-1,J=()=>{let k=u.viewport.scrollLeft;if(k!==j)j=k,C?.syncScroll?.(k)};u.viewport.addEventListener("scroll",J,{passive:!0}),b.registerMethod("updateColumns",(k)=>{if(!e||!n)return;if(e.updateColumns(k),e.resolve(s.crossSize),n.rebuild(e),_)n.updateSort(_,Y);P(),o?.updateColumnLayout(e),o?.clear(),b.forceRender()}),b.registerMethod("resizeColumn",(k,h)=>{if(!e)return;let W;if(typeof k==="string"){let N=e.columns;W=-1;for(let Z=0;Z<N.length;Z++)if(N[Z].def.key===k){W=Z;break}if(W===-1)return}else W=k;O(W,h)}),b.registerMethod("getColumnWidths",()=>{if(!e)return{};let k={},h=e.columns;for(let W=0;W<h.length;W++)k[h[W].def.key]=h[W].width;return k}),b.registerMethod("setSort",(k,h)=>{_=k,Y=h??"asc",n?.updateSort(_,Y)}),b.registerMethod("getSort",()=>({key:_,direction:Y})),b.registerMethod("_getTableLayout",()=>e),b.registerMethod("_getTableHeaderHeight",()=>oe),b.registerMethod("_updateRenderedItem",(k,h,W,N)=>{o?.updateItem(k,h,W,N)}),b.registerMethod("_replaceTableRenderer",(k)=>{o=k}),b.registerMethod("_updateTableForGroups",(k,h)=>{o?.setGroupHeaderFn(k,h)}),b.registerMethod("_updateItemClasses",(k,h,W)=>{o?.updateItemClasses(k,h,W)}),b.registerKeydownHandler((k)=>{if(k.key!=="ArrowLeft"&&k.key!=="ArrowRight")return;if(!e)return;let h=e.columns;if(h.length===0)return;let W=u.viewport.clientWidth;if(e.totalWidth<=W)return;let N=u.viewport.scrollLeft;if(k.key==="ArrowRight"){for(let Z=0;Z<h.length;Z++)if(h[Z].offset>N+1){u.viewport.scrollLeft=h[Z].offset,k.preventDefault();return}}else{for(let Z=h.length-1;Z>=0;Z--)if(h[Z].offset<N-1){u.viewport.scrollLeft=h[Z].offset,k.preventDefault();return}if(N>0)u.viewport.scrollLeft=0,k.preventDefault()}}),b.registerDestroyHandler(()=>{u.viewport.removeEventListener("scroll",J),n?.destroy(),n=null,o?.destroy(),o=null,u.content.style.minWidth="",u.root.classList.remove(`${a}--table`),u.root.classList.remove(`${a}--table-row-borders`),u.root.classList.remove(`${a}--table-col-borders`),u.root.removeAttribute("role"),u.root.removeAttribute("aria-colcount"),u.root.removeAttribute("aria-rowcount"),u.root.removeAttribute("tabindex"),u.viewport.removeAttribute("role"),u.content.removeAttribute("role")})},hooks:{onResize(b,u){if(!e||!i)return;let A=s.crossSize;if(e.resolve(A),n?.update(e),o?.updateColumnLayout(e),e)i.dom.content.style.minWidth=`${e.totalWidth}px`},onAfterScroll(){if(!i||!n)return;n?.syncScroll?.(i.dom.viewport.scrollLeft)}},destroy(){n?.destroy(),n=null,o?.destroy(),o=null,i=null}}}function Ot(t){let e=t?.handle??null,n=t?.ghostClass??"vlist-sort-ghost",o=t?.shiftDuration??150,s=t?.edgeScrollZone??40,r=t?.edgeScrollSpeed??20,i=t?.dragThreshold??5,l=t?.ghostContainer??null,y,f,c=null,v,I,S,H,d,w,p,M,b,u,A=!1,L=-1,a=-1,F=0,V=0,T=0,B=0,q=!1,D=null,oe=0,_=null,Y=0,U=0,P=0,O=null,g=!1,C="",j=-1,J=-1,k=[],h="",W=null,N=null,Z="",m=!1,E=(G)=>G.closest("[data-index]"),x=(G)=>{let ge=G.dataset.index;return ge===void 0?-1:+ge},z=(G)=>{let ge=G.getBoundingClientRect(),ae=G.cloneNode(!0);return ae.className=`${H}-item ${n}`,ae.removeAttribute("data-index"),ae.style.cssText=`position:fixed;pointer-events:none;z-index:10000;width:${ge.width}px;height:${ge.height}px;left:${ge.left}px;top:${ge.top}px;transition:none;will-change:transform`,(l||document.body).appendChild(ae),ae},X=()=>{if(!D)return;D.style.left=`${T-U}px`,D.style.top=`${B-P}px`},se=()=>{let G=y.totalItems;if(G===0)return 0;let ge=I.getBoundingClientRect(),ae=y.scrollPosition,Ee=d?T-U-ge.left+I.scrollLeft+ae:B-P-ge.top+ae,Ae=Ee+Y,He=f.getOffset(L)+f.getSize(L);if(Ae>He){let ye=f.indexAtOffset(Ae),Q=f.getOffset(ye)+f.getSize(ye)/2,we=Ae>Q?ye:ye-1;return Math.min(Math.max(we,L),G-1)}let Fe=f.getOffset(L);if(Ee<Fe){let ye=f.indexAtOffset(Ee),Q=f.getOffset(ye)+f.getSize(ye)/2,we=Ee<Q?ye:ye+1;return Math.max(Math.min(we,L),0)}return L},te=()=>{let G=v.children,ge=Y;for(let ae=0;ae<G.length;ae++){let Ee=G[ae],Ae=x(Ee);if(Ae<0||Ae===L)continue;let He=0;if(a>L){if(Ae>L&&Ae<=a)He=-ge}else if(a<L){if(Ae>=a&&Ae<L)He=ge}let Fe=f.getOffset(Ae),ye=Math.round(Fe+He);Ee.style.transition=p,Ee.style.transform=`${w}(${ye}px)`}},ee=()=>{let G=v.children;for(let ge=0;ge<G.length;ge++){let ae=G[ge],Ee=x(ae);if(Ee>=0)ae.style.transform=`${w}(${Math.round(f.getOffset(Ee))}px)`;ae.style.transition=""}},ie=()=>{if(!c)return;let G=se();if(G===a)return;a=G,te(),c.emitter.emit("sort:move",{fromIndex:L,currentIndex:a})},ne=()=>{let G=I.getBoundingClientRect();if(d)return T<G.left||T>G.right;return B<G.top||B>G.bottom},ve=()=>{let G=c?.getMethod("_getFocusedIndex");return G?G():-1},be=(G)=>{let ge=c?.getMethod("_focusById");if(ge)ge(G)},de=(G)=>{if(!c)return;let ge=d?I.clientWidth:I.clientHeight,ae=y.scrollPosition,Ee=f.getOffset(G),Ae=Ee+f.getSize(G);if(Ee<ae)c.scrollTo(Math.max(0,Ee));else if(Ae>ae+ge)c.scrollTo(Ae-ge)},R=(G)=>{if(!N)return;N.textContent="",N.offsetHeight,N.textContent=G},le=(G)=>{if(!c)return"";let ae=c.getItems()[G];if(!ae)return"";return v.querySelector(`[data-index="${G}"]`)?.textContent?.trim()||String(ae.id)},re=()=>String(y.totalItems),Se=(G)=>{let ge=v.children;for(let ae=0;ae<ge.length;ae++)ge[ae].style.transition=G},Me=()=>{let G=()=>{if(!A||!c)return;let ge=I.getBoundingClientRect(),ae=0,Ee=3;if(d){let He=T-ge.left,Fe=ge.right-T;if(He<s){let ye=Math.min(Ee,1-He/s);ae=-r*ye*ye}else if(Fe<s){let ye=Math.min(Ee,1-Fe/s);ae=r*ye*ye}}else{let He=B-ge.top,Fe=ge.bottom-B;if(He<s){let ye=Math.min(Ee,1-He/s);ae=-r*ye*ye}else if(Fe<s){let ye=Math.min(Ee,1-Fe/s);ae=r*ye*ye}}let Ae=ne();if(ae!==0){let He=y.scrollPosition,Fe=f.getTotalSize()-(d?I.clientWidth:I.clientHeight);if(ae<0&&He<=0||ae>0&&He>=Fe)m=Ae;else m=!0,c.scrollTo(He+ae)}else m=Ae;oe=requestAnimationFrame(G)};oe=requestAnimationFrame(G)},xe=()=>{if(oe)cancelAnimationFrame(oe),oe=0},Le=(G=!1)=>{if(A=!1,q=!1,D&&D.parentNode)D.remove();D=null,_=null;let ge=v.children;for(let Ee=0;Ee<ge.length;Ee++){let Ae=ge[Ee];Ae.classList.remove(u);let He=x(Ae);if(He>=0)Ae.style.transform=`${w}(${Math.round(f.getOffset(He))}px)`;Ae.style.transition=""}xe(),S.classList.remove(M),document.body.style.cursor="";let ae=window.getSelection();if(ae)ae.removeAllRanges();if(document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),!G&&c)c.forceRender()},Te=(G,ge)=>{if(!c)return;let ae=G!==ge&&G>=0&&ge>=0,Ee=()=>{if(!c)return;if(A=!1,ae){if(S.classList.add(b),c.emitter.emit("sort:end",{fromIndex:G,toIndex:ge}),O!==null)be(O);Le(!0),requestAnimationFrame(()=>S.classList.remove(b))}else S.classList.add(b),c.emitter.emit("sort:cancel",{originalItems:[...c.getItems()]}),Le(!1),requestAnimationFrame(()=>S.classList.remove(b))};if(!D){Ee();return}let Ae=I.getBoundingClientRect(),He=y.scrollPosition,Fe=f.getOffset(ge),ye=o>0?o:150;if(D.style.transition=`left ${ye}ms ease, top ${ye}ms ease`,d)D.style.left=`${Ae.left-I.scrollLeft+Fe-He}px`,D.style.top=`${Ae.top}px`;else D.style.left=`${Ae.left}px`,D.style.top=`${Ae.top+Fe-He}px`;let Q=!1,we=()=>{if(Q)return;Q=!0,D?.removeEventListener("transitionend",we),Ee()};D.addEventListener("transitionend",we),setTimeout(we,ye+50)},Pe=(G)=>{if(y.destroyed||!c)return;if(A)return;if(g)Ie();if(G.button!==0)return;let ge=G.target;if(e){if(!ge.closest(e))return}let ae=E(ge);if(!ae)return;let Ee=x(ae);if(Ee<0)return;F=G.clientX,V=G.clientY,T=G.clientX,B=G.clientY,L=Ee,q=!1,_=ae;let Ae=ae.getBoundingClientRect();U=G.clientX-Ae.left,P=G.clientY-Ae.top,document.addEventListener("pointermove",Re),document.addEventListener("pointerup",K),document.addEventListener("pointercancel",ue)};function Re(G){if(!c)return;if(T=G.clientX,B=G.clientY,!q){let ge=T-F,ae=B-V;if(Math.sqrt(ge*ge+ae*ae)<i)return;if(q=!0,A=!0,a=L,S.classList.add(M),document.body.style.cursor="grabbing",Y=f.getSize(L),_)D=z(_),_.classList.add(u);let Ee=ve();if(Ee>=0){let He=c.getItems()[Ee];O=He?He.id:null}else O=null;c.emitter.emit("sort:start",{index:L}),Me()}if(A){if(G.preventDefault(),X(),!m)ie();else if(ne()){if(a!==L)a=L,ee()}}}function K(G){if(!q){document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),_=null;return}G.preventDefault(),document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),xe(),Te(L,a)}let he=()=>{if(!q)return;document.removeEventListener("pointermove",Re),document.removeEventListener("pointerup",K),document.removeEventListener("pointercancel",ue),xe(),ee(),Te(L,L)};function ue(){he()}let pe=()=>{let G=v.querySelectorAll(`.${Z}`);for(let ge=0;ge<G.length;ge++)G[ge].classList.remove(Z)},me=()=>{pe();let G=v.querySelector(`[data-id="${C}"]`);if(G)G.classList.add(Z)},Ce=(G)=>{if(!c)return;let ge=c.getItems(),ae=ge[G];if(!ae)return;g=!0,C=ae.id,j=G,J=G,k=[...ge],S.classList.add(M),c.emitter.emit("sort:start",{index:G}),me(),R(`Grabbed ${le(G)}. Current position ${G+1} of ${re()}. Use Up and Down arrow keys to move, Space to drop, Escape to cancel.`)},fe=()=>{if(!g||!c)return;g=!1;let G=J,ge=le(G);Se("none"),S.classList.remove(M),pe(),be(C),c.forceRender(),R(`${ge} dropped. Final position ${G+1} of ${re()}.`),k=[],requestAnimationFrame(()=>Se(""))},Ie=()=>{if(!g||!c)return;g=!1;let G=j;if(Se("none"),S.classList.remove(M),pe(),J!==G)c.emitter.emit("sort:cancel",{originalItems:k});be(C),c.forceRender(),de(G),R(`Reorder cancelled. Returned to position ${G+1} of ${re()}.`),k=[],requestAnimationFrame(()=>Se(""))},ze=(G)=>{if(!g||!c)return;let ge=y.totalItems,ae=J+G;if(ae<0||ae>=ge)return;let Ee=J,Ae=ae;Se("none"),c.emitter.emit("sort:end",{fromIndex:Ee,toIndex:Ae}),J=Ae,be(C),c.forceRender(),de(Ae),me(),R(`${le(Ae)} moved. New position ${Ae+1} of ${re()}.`),requestAnimationFrame(()=>Se(""))},ce=(G)=>{if(y.destroyed)return;if(A){if(G.key==="Escape")G.preventDefault(),G.stopImmediatePropagation(),he();return}if(g)switch(G.key){case" ":case"Enter":G.preventDefault(),G.stopImmediatePropagation(),fe();return;case"Escape":G.preventDefault(),G.stopImmediatePropagation(),Ie();return;case"ArrowUp":case"ArrowLeft":G.preventDefault(),G.stopImmediatePropagation(),ze(-1);return;case"ArrowDown":case"ArrowRight":G.preventDefault(),G.stopImmediatePropagation(),ze(1);return;default:if(!G.key.startsWith("F")&&G.key!=="Tab")G.preventDefault(),G.stopImmediatePropagation();return}if(G.key===" "&&!G.shiftKey&&!G.ctrlKey&&!G.metaKey){let ge=ve();if(ge>=0)G.preventDefault(),G.stopImmediatePropagation(),Ce(ge)}};return{name:"sortable",priority:30,conflicts:["grid","masonry","table","scale","tree"],setup(G){c=G,y=G.getState(),f=G.sizeCache,v=G.dom.content,I=G.dom.viewport,S=G.dom.root,H=G.config.classPrefix,d=G.config.axis.primary==="x",w=d?"translateX":"translateY",p=o>0?`transform ${o}ms ease`:"none",M=`${H}--sorting`,b=`${H}--settling`,u=`${H}-item--drag-source`,Z=`${H}-item--kb-sorting`,G.registerMethod("isSorting",()=>A||g),v.addEventListener("pointerdown",Pe),S.addEventListener("keydown",ce),h=`${H}-sort-instructions`,W=document.createElement("div"),W.id=h,W.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",W.textContent="Press Space to reorder. Use arrow keys to move, Space to drop, Escape to cancel.",S.appendChild(W),N=document.createElement("div"),N.setAttribute("role","status"),N.setAttribute("aria-live","assertive"),N.setAttribute("aria-atomic","true"),N.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",S.appendChild(N),G.registerDestroyHandler(()=>{if(g)Ie();Le(),v.removeEventListener("pointerdown",Pe),S.removeEventListener("keydown",ce),W?.remove(),N?.remove()})},hooks:{onCommit(){if(!c)return;let G=v.children;for(let ge=0;ge<G.length;ge++){let ae=G[ge],Ee=x(ae);if(Ee<0)continue;if(ae.setAttribute("aria-roledescription","sortable item"),ae.setAttribute("aria-describedby",h),g)if(ae.getAttribute("data-id")===String(C))ae.classList.add(Z);else ae.classList.remove(Z);if(A)if(Ee===L)ae.classList.add(u),_=ae;else{ae.classList.remove(u);let Ae=0;if(a>L){if(Ee>L&&Ee<=a)Ae=-Y}else if(a<L){if(Ee>=a&&Ee<L)Ae=Y}let He=Math.round(f.getOffset(Ee)+Ae);ae.style.transform=`${w}(${He}px)`}}}},destroy(){if(D&&D.parentNode)D.remove();D=null,xe(),W?.remove(),N?.remove(),c=null}}}function Nt(t,e){let n=[],o=e,s=new Map,r=[];function i(){s.clear();for(let L=0;L<n.length;L++)s.set(n[L].id,L)}function l(L){let a=n[L].depth,F=0;for(let V=L+1;V<n.length;V++){if(n[V].depth<=a)break;F++}return F}function y(L,a,F,V){for(let T=0;T<L.length;T++){let B=L[T],q=B.id,D=t(B),oe=D.length>0,_=oe&&o.has(q);if(V.push({item:B,id:q,depth:F,parentId:a,hasChildren:oe,expanded:_,childCount:D.length,siblingCount:L.length,positionInSiblings:T,isLastChild:T===L.length-1,loading:!1}),_)y(D,q,F+1,V)}}function f(L,a,F){for(let V of L){if(V.id===a)return V;let T=t(V);if(T.length>0){F?.push(V.id);let B=f(T,a,F);if(B)return B;F?.pop()}}return}function c(L,a){if(a===null)return r;let F=f(r,a);return F?t(F):[]}function v(L,a){let F=f(r,a);if(!F)return!1;return f(t(F),L)!==void 0}function I(L){let a=new Set;function F(V){for(let T of V){if(a.has(T.id))throw Error(`[vlist] tree: duplicate id "${T.id}"`);a.add(T.id);let B=t(T);if(B.length>0)F(B)}}F(L)}function S(L,a){if(r=L,!a)I(L);n.length=0,y(L,null,0,n),i()}function H(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a];if(!F.hasChildren||F.expanded)return 0;let V=[],T=t(F.item);if(y(T,L,F.depth+1,V),V.length===0)return 0;F.expanded=!0,o.add(L);let B=a+1,q=n.splice(B);for(let D=0;D<V.length;D++)n.push(V[D]);for(let D=0;D<q.length;D++)n.push(q[D]);return i(),V.length}function d(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a];if(!F.hasChildren||!F.expanded)return 0;F.expanded=!1,o.delete(L);let V=l(a);if(V>0)n.splice(a+1,V),i();return V}function w(L){function a(F){for(let V of F){let T=t(V);if(T.length>0)o.add(V.id),a(T)}}a(L),S(L)}function p(){o.clear(),S(r,!0)}function M(L){let a=[];if(!f(r,L,a))return;for(let F of a)o.add(F);S(r,!0)}function b(L,a,F){if(s.has(a.id)||f(r,a.id))throw Error(`[vlist] tree: duplicate id "${a.id}"`);if(L===null){let D=r,oe=F??D.length;D.splice(oe,0,a),S(r,!0);return}let V=s.get(L);if(V===void 0)throw Error(`[vlist] tree: parent "${L}" not found`);let T=n[V],B=t(T.item),q=F??B.length;if(B.splice(q,0,a),!T.hasChildren)T.hasChildren=!0,T.childCount=1,T.expanded=!1;else T.childCount=B.length;if(T.expanded)S(r,!0);else i()}function u(L){let a=s.get(L);if(a===void 0)return 0;let F=n[a],T=l(a)+1;for(let D=a;D<a+T;D++)o.delete(n[D].id);if(n.splice(a,T),F.parentId!==null){let D=s.get(F.parentId);if(D!==void 0){let oe=n[D];if(oe.childCount--,oe.childCount===0)oe.hasChildren=!1,oe.expanded=!1,o.delete(oe.id)}}let B=c(L,F.parentId),q=B.findIndex((D)=>D.id===L);if(q>=0)B.splice(q,1);return S(r,!0),T}function A(L,a,F){if(a!==null&&v(a,L))throw Error(`[vlist] tree: cannot move "${L}" to its own descendant "${a}"`);if(L===a)throw Error(`[vlist] tree: cannot move "${L}" to itself`);let V=s.get(L);if(V===void 0)return;let T=n[V],B=c(L,T.parentId),q=B.findIndex((D)=>D.id===L);if(q>=0)B.splice(q,1);if(a===null){let D=r,oe=F??D.length;D.splice(oe,0,T.item)}else{let D=f(r,a);if(!D)throw Error(`[vlist] tree: new parent "${a}" not found`);let oe=t(D),_=F??oe.length;oe.splice(_,0,T.item)}S(r,!0)}return{flatNodes:n,expandedIds:o,idToIndex:s,rebuild:S,expand:H,collapse:d,expandAll:w,collapseAll:p,expandTo:M,getSubtreeSize:l,addChild:b,removeNode:u,moveNode:A,get totalVisible(){return n.length},get rootItems(){return r}}}var Fo=()=>[];function Do(t){let{children:e,parentId:n}=t;if(n!==void 0)return Fo;if(e===void 0||e==="children")return(o)=>o.children??[];if(typeof e==="string"){let o=e;return(s)=>s[o]??[]}return e}function Vo(t){let{label:e}=t;if(e===void 0)return(n)=>{let o=n;return String(o.name??o.label??o.title??n.id)};if(typeof e==="string"){let n=e;return(o)=>String(o[n]??o.id)}return e}function $o(t,e,n){let{expanded:o}=t,s=new Set;if(o===void 0||o===!1)return s;if(Array.isArray(o)){for(let l of o)s.add(l);return s}let r=o===!0?null:o;function i(l){for(let y of l){let f=n(y);if(f.length>0){if(!r||r(y))s.add(y.id);i(f)}}}return i(e),s}function Qn(t,e){let{parentId:n}=e;if(n===void 0)throw Error("[vlist] tree: parentId not set");let o=typeof n==="string"?(l)=>l[n]??null:n,s=(l)=>o(l)??null,r=new Map,i=new Map;for(let l of t){i.set(l.id,l);let y=s(l),f=r.get(y);if(!f)f=[],r.set(y,f);f.push(l)}for(let l of t){let y=s(l);if(y!==null&&y!==void 0&&!i.has(y))console.warn(`[vlist] tree: orphaned node "${l.id}" — parentId "${y}" not found`)}return{roots:r.get(null)??[],getChildren:(l)=>{let y=r.get(l.id);if(!y)y=[],r.set(l.id,y);return y}}}var Be={selected:!1,focused:!1},qe={depth:0,expanded:!1,hasChildren:!1,isLeaf:!0,isLastChild:!1,loading:!1};Be.tree=qe;function Gt(t){let e=t??{},n=e.indent??24,o=e.paddingStart??0,s=e.expandOnClick??!1,r=e.connectorLines??!1,i=e.parentId!==void 0,l,y,f,c,v,I,S,H,d,w,p=null,M,b,u,A,L,a,F,V,T,B,q=new Map,D=-1,oe=-1,_=-1,Y=!0,U=null,P=!1,O,g=-1,C=!1,j=!1,J="",k=null;function h(){if(j){let K=M("_getFocusedIndex");return K?K():-1}return C?g:-1}let W,N,Z;function m(){if(N!==void 0)return;W=M("select")??null,N=M("_focusById")??null,Z=M("_isFollowFocus")??null}function E(K){if(K<0||K>=l.totalVisible)return;let he=l.flatNodes[K];if(!he)return;if(j){if(m(),N)N(he.id);if(Z?.()&&W)W(he.id);else X();x(K)}else g=K,C=!0,v.setAttribute("aria-activedescendant",`${d}-item-${K}`),x(K),X()}function x(K){let he=y.getOffset(K),ue=y.getSize(K),pe=f.scrollPosition,me=f.containerSize;if(he<pe)z(he);else if(he+ue>pe+me)z(he-me+ue)}let z,X,se;function te(K){return H?`translate(${Math.round(K)}px, 0)`:`translate(0, ${Math.round(K)}px)`}function ee(K){if(K===_)return;_=K,v.style[H?"width":"height"]=K+"px"}function ie(){q.forEach((K)=>{K.remove(),c.release(K)}),q.clear()}let ne=0;function ve(){let K=se();if(K===U&&K.length===ne)return;if(U=K,ne=K.length,i){let{roots:he,getChildren:ue}=Qn(K,e),pe=e.loadChildren?(me)=>R.get(me.id)??ue(me):ue;l=Nt(pe,l.expandedIds),l.rebuild(he,!0)}else l.rebuild(K,!0);be(),ie()}function be(){f.totalItems=l.totalVisible,O(l.totalVisible);let K=y.getTotalSize();ee(K);let he=M("_scrollbar:getInstance");if(he)he()?.updateBounds(K,f.containerSize)}function de(){be(),ie(),X()}let R=new Map,le=new Set;async function re(K){if(!e.loadChildren||le.has(K))return;let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he];le.add(K),ue.loading=!0,queueMicrotask(()=>X());try{let pe=await e.loadChildren(ue.item);le.delete(K);let me=l.idToIndex.get(K);if(me===void 0)return;let Ce=l.flatNodes[me];if(Ce.loading=!1,R.set(K,pe),Ce.hasChildren=pe.length>0,Ce.childCount=pe.length,pe.length>0)Ce.expanded=!0,l.expandedIds.add(K),l.rebuild(l.rootItems);de(),b.emit("tree:load",{id:K,item:Ce.item,children:pe})}catch(pe){le.delete(K),R.set(K,[]);let me=l.idToIndex.get(K);if(me!==void 0)l.flatNodes[me].loading=!1;X(),b.emit("tree:load:error",{id:K,item:ue.item,error:pe})}}function Se(K){let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he];if(e.loadChildren&&!ue.hasChildren&&!ue.loading){if(!R.has(K)){re(K);return}}if(l.expand(K)===0)return;de(),b.emit("tree:expand",{id:K,item:ue.item,depth:ue.depth})}function Me(K){let he=l.idToIndex.get(K);if(he===void 0)return;let ue=l.flatNodes[he],pe=l.collapse(K);if(pe===0)return;if(!j&&g>he){if(g<=he+pe)g=he;else g-=pe;if(C)v.setAttribute("aria-activedescendant",`${d}-item-${g}`)}de(),b.emit("tree:collapse",{id:K,item:ue.item,depth:ue.depth})}function xe(K,he,ue,pe){let{depth:me,expanded:Ce,hasChildren:fe,loading:Ie,siblingCount:ze,positionInSiblings:ce,isLastChild:G,id:ge}=he;if(K.className=A,Ce)K.classList.add(L);if(!fe)K.classList.add(a);if(Ie)K.classList.add(F);if(r&&G)K.classList.add(V);if(K.setAttribute("role","treeitem"),K.setAttribute("data-index",String(ue)),K.setAttribute("data-id",String(ge)),K.id=`${d}-item-${ue}`,K.setAttribute("aria-level",String(me+1)),K.setAttribute("aria-setsize",String(ze)),K.setAttribute("aria-posinset",String(ce+1)),fe)K.setAttribute("aria-expanded",String(Ce));else K.removeAttribute("aria-expanded");if(K.style.paddingLeft=`${o+me*n}px`,K.style.setProperty("--vlist-tree-depth",String(me)),r)K.style.setProperty("--vlist-tree-indent",`${n}px`),K.style.setProperty("--vlist-tree-pad",`${o}px`);if(pe)pe(ue,Be);else Be.selected=!1,Be.focused=!1;qe.depth=me,qe.expanded=Ce,qe.hasChildren=fe,qe.isLeaf=!fe,qe.isLastChild=G,qe.loading=Ie;let ae=S(he.item,ue,Be);if(typeof ae==="string")K.innerHTML=ae;else K.innerHTML="",K.appendChild(ae);Ge(K)}function Le(){if(f.destroyed)return;if(ve(),!P){if(P=!0,v.setAttribute("role","tree"),v.setAttribute("tabindex","0"),I.classList.add(`${d}--tree`),r)I.classList.add(`${d}--tree-lines`)}let K=f.scrollPosition,he=f.containerSize;if(!Y&&K===D&&he===oe)return;D=K,oe=he,Y=!1;let ue=l.totalVisible;if(he<=0||ue===0){if(q.size>0)ie();return}let pe=y.indexAtOffset(K),me=y.indexAtOffset(K+he);if(me<ue-1)me++;pe=Math.max(0,pe),me=Math.min(ue-1,Math.max(0,me));let Ce=Math.max(0,pe-w),fe=Math.min(ue-1,me+w);if(Ce===f.prevRangeStart&&fe===f.prevRangeEnd&&!f.renderPending)return;q.forEach((G,ge)=>{if(ge<Ce||ge>fe)G.remove(),c.release(G),q.delete(ge)});let Ie=p?.()??null,ze=null;for(let G=Ce;G<=fe;G++){let ge=l.flatNodes[G],ae=q.get(G);if(ae===void 0){if(ae=c.acquire(),xe(ae,ge,G,Ie),ae.style[H?"width":"height"]=`${y.getSize(G)}px`,q.set(G,ae),!ze)ze=document.createDocumentFragment();ze.appendChild(ae)}else if(ae.getAttribute("data-id")!==String(ge.id)||ae.classList.contains(F)!==ge.loading)xe(ae,ge,G,Ie);if(ae.style.transform=te(y.getOffset(G)),Ie)if(Ie(G,Be),ae.classList.toggle(T,Be.selected),ae.classList.toggle(B,Be.focused),Be.selected)ae.setAttribute("aria-selected","true");else ae.removeAttribute("aria-selected");else if(!j){let Ee=C&&g===G;ae.classList.toggle(B,Ee)}}if(ze)v.appendChild(ze);ee(y.getTotalSize()),f.prevRangeStart=Ce,f.prevRangeEnd=fe,f.renderPending=!1;let ce=0;for(let G=Ce;G<=fe&&ce<f.capacity;G++)f.visibleIndices[ce]=G,f.visibleOffsets[ce]=y.getOffset(G),f.visibleSizes[ce]=y.getSize(G),ce++;f.visibleCount=ce,f.startIndex=Ce}function Te(){if(f.destroyed)return;f.prevRangeStart=-1,f.prevRangeEnd=-1,f.renderPending=!0,Y=!0,Le()}function Pe(K,he){if(J+=K.toLowerCase(),k!==null)clearTimeout(k);k=setTimeout(()=>{J="",k=null},500);let ue=l.totalVisible;for(let pe=1;pe<=ue;pe++){let me=(he+pe)%ue,Ce=l.flatNodes[me];if(u(Ce.item).toLowerCase().startsWith(J)){E(me);return}}}function Re(K){let he=!1;for(let ue of l.flatNodes)if(ue.parentId===K.parentId&&ue.hasChildren&&!ue.expanded)l.expandedIds.add(ue.id),he=!0;if(!he)return;l.rebuild(l.rootItems,!0),de()}return{name:"tree",priority:10,conflicts:["groups","grid","masonry","table"],setup(K){y=K.sizeCache,f=K.getState(),c=K.pool,v=K.dom.content,I=K.dom.root,S=K.template,H=K.config.axis.primary==="x",d=K.config.classPrefix,w=K.config.overscan,b=K.emitter,p=K.getItemStateFn.bind(K),M=K.getMethod.bind(K),z=K.scrollTo.bind(K),X=K.forceRender.bind(K),se=K.getItems.bind(K),A=`${d}-item ${d}-tree-node`,L=`${d}-tree-node--expanded`,a=`${d}-tree-node--leaf`,F=`${d}-tree-node--loading`,V=`${d}-tree-node--last`,T=`${d}-item--selected`,B=`${d}-item--focused`;let he=K.getItems();U=he,ne=he.length;let ue,pe;if(i){let ce=Qn(he,e);ue=ce.getChildren,pe=ce.roots}else ue=Do(e),pe=he;let me=e.loadChildren?(ce)=>R.get(ce.id)??ue(ce):ue;u=Vo(e);let Ce=$o(e,pe,me);l=Nt(me,Ce),l.rebuild(pe),O=y.rebuild,y.rebuild=(ce)=>{O(l.totalVisible)},y.rebuild(l.totalVisible),f.totalItems=l.totalVisible,K.setVirtualTotalFn(()=>l.totalVisible),K.setGetItemFn((ce)=>{let G=l.flatNodes[ce];return G?G.item:void 0}),K.setGetIndexByIdFn((ce)=>l.idToIndex.get(ce)??-1),K.setRenderFn(Le,Te),K.registerMethod("_layoutToDataIndex",(ce)=>ce),K.registerMethod("_dataToLayoutIndex",(ce)=>ce),K.registerMethod("_getLoadedItem",(ce)=>{let G=l.flatNodes[ce];return G?G.item:void 0}),K.registerMethod("_getRenderedElement",(ce)=>q.get(ce)??null),queueMicrotask(()=>{j=!!(M("_getFocusedIndex")||K.getItemStateFn())}),K.setInsertItemFn((ce,G)=>{let ge=se(),ae=Math.min(G,ge.length);ge.splice(ae,0,ce),ne=ge.length,l.rebuild(ge),de()}),K.setRemoveItemFn((ce)=>{let G=l.idToIndex.get(ce),ge=null;if(i&&G!==void 0){ge=new Set,ge.add(ce);let Ee=l.getSubtreeSize(G);for(let Ae=G+1;Ae<=G+Ee;Ae++)ge.add(l.flatNodes[Ae].id)}let ae=l.removeNode(ce);if(ae===0)return-1;if(!j&&G!==void 0&&g>=G)g=Math.max(0,Math.min(g-ae,l.totalVisible-1));if(i&&ge){let Ee=se();for(let Ae=Ee.length-1;Ae>=0;Ae--)if(ge.has(Ee[Ae].id))Ee.splice(Ae,1)}return ne=se().length,de(),b.emit("data:change",{type:"remove",id:ce}),ae}),K.setUpdateItemFn((ce,G)=>{let ge=l.idToIndex.get(ce);if(ge===void 0)return!1;let ae=l.flatNodes[ge];Object.assign(ae.item,G);let Ee=q.get(ge);if(Ee)xe(Ee,ae,ge,p?.()??null);return b.emit("data:change",{type:"update",id:ce}),!0}),K.registerClickHandler((ce)=>{let G=ce.target.closest("[data-index]");if(!G)return;let ge=parseInt(G.dataset.index??"-1",10);if(ge<0)return;let ae=l.flatNodes[ge];if(!ae)return;let Ee=ae.id,Ae=!1;if(s&&(ae.hasChildren||e.loadChildren&&!ae.loading&&!R.has(Ee))){let He=l.totalVisible;if(ae.expanded)Me(Ee);else Se(Ee);Ae=l.totalVisible!==He}if(j&&Ae){if(m(),N)N(Ee);if(W)W(Ee)}else if(!j)g=l.idToIndex.get(Ee)??ge,C=!1,v.focus({preventScroll:!0})});let fe=()=>{if(f.destroyed||j)return;if(!v.matches(":focus-visible")&&!I.matches(":focus-visible"))return;let ce=l.totalVisible;if(ce===0)return;g=g>=0?Math.min(g,ce-1):0,C=!0,v.setAttribute("aria-activedescendant",`${d}-item-${g}`),x(g),Te()};I.addEventListener("focusin",fe);let Ie=(ce)=>{if(f.destroyed||j)return;let G=ce.relatedTarget;if(G&&I.contains(G))return;C=!1,v.removeAttribute("aria-activedescendant"),Te()};I.addEventListener("focusout",Ie),K.registerKeydownHandler((ce)=>{if(f.destroyed)return;let G=l.totalVisible;if(G===0)return;let ge=h();if(ge<0&&!j&&(ce.key==="ArrowDown"||ce.key==="Home")){E(0),ce.preventDefault();return}if(ge<0)return;let ae=l.flatNodes[ge];if(!ae)return;switch(ce.key){case"ArrowRight":{if(ae.hasChildren||e.loadChildren&&!ae.loading)if(!ae.expanded)Se(ae.id);else E(ge+1);ce.preventDefault();break}case"ArrowLeft":{if(ae.hasChildren&&ae.expanded)Me(ae.id);else if(ae.parentId!==null){let Ee=l.idToIndex.get(ae.parentId);if(Ee!==void 0)E(Ee)}ce.preventDefault();break}case"*":{Re(ae),ce.preventDefault();break}default:{if(!j){if(ce.key==="ArrowDown"){if(ge<G-1)E(ge+1);ce.preventDefault();break}if(ce.key==="ArrowUp"){if(ge>0)E(ge-1);ce.preventDefault();break}if(ce.key==="Home"){E(0),ce.preventDefault();break}if(ce.key==="End"){E(G-1),ce.preventDefault();break}if(ce.key==="Enter"){b.emit("item:click",{item:ae.item,index:ge,event:ce}),ce.preventDefault();break}}if(ce.key.length===1&&!ce.ctrlKey&&!ce.altKey&&!ce.metaKey)Pe(ce.key,ge),ce.preventDefault()}}}),K.registerMethod("expand",Se),K.registerMethod("collapse",Me),K.registerMethod("toggle",(ce)=>{let G=l.idToIndex.get(ce);if(G===void 0)return;if(l.flatNodes[G].expanded)Me(ce);else Se(ce)}),K.registerMethod("expandAll",()=>{l.expandAll(l.rootItems),de()}),K.registerMethod("collapseAll",()=>{l.collapseAll(),de()}),K.registerMethod("expandTo",(ce)=>{l.expandTo(ce),de();let G=l.idToIndex.get(ce);if(G!==void 0)x(G)}),K.registerMethod("getExpanded",()=>Array.from(l.expandedIds)),K.registerMethod("isExpanded",(ce)=>l.expandedIds.has(ce));let ze=i&&typeof e.parentId==="string"?e.parentId:null;K.registerMethod("addChild",(ce,G,ge)=>{if(ze)G[ze]=ce;if(i){let ae=se();ae.push(G),ne=ae.length}l.addChild(ce,G,ge),de(),b.emit("data:change",{type:"add",id:G.id})}),K.registerMethod("moveNode",(ce,G,ge)=>{if(ze){let ae=l.idToIndex.get(ce);if(ae!==void 0)l.flatNodes[ae].item[ze]=G}l.moveNode(ce,G,ge),de()}),K.registerMethod("getTreeLayout",()=>({totalVisible:l.totalVisible,flatNodes:l.flatNodes})),K.registerDestroyHandler(()=>{if(I.removeEventListener("focusin",fe),I.removeEventListener("focusout",Ie),ie(),I.classList.remove(`${d}--tree`),I.classList.remove(`${d}--tree-lines`),k!==null)clearTimeout(k)})},destroy(){if(q.clear(),k!==null)clearTimeout(k)}}}var eo=(t)=>{if(typeof t==="function")return t;if(typeof t==="string")return(e)=>{let n=e[t];return n==null?"":String(n)};return(e)=>{if(e==null)return"";let n="";for(let o in e){let s=e[o];if(typeof s==="string")n+=n?" "+s:s}return n}},Bt=(t,e,n)=>{if(!e)return!1;return(n?t:t.toLowerCase()).includes(e)},Oo=(t,e)=>{let n=t.querySelectorAll(`mark.${e}`);for(let o=n.length-1;o>=0;o--){let s=n[o],r=s.parentNode;if(!r)continue;let i=document.createTextNode(s.textContent??"");r.replaceChild(i,s),r.normalize()}},Wt=(t,e,n,o)=>{if(!e)return;Oo(t,o);let s=n?e:e.toLowerCase(),r=e.length,i=document.createTreeWalker(t,NodeFilter.SHOW_TEXT,{acceptNode(f){let c=f.nodeValue??"";return(n?c:c.toLowerCase()).includes(s)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}),l=[],y;while((y=i.nextNode())!==null)l.push(y);for(let f of l){let c=f.nodeValue??"",v=n?c:c.toLowerCase(),I=document.createDocumentFragment(),S=0,H=v.indexOf(s,0);while(H!==-1){if(H>S)I.appendChild(document.createTextNode(c.slice(S,H)));let d=document.createElement("mark");d.className=o,d.textContent=c.slice(H,H+r),I.appendChild(d),S=H+r,H=v.indexOf(s,S)}if(S<c.length)I.appendChild(document.createTextNode(c.slice(S)));f.parentNode?.replaceChild(I,f)}};var Kt=(t,e,n,o)=>{let s=document.createElement("button");return s.type="button",s.className=t,s.tabIndex=o,s.setAttribute("aria-label",e),s.innerHTML=n,s},to=(t,e,n,o,s,r,i)=>{let l=`${n}-search`,y=document.createElement("div");if(y.className=`${l} ${l}--bar ${l}--${o}`,y.setAttribute("role","search"),y.setAttribute("aria-disabled","false"),s.region)y.setAttribute("aria-label",s.region);let f=document.createElement("div");f.className=`${l}__container`;let c=document.createElement("span");c.className=`${l}__leading-icon`,c.setAttribute("aria-hidden","true"),c.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 v=document.createElement("div");v.className=`${l}__input-wrapper`;let I=document.createElement("input");if(I.type="text",I.className=`${l}__input`,I.placeholder=s.placeholder,I.spellcheck=!1,I.autocomplete="off",I.setAttribute("aria-label",s.placeholder),r)I.setAttribute("aria-controls",r);v.appendChild(I);let S=document.createElement("span");S.className=`${l}__counter`,S.setAttribute("aria-live","polite");let H=Kt(`${l}__nav-prev`,s.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),d=Kt(`${l}__nav-next`,s.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),w=Kt(`${l}__clear-button ${l}__clear-button--hidden`,s.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(f.append(c,v,S,H,d,w),y.appendChild(f),o==="top"&&e)t.insertBefore(y,e);else if(o==="top")t.insertBefore(y,t.firstChild);else t.appendChild(y);let p=()=>{w.classList.toggle(`${l}__clear-button--hidden`,I.value.length===0)},M=()=>{p(),i.onInput(I.value)},b=(F)=>i.onKeydown(F),u=()=>I.focus(),A=()=>{i.onClear(),I.focus()},L=()=>i.onPrev(),a=()=>i.onNext();return I.addEventListener("input",M),I.addEventListener("keydown",b),c.addEventListener("click",u),w.addEventListener("click",A),H.addEventListener("click",L),d.addEventListener("click",a),{root:y,input:I,setCounter(F){S.textContent=F},showNav(F){H.classList.toggle(`${l}__nav-prev--hidden`,!F),d.classList.toggle(`${l}__nav-next--hidden`,!F)},focus(){I.focus(),I.select()},setValue(F){I.value=F,p()},destroy(){I.removeEventListener("input",M),I.removeEventListener("keydown",b),c.removeEventListener("click",u),w.removeEventListener("click",A),H.removeEventListener("click",L),d.removeEventListener("click",a),y.remove()}}};var Ut={placeholder:"Search…",clear:"Clear search",previous:"Previous match",next:"Next match",noResults:"No results",results:(t)=>`${t} result${t===1?"":"s"}`,position:(t,e)=>`${t} of ${e}`,region:""};function Yt(t={}){let e=t.mode??"filter",n=t.position??"top",o={...Ut,...t.text},s=t.caseSensitive??!1,r=t.highlight!==!1,i=typeof t.highlight==="object"&&t.highlight!==null?t.highlight.within:void 0,l=t.minLength??1,y=t.cancelTimeout??0,f=t.variant??"default",c=eo(t.field),v,I,S,H,d,w=null,p=!1,M="",b=[],u=new Set,A=0,L=!1,a=null,F=!1,V=null,T=null,B=null,q=()=>{if(F)return;F=!0,V=v.getMethod("scrollToIndex")??null,T=v.getMethod("filterTree")??null,B=v.getMethod("clearTreeFilter")??null},D=()=>{if(b=[],u.clear(),M.length<l)return;let m=s?M:M.toLowerCase(),E=v.getItems();for(let x=0;x<E.length;x++){let z=E[x];if(z!==void 0&&Bt(c(z),m,s))b.push(x),u.add(x)}},oe=()=>{if(q(),T){let x=s?M:M.toLowerCase();T((z)=>Bt(c(z),x,s)),L=!0;return}let m=v.getItems(),E=b;v.setGetItemFn((x)=>m[E[x]]),v.setVirtualTotalFn(()=>E.length),I.totalItems=E.length,v.rebuildSizeCache(),v.updateContentSize(v.sizeCache.getTotalSize()),L=!0},_=()=>{if(!L)return;if(L=!1,B){B();return}v.setGetItemFn((m)=>v.getItems()[m]),v.setVirtualTotalFn(()=>v.getItems().length),I.totalItems=v.getItems().length,v.rebuildSizeCache(),v.updateContentSize(v.sizeCache.getTotalSize())},Y=()=>{q();let m=b[A];if(m===void 0)return;if(V)V(m,"center");else v.scrollTo(Math.max(0,v.sizeCache.getOffset(m)-v.getState().containerSize/2));let E=v.getItem(m);v.emitter.emit("search:match",{index:m,item:E,matchIndex:A,matches:b.length})},U=()=>{if(!w)return;if(M.length<l)w.setCounter("");else if(b.length===0)w.setCounter(o.noResults);else if(e==="navigate")w.setCounter(o.position(A+1,b.length));else w.setCounter(o.results(b.length))},P=()=>{let m=p&&M.length>=l;v.dom.root.classList.toggle(`${S}--searching`,m)},O=(m)=>{if(M=m,w?.setValue(M),D(),A=0,e==="filter")if(M.length>=l)oe();else _();if(P(),U(),v.forceRender(),e==="navigate"&&b.length>0)Y();v.emitter.emit("search:change",{query:M,matches:b.length,total:v.getItems().length}),k()},g=()=>{if(!p)p=!0,v.dom.root.classList.add(`${S}--search-open`),v.emitter.emit("search:open",void 0);w?.focus(),k()},C=()=>{J();let m=p||M.length>0;if(p=!1,M.length>0)O("");if(v.dom.root.classList.remove(`${S}--search-open`),P(),m)v.emitter.emit("search:close",void 0)},j=(m)=>{if(b.length===0)return;if(A=(A+m+b.length)%b.length,U(),e==="navigate")Y(),v.forceRender()},J=()=>{if(a!==null)clearTimeout(a),a=null},k=()=>{if(J(),y>0&&p)a=setTimeout(()=>{a=null,C()},y)},h=(m)=>{if(!r||M.length<l)return;let E=m.startIndex,x=E+Math.max(0,m.visibleCount-1),z=e==="navigate"?b[A]:-1;for(let X=E;X<=x;X++){let se=v.getRenderedElement(X);if(!se)continue;if(i){let te=se.querySelectorAll(i);for(let ee=0;ee<te.length;ee++)Wt(te[ee],M,s,H)}else Wt(se,M,s,H);if(e==="navigate"){let te=X===z,ee=se.querySelectorAll(`.${H}`);for(let ie=0;ie<ee.length;ie++)ee[ie].classList.toggle(d,te)}}},W=(m)=>m.key.length===1&&!m.ctrlKey&&!m.metaKey&&!m.altKey,N=(m)=>{if((m.ctrlKey||m.metaKey)&&(m.key==="f"||m.key==="F")){m.preventDefault(),g();return}if(!p){if(n==="none"&&W(m))m.preventDefault(),g(),O(M+m.key);return}switch(m.key){case"Escape":m.preventDefault(),C();break;case"Enter":m.preventDefault(),j(m.shiftKey?-1:1);break;case"ArrowDown":m.preventDefault(),j(1);break;case"ArrowUp":m.preventDefault(),j(-1);break;default:if(n==="none"){if(m.key==="Backspace"){if(m.preventDefault(),O(M.slice(0,-1)),M.length===0)C()}else if(W(m))m.preventDefault(),O(M+m.key)}}},Z=(m)=>{if(m.key==="Escape"||m.key==="Enter"||m.key==="ArrowDown"||m.key==="ArrowUp")N(m)};return{name:"search",priority:55,setup(m){if(v=m,I=v.getState(),S=v.config.classPrefix,H=`${S}-search-match`,d=`${S}-search-match--current`,n!=="none"){let x=v.dom.root.id||void 0;if(w=to(v.dom.root,v.dom.viewport,S,n,{placeholder:o.placeholder,clear:o.clear,previous:o.previous,next:o.next,region:o.region},x,{onInput:(z)=>O(z),onClear:()=>O(""),onPrev:()=>j(-1),onNext:()=>j(1),onKeydown:Z}),w.showNav(e==="navigate"),f!=="default")w.root.classList.add(`${S}-search--${f}`);v.dom.root.classList.add(`${S}--has-search`)}let E=v.getItemStateFn();v.setItemStateFn((x,z)=>{if(E)E(x,z);if(M.length<l){delete z.search;return}if(e==="filter")z.search={matched:!0,query:M,matchIndex:x,isCurrent:!1};else{let X=b.indexOf(x);z.search={matched:u.has(x),query:M,matchIndex:X,isCurrent:X!==-1&&X===A}}}),v.registerMethod("openSearch",g),v.registerMethod("closeSearch",C),v.registerMethod("setQuery",(x)=>{if(!p)g();O(x)}),v.registerMethod("getQuery",()=>M),v.registerMethod("nextMatch",()=>j(1)),v.registerMethod("prevMatch",()=>j(-1)),v.registerMethod("getMatches",()=>b.slice()),v.registerKeydownHandler(N),v.registerDestroyHandler(()=>{J(),_(),w?.destroy(),w=null,v.dom.root.classList.remove(`${S}--search-open`,`${S}--searching`,`${S}--has-search`)})},hooks:{onCommit(m){h(m)}}}}function no(t){let{slots:e,focalSlot:n,containerSize:o,gap:s=0}=t,r=e.length,i=Math.max(0,r-1)*s,l=o-i,y=e.map((w)=>Math.round(w*l)),f=l-y.reduce((w,p)=>w+p,0);if(n<y.length)y[n]+=f;let c=(y[n]??0)+s,v=(w)=>w>=s?s:Math.max(0,w);function I(w,p,M){let b=w-p,u=n+b,A=u-1,L=S(u),a=S(A);return L+M*(a-L)}function S(w){if(w<0||w>=r)return 0;return y[w]??0}function H(w,p,M,b){let u=w-p,A=I(w,p,M),L=b;if(u>0)for(let D=0;D<u;D++){let oe=I(p+D,p,M);L+=oe+v(oe)}else if(u<0)for(let D=-1;D>=u;D--){let oe=I(p+D,p,M);L-=oe+v(oe)}let a=n+u,F=a-1,V;if(a===n)V=M;else if(F===n)V=1-M;else V=1;let T=y[n]??0,B=T>0?A/T:0,q=B>0.6?"large":B>0.3?"medium":"small";return{size:A,offset:L,progress:V,relOffset:u,role:q}}function d(w,p){if(n===0)return 0;let M=0;for(let b=-1;b>=-n;b--){let u=I(w+b,w,p);M+=u+v(u)}return M}return{slotWidths:y,stepSize:c,focalSlot:n,getItemLayout:H,getItemSize:I,getAnchorOffset:d}}var Xt=new Map;function Ye(t,e){Xt.set(t,e)}function qt(t){return Xt.get(t)}function rt(t,e,n){let o=Xt.get(t);return o?o(e,n):null}function jt(t){return t!==null&&"slots"in t}var pt=()=>({slots:[1],focalSlot:0}),bt=(t,e)=>({slots:[(t-e)/t,e/t],focalSlot:0}),ht=(t,e)=>({slots:[e/t,(t-2*e)/t,e/t],focalSlot:1}),vt=()=>({slots:[0.4,0.3,0.2,0.09999999999999998],focalSlot:0}),yt=(t)=>{let e=Math.max(2,Math.floor(t/(t*0.33))),n=1/e;return{slots:Array.from({length:e},()=>n),focalSlot:0,textFade:"size"}};Ye("full",pt);Ye("hero",bt);Ye("hero-center",ht);Ye("multi",vt);Ye("uncontained",yt);var Zt=101,St=50,No=10;function Go(t){if(typeof t==="function")return{variant:"custom",resolveSlots:t};if(typeof t==="object"){let e=t;return{variant:"custom",resolveSlots:()=>e}}return{variant:t,resolveSlots:(e,n)=>rt(t,e,n)}}function Jt(t){let e=t?.variant??"full",{variant:n,resolveSlots:o}=Go(e),s=n==="full"||(t?.snap??n!=="free"),r=t?.snapDirection??!0,i=t?.snapDuration??400,l=t?.snapEasing,y=t?.initialIndex??0,f=t?.peek??"auto",c,v,I=null,S,H=y,d=0,w=0,p=0,M=0,b=!1,u="vlist",A=-1,L=0,a=[],F=[],V=!1,T="role",B=t?.gap??0;function q(N){if(d<=0)return 0;return(N%d+d)%d}function D(N,Z,m){if(d<=1)return 0;let E=((Z-N)%d+d)%d,x=d-E;if(m==="forward")return E;if(m==="backward")return-x;return E<=x?E:-x}function oe(N){return St*d+N}function _(N){if(d<=0)return 0;return(N%d+d)%d}function Y(N){a=N;let Z=N.length;F=Array(Z+1),F[0]=0;for(let m=0;m<Z;m++)F[m+1]=F[m]+N[m];p=Z>0?F[Z]:0}function U(N){if(d<=0||p<=0)return{vi:0,frac:0};let Z=Math.floor(N/p),m=N-Z*p;if(m<0)m=0;if(!V){let te=a[0],ee=Math.min(Math.floor(m/te),d-1);return{vi:Z*d+ee,frac:te>0?m/te-ee:0}}let E=0,x=d-1;while(E<x){let te=E+x+1>>1;if(F[te]<=m)E=te;else x=te-1}let z=F[E],X=a[E],se=X>0?Math.max(0,Math.min((m-z)/X,1)):0;return{vi:Z*d+E,frac:se}}function P(N){if(typeof f==="number")return f;if(typeof f==="string"&&f.endsWith("%"))return Math.round(N*parseFloat(f)/100);return Math.max(40,Math.min(Math.round(N*0.15),120))}function O(N){if(d<=0||p<=0)return 0;let Z=Math.floor(N/d),m=(N%d+d)%d;return Z*p+(F[m]??0)}function g(N){let{vi:Z,frac:m}=U(N);return m>=0.5?Z+1:Z}function C(){if(A>=0)return A;return g(c.scrollPosition)}function j(N,Z){I?.smoothScrollTo(N,Z,l)}let J=null;function k(){if(!I)return;let N=I.getItems().length;if(N===d)return;let Z=H;if(d=N,V){let m=I.rawSizeSpec,E=typeof m==="function"?(x)=>m(x)+B:()=>m+B;Y(Array.from({length:d},(x,z)=>E(z)))}else Y(Array.from({length:d},()=>a[0]??w));if(M=d*Zt,c.totalItems=M,d>1){let m=Z<d?Z:0;H=m,I.scrollTo(O(St*d+m))}}function h(){if(!I||d<=0)return;if(!J&&!V&&d<=1)return;let Z=I.dom.content.children,m=c.scrollPosition,E=c.baseOffset,x=Math.round(m-E),z=S?"width":"height",{vi:X,frac:se}=U(m),te=X-(X%d+d)%d,ee=J?J.slotWidths[J.focalSlot]??0:0;if(J){let ie=m+J.getAnchorOffset(X,se);for(let ne=0;ne<Z.length;ne++){let ve=Z[ne],be=ve.dataset.index;if(be===void 0)continue;let de=parseInt(be,10),R=te+de;if(R-X>d/2)R-=d;if(X-R>d/2)R+=d;let le=J.getItemLayout(R,X,se,ie),re=Math.max(0,Math.round(le.size)),Se=Math.round(le.offset-E);if(re<=0)ve.style.display="none",ve.classList.remove(`${u}-item--focused`,`${u}-item--selected`),ve.removeAttribute("aria-selected");else ve.style.display="",ve.style[z]=re+"px",ve.style.transform=S?`translateX(${Se}px)`:`translateY(${Se}px)`;let Me;if(T==="size"){let xe=J.slotWidths[J.focalSlot]??1;Me=Math.min(1,Math.max(0,re/xe))}else if(T==="viewport"){let xe=Se-x,Le=Math.max(0,xe),Te=Math.min(c.containerSize,xe+re),Pe=re>0?Math.max(0,(Te-Le)/re):0;Me=Math.min(1,Pe)}else Me=le.role==="large"?1-le.progress:0;ve.style.setProperty("--vlist-carousel-progress",le.progress.toFixed(3)),ve.style.setProperty("--vlist-carousel-offset",String(le.relOffset)),ve.style.setProperty("--vlist-carousel-role",le.role),ve.style.setProperty("--vlist-carousel-role-weight",Me.toFixed(3)),ve.style.setProperty("--vlist-carousel-width",re+"px"),ve.style.setProperty("--vlist-carousel-focal-width",ee+"px")}}else for(let ie=0;ie<Z.length;ie++){let ne=Z[ie],ve=ne.dataset.index;if(ve===void 0)continue;let be=parseInt(ve,10),de=te+be;if(de-X>d/2)de-=d;if(X-de>d/2)de+=d;let R=_(de),le=Math.max(0,Math.round((a[R]??0)-B)),re=O(de),Se=Math.round(re-E);if(le<=0)ne.style.display="none";else ne.style.display="",ne.style[z]=le+"px",ne.style.transform=S?`translateX(${Se}px)`:`translateY(${Se}px)`;let Me=de-X,xe=Math.min(1,Math.abs(Me)+(Me===0?se:0)),Le;if(T==="viewport"||T==="size"){let Te=Se-x,Pe=Math.max(0,Te),Re=Math.min(c.containerSize,Te+le),K=le>0?Math.max(0,(Re-Pe)/le):0;Le=Math.min(1,K)}else Le=1-xe;ne.style.setProperty("--vlist-carousel-progress",xe.toFixed(3)),ne.style.setProperty("--vlist-carousel-offset",String(Me)),ne.style.setProperty("--vlist-carousel-role","large"),ne.style.setProperty("--vlist-carousel-role-weight",Le.toFixed(3)),ne.style.setProperty("--vlist-carousel-width",le+"px")}}function W(N,Z,m){if(!I)return;if(H=N,d<=1)return;let E=C(),x=_(E),z=((N-x)%d+d)%d,X=d-z,se=z<=X?z:-X,te=E+se;A=te;let ee=O(te);if(Z)j(ee,m);else I.scrollTo(ee),h()}return{name:"carousel",priority:10,conflicts:["scale"],setup(N){c=N.getState(),v=N.sizeCache,I=N,S=N.config.axis.primary==="x",u=N.config.classPrefix,d=c.totalItems;let Z=d>0?v.getSize(0):0,m=c.containerSize,E=P(m),x=o(m,E);if(jt(x))T=x.textFade??"role",J=no({slots:x.slots,focalSlot:x.focalSlot,containerSize:m,gap:B}),w=J.stepSize,Y(Array.from({length:Math.max(1,d)},()=>w)),V=!1;else if(typeof N.rawSizeSpec==="function"){T=x?.textFade??"viewport";let te=N.rawSizeSpec;Y(Array.from({length:d},(ee,ie)=>te(ie)+B)),w=a[0]??Z,V=!0}else T=x?.textFade??"viewport",w=Z,Y(Array.from({length:Math.max(1,d)},()=>w)),V=!1;if(M=d*Zt,H=q(y),d>1)N.setGetItemFn((te)=>{let ee=_(te);return N.getItems()[ee]}),v.getTotalSize=()=>p*Zt,v.getOffset=(te)=>O(te),v.getSize=(te)=>{let ee=_(te);return a[ee]??a[0]??0},v.indexAtOffset=(te)=>{if(p<=0)return 0;let ee=Math.floor(te/p),ie=te-ee*p;if(!V){let be=a[0]??1;return Math.max(0,Math.min(ee*d+Math.floor(ie/be),M-1))}let ne=0,ve=d-1;while(ne<ve){let be=ne+ve+1>>1;if(F[be]<=ie)ne=be;else ve=be-1}return Math.max(0,Math.min(ee*d+ne,M-1))},v.getTotal=()=>M,c.totalItems=M,N.setVirtualTotalFn(()=>d),N.setIndexMapFn(_),N.registerMethod("_layoutToDataIndex",_),N.setBoundedWrap({lapSize:()=>p,home:()=>St*p,thresholdLaps:St-No}),b=!0;if(N.registerMethod("next",(te,ee)=>{if(d<=1)return;let ie=te??1,ne=H,ve=ee?.behavior!=="auto",be=ee?.duration??i;I.cancelScroll();let R=C()+ie;A=R,H=_(R);let le=O(R);if(ve)j(le,be);else I.scrollTo(le),h();if(H!==ne)I.emitter.emit("carousel:change",{index:H,scrollPosition:c.scrollPosition})}),N.registerMethod("prev",(te,ee)=>{if(d<=1)return;let ie=te??1,ne=H,ve=ee?.behavior!=="auto",be=ee?.duration??i;I.cancelScroll();let R=C()-ie;A=R,H=_(R);let le=O(R);if(ve)j(le,be);else I.scrollTo(le),h();if(H!==ne)I.emitter.emit("carousel:change",{index:H,scrollPosition:c.scrollPosition})}),N.registerMethod("goTo",(te,ee)=>{if(d<=0)return;let ie=q(te),ne=ee?.direction??"auto",ve=ee?.behavior==="smooth",be=ee?.duration??i;if(d<=1){H=ie;return}if(I.cancelScroll(),ne==="forward"||ne==="backward"){let de=D(H,ie,ne==="forward"?"forward":"backward");H=ie;let le=C()+de;A=le;let re=O(le);if(ve)j(re,be);else I.scrollTo(re),h()}else W(ie,ve,be)}),N.registerMethod("getCarouselState",()=>{let te=c.scrollPosition,ee=d>0&&p>0?(te%p+p)%p:0;return{index:H,progress:0,offset:0,scrollPosition:ee,role:"large"}}),N.setScrollToIndexFn((te,ee,ie,ne,ve)=>{if(d<=1)return!1;let be=q(te);W(be,ie==="smooth",ne??i)}),N.setNavConfig({total:()=>d,navigate:(te,ee,ie)=>{let ne=te;if(ee==="ArrowRight"||ee==="ArrowDown")ne=(te+1)%ie;else if(ee==="ArrowLeft"||ee==="ArrowUp")ne=(te-1+ie)%ie;else if(ee==="Home")ne=0;else if(ee==="End")ne=ie-1;if(ne!==te)W(ne,!1,0),I?.forceRender(),h();return ne}}),!N.dom.content.getAttribute("tabindex"))N.dom.content.setAttribute("tabindex","0");let z=N.getMethod("next"),X=N.getMethod("prev"),se=N.getMethod("goTo");N.registerKeydownHandler((te)=>{let ee=te.key;if(ee==="ArrowRight"||ee==="ArrowDown")te.preventDefault(),z(1,{behavior:"smooth",duration:i});else if(ee==="ArrowLeft"||ee==="ArrowUp")te.preventDefault(),X(1,{behavior:"smooth",duration:i});else if(ee==="Home")te.preventDefault(),se(0,{behavior:"smooth",duration:i});else if(ee==="End")te.preventDefault(),se(d-1,{behavior:"smooth",duration:i})}),N.registerDestroyHandler(()=>{I?.cancelScroll()})},destroy(){I?.cancelScroll(),I=null},hooks:{onCommit(){if(!b||!I)return;b=!1;let N=O(oe(H));I.scrollTo(N),I.forceRender(),h()},onAfterScroll(N){if(b||!I)return;if(k(),d<=1)return;if(c.scrollDirection!==0)L=c.scrollDirection;if(A<0){let Z=c.scrollPosition,m=g(Z),E=_(m);if(E!==H)H=E,I.emitter.emit("carousel:change",{index:H,scrollPosition:Z})}h()},onIdle(){let N=L;if(A=-1,L=0,!s||!I||d<=1)return;let Z=c.scrollPosition,{vi:m,frac:E}=U(Z),x;if(r&&N!==0&&E>0.02&&E<0.98)x=N>0?m+1:m;else x=E>=0.5?m+1:m;let z=O(x);if(Math.abs(Z-z)>1)H=_(x),j(z,i)}}}}var Bo=50,Wo=0.1;function oo(t){let e=0,n=0,o=0;function s(){return o>0?n/o:0}function r(y){if(e=y,y>Wo&&y<Bo)n+=y,o++}function i(){let y=t.getTotal();if(y===0)return 0;let f=t.getItemSize();if(f<=0)return 0;let c=t.getContainerSize();if(c<=0)return 0;let v=t.getScrollPosition(),I=typeof t.getColumns==="function"?t.getColumns():1,H=Math.ceil(y/I)*f,w=Math.min(H,Je)-c,p=H-c,M=w>0?p/w:1,b=v*M,u=Math.ceil((b+c)/f);return Math.min(u*I,y)}function l(){let y=t.getTotal(),f=i();return{progress:y>0?Math.min(100,Math.max(0,f/y*100)):0,velocity:e,velocityAvg:s(),itemCount:f,total:y}}return{getState:l,onVelocity:r}}async function ro(t,e,n){let o=n?.key,s=t?.getScrollSnapshot,r=typeof s==="function"?s():void 0,i=ot(r?o?{restore:r,autoSave:o}:{restore:r}:o?{autoSave:o}:void 0),l=e(i),y=l.element;if(y.style.position="absolute",y.style.inset="0",y.style.visibility="hidden",n?.ready)await n.ready(l);else await new Promise((S)=>requestAnimationFrame(()=>S()));if(n?.delay&&n.delay>0)await new Promise((S)=>setTimeout(S,n.delay));let f=n?.transition,c=typeof f==="number"?f:f?.fadeIn??0,v=typeof f==="number"?f:f?.fadeOut??0,I=typeof f==="object"?f?.fadeOutDelay??0:0;if(t&&(c>0||v>0)){let S=t.element;y.style.visibility="",y.style.opacity="0",y.offsetHeight,y.style.transition=`opacity ${c}ms ease`,S.style.transition=`opacity ${v}ms ease ${I}ms`,y.style.opacity="1",S.style.opacity="0",await new Promise((H)=>setTimeout(H,Math.max(c,v+I)+50)),y.style.transition="",y.style.opacity="",S.style.transition="",S.style.opacity=""}else y.style.visibility="";if(y.style.position="",y.style.inset="",t)t.destroy();return l}export{wt as a11y,Ht as autosize,Jt as carousel,oo as createStats,kn as createVList,_t as data,pt as full,qt as getPreset,Pt as grid,Vt as groups,bt as hero,ht as heroCenter,kt as masonry,vt as multi,zt as page,ro as rebuild,Ye as registerPreset,rt as resolvePreset,Mt as scrollbar,Yt as search,At as selection,ot as snapshots,Ot as sortable,$t as table,Rt as transition,Gt as tree,yt as uncontained};
|