import{ad as ue,ae as W,bF as ge,M as H,af as se,i as c,F as j,D as L,ah as ye,bG as Pe,ap as O,P as ce,r as z,z as B,bH as be,bI as Te,bd as Ie,bo as le,at as Ve,aF as oe,aM as xe,aY as Ce,ao as we,bJ as Ae,bK as Z,b7 as Re,o as De,bL as Fe,aQ as Be,bi as _e,al as de,aI as Ee,by as Oe,bf as ne,E as fe,G as ve,bA as Me,ab as Le,bB as He,aC as Ke,k as qe,av as Ue,bm as ze,aw as Ne,ay as $e,bC as je,bD as me,bM as he}from"./index-i_vOnwSy.js";import{m as We,u as Ge,V as Ye,a as pe}from"./VList-Don7iQCn.js";import{V as Je}from"./VMenu-LYH-fW5p.js";import{V as Qe}from"./VChip-DSoKE1dz.js";const Xe=W({renderless:Boolean,...ye()},"VVirtualScrollItem"),Ze=ue()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Xe(),emits:{"update:height":e=>!0},setup(e,d){let{attrs:n,emit:f,slots:u}=d;const{resizeRef:m,contentRect:p}=ge(void 0,"border");H(()=>{var a;return(a=p.value)==null?void 0:a.height},a=>{a!=null&&f("update:height",a)}),se(()=>{var a,i;return e.renderless?c(j,null,[(a=u.default)==null?void 0:a.call(u,{itemRef:m})]):c("div",L({ref:m,class:["v-virtual-scroll__item",e.class],style:e.style},n),[(i=u.default)==null?void 0:i.call(u)])})}}),et=-1,tt=1,ae=100,lt=W({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function nt(e,d){const n=Pe(),f=O(0);ce(()=>{f.value=parseFloat(e.itemHeight||0)});const u=O(0),m=O(Math.ceil((parseInt(e.height)||n.height.value)/(f.value||16))||1),p=O(0),a=O(0),i=z(),w=z();let s=0;const{resizeRef:_,contentRect:A}=ge();ce(()=>{_.value=i.value});const S=B(()=>{var t;return i.value===document.documentElement?n.height.value:((t=A.value)==null?void 0:t.height)||parseInt(e.height)||0}),R=B(()=>!!(i.value&&w.value&&S.value&&f.value));let T=Array.from({length:d.value.length}),k=Array.from({length:d.value.length});const y=O(0);let I=-1;function E(t){return T[t]||f.value}const h=Te(()=>{const t=performance.now();k[0]=0;const o=d.value.length;for(let v=1;v<=o-1;v++)k[v]=(k[v-1]||0)+E(v-1);y.value=Math.max(y.value,performance.now()-t)},y),G=H(R,t=>{t&&(G(),s=w.value.offsetTop,h.immediate(),D(),~I&&Ve(()=>{oe&&window.requestAnimationFrame(()=>{X(I),I=-1})}))});be(()=>{h.clear()});function ee(t,o){const v=T[t],b=f.value;f.value=b?Math.min(f.value,o):o,(v!==o||b!==f.value)&&(T[t]=o,h())}function x(t){return t=le(t,0,d.value.length-1),k[t]||0}function Y(t){return at(k,t)}let K=0,M=0,N=0;H(S,(t,o)=>{o&&(D(),t<o&&requestAnimationFrame(()=>{M=0,D()}))});let q=-1;function U(){if(!i.value||!w.value)return;const t=i.value.scrollTop,o=performance.now();o-N>500?(M=Math.sign(t-K),s=w.value.offsetTop):M=t-K,K=t,N=o,window.clearTimeout(q),q=window.setTimeout(J,500),D()}function J(){!i.value||!w.value||(M=0,N=0,window.clearTimeout(q),D())}let Q=-1;function D(){cancelAnimationFrame(Q),Q=requestAnimationFrame(te)}function te(){if(!i.value||!S.value)return;const t=K-s,o=Math.sign(M),v=Math.max(0,t-ae),b=le(Y(v),0,d.value.length),r=t+S.value+ae,g=le(Y(r)+1,b+1,d.value.length);if((o!==et||b<u.value)&&(o!==tt||g>m.value)){const P=x(u.value)-x(b),F=x(g)-x(m.value);Math.max(P,F)>ae?(u.value=b,m.value=g):(b<=0&&(u.value=b),g>=d.value.length&&(m.value=g))}p.value=x(u.value),a.value=x(d.value.length)-x(m.value)}function X(t){const o=x(t);!i.value||t&&!o?I=t:i.value.scrollTop=o}const l=B(()=>d.value.slice(u.value,m.value).map((t,o)=>{const v=o+u.value;return{raw:t,index:v,key:Ie(t,e.itemKey,v)}}));return H(d,()=>{T=Array.from({length:d.value.length}),k=Array.from({length:d.value.length}),h.immediate(),D()},{deep:1}),{calculateVisibleItems:D,containerRef:i,markerRef:w,computedItems:l,paddingTop:p,paddingBottom:a,scrollToIndex:X,handleScroll:U,handleScrollend:J,handleItemResize:ee}}function at(e,d){let n=e.length-1,f=0,u=0,m=null,p=-1;if(e[n]<d)return n;for(;f<=n;)if(u=f+n>>1,m=e[u],m>d)n=u-1;else if(m<d)p=u,f=u+1;else return m===d?u:f;return p}const ot=W({items:{type:Array,default:()=>[]},renderless:Boolean,...lt(),...ye(),...Re()},"VVirtualScroll"),ut=ue()({name:"VVirtualScroll",props:ot(),setup(e,d){let{slots:n}=d;const f=xe("VVirtualScroll"),{dimensionStyles:u}=Ce(e),{calculateVisibleItems:m,containerRef:p,markerRef:a,handleScroll:i,handleScrollend:w,handleItemResize:s,scrollToIndex:_,paddingTop:A,paddingBottom:S,computedItems:R}=nt(e,we(()=>e.items));return Ae(()=>e.renderless,()=>{function T(){var I,E;const y=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)?"addEventListener":"removeEventListener";p.value===document.documentElement?(document[y]("scroll",i,{passive:!0}),document[y]("scrollend",w)):((I=p.value)==null||I[y]("scroll",i,{passive:!0}),(E=p.value)==null||E[y]("scrollend",w))}De(()=>{p.value=Fe(f.vnode.el,!0),T(!0)}),be(T)}),se(()=>{const T=R.value.map(k=>c(Ze,{key:k.key,renderless:e.renderless,"onUpdate:height":y=>s(k.index,y)},{default:y=>{var I;return(I=n.default)==null?void 0:I.call(n,{item:k.raw,index:k.index,...y})}}));return e.renderless?c(j,null,[c("div",{ref:a,class:"v-virtual-scroll__spacer",style:{paddingTop:Z(A.value)}},null),T,c("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:Z(S.value)}},null)]):c("div",{ref:p,class:["v-virtual-scroll",e.class],onScrollPassive:i,onScrollend:w,style:[u.value,e.style]},[c("div",{ref:a,class:"v-virtual-scroll__container",style:{paddingTop:Z(A.value),paddingBottom:Z(S.value)}},[T])])}),{calculateVisibleItems:m,scrollToIndex:_}}});function st(e,d){const n=O(!1);let f;function u(a){cancelAnimationFrame(f),n.value=!0,f=requestAnimationFrame(()=>{f=requestAnimationFrame(()=>{n.value=!1})})}async function m(){await new Promise(a=>requestAnimationFrame(a)),await new Promise(a=>requestAnimationFrame(a)),await new Promise(a=>requestAnimationFrame(a)),await new Promise(a=>{if(n.value){const i=H(n,()=>{i(),a()})}else a()})}async function p(a){var s,_;if(a.key==="Tab"&&((s=d.value)==null||s.focus()),!["PageDown","PageUp","Home","End"].includes(a.key))return;const i=(_=e.value)==null?void 0:_.$el;if(!i)return;(a.key==="Home"||a.key==="End")&&i.scrollTo({top:a.key==="Home"?0:i.scrollHeight,behavior:"smooth"}),await m();const w=i.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(a.key==="PageDown"||a.key==="Home"){const A=i.getBoundingClientRect().top;for(const S of w)if(S.getBoundingClientRect().top>=A){S.focus();break}}else{const A=i.getBoundingClientRect().bottom;for(const S of[...w].reverse())if(S.getBoundingClientRect().bottom<=A){S.focus();break}}}return{onScrollPassive:u,onKeydown:p}}const it=W({chips:Boolean,closableChips:Boolean,closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"},eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Be,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,...We({itemChildren:!1})},"Select"),rt=W({...it(),...Ne(je({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...ze({transition:{component:$e}})},"VSelect"),mt=ue()({name:"VSelect",props:rt(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,d){let{slots:n}=d;const{t:f}=_e(),u=z(),m=z(),p=z(),{items:a,transformIn:i,transformOut:w}=Ge(e),s=de(e,"modelValue",[],l=>i(l===null?[null]:Ee(l)),l=>{const t=w(l);return e.multiple?t:t[0]??null}),_=B(()=>typeof e.counterValue=="function"?e.counterValue(s.value):typeof e.counterValue=="number"?e.counterValue:s.value.length),A=Oe(e),S=B(()=>s.value.map(l=>l.value)),R=O(!1);let T="",k;const y=B(()=>e.hideSelected?a.value.filter(l=>!s.value.some(t=>(e.valueComparator||ne)(t,l))):a.value),I=B(()=>e.hideNoData&&!y.value.length||A.isReadonly.value||A.isDisabled.value),E=de(e,"menu"),h=B({get:()=>E.value,set:l=>{var t;E.value&&!l&&((t=m.value)!=null&&t.ΨopenChildren.size)||l&&I.value||(E.value=l)}}),G=we(()=>h.value?e.closeText:e.openText),ee=B(()=>{var l;return{...e.menuProps,activatorProps:{...((l=e.menuProps)==null?void 0:l.activatorProps)||{},"aria-haspopup":"listbox"}}}),x=z(),Y=st(x,u);function K(l){e.openOnClear&&(h.value=!0)}function M(){I.value||(h.value=!h.value)}function N(l){me(l)&&q(l)}function q(l){var b,r;if(!l.key||A.isReadonly.value)return;["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"," "].includes(l.key)&&(h.value=!0),["Escape","Tab"].includes(l.key)&&(h.value=!1),l.key==="Home"?(b=x.value)==null||b.focus("first"):l.key==="End"&&((r=x.value)==null||r.focus("last"));const t=1e3;if(!me(l))return;const o=performance.now();o-k>t&&(T=""),T+=l.key.toLowerCase(),k=o;const v=a.value.find(g=>g.title.toLowerCase().startsWith(T));if(v!==void 0){s.value=[v];const g=y.value.indexOf(v);oe&&window.requestAnimationFrame(()=>{var P;g>=0&&((P=p.value)==null||P.scrollToIndex(g))})}}function U(l){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!l.props.disabled)if(e.multiple){const o=s.value.findIndex(b=>(e.valueComparator||ne)(b.value,l.value)),v=t??!~o;if(~o){const b=v?[...s.value,l]:[...s.value];b.splice(o,1),s.value=b}else v&&(s.value=[...s.value,l])}else{const o=t!==!1;s.value=o?[l]:[],Ve(()=>{h.value=!1})}}function J(l){var t;(t=x.value)!=null&&t.$el.contains(l.relatedTarget)||(h.value=!1)}function Q(){var l;e.eager&&((l=p.value)==null||l.calculateVisibleItems())}function D(){var l;R.value&&((l=u.value)==null||l.focus())}function te(l){R.value=!0}function X(l){if(l==null)s.value=[];else if(he(u.value,":autofill")||he(u.value,":-webkit-autofill")){const t=a.value.find(o=>o.title===l);t&&U(t)}else u.value&&(u.value.value="")}return H(h,()=>{if(!e.hideSelected&&h.value&&s.value.length){const l=y.value.findIndex(t=>s.value.some(o=>(e.valueComparator||ne)(o.value,t.value)));oe&&window.requestAnimationFrame(()=>{var t;l>=0&&((t=p.value)==null||t.scrollToIndex(l))})}}),H(()=>e.items,(l,t)=>{h.value||R.value&&!t.length&&l.length&&(h.value=!0)}),se(()=>{const l=!!(e.chips||n.chip),t=!!(!e.hideNoData||y.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),o=s.value.length>0,v=fe.filterProps(e),b=o||!R.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return c(fe,L({ref:u},v,{modelValue:s.value.map(r=>r.props.value).join(", "),"onUpdate:modelValue":X,focused:R.value,"onUpdate:focused":r=>R.value=r,validationValue:s.externalValue,counterValue:_.value,dirty:o,class:["v-select",{"v-select--active-menu":h.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":s.value.length,"v-select--selection-slot":!!n.selection},e.class],style:e.style,inputmode:"none",placeholder:b,"onClick:clear":K,"onMousedown:control":M,onBlur:J,onKeydown:q,"aria-label":f(G.value),title:f(G.value)}),{...n,default:()=>c(j,null,[c(Je,L({ref:m,modelValue:h.value,"onUpdate:modelValue":r=>h.value=r,activator:"parent",contentClass:"v-select__content",disabled:I.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:Q,onAfterLeave:D},ee.value),{default:()=>[t&&c(Ye,L({ref:x,selected:S.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:r=>r.preventDefault(),onKeydown:N,onFocusin:te,tabindex:"-1","aria-live":"polite","aria-label":`${e.label}-list`,color:e.itemColor??e.color},Y,e.listProps),{default:()=>{var r,g,P;return[(r=n["prepend-item"])==null?void 0:r.call(n),!y.value.length&&!e.hideNoData&&(((g=n["no-data"])==null?void 0:g.call(n))??c(pe,{key:"no-data",title:f(e.noDataText)},null)),c(ut,{ref:p,renderless:!0,items:y.value,itemKey:"value"},{default:F=>{var re;let{item:V,index:$,itemRef:C}=F;const ie=L(V.props,{ref:C,key:V.value,onClick:()=>U(V,null)});return((re=n.item)==null?void 0:re.call(n,{item:V,index:$,props:ie}))??c(pe,L(ie,{role:"option"}),{prepend:Se=>{let{isSelected:ke}=Se;return c(j,null,[e.multiple&&!e.hideSelected?c(Me,{key:V.value,modelValue:ke,ripple:!1,tabindex:"-1"},null):void 0,V.props.prependAvatar&&c(Le,{image:V.props.prependAvatar},null),V.props.prependIcon&&c(ve,{icon:V.props.prependIcon},null)])}})}}),(P=n["append-item"])==null?void 0:P.call(n)]}})]}),s.value.map((r,g)=>{function P(C){C.stopPropagation(),C.preventDefault(),U(r,!1)}const F={"onClick:close":P,onKeydown(C){C.key!=="Enter"&&C.key!==" "||(C.preventDefault(),C.stopPropagation(),P(C))},onMousedown(C){C.preventDefault(),C.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},V=l?!!n.chip:!!n.selection,$=V?He(l?n.chip({item:r,index:g,props:F}):n.selection({item:r,index:g})):void 0;if(!(V&&!$))return c("div",{key:r.value,class:"v-select__selection"},[l?n.chip?c(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:r.title}}},{default:()=>[$]}):c(Qe,L({key:"chip",closable:e.closableChips,size:"small",text:r.title,disabled:r.props.disabled},F),null):$??c("span",{class:"v-select__selection-text"},[r.title,e.multiple&&g<s.value.length-1&&c("span",{class:"v-select__selection-comma"},[qe(",")])])])})]),"append-inner":function(){var F,V;for(var r=arguments.length,g=new Array(r),P=0;P<r;P++)g[P]=arguments[P];return c(j,null,[(F=n["append-inner"])==null?void 0:F.call(n,...g),e.menuIcon?c(ve,{class:"v-select__menu-icon",color:(V=u.value)==null?void 0:V.fieldIconColor,icon:e.menuIcon},null):void 0])}})}),Ue({isFocused:R,menu:h,select:U},u)}});export{mt as V,ut as a,it as m,st as u};