go-quasar-partial-ssr/backend/internal/http/static/spa/assets/QSelect-Bmx_AjWr.js

2 lines
34 KiB
JavaScript

import{L as Re,N as Lt,O as Kt,P as $t,ag as yt,R as Nt,S as jt,T as Qt,U as Ut,V as Wt,w as ae,aY as Xt,aZ as st,a_ as Yt,ac as Zt,a$ as Jt,Z as Gt,M as V,a1 as el,_ as tl,W as Ue,$ as Pe,D as E,E as d,a0 as ll,aU as ul,b0 as nl,an as bt,b1 as ol,a2 as oe,b2 as wt,b3 as We,b4 as Ct,b5 as Vt,aR as al,al as il,aS as rl,y as Ee,b6 as sl,aJ as cl,a4 as ne,b7 as dl,ay as fl,aA as vl,az as ml,ab as Sl,b8 as gl,b9 as ze,ba as hl,bb as yl,ad as Ne,bc as ct,bd as bl,aK as wl,ae as Ve,aL as Cl,a7 as Vl,ax as kl,be as xl}from"./index-DAvBaevK.js";import{n as dt,a as ql,b as Al,Q as Ol}from"./format-DaKpMo2W.js";import{v as zl,a as ft,e as Fl,b as Tl,c as Ml,d as pl,r as vt,s as Bl,p as mt}from"./position-engine-BHgB6lrx.js";const Il=Re({name:"QMenu",inheritAttrs:!1,props:{...Fl,...Nt,...yt,...$t,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:ft},self:{type:String,validator:ft},offset:{type:Array,validator:zl},scrollTarget:Kt,touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Lt,"click","escapeKey"],setup(e,{slots:c,emit:r,attrs:v}){let x=null,i,z,h;const y=Pe(),{proxy:F}=y,{$q:s}=F,S=E(null),w=E(!1),k=d(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),T=bt(e,s),{registerTick:H,removeTick:f}=jt(),{registerTimeout:D}=Qt(),{transitionProps:U,transitionStyle:L}=ll(e),{localScrollTarget:M,changeScrollEvent:me,unconfigureScrollTarget:_}=Tl(e,g),{anchorEl:$,canShow:J}=Ml({showing:w}),{hide:te}=Ut({showing:w,canShow:J,handleShow:se,handleHide:l,hideOnRouteChange:k,processOnMount:!0}),{showPortal:W,hidePortal:ie,renderPortal:K}=Wt(y,S,B,"menu"),G={anchorEl:$,innerRef:S,onClickOutside(u){if(e.persistent!==!0&&w.value===!0)return te(u),(u.type==="touchstart"||u.target.classList.contains("q-dialog__backdrop"))&&oe(u),!0}},re=d(()=>mt(e.anchor||(e.cover===!0?"center middle":"bottom start"),s.lang.rtl)),le=d(()=>e.cover===!0?re.value:mt(e.self||"top start",s.lang.rtl)),j=d(()=>(e.square===!0?" q-menu--square":"")+(T.value===!0?" q-menu--dark q-dark":"")),xe=d(()=>e.autoClose===!0?{onClick:q}:{}),ue=d(()=>w.value===!0&&e.persistent!==!0);ae(ue,u=>{u===!0?(Xt(C),pl(G)):(st(C),vt(G))});function X(){ul(()=>{let u=S.value;u&&u.contains(document.activeElement)!==!0&&(u=u.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||u.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||u.querySelector("[autofocus], [data-autofocus]")||u,u.focus({preventScroll:!0}))})}function se(u){if(x=e.noRefocus===!1?document.activeElement:null,Yt(p),W(),g(),i=void 0,u!==void 0&&(e.touchPosition||e.contextMenu)){const R=Zt(u);if(R.left!==void 0){const{top:Y,left:Se}=$.value.getBoundingClientRect();i={left:R.left-Se,top:R.top-Y}}}z===void 0&&(z=ae(()=>s.screen.width+"|"+s.screen.height+"|"+e.self+"|"+e.anchor+"|"+s.lang.rtl,m)),e.noFocus!==!0&&document.activeElement.blur(),H(()=>{m(),e.noFocus!==!0&&X()}),D(()=>{s.platform.is.ios===!0&&(h=e.autoClose,S.value.click()),m(),W(!0),r("show",u)},e.transitionDuration)}function l(u){f(),ie(),n(!0),x!==null&&(u===void 0||u.qClickOutside!==!0)&&(((u?.type.indexOf("key")===0?x.closest('[tabindex]:not([tabindex^="-"])'):void 0)||x).focus(),x=null),D(()=>{ie(!0),r("hide",u)},e.transitionDuration)}function n(u){i=void 0,z!==void 0&&(z(),z=void 0),(u===!0||w.value===!0)&&(Jt(p),_(),vt(G),st(C)),u!==!0&&(x=null)}function g(){($.value!==null||e.scrollTarget!==void 0)&&(M.value=Gt($.value,e.scrollTarget),me(M.value,m))}function q(u){h!==!0?(nl(F,u),r("click",u)):h=!1}function p(u){ue.value===!0&&e.noFocus!==!0&&ol(S.value,u.target)!==!0&&X()}function C(u){e.noEscDismiss!==!0&&(r("escapeKey"),te(u))}function m(){Bl({targetEl:S.value,offset:e.offset,anchorEl:$.value,anchorOrigin:re.value,selfOrigin:le.value,absoluteOffset:i,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function B(){return V(tl,U.value,()=>w.value===!0?V("div",{role:"menu",...v,ref:S,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,v.class],style:[v.style,L.value],...xe.value},el(c.default)):null)}return Ue(n),Object.assign(F,{focus:X,updatePosition:m}),K}}),El=Re({name:"QField",inheritAttrs:!1,props:{...We,tag:{type:String,default:"label"}},emits:wt,setup(){return Ct(Vt({tagProp:!0}))}}),_l={xs:8,sm:10,md:14,lg:20,xl:24},Rl=Re({name:"QChip",props:{...yt,...al,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:c,emit:r}){const{proxy:{$q:v}}=Pe(),x=bt(e,v),i=rl(e,_l),z=d(()=>e.selected===!0||e.icon!==void 0),h=d(()=>e.selected===!0?e.iconSelected||v.iconSet.chip.selected:e.icon),y=d(()=>e.iconRemove||v.iconSet.chip.remove),F=d(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),s=d(()=>{const f=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(f?` text-${f} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(F.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(x.value===!0?" q-chip--dark q-dark":"")}),S=d(()=>{const f=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},D={...f,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||v.lang.label.remove};return{chip:f,remove:D}});function w(f){f.keyCode===13&&k(f)}function k(f){e.disable||(r("update:selected",!e.selected),r("click",f))}function T(f){(f.keyCode===void 0||f.keyCode===13)&&(oe(f),e.disable===!1&&(r("update:modelValue",!1),r("remove")))}function H(){const f=[];F.value===!0&&f.push(V("div",{class:"q-focus-helper"})),z.value===!0&&f.push(V(Ee,{class:"q-chip__icon q-chip__icon--left",name:h.value}));const D=e.label!==void 0?[V("div",{class:"ellipsis"},[e.label])]:void 0;return f.push(V("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},sl(c.default,D))),e.iconRight&&f.push(V(Ee,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&f.push(V(Ee,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:y.value,...S.value.remove,onClick:T,onKeyup:T})),f}return()=>{if(e.modelValue===!1)return;const f={class:s.value,style:i.value};return F.value===!0&&Object.assign(f,S.value.chip,{onClick:k,onKeyup:w}),il("div",f,H(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[cl,e.ripple]])}}});let _e=!1;{const e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});const c=document.createElement("div");Object.assign(c.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(c),e.scrollLeft=-1e3,_e=e.scrollLeft>=0,e.remove()}const Q=1e3,Pl=["start","center","end","start-force","center-force","end-force"],kt=Array.prototype.filter,Dl=window.getComputedStyle(document.body).overflowAnchor===void 0?Sl:function(e,c){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;const r=e.children||[];kt.call(r,x=>x.dataset&&x.dataset.qVsAnchor!==void 0).forEach(x=>{delete x.dataset.qVsAnchor});const v=r[c];v?.dataset&&(v.dataset.qVsAnchor="")}))};function ke(e,c){return e+c}function je(e,c,r,v,x,i,z,h){const y=e===window?document.scrollingElement||document.documentElement:e,F=x===!0?"offsetWidth":"offsetHeight",s={scrollStart:0,scrollViewSize:-z-h,scrollMaxSize:0,offsetStart:-z,offsetEnd:-h};if(x===!0?(e===window?(s.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,s.scrollViewSize+=document.documentElement.clientWidth):(s.scrollStart=y.scrollLeft,s.scrollViewSize+=y.clientWidth),s.scrollMaxSize=y.scrollWidth,i===!0&&(s.scrollStart=(_e===!0?s.scrollMaxSize-s.scrollViewSize:0)-s.scrollStart)):(e===window?(s.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,s.scrollViewSize+=document.documentElement.clientHeight):(s.scrollStart=y.scrollTop,s.scrollViewSize+=y.clientHeight),s.scrollMaxSize=y.scrollHeight),r!==null)for(let S=r.previousElementSibling;S!==null;S=S.previousElementSibling)S.classList.contains("q-virtual-scroll--skip")===!1&&(s.offsetStart+=S[F]);if(v!==null)for(let S=v.nextElementSibling;S!==null;S=S.nextElementSibling)S.classList.contains("q-virtual-scroll--skip")===!1&&(s.offsetEnd+=S[F]);if(c!==e){const S=y.getBoundingClientRect(),w=c.getBoundingClientRect();x===!0?(s.offsetStart+=w.left-S.left,s.offsetEnd-=w.width):(s.offsetStart+=w.top-S.top,s.offsetEnd-=w.height),e!==window&&(s.offsetStart+=s.scrollStart),s.offsetEnd+=s.scrollMaxSize-s.offsetStart}return s}function St(e,c,r,v){c==="end"&&(c=(e===window?document.body:e)[r===!0?"scrollWidth":"scrollHeight"]),e===window?r===!0?(v===!0&&(c=(_e===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-c),window.scrollTo(c,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,c):r===!0?(v===!0&&(c=(_e===!0?e.scrollWidth-e.offsetWidth:0)-c),e.scrollLeft=c):e.scrollTop=c}function Fe(e,c,r,v){if(r>=v)return 0;const x=c.length,i=Math.floor(r/Q),z=Math.floor((v-1)/Q)+1;let h=e.slice(i,z).reduce(ke,0);return r%Q!==0&&(h-=c.slice(i*Q,r).reduce(ke,0)),v%Q!==0&&v!==x&&(h-=c.slice(v,z*Q).reduce(ke,0)),h}const xt={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},Ql=Object.keys(xt),gt={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...xt};function Hl({virtualScrollLength:e,getVirtualScrollTarget:c,getVirtualScrollEl:r,virtualScrollItemSizeComputed:v}){const x=Pe(),{props:i,emit:z,proxy:h}=x,{$q:y}=h;let F,s,S,w=[],k;const T=E(0),H=E(0),f=E({}),D=E(null),U=E(null),L=E(null),M=E({from:0,to:0}),me=d(()=>i.tableColspan!==void 0?i.tableColspan:100);v===void 0&&(v=d(()=>i.virtualScrollItemSize));const _=d(()=>v.value+";"+i.virtualScrollHorizontal),$=d(()=>_.value+";"+i.virtualScrollSliceRatioBefore+";"+i.virtualScrollSliceRatioAfter);ae($,()=>{j()}),ae(_,J);function J(){le(s,!0)}function te(l){le(l===void 0?s:l)}function W(l,n){const g=c();if(g==null||g.nodeType===8)return;const q=je(g,r(),D.value,U.value,i.virtualScrollHorizontal,y.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd);S!==q.scrollViewSize&&j(q.scrollViewSize),K(g,q,Math.min(e.value-1,Math.max(0,parseInt(l,10)||0)),0,Pl.indexOf(n)!==-1?n:s!==-1&&l>s?"end":"start")}function ie(){const l=c();if(l==null||l.nodeType===8)return;const n=je(l,r(),D.value,U.value,i.virtualScrollHorizontal,y.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd),g=e.value-1,q=n.scrollMaxSize-n.offsetStart-n.offsetEnd-H.value;if(F===n.scrollStart)return;if(n.scrollMaxSize<=0){K(l,n,0,0);return}S!==n.scrollViewSize&&j(n.scrollViewSize),G(M.value.from);const p=Math.floor(n.scrollMaxSize-Math.max(n.scrollViewSize,n.offsetEnd)-Math.min(k[g],n.scrollViewSize/2));if(p>0&&Math.ceil(n.scrollStart)>=p){K(l,n,g,n.scrollMaxSize-n.offsetEnd-w.reduce(ke,0));return}let C=0,m=n.scrollStart-n.offsetStart,B=m;if(m<=q&&m+n.scrollViewSize>=T.value)m-=T.value,C=M.value.from,B=m;else for(let u=0;m>=w[u]&&C<g;u++)m-=w[u],C+=Q;for(;m>0&&C<g;)m-=k[C],m>-n.scrollViewSize?(C++,B=m):B=k[C]+m;K(l,n,C,B)}function K(l,n,g,q,p){const C=typeof p=="string"&&p.indexOf("-force")!==-1,m=C===!0?p.replace("-force",""):p,B=m!==void 0?m:"start";let u=Math.max(0,g-f.value[B]),R=u+f.value.total;R>e.value&&(R=e.value,u=Math.max(0,R-f.value.total)),F=n.scrollStart;const Y=u!==M.value.from||R!==M.value.to;if(Y===!1&&m===void 0){ue(g);return}const{activeElement:Se}=document,ee=L.value;Y===!0&&ee!==null&&ee!==Se&&ee.contains(Se)===!0&&(ee.addEventListener("focusout",re),setTimeout(()=>{ee?.removeEventListener("focusout",re)})),Dl(ee,g-u);const Te=m!==void 0?k.slice(u,g).reduce(ke,0):0;if(Y===!0){const ce=R>=M.value.from&&u<=M.value.to?M.value.to:R;M.value={from:u,to:ce},T.value=Fe(w,k,0,u),H.value=Fe(w,k,R,e.value),requestAnimationFrame(()=>{M.value.to!==R&&F===n.scrollStart&&(M.value={from:M.value.from,to:R},H.value=Fe(w,k,R,e.value))})}requestAnimationFrame(()=>{if(F!==n.scrollStart)return;Y===!0&&G(u);const ce=k.slice(u,g).reduce(ke,0),de=ce+n.offsetStart+T.value,Me=de+k[g];let qe=de+q;if(m!==void 0){const De=ce-Te,Ae=n.scrollStart+De;qe=C!==!0&&Ae<de&&Me<Ae+n.scrollViewSize?Ae:m==="end"?Me-n.scrollViewSize:de-(m==="start"?0:Math.round((n.scrollViewSize-k[g])/2))}F=qe,St(l,qe,i.virtualScrollHorizontal,y.lang.rtl),ue(g)})}function G(l){const n=L.value;if(n){const g=kt.call(n.children,u=>u.classList&&u.classList.contains("q-virtual-scroll--skip")===!1),q=g.length,p=i.virtualScrollHorizontal===!0?u=>u.getBoundingClientRect().width:u=>u.offsetHeight;let C=l,m,B;for(let u=0;u<q;){for(m=p(g[u]),u++;u<q&&g[u].classList.contains("q-virtual-scroll--with-prev")===!0;)m+=p(g[u]),u++;B=m-k[C],B!==0&&(k[C]+=B,w[Math.floor(C/Q)]+=B),C++}}}function re(){L.value?.focus()}function le(l,n){const g=1*v.value;(n===!0||Array.isArray(k)===!1)&&(k=[]);const q=k.length;k.length=e.value;for(let C=e.value-1;C>=q;C--)k[C]=g;const p=Math.floor((e.value-1)/Q);w=[];for(let C=0;C<=p;C++){let m=0;const B=Math.min((C+1)*Q,e.value);for(let u=C*Q;u<B;u++)m+=k[u];w.push(m)}s=-1,F=void 0,T.value=Fe(w,k,0,M.value.from),H.value=Fe(w,k,M.value.to,e.value),l>=0?(G(M.value.from),ne(()=>{W(l)})):X()}function j(l){if(l===void 0&&typeof window<"u"){const m=c();m!=null&&m.nodeType!==8&&(l=je(m,r(),D.value,U.value,i.virtualScrollHorizontal,y.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd).scrollViewSize)}S=l;const n=parseFloat(i.virtualScrollSliceRatioBefore)||0,g=parseFloat(i.virtualScrollSliceRatioAfter)||0,q=1+n+g,p=l===void 0||l<=0?1:Math.ceil(l/v.value),C=Math.max(1,p,Math.ceil((i.virtualScrollSliceSize>0?i.virtualScrollSliceSize:10)/q));f.value={total:Math.ceil(C*q),start:Math.ceil(C*n),center:Math.ceil(C*(.5+n)),end:Math.ceil(C*(1+n)),view:p}}function xe(l,n){const g=i.virtualScrollHorizontal===!0?"width":"height",q={["--q-virtual-scroll-item-"+g]:v.value+"px"};return[l==="tbody"?V(l,{class:"q-virtual-scroll__padding",key:"before",ref:D},[V("tr",[V("td",{style:{[g]:`${T.value}px`,...q},colspan:me.value})])]):V(l,{class:"q-virtual-scroll__padding",key:"before",ref:D,style:{[g]:`${T.value}px`,...q}}),V(l,{class:"q-virtual-scroll__content",key:"content",ref:L,tabindex:-1},n.flat()),l==="tbody"?V(l,{class:"q-virtual-scroll__padding",key:"after",ref:U},[V("tr",[V("td",{style:{[g]:`${H.value}px`,...q},colspan:me.value})])]):V(l,{class:"q-virtual-scroll__padding",key:"after",ref:U,style:{[g]:`${H.value}px`,...q}})]}function ue(l){s!==l&&(i.onVirtualScroll!==void 0&&z("virtualScroll",{index:l,from:M.value.from,to:M.value.to-1,direction:l<s?"decrease":"increase",ref:h}),s=l)}j();const X=dl(ie,y.platform.is.ios===!0?120:35);fl(()=>{j()});let se=!1;return vl(()=>{se=!0}),ml(()=>{if(se!==!0)return;const l=c();F!==void 0&&l!==void 0&&l!==null&&l.nodeType!==8?St(l,F,i.virtualScrollHorizontal,y.lang.rtl):W(s)}),Ue(()=>{X.cancel()}),Object.assign(h,{scrollTo:W,reset:J,refresh:te}),{virtualScrollSliceRange:M,virtualScrollSliceSizeComputed:f,setVirtualScrollSize:j,onVirtualScrollEvt:X,localResetVirtualScroll:le,padVirtualScroll:xe,scrollTo:W,reset:J,refresh:te}}const ht=e=>["add","add-unique","toggle"].includes(e),Ll=".*+?^${}()|[]\\",Kl=Object.keys(We);function Qe(e,c){if(typeof e=="function")return e;const r=e!==void 0?e:c;return v=>v!==null&&typeof v=="object"&&r in v?v[r]:v}const Ul=Re({name:"QSelect",inheritAttrs:!1,props:{...gt,...gl,...We,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:ht},mapOptions:Boolean,emitValue:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:gt.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...wt,"add","remove","inputValue","keyup","keypress","keydown","popupShow","popupHide","filterAbort"],setup(e,{slots:c,emit:r}){const{proxy:v}=Pe(),{$q:x}=v,i=E(!1),z=E(!1),h=E(-1),y=E(""),F=E(!1),s=E(!1);let S=null,w=null,k,T,H,f=null,D,U,L,M;const me=E(null),_=E(null),$=E(null),J=E(null),te=E(null),W=bl(e),ie=xl(nt),K=d(()=>Array.isArray(e.options)?e.options.length:0),G=d(()=>e.virtualScrollItemSize===void 0?e.optionsDense===!0?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:re,virtualScrollSliceSizeComputed:le,localResetVirtualScroll:j,padVirtualScroll:xe,onVirtualScrollEvt:ue,scrollTo:X,setVirtualScrollSize:se}=Hl({virtualScrollLength:K,getVirtualScrollTarget:zt,getVirtualScrollEl:lt,virtualScrollItemSizeComputed:G}),l=Vt(),n=d(()=>{const t=e.mapOptions===!0&&e.multiple!==!0,o=e.modelValue!==void 0&&(e.modelValue!==null||t===!0)?e.multiple===!0&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions===!0&&Array.isArray(e.options)===!0){const a=e.mapOptions===!0&&k!==void 0?k:[],b=o.map(O=>Ot(O,a));return e.modelValue===null&&t===!0?b.filter(O=>O!==null):b}return o}),g=d(()=>{const t={};return Kl.forEach(o=>{const a=e[o];a!==void 0&&(t[o]=a)}),t}),q=d(()=>e.optionsDark===null?l.isDark.value:e.optionsDark),p=d(()=>ct(n.value)),C=d(()=>{let t="q-field__input q-placeholder col";return e.hideSelected===!0||n.value.length===0?[t,e.inputClass]:(t+=" q-field__input--padding",e.inputClass===void 0?t:[t,e.inputClass])}),m=d(()=>(e.virtualScrollHorizontal===!0?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),B=d(()=>K.value===0),u=d(()=>n.value.map(t=>N.value(t)).join(", ")),R=d(()=>e.displayValue!==void 0?e.displayValue:u.value),Y=d(()=>e.optionsHtml===!0?()=>!0:t=>t?.html===!0),Se=d(()=>e.displayValueHtml===!0||e.displayValue===void 0&&(e.optionsHtml===!0||n.value.some(Y.value))),ee=d(()=>l.focused.value===!0?e.tabindex:-1),Te=d(()=>{const t={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":e.readonly===!0?"true":"false","aria-autocomplete":e.useInput===!0?"list":"none","aria-expanded":i.value===!0?"true":"false","aria-controls":`${l.targetUid.value}_lb`};return h.value>=0&&(t["aria-activedescendant"]=`${l.targetUid.value}_${h.value}`),t}),ce=d(()=>({id:`${l.targetUid.value}_lb`,role:"listbox","aria-multiselectable":e.multiple===!0?"true":"false"})),de=d(()=>n.value.map((t,o)=>({index:o,opt:t,html:Y.value(t),selected:!0,removeAtIndex:At,toggleOption:fe,tabindex:ee.value}))),Me=d(()=>{if(K.value===0)return[];const{from:t,to:o}=re.value;return e.options.slice(t,o).map((a,b)=>{const O=ge.value(a)===!0,A=Le(a)===!0,P=t+b,I={clickable:!0,active:A,activeClass:Ae.value,manualFocus:!0,focused:!1,disable:O,tabindex:-1,dense:e.optionsDense,dark:q.value,role:"option","aria-selected":A===!0?"true":"false",id:`${l.targetUid.value}_${P}`,onClick:()=>{fe(a)}};return O!==!0&&(h.value===P&&(I.focused=!0),x.platform.is.desktop===!0&&(I.onMousemove=()=>{i.value===!0&&he(P)})),{index:P,opt:a,html:Y.value(a),label:N.value(a),selected:I.active,focused:I.focused,toggleOption:fe,setOptionIndex:he,itemProps:I}})}),qe=d(()=>e.dropdownIcon!==void 0?e.dropdownIcon:x.iconSet.arrow.dropdown),De=d(()=>e.optionsCover===!1&&e.outlined!==!0&&e.standout!==!0&&e.borderless!==!0&&e.rounded!==!0),Ae=d(()=>e.optionsSelectedClass!==void 0?e.optionsSelectedClass:e.color!==void 0?`text-${e.color}`:""),Z=d(()=>Qe(e.optionValue,"value")),N=d(()=>Qe(e.optionLabel,"label")),ge=d(()=>Qe(e.optionDisable,"disable")),pe=d(()=>n.value.map(Z.value)),qt=d(()=>{const t={onInput:nt,onChange:ie,onKeydown:tt,onKeyup:Ge,onKeypress:et,onFocus:Ze,onClick(o){T===!0&&Ve(o)}};return t.onCompositionstart=t.onCompositionupdate=t.onCompositionend=ie,t});ae(n,t=>{k=t,e.useInput===!0&&e.fillInput===!0&&e.multiple!==!0&&l.innerLoading.value!==!0&&(z.value!==!0&&i.value!==!0||p.value!==!0)&&(H!==!0&&Ce(),(z.value===!0||i.value===!0)&&ye(""))},{immediate:!0}),ae(()=>e.fillInput,Ce),ae(i,Ke),ae(K,Ht);function Xe(t){return e.emitValue===!0?Z.value(t):t}function He(t){if(t!==-1&&t<n.value.length)if(e.multiple===!0){const o=e.modelValue.slice();r("remove",{index:t,value:o.splice(t,1)[0]}),r("update:modelValue",o)}else r("update:modelValue",null)}function At(t){He(t),l.focus()}function Ye(t,o){const a=Xe(t);if(e.multiple!==!0){e.fillInput===!0&&Oe(N.value(t),!0,!0),r("update:modelValue",a);return}if(n.value.length===0){r("add",{index:0,value:a}),r("update:modelValue",e.multiple===!0?[a]:a);return}if(o===!0&&Le(t)===!0||e.maxValues!==void 0&&e.modelValue.length>=e.maxValues)return;const b=e.modelValue.slice();r("add",{index:b.length,value:a}),b.push(a),r("update:modelValue",b)}function fe(t,o){if(l.editable.value!==!0||t===void 0||ge.value(t)===!0)return;const a=Z.value(t);if(e.multiple!==!0){o!==!0&&(Oe(e.fillInput===!0?N.value(t):"",!0,!0),ve()),_.value?.focus(),(n.value.length===0||ze(Z.value(n.value[0]),a)!==!0)&&r("update:modelValue",e.emitValue===!0?a:t);return}if((T!==!0||F.value===!0)&&l.focus(),Ze(),n.value.length===0){const A=e.emitValue===!0?a:t;r("add",{index:0,value:A}),r("update:modelValue",e.multiple===!0?[A]:A);return}const b=e.modelValue.slice(),O=pe.value.findIndex(A=>ze(A,a));if(O!==-1)r("remove",{index:O,value:b.splice(O,1)[0]});else{if(e.maxValues!==void 0&&b.length>=e.maxValues)return;const A=e.emitValue===!0?a:t;r("add",{index:b.length,value:A}),b.push(A)}r("update:modelValue",b)}function he(t){if(x.platform.is.desktop!==!0)return;const o=t!==-1&&t<K.value?t:-1;h.value!==o&&(h.value=o)}function Be(t=1,o){if(i.value===!0){let a=h.value;do a=dt(a+t,-1,K.value-1);while(a!==-1&&a!==h.value&&ge.value(e.options[a])===!0);h.value!==a&&(he(a),X(a),o!==!0&&e.useInput===!0&&e.fillInput===!0&&Ie(a>=0?N.value(e.options[a]):D,!0))}}function Ot(t,o){const a=b=>ze(Z.value(b),t);return e.options.find(a)||o.find(a)||t}function Le(t){const o=Z.value(t);return pe.value.find(a=>ze(a,o))!==void 0}function Ze(t){e.useInput===!0&&_.value!==null&&(t===void 0||_.value===t.target&&t.target.value===u.value)&&_.value.select()}function Je(t){wl(t,27)===!0&&i.value===!0&&(Ve(t),ve(),Ce()),r("keyup",t)}function Ge(t){const{value:o}=t.target;if(t.keyCode!==void 0){Je(t);return}if(t.target.value="",S!==null&&(clearTimeout(S),S=null),w!==null&&(clearTimeout(w),w=null),Ce(),typeof o=="string"&&o.length!==0){const a=o.toLocaleLowerCase(),b=A=>{const P=e.options.find(I=>String(A.value(I)).toLocaleLowerCase()===a);return P===void 0?!1:(n.value.indexOf(P)===-1?fe(P):ve(),!0)},O=A=>{b(Z)!==!0&&A!==!0&&b(N)!==!0&&ye(o,!0,()=>O(!0))};O()}else l.clearValue(t)}function et(t){r("keypress",t)}function tt(t){if(r("keydown",t),Cl(t)===!0)return;const o=y.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),a=t.shiftKey!==!0&&e.disableTabSelection!==!0&&e.multiple!==!0&&(h.value!==-1||o===!0);if(t.keyCode===27){Ne(t);return}if(t.keyCode===9&&a===!1){be();return}if(t.target===void 0||t.target.id!==l.targetUid.value||l.editable.value!==!0)return;if(t.keyCode===40&&l.innerLoading.value!==!0&&i.value===!1){oe(t),we();return}if(t.keyCode===8&&(e.useChips===!0||e.clearable===!0)&&e.hideSelected!==!0&&y.value.length===0){e.multiple===!0&&Array.isArray(e.modelValue)===!0?He(e.modelValue.length-1):e.multiple!==!0&&e.modelValue!==null&&r("update:modelValue",null);return}(t.keyCode===35||t.keyCode===36)&&(typeof y.value!="string"||y.value.length===0)&&(oe(t),h.value=-1,Be(t.keyCode===36?1:-1,e.multiple)),(t.keyCode===33||t.keyCode===34)&&le.value!==void 0&&(oe(t),h.value=Math.max(-1,Math.min(K.value,h.value+(t.keyCode===33?-1:1)*le.value.view)),Be(t.keyCode===33?1:-1,e.multiple)),(t.keyCode===38||t.keyCode===40)&&(oe(t),Be(t.keyCode===38?-1:1,e.multiple));const b=K.value;if((L===void 0||M<Date.now())&&(L=""),b>0&&e.useInput!==!0&&t.key!==void 0&&t.key.length===1&&t.altKey===!1&&t.ctrlKey===!1&&t.metaKey===!1&&(t.keyCode!==32||L.length!==0)){i.value!==!0&&we(t);const O=t.key.toLocaleLowerCase(),A=L.length===1&&L[0]===O;M=Date.now()+1500,A===!1&&(oe(t),L+=O);const P=new RegExp("^"+L.split("").map($e=>Ll.indexOf($e)!==-1?"\\"+$e:$e).join(".*"),"i");let I=h.value;if(A===!0||I<0||P.test(N.value(e.options[I]))!==!0)do I=dt(I+1,-1,b-1);while(I!==h.value&&(ge.value(e.options[I])===!0||P.test(N.value(e.options[I]))!==!0));h.value!==I&&ne(()=>{he(I),X(I),I>=0&&e.useInput===!0&&e.fillInput===!0&&Ie(N.value(e.options[I]),!0)});return}if(!(t.keyCode!==13&&(t.keyCode!==32||e.useInput===!0||L!=="")&&(t.keyCode!==9||a===!1))){if(t.keyCode!==9&&oe(t),h.value!==-1&&h.value<b){fe(e.options[h.value]);return}if(o===!0){const O=(A,P)=>{if(P){if(ht(P)!==!0)return}else P=e.newValueMode;if(Oe("",e.multiple!==!0,!0),A==null)return;(P==="toggle"?fe:Ye)(A,P==="add-unique"),e.multiple!==!0&&(_.value?.focus(),ve())};if(e.onNewValue!==void 0?r("newValue",y.value,O):O(y.value),e.multiple!==!0)return}i.value===!0?be():l.innerLoading.value!==!0&&we()}}function lt(){return T===!0?te.value:$.value!==null&&$.value.contentEl!==null?$.value.contentEl:void 0}function zt(){return lt()}function Ft(){return e.hideSelected===!0?[]:c["selected-item"]!==void 0?de.value.map(t=>c["selected-item"](t)).slice():c.selected!==void 0?[].concat(c.selected()):e.useChips===!0?de.value.map((t,o)=>V(Rl,{key:"option-"+o,removable:l.editable.value===!0&&ge.value(t.opt)!==!0,dense:!0,textColor:e.color,tabindex:ee.value,onRemove(){t.removeAtIndex(o)}},()=>V("span",{class:"ellipsis",[t.html===!0?"innerHTML":"textContent"]:N.value(t.opt)}))):[V("span",{class:"ellipsis",[Se.value===!0?"innerHTML":"textContent"]:R.value})]}function ut(){if(B.value===!0)return c["no-option"]!==void 0?c["no-option"]({inputValue:y.value}):void 0;const t=c.option!==void 0?c.option:a=>V(Ol,{key:a.index,...a.itemProps},()=>V(ql,()=>V(Al,()=>V("span",{[a.html===!0?"innerHTML":"textContent"]:a.label}))));let o=xe("div",Me.value.map(t));return c["before-options"]!==void 0&&(o=c["before-options"]().concat(o)),kl(c["after-options"],o)}function Tt(t,o){const a=o===!0?{...Te.value,...l.splitAttrs.attributes.value}:void 0,b={ref:o===!0?_:void 0,key:"i_t",class:C.value,style:e.inputStyle,value:y.value!==void 0?y.value:"",type:"search",...a,id:o===!0?l.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":t===!0||e.autofocus===!0||void 0,disabled:e.disable===!0,readonly:e.readonly===!0,...qt.value};return t!==!0&&T===!0&&(Array.isArray(b.class)===!0?b.class=[...b.class,"no-pointer-events"]:b.class+=" no-pointer-events"),V("input",b)}function nt(t){S!==null&&(clearTimeout(S),S=null),w!==null&&(clearTimeout(w),w=null),!(t&&t.target&&t.target.qComposing===!0)&&(Ie(t.target.value||""),H=!0,D=y.value,l.focused.value!==!0&&(T!==!0||F.value===!0)&&l.focus(),e.onFilter!==void 0&&(S=setTimeout(()=>{S=null,ye(y.value)},e.inputDebounce)))}function Ie(t,o){y.value!==t&&(y.value=t,o===!0||e.inputDebounce===0||e.inputDebounce==="0"?r("inputValue",t):w=setTimeout(()=>{w=null,r("inputValue",t)},e.inputDebounce))}function Oe(t,o,a){H=a!==!0,e.useInput===!0&&(Ie(t,!0),(o===!0||a!==!0)&&(D=t),o!==!0&&ye(t))}function ye(t,o,a){if(e.onFilter===void 0||o!==!0&&l.focused.value!==!0)return;l.innerLoading.value===!0?r("filterAbort"):(l.innerLoading.value=!0,s.value=!0),t!==""&&e.multiple!==!0&&n.value.length!==0&&H!==!0&&t===N.value(n.value[0])&&(t="");const b=setTimeout(()=>{i.value===!0&&(i.value=!1)},10);f!==null&&clearTimeout(f),f=b,r("filter",t,(O,A)=>{(o===!0||l.focused.value===!0)&&f===b&&(clearTimeout(f),typeof O=="function"&&O(),s.value=!1,ne(()=>{l.innerLoading.value=!1,l.editable.value===!0&&(o===!0?i.value===!0&&ve():i.value===!0?Ke(!0):i.value=!0),typeof A=="function"&&ne(()=>{A(v)}),typeof a=="function"&&ne(()=>{a(v)})}))},()=>{l.focused.value===!0&&f===b&&(clearTimeout(f),l.innerLoading.value=!1,s.value=!1),i.value===!0&&(i.value=!1)})}function Mt(){return V(Il,{ref:$,class:m.value,style:e.popupContentStyle,modelValue:i.value,fit:e.menuShrink!==!0,cover:e.optionsCover===!0&&B.value!==!0&&e.useInput!==!0,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:q.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:De.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...ce.value,onScrollPassive:ue,onBeforeShow:at,onBeforeHide:pt,onShow:Bt},ut)}function pt(t){it(t),be()}function Bt(){se()}function It(t){Ve(t),_.value?.focus(),F.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function Et(t){Ve(t),ne(()=>{F.value=!1})}function _t(){const t=[V(El,{class:`col-auto ${l.fieldClass.value}`,...g.value,for:l.targetUid.value,dark:q.value,square:!0,loading:s.value,itemAligned:!1,filled:!0,stackLabel:y.value.length!==0,...l.splitAttrs.listeners.value,onFocus:It,onBlur:Et},{...c,rawControl:()=>l.getControl(!0),before:void 0,after:void 0})];return i.value===!0&&t.push(V("div",{ref:te,class:m.value+" scroll",style:e.popupContentStyle,...ce.value,onClick:Ne,onScrollPassive:ue},ut())),V(Vl,{ref:J,modelValue:z.value,position:e.useInput===!0?"top":void 0,transitionShow:U,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:at,onBeforeHide:Rt,onHide:Pt,onShow:Dt},()=>V("div",{class:"q-select__dialog"+(q.value===!0?" q-select__dialog--dark q-dark":"")+(F.value===!0?" q-select__dialog--focused":"")},t))}function Rt(t){it(t),J.value!==null&&J.value.__updateRefocusTarget(l.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),l.focused.value=!1}function Pt(t){ve(),l.focused.value===!1&&r("blur",t),Ce()}function Dt(){const t=document.activeElement;(t===null||t.id!==l.targetUid.value)&&_.value!==null&&_.value!==t&&_.value.focus(),se()}function be(){z.value!==!0&&(h.value=-1,i.value===!0&&(i.value=!1),l.focused.value===!1&&(f!==null&&(clearTimeout(f),f=null),l.innerLoading.value===!0&&(r("filterAbort"),l.innerLoading.value=!1,s.value=!1)))}function we(t){l.editable.value===!0&&(T===!0?(l.onControlFocusin(t),z.value=!0,ne(()=>{l.focus()})):l.focus(),e.onFilter!==void 0?ye(y.value):(B.value!==!0||c["no-option"]!==void 0)&&(i.value=!0))}function ve(){z.value=!1,be()}function Ce(){e.useInput===!0&&Oe(e.multiple!==!0&&e.fillInput===!0&&n.value.length!==0&&N.value(n.value[0])||"",!0,!0)}function Ke(t){let o=-1;if(t===!0){if(n.value.length!==0){const a=Z.value(n.value[0]);o=e.options.findIndex(b=>ze(Z.value(b),a))}j(o)}he(o)}function Ht(t,o){i.value===!0&&l.innerLoading.value===!1&&(j(-1,!0),ne(()=>{i.value===!0&&l.innerLoading.value===!1&&(t>o?j():Ke(!0))}))}function ot(){z.value===!1&&$.value!==null&&$.value.updatePosition()}function at(t){t!==void 0&&Ve(t),r("popupShow",t),l.hasPopupOpen=!0,l.onControlFocusin(t)}function it(t){t!==void 0&&Ve(t),r("popupHide",t),l.hasPopupOpen=!1,l.onControlFocusout(t)}function rt(){T=x.platform.is.mobile!==!0&&e.behavior!=="dialog"?!1:e.behavior!=="menu"&&(e.useInput===!0?c["no-option"]!==void 0||e.onFilter!==void 0||B.value===!1:!0),U=x.platform.is.ios===!0&&T===!0&&e.useInput===!0?"fade":e.transitionShow}return hl(rt),yl(ot),rt(),Ue(()=>{S!==null&&clearTimeout(S),w!==null&&clearTimeout(w)}),Object.assign(v,{showPopup:we,hidePopup:ve,removeAtIndex:He,add:Ye,toggleOption:fe,getOptionIndex:()=>h.value,setOptionIndex:he,moveOptionSelection:Be,filter:ye,updateMenuPosition:ot,updateInputValue:Oe,isOptionSelected:Le,getEmittingOptionValue:Xe,isOptionDisabled:(...t)=>ge.value.apply(null,t)===!0,getOptionValue:(...t)=>Z.value.apply(null,t),getOptionLabel:(...t)=>N.value.apply(null,t)}),Object.assign(l,{innerValue:n,fieldClass:d(()=>`q-select q-field--auto-height q-select--with${e.useInput!==!0?"out":""}-input q-select--with${e.useChips!==!0?"out":""}-chips q-select--${e.multiple===!0?"multiple":"single"}`),inputRef:me,targetRef:_,hasValue:p,showPopup:we,floatingLabel:d(()=>e.hideSelected!==!0&&p.value===!0||typeof y.value=="number"||y.value.length!==0||ct(e.displayValue)),getControlChild:()=>{if(l.editable.value!==!1&&(z.value===!0||B.value!==!0||c["no-option"]!==void 0))return T===!0?_t():Mt();l.hasPopupOpen===!0&&(l.hasPopupOpen=!1)},controlEvents:{onFocusin(t){l.onControlFocusin(t)},onFocusout(t){l.onControlFocusout(t,()=>{Ce(),be()})},onClick(t){if(Ne(t),T!==!0&&i.value===!0){be(),_.value?.focus();return}we(t)}},getControl:t=>{const o=Ft(),a=t===!0||z.value!==!0||T!==!0;if(e.useInput===!0)o.push(Tt(t,a));else if(l.editable.value===!0){const O=a===!0?Te.value:void 0;o.push(V("input",{ref:a===!0?_:void 0,key:"d_t",class:"q-select__focus-target",id:a===!0?l.targetUid.value:void 0,value:R.value,readonly:!0,"data-autofocus":t===!0||e.autofocus===!0||void 0,...O,onKeydown:tt,onKeyup:Je,onKeypress:et})),a===!0&&typeof e.autocomplete=="string"&&e.autocomplete.length!==0&&o.push(V("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Ge}))}if(W.value!==void 0&&e.disable!==!0&&pe.value.length!==0){const O=pe.value.map(A=>V("option",{value:A,selected:!0}));o.push(V("select",{class:"hidden",name:W.value,multiple:e.multiple},O))}const b=e.useInput===!0||a!==!0?void 0:l.splitAttrs.attributes.value;return V("div",{class:"q-field__native row items-center",...b,...l.splitAttrs.listeners.value},o)},getInnerAppend:()=>e.loading!==!0&&s.value!==!0&&e.hideDropdownIcon!==!0?[V(Ee,{class:"q-select__dropdown-icon"+(i.value===!0?" rotate-180":""),name:qe.value})]:null}),Ct(l)}});export{Il as Q,Ul as a,Hl as b,Ql as c,_e as r,gt as u};