mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2025-10-22 02:03:10 +00:00
2 lines
52 KiB
JavaScript
2 lines
52 KiB
JavaScript
import{bJ as Ut,ay as qt,a7 as ae,bK as Xt,g as oe,p as $,ap as de,ac as he,b9 as Qt,b2 as dt,a1 as Ie,at as ne,aF as Ke,bL as Ue,ao as D,aS as Ve,as as N,c as se,d as k,i as P,y as ge,E as M,e as ve,n as Oe,bM as Yt,ak as ft,m as vt,bN as Jt,al as Zt,b7 as ea,aH as mt,h as Ee,b8 as ta,an as J,bO as et,ax as Ce,au as ie,F as ue,a_ as _e,aR as aa,bp as gt,bq as ye,bP as be,bQ as ht,bR as qe,u as la,bo as na,a8 as ra,bS as ua,aG as Q,f as oa,aL as ia,bT as ze,bU as sa,aq as xe,bV as Pe,v as Be,O as ca,P as tt,bW as da,U as bt,aO as fa,S as va,bX as ma,aW as yt,t as je,aw as ga,aj as ha,az as ba,bY as ya,bZ as at,b_ as lt,b$ as xa,bz as pe,bE as Se,c0 as pa,c1 as Sa,c2 as wa,c3 as Ae,c4 as Te,c5 as Pa,aa as ka,c6 as Ia,c7 as Va,bw as Xe,c8 as De,aT as Fe,C as Ta,aX as Ne,aI as Ge,aD as Da,c9 as we,ca as Fa}from"./index-DFgkZgUi.js";import{f as Ca,V as nt,g as _a}from"./VTextField-DIOo4XZs.js";import{V as Ba}from"./VMenu-B1xIkNQj.js";import{c as Le}from"./VCheckboxBtn-DObhCu1k.js";import{V as xt}from"./VChip-DbBVIlSf.js";function rt(e,l,t){return Object.keys(e).filter(a=>Ut(a)&&a.endsWith(l)).reduce((a,n)=>(a[n.slice(0,-l.length)]=r=>qt(e[n],r,t(r)),a),{})}function Aa(){const e=ae([]);Xt(()=>e.value=[]);function l(t,a){e.value[a]=t}return{refs:e,updateRef:l}}const Oa=$({activeColor:String,start:{type:[Number,String],default:1},modelValue:{type:Number,default:e=>e.start},disabled:Boolean,length:{type:[Number,String],default:1,validator:e=>e%1===0},totalVisible:[Number,String],firstIcon:{type:J,default:"$first"},prevIcon:{type:J,default:"$prev"},nextIcon:{type:J,default:"$next"},lastIcon:{type:J,default:"$last"},ariaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.root"},pageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.page"},currentPageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.currentPage"},firstAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.first"},previousAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.previous"},nextAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.next"},lastAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.last"},ellipsis:{type:String,default:"..."},showFirstLastPage:Boolean,...ta(),...Ee(),...mt(),...ea(),...Zt(),...Jt(),...vt({tag:"nav"}),...ft(),...Yt({variant:"text"})},"VPagination"),ut=oe()({name:"VPagination",props:Oa(),emits:{"update:modelValue":e=>!0,first:e=>!0,prev:e=>!0,next:e=>!0,last:e=>!0},setup(e,l){let{slots:t,emit:a}=l;const n=de(e,"modelValue"),{t:r,n:i}=he(),{isRtl:u}=Qt(),{themeClasses:o}=dt(e),{width:d}=Ie(),s=ne(-1);Ke(void 0,{scoped:!0});const{resizeRef:b}=Ue(I=>{if(!I.length)return;const{target:w,contentRect:m}=I[0],V=w.querySelector(".v-pagination__list > *");if(!V)return;const B=m.width,G=V.offsetWidth+parseFloat(getComputedStyle(V).marginRight)*2;s.value=x(B,G)}),v=D(()=>parseInt(e.length,10)),y=D(()=>parseInt(e.start,10)),g=D(()=>e.totalVisible!=null?parseInt(e.totalVisible,10):s.value>=0?s.value:x(d.value,58));function x(I,w){const m=e.showFirstLastPage?5:3;return Math.max(0,Math.floor(Number(((I-w*m)/w).toFixed(2))))}const f=D(()=>{if(v.value<=0||isNaN(v.value)||v.value>Number.MAX_SAFE_INTEGER)return[];if(g.value<=0)return[];if(g.value===1)return[n.value];if(v.value<=g.value)return Ve(v.value,y.value);const I=g.value%2===0,w=I?g.value/2:Math.floor(g.value/2),m=I?w:w+1,V=v.value-w;if(m-n.value>=0)return[...Ve(Math.max(1,g.value-1),y.value),e.ellipsis,v.value];if(n.value-V>=(I?1:0)){const B=g.value-1,G=v.value-B+y.value;return[y.value,e.ellipsis,...Ve(B,G)]}else{const B=Math.max(1,g.value-2),G=B===1?n.value:n.value-Math.ceil(B/2)+y.value;return[y.value,e.ellipsis,...Ve(B,G),e.ellipsis,v.value]}});function p(I,w,m){I.preventDefault(),n.value=w,m&&a(m,w)}const{refs:c,updateRef:T}=Aa();Ke({VPaginationBtn:{color:N(()=>e.color),border:N(()=>e.border),density:N(()=>e.density),size:N(()=>e.size),variant:N(()=>e.variant),rounded:N(()=>e.rounded),elevation:N(()=>e.elevation)}});const _=D(()=>f.value.map((I,w)=>{const m=V=>T(V,w);if(typeof I=="string")return{isActive:!1,key:`ellipsis-${w}`,page:I,props:{ref:m,ellipsis:!0,icon:!0,disabled:!0}};{const V=I===n.value;return{isActive:V,key:I,page:i(I),props:{ref:m,ellipsis:!1,icon:!0,disabled:!!e.disabled||Number(e.length)<2,color:V?e.activeColor:e.color,"aria-current":V,"aria-label":r(V?e.currentPageAriaLabel:e.pageAriaLabel,I),onClick:B=>p(B,I)}}}})),S=D(()=>{const I=!!e.disabled||n.value<=y.value,w=!!e.disabled||n.value>=y.value+v.value-1;return{first:e.showFirstLastPage?{icon:u.value?e.lastIcon:e.firstIcon,onClick:m=>p(m,y.value,"first"),disabled:I,"aria-label":r(e.firstAriaLabel),"aria-disabled":I}:void 0,prev:{icon:u.value?e.nextIcon:e.prevIcon,onClick:m=>p(m,n.value-1,"prev"),disabled:I,"aria-label":r(e.previousAriaLabel),"aria-disabled":I},next:{icon:u.value?e.prevIcon:e.nextIcon,onClick:m=>p(m,n.value+1,"next"),disabled:w,"aria-label":r(e.nextAriaLabel),"aria-disabled":w},last:e.showFirstLastPage?{icon:u.value?e.firstIcon:e.lastIcon,onClick:m=>p(m,y.value+v.value-1,"last"),disabled:w,"aria-label":r(e.lastAriaLabel),"aria-disabled":w}:void 0}});function z(){var w;const I=n.value-y.value;(w=c.value[I])==null||w.$el.focus()}function E(I){I.key===et.left&&!e.disabled&&n.value>Number(e.start)?(n.value=n.value-1,Ce(z)):I.key===et.right&&!e.disabled&&n.value<y.value+v.value-1&&(n.value=n.value+1,Ce(z))}return se(()=>k(e.tag,{ref:b,class:ve(["v-pagination",o.value,e.class]),style:Oe(e.style),role:"navigation","aria-label":r(e.ariaLabel),onKeydown:E,"data-test":"v-pagination-root"},{default:()=>[P("ul",{class:"v-pagination__list"},[e.showFirstLastPage&&P("li",{key:"first",class:"v-pagination__first","data-test":"v-pagination-first"},[t.first?t.first(S.value.first):k(ge,M({_as:"VPaginationBtn"},S.value.first),null)]),P("li",{key:"prev",class:"v-pagination__prev","data-test":"v-pagination-prev"},[t.prev?t.prev(S.value.prev):k(ge,M({_as:"VPaginationBtn"},S.value.prev),null)]),_.value.map((I,w)=>P("li",{key:I.key,class:ve(["v-pagination__item",{"v-pagination__item--is-active":I.isActive}]),"data-test":"v-pagination-item"},[t.item?t.item(I):k(ge,M({_as:"VPaginationBtn"},I.props),{default:()=>[I.page]})])),P("li",{key:"next",class:"v-pagination__next","data-test":"v-pagination-next"},[t.next?t.next(S.value.next):k(ge,M({_as:"VPaginationBtn"},S.value.next),null)]),e.showFirstLastPage&&P("li",{key:"last",class:"v-pagination__last","data-test":"v-pagination-last"},[t.last?t.last(S.value.last):k(ge,M({_as:"VPaginationBtn"},S.value.last),null)])])]})),{}}}),Ea=$({renderless:Boolean,...Ee()},"VVirtualScrollItem"),La=oe()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Ea(),emits:{"update:height":e=>!0},setup(e,l){let{attrs:t,emit:a,slots:n}=l;const{resizeRef:r,contentRect:i}=Ue(void 0,"border");ie(()=>{var u;return(u=i.value)==null?void 0:u.height},u=>{u!=null&&a("update:height",u)}),se(()=>{var u,o;return e.renderless?P(ue,null,[(u=n.default)==null?void 0:u.call(n,{itemRef:r})]):P("div",M({ref:r,class:["v-virtual-scroll__item",e.class],style:e.style},t),[(o=n.default)==null?void 0:o.call(n)])})}}),Ra=-1,Ma=1,$e=100,Na=$({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function $a(e,l){const t=Ie(),a=ne(0);_e(()=>{a.value=parseFloat(e.itemHeight||0)});const n=ne(0),r=ne(Math.ceil((parseInt(e.height)||t.height.value)/(a.value||16))||1),i=ne(0),u=ne(0),o=ae(),d=ae();let s=0;const{resizeRef:b,contentRect:v}=Ue();_e(()=>{b.value=o.value});const y=D(()=>{var F;return o.value===document.documentElement?t.height.value:((F=v.value)==null?void 0:F.height)||parseInt(e.height)||0}),g=D(()=>!!(o.value&&d.value&&y.value&&a.value));let x=Array.from({length:l.value.length}),f=Array.from({length:l.value.length});const p=ne(0);let c=-1;function T(F){return x[F]||a.value}const _=aa(()=>{const F=performance.now();f[0]=0;const O=l.value.length;for(let W=1;W<=O-1;W++)f[W]=(f[W-1]||0)+T(W-1);p.value=Math.max(p.value,performance.now()-F)},p),S=ie(g,F=>{F&&(S(),s=d.value.offsetTop,_.immediate(),H(),~c&&Ce(()=>{ht&&window.requestAnimationFrame(()=>{ce(c),c=-1})}))});gt(()=>{_.clear()});function z(F,O){const W=x[F],h=a.value;a.value=h?Math.min(a.value,O):O,(W!==O||h!==a.value)&&(x[F]=O,_())}function E(F){F=ye(F,0,l.value.length-1);const O=Math.floor(F),W=F%1,h=O+1,C=f[O]||0,L=f[h]||C;return C+(L-C)*W}function I(F){return Ha(f,F)}let w=0,m=0,V=0;ie(y,(F,O)=>{O&&(H(),F<O&&requestAnimationFrame(()=>{m=0,H()}))});let B=-1;function G(){if(!o.value||!d.value)return;const F=o.value.scrollTop,O=performance.now();O-V>500?(m=Math.sign(F-w),s=d.value.offsetTop):m=F-w,w=F,V=O,window.clearTimeout(B),B=window.setTimeout(le,500),H()}function le(){!o.value||!d.value||(m=0,V=0,window.clearTimeout(B),H())}let re=-1;function H(){cancelAnimationFrame(re),re=requestAnimationFrame(te)}function te(){if(!o.value||!y.value||!a.value)return;const F=w-s,O=Math.sign(m),W=Math.max(0,F-$e),h=ye(I(W),0,l.value.length),C=F+y.value+$e,L=ye(I(C)+1,h+1,l.value.length);if((O!==Ra||h<n.value)&&(O!==Ma||L>r.value)){const j=E(n.value)-E(h),U=E(L)-E(r.value);Math.max(j,U)>$e?(n.value=h,r.value=L):(h<=0&&(n.value=h),L>=l.value.length&&(r.value=L))}i.value=E(n.value),u.value=E(l.value.length)-E(r.value)}function ce(F){const O=E(F);!o.value||F&&!O?c=F:o.value.scrollTop=O}const me=D(()=>l.value.slice(n.value,r.value).map((F,O)=>{const W=O+n.value;return{raw:F,index:W,key:be(F,e.itemKey,W)}}));return ie(l,()=>{x=Array.from({length:l.value.length}),f=Array.from({length:l.value.length}),_.immediate(),H()},{deep:1}),{calculateVisibleItems:H,containerRef:o,markerRef:d,computedItems:me,paddingTop:i,paddingBottom:u,scrollToIndex:ce,handleScroll:G,handleScrollend:le,handleItemResize:z}}function Ha(e,l){let t=e.length-1,a=0,n=0,r=null,i=-1;if(e[t]<l)return t;for(;a<=t;)if(n=a+t>>1,r=e[n],r>l)t=n-1;else if(r<l)i=n,a=n+1;else return r===l?n:a;return i}const Ka=$({items:{type:Array,default:()=>[]},renderless:Boolean,...Na(),...Ee(),...oa()},"VVirtualScroll"),za=oe()({name:"VVirtualScroll",props:Ka(),setup(e,l){let{slots:t}=l;const a=qe("VVirtualScroll"),{dimensionStyles:n}=la(e),{calculateVisibleItems:r,containerRef:i,markerRef:u,handleScroll:o,handleScrollend:d,handleItemResize:s,scrollToIndex:b,paddingTop:v,paddingBottom:y,computedItems:g}=$a(e,N(()=>e.items));return na(()=>e.renderless,()=>{function x(){var c,T;const p=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)?"addEventListener":"removeEventListener";i.value===document.documentElement?(document[p]("scroll",o,{passive:!0}),document[p]("scrollend",d)):((c=i.value)==null||c[p]("scroll",o,{passive:!0}),(T=i.value)==null||T[p]("scrollend",d))}ra(()=>{i.value=ua(a.vnode.el,!0),x(!0)}),gt(x)}),se(()=>{const x=g.value.map(f=>k(La,{key:f.key,renderless:e.renderless,"onUpdate:height":p=>s(f.index,p)},{default:p=>{var c;return(c=t.default)==null?void 0:c.call(t,{item:f.raw,index:f.index,...p})}}));return e.renderless?P(ue,null,[P("div",{ref:u,class:"v-virtual-scroll__spacer",style:{paddingTop:Q(v.value)}},null),x,P("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:Q(y.value)}},null)]):P("div",{ref:i,class:ve(["v-virtual-scroll",e.class]),onScrollPassive:o,onScrollend:d,style:Oe([n.value,e.style])},[P("div",{ref:u,class:"v-virtual-scroll__container",style:{paddingTop:Q(v.value),paddingBottom:Q(y.value)}},[x])])}),{calculateVisibleItems:r,scrollToIndex:b}}});function ja(e,l){const t=ne(!1);let a;function n(u){cancelAnimationFrame(a),t.value=!0,a=requestAnimationFrame(()=>{a=requestAnimationFrame(()=>{t.value=!1})})}async function r(){await new Promise(u=>requestAnimationFrame(u)),await new Promise(u=>requestAnimationFrame(u)),await new Promise(u=>requestAnimationFrame(u)),await new Promise(u=>{if(t.value){const o=ie(t,()=>{o(),u()})}else u()})}async function i(u){var s,b;if(u.key==="Tab"&&((s=l.value)==null||s.focus()),!["PageDown","PageUp","Home","End"].includes(u.key))return;const o=(b=e.value)==null?void 0:b.$el;if(!o)return;(u.key==="Home"||u.key==="End")&&o.scrollTo({top:u.key==="Home"?0:o.scrollHeight,behavior:"smooth"}),await r();const d=o.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(u.key==="PageDown"||u.key==="Home"){const v=o.getBoundingClientRect().top;for(const y of d)if(y.getBoundingClientRect().top>=v){y.focus();break}}else{const v=o.getBoundingClientRect().bottom;for(const y of[...d].reverse())if(y.getBoundingClientRect().bottom<=v){y.focus();break}}}return{onScrollPassive:n,onKeydown:i}}const Ga=$({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Wa(e,l){const{t}=he(),a=ia(),n=D(()=>`menu-${a}`),r=N(()=>ze(l)),i=N(()=>n.value),u=N(()=>t(ze(l)?e.closeText:e.openText));return{menuId:n,ariaExpanded:r,ariaControls:i,ariaLabel:u}}const Ua=$({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:J,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...Ga(),...xa({itemChildren:!1})},"Select"),qa=$({...Ua(),...ba(_a({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...ha({transition:{component:ya}})},"VSelect"),pt=oe()({name:"VSelect",props:qa(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,l){let{slots:t}=l;const{t:a}=he(),n=ae(),r=ae(),i=ae(),{items:u,transformIn:o,transformOut:d}=sa(e),s=de(e,"modelValue",[],h=>o(h===null?[null]:xe(h)),h=>{const C=d(h);return e.multiple?C:C[0]??null}),b=D(()=>typeof e.counterValue=="function"?e.counterValue(s.value):typeof e.counterValue=="number"?e.counterValue:s.value.length),v=Ca(e),y=D(()=>s.value.map(h=>h.value)),g=ne(!1);let x="",f=-1,p;const c=D(()=>e.hideSelected?u.value.filter(h=>!s.value.some(C=>(e.valueComparator||Pe)(C,h))):u.value),T=D(()=>e.hideNoData&&!c.value.length||v.isReadonly.value||v.isDisabled.value),_=de(e,"menu"),S=D({get:()=>_.value,set:h=>{var C;_.value&&!h&&((C=r.value)!=null&&C.ΨopenChildren.size)||h&&T.value||(_.value=h)}}),{menuId:z,ariaExpanded:E,ariaControls:I,ariaLabel:w}=Wa(e,S),m=D(()=>{var h;return{...e.menuProps,activatorProps:{...((h=e.menuProps)==null?void 0:h.activatorProps)||{},"aria-haspopup":"listbox"}}}),V=ae(),B=ja(V,n);function G(h){e.openOnClear&&(S.value=!0)}function le(){T.value||(S.value=!S.value)}function re(h){at(h)&&H(h)}function H(h){var R,Y,q;if(!h.key||v.isReadonly.value)return;["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(h.key)&&h.preventDefault(),["Enter","ArrowDown"," "].includes(h.key)&&(S.value=!0),["Escape","Tab"].includes(h.key)&&(S.value=!1),h.key==="Home"?(R=V.value)==null||R.focus("first"):h.key==="End"&&((Y=V.value)==null||Y.focus("last"));const C=1e3;if(!at(h))return;const L=performance.now();L-p>C&&(x="",f=-1),x+=h.key.toLowerCase(),p=L;const j=c.value;function U(){let K=A();return K||x.at(-1)===x.at(-2)&&(x=x.slice(0,-1),K=A(),K)||(f=-1,K=A(),K)?K:(x=h.key.toLowerCase(),A())}function A(){for(let K=f+1;K<j.length;K++){const fe=j[K];if(fe.title.toLowerCase().startsWith(x))return[fe,K]}}const Z=U();if(!Z)return;const[ee,X]=Z;f=X,(q=V.value)==null||q.focus(X),e.multiple||(s.value=[ee])}function te(h){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!h.props.disabled)if(e.multiple){const L=s.value.findIndex(U=>(e.valueComparator||Pe)(U.value,h.value)),j=C??!~L;if(~L){const U=j?[...s.value,h]:[...s.value];U.splice(L,1),s.value=U}else j&&(s.value=[...s.value,h])}else{const L=C!==!1;s.value=L?[h]:[],Ce(()=>{S.value=!1})}}function ce(h){var C;(C=V.value)!=null&&C.$el.contains(h.relatedTarget)||(S.value=!1)}function me(){var h;e.eager&&((h=i.value)==null||h.calculateVisibleItems())}function F(){var h;g.value&&((h=n.value)==null||h.focus())}function O(h){g.value=!0}function W(h){if(h==null)s.value=[];else if(lt(n.value,":autofill")||lt(n.value,":-webkit-autofill")){const C=u.value.find(L=>L.title===h);C&&te(C)}else n.value&&(n.value.value="")}return ie(S,()=>{if(!e.hideSelected&&S.value&&s.value.length){const h=c.value.findIndex(C=>s.value.some(L=>(e.valueComparator||Pe)(L.value,C.value)));ht&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{var C;h>=0&&((C=i.value)==null||C.scrollToIndex(h))})}}),ie(u,(h,C)=>{S.value||g.value&&e.hideNoData&&!C.length&&h.length&&(S.value=!0)}),se(()=>{const h=!!(e.chips||t.chip),C=!!(!e.hideNoData||c.value.length||t["prepend-item"]||t["append-item"]||t["no-data"]),L=s.value.length>0,j=nt.filterProps(e),U=L||!g.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return k(nt,M({ref:n},j,{modelValue:s.value.map(A=>A.props.value).join(", "),"onUpdate:modelValue":W,focused:g.value,"onUpdate:focused":A=>g.value=A,validationValue:s.externalValue,counterValue:b.value,dirty:L,class:["v-select",{"v-select--active-menu":S.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":s.value.length,"v-select--selection-slot":!!t.selection},e.class],style:e.style,inputmode:"none",placeholder:U,"onClick:clear":G,"onMousedown:control":le,onBlur:ce,onKeydown:H,"aria-expanded":E.value,"aria-controls":I.value,"aria-label":w.value,title:w.value}),{...t,default:()=>P(ue,null,[k(Ba,M({id:z.value,ref:r,modelValue:S.value,"onUpdate:modelValue":A=>S.value=A,activator:"parent",contentClass:"v-select__content",disabled:T.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:me,onAfterLeave:F},m.value),{default:()=>[C&&k(ca,M({ref:V,selected:y.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:A=>A.preventDefault(),onKeydown:re,onFocusin:O,tabindex:"-1",selectable:!0,"aria-live":"polite","aria-label":`${e.label}-list`,color:e.itemColor??e.color},B,e.listProps),{default:()=>{var A,Z,ee;return[(A=t["prepend-item"])==null?void 0:A.call(t),!c.value.length&&!e.hideNoData&&(((Z=t["no-data"])==null?void 0:Z.call(t))??k(tt,{key:"no-data",title:a(e.noDataText)},null)),k(za,{ref:i,renderless:!0,items:c.value,itemKey:"value"},{default:X=>{var Ye,Je,Ze;let{item:R,index:Y,itemRef:q}=X;const K=da(R.props),fe=M(R.props,{ref:q,key:R.value,onClick:()=>te(R,null)});return R.type==="divider"?((Ye=t.divider)==null?void 0:Ye.call(t,{props:R.raw,index:Y}))??k(bt,M(R.props,{key:`divider-${Y}`}),null):R.type==="subheader"?((Je=t.subheader)==null?void 0:Je.call(t,{props:R.raw,index:Y}))??k(fa,M(R.props,{key:`subheader-${Y}`}),null):((Ze=t.item)==null?void 0:Ze.call(t,{item:R,index:Y,props:fe}))??k(tt,M(fe,{role:"option"}),{prepend:Gt=>{let{isSelected:Wt}=Gt;return P(ue,null,[e.multiple&&!e.hideSelected?k(Le,{key:R.value,modelValue:Wt,ripple:!1,tabindex:"-1"},null):void 0,K.prependAvatar&&k(va,{image:K.prependAvatar},null),K.prependIcon&&k(Be,{icon:K.prependIcon},null)])}})}}),(ee=t["append-item"])==null?void 0:ee.call(t)]}})]}),s.value.map((A,Z)=>{function ee(q){q.stopPropagation(),q.preventDefault(),te(A,!1)}const X={"onClick:close":ee,onKeydown(q){q.key!=="Enter"&&q.key!==" "||(q.preventDefault(),q.stopPropagation(),ee(q))},onMousedown(q){q.preventDefault(),q.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},R=h?!!t.chip:!!t.selection,Y=R?ma(h?t.chip({item:A,index:Z,props:X}):t.selection({item:A,index:Z})):void 0;if(!(R&&!Y))return P("div",{key:A.value,class:"v-select__selection"},[h?t.chip?k(yt,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:A.title}}},{default:()=>[Y]}):k(xt,M({key:"chip",closable:e.closableChips,size:"small",text:A.title,disabled:A.props.disabled},X),null):Y??P("span",{class:"v-select__selection-text"},[A.title,e.multiple&&Z<s.value.length-1&&P("span",{class:"v-select__selection-comma"},[je(",")])])])})]),"append-inner":function(){var X,R;for(var A=arguments.length,Z=new Array(A),ee=0;ee<A;ee++)Z[ee]=arguments[ee];return P(ue,null,[(X=t["append-inner"])==null?void 0:X.call(t,...Z),e.menuIcon?k(Be,{class:"v-select__menu-icon",color:(R=n.value)==null?void 0:R.fieldIconColor,icon:e.menuIcon},null):void 0])}})}),ga({isFocused:g,menu:S,select:te},n)}}),Xa=$({page:{type:[Number,String],default:1},itemsPerPage:{type:[Number,String],default:10}},"DataTable-paginate"),St=Symbol.for("vuetify:data-table-pagination");function Qa(e){const l=de(e,"page",void 0,a=>Number(a??1)),t=de(e,"itemsPerPage",void 0,a=>Number(a??10));return{page:l,itemsPerPage:t}}function Ya(e){const{page:l,itemsPerPage:t,itemsLength:a}=e,n=D(()=>t.value===-1?0:t.value*(l.value-1)),r=D(()=>t.value===-1?a.value:Math.min(a.value,n.value+t.value)),i=D(()=>t.value===-1||a.value===0?1:Math.ceil(a.value/t.value));ie([l,i],()=>{l.value>i.value&&(l.value=i.value)});function u(v){t.value=v,l.value=1}function o(){l.value=ye(l.value+1,1,i.value)}function d(){l.value=ye(l.value-1,1,i.value)}function s(v){l.value=ye(v,1,i.value)}const b={page:l,itemsPerPage:t,startIndex:n,stopIndex:r,pageCount:i,itemsLength:a,nextPage:o,prevPage:d,setPage:s,setItemsPerPage:u};return Se(St,b),b}function Ja(){const e=pe(St);if(!e)throw new Error("Missing pagination!");return e}function Za(e){const l=qe("usePaginatedItems"),{items:t,startIndex:a,stopIndex:n,itemsPerPage:r}=e,i=D(()=>r.value<=0?t.value:t.value.slice(a.value,n.value));return ie(i,u=>{l.emit("update:currentItems",u)},{immediate:!0}),{paginatedItems:i}}const wt=$({prevIcon:{type:J,default:"$prev"},nextIcon:{type:J,default:"$next"},firstIcon:{type:J,default:"$first"},lastIcon:{type:J,default:"$last"},itemsPerPageText:{type:String,default:"$vuetify.dataFooter.itemsPerPageText"},pageText:{type:String,default:"$vuetify.dataFooter.pageText"},firstPageLabel:{type:String,default:"$vuetify.dataFooter.firstPage"},prevPageLabel:{type:String,default:"$vuetify.dataFooter.prevPage"},nextPageLabel:{type:String,default:"$vuetify.dataFooter.nextPage"},lastPageLabel:{type:String,default:"$vuetify.dataFooter.lastPage"},itemsPerPageOptions:{type:Array,default:()=>[{value:10,title:"10"},{value:25,title:"25"},{value:50,title:"50"},{value:100,title:"100"},{value:-1,title:"$vuetify.dataFooter.itemsPerPageAll"}]},showCurrentPage:Boolean},"VDataTableFooter"),ot=oe()({name:"VDataTableFooter",props:wt(),setup(e,l){let{slots:t}=l;const{t:a}=he(),{page:n,pageCount:r,startIndex:i,stopIndex:u,itemsLength:o,itemsPerPage:d,setItemsPerPage:s}=Ja(),b=D(()=>e.itemsPerPageOptions.map(v=>typeof v=="number"?{value:v,title:v===-1?a("$vuetify.dataFooter.itemsPerPageAll"):String(v)}:{...v,title:isNaN(Number(v.title))?a(v.title):v.title}));return se(()=>{var y;const v=ut.filterProps(e);return P("div",{class:"v-data-table-footer"},[(y=t.prepend)==null?void 0:y.call(t),P("div",{class:"v-data-table-footer__items-per-page"},[P("span",{"aria-label":a(e.itemsPerPageText)},[a(e.itemsPerPageText)]),k(pt,{items:b.value,modelValue:d.value,"onUpdate:modelValue":g=>s(Number(g)),density:"compact",variant:"outlined",hideDetails:!0},null)]),P("div",{class:"v-data-table-footer__info"},[P("div",null,[a(e.pageText,o.value?i.value+1:0,u.value,o.value)])]),P("div",{class:"v-data-table-footer__pagination"},[k(ut,M({modelValue:n.value,"onUpdate:modelValue":g=>n.value=g,density:"comfortable",firstAriaLabel:e.firstPageLabel,lastAriaLabel:e.lastPageLabel,length:r.value,nextAriaLabel:e.nextPageLabel,previousAriaLabel:e.prevPageLabel,rounded:!0,showFirstLastPage:!0,totalVisible:e.showCurrentPage?1:0,variant:"plain"},v),null)])])}),{}}}),ke=pa({align:{type:String,default:"start"},fixed:{type:[Boolean,String],default:!1},fixedOffset:[Number,String],fixedEndOffset:[Number,String],height:[Number,String],lastFixed:Boolean,firstFixedEnd:Boolean,noPadding:Boolean,indent:[Number,String],empty:Boolean,tag:String,width:[Number,String],maxWidth:[Number,String],nowrap:Boolean},(e,l)=>{let{slots:t}=l;const a=e.tag??"td",n=typeof e.fixed=="string"?e.fixed:e.fixed?"start":"none";return k(a,{class:ve(["v-data-table__td",{"v-data-table-column--fixed":n==="start","v-data-table-column--fixed-end":n==="end","v-data-table-column--last-fixed":e.lastFixed,"v-data-table-column--first-fixed-end":e.firstFixedEnd,"v-data-table-column--no-padding":e.noPadding,"v-data-table-column--nowrap":e.nowrap,"v-data-table-column--empty":e.empty},`v-data-table-column--align-${e.align}`]),style:{height:Q(e.height),width:Q(e.width),maxWidth:Q(e.maxWidth),left:n==="start"?Q(e.fixedOffset||null):void 0,right:n==="end"?Q(e.fixedEndOffset||null):void 0,paddingInlineStart:e.indent?Q(e.indent):void 0}},{default:()=>{var r;return[(r=t.default)==null?void 0:r.call(t)]}})}),el=$({headers:Array},"DataTable-header"),Pt=Symbol.for("vuetify:data-table-headers"),kt={title:"",sortable:!1},tl={...kt,width:48};function al(){const l=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).map(t=>({element:t,priority:0}));return{enqueue:(t,a)=>{let n=!1;for(let r=0;r<l.length;r++)if(l[r].priority>a){l.splice(r,0,{element:t,priority:a}),n=!0;break}n||l.push({element:t,priority:a})},size:()=>l.length,count:()=>{let t=0;if(!l.length)return 0;const a=Math.floor(l[0].priority);for(let n=0;n<l.length;n++)Math.floor(l[n].priority)===a&&(t+=1);return t},dequeue:()=>l.shift()}}function We(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(!e.children)l.push(e);else for(const t of e.children)We(t,l);return l}function It(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Set;for(const t of e)t.key&&l.add(t.key),t.children&&It(t.children,l);return l}function ll(e){if(e.key){if(e.key==="data-table-group")return kt;if(["data-table-expand","data-table-select"].includes(e.key))return tl}}function Qe(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.children?Math.max(l,...e.children.map(t=>Qe(t,l+1))):l}function nl(e){let l=!1;function t(r,i){let u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"none";if(r)if(u!=="none"&&(r.fixed=u),r.fixed===!0&&(r.fixed="start"),r.fixed===i)if(r.children)if(i==="start")for(let o=r.children.length-1;o>=0;o--)t(r.children[o],i,i);else for(let o=0;o<r.children.length;o++)t(r.children[o],i,i);else!l&&i==="start"?r.lastFixed=!0:!l&&i==="end"?r.firstFixedEnd=!0:isNaN(Number(r.width))?wa(`Multiple fixed columns should have a static width (key: ${r.key})`):r.minWidth=Math.max(Number(r.width)||0,Number(r.minWidth)||0),l=!0;else if(r.children)if(i==="start")for(let o=r.children.length-1;o>=0;o--)t(r.children[o],i);else for(let o=0;o<r.children.length;o++)t(r.children[o],i);else l=!1}for(let r=e.length-1;r>=0;r--)t(e[r],"start");for(let r=0;r<e.length;r++)t(e[r],"end");let a=0;for(let r=0;r<e.length;r++)a=Vt(e[r],a);let n=0;for(let r=e.length-1;r>=0;r--)n=Tt(e[r],n)}function Vt(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return l;if(e.children){e.fixedOffset=l;for(const t of e.children)l=Vt(t,l)}else e.fixed&&e.fixed!=="end"&&(e.fixedOffset=l,l+=parseFloat(e.width||"0")||0);return l}function Tt(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return l;if(e.children){e.fixedEndOffset=l;for(const t of e.children)l=Tt(t,l)}else e.fixed==="end"&&(e.fixedEndOffset=l,l+=parseFloat(e.width||"0")||0);return l}function rl(e,l){const t=[];let a=0;const n=al(e);for(;n.size()>0;){let i=n.count();const u=[];let o=1;for(;i>0;){const{element:d,priority:s}=n.dequeue(),b=l-a-Qe(d);if(u.push({...d,rowspan:b??1,colspan:d.children?We(d).length:1}),d.children)for(const v of d.children){const y=s%1+o/Math.pow(10,a+2);n.enqueue(v,a+b+y)}o+=1,i-=1}a+=1,t.push(u)}return{columns:e.map(i=>We(i)).flat(),headers:t}}function Dt(e){const l=[];for(const t of e){const a={...ll(t),...t},n=a.key??(typeof a.value=="string"?a.value:null),r=a.value??n??null,i={...a,key:n,value:r,sortable:a.sortable??(a.key!=null||!!a.sort),children:a.children?Dt(a.children):void 0};l.push(i)}return l}function ul(e,l){const t=ae([]),a=ae([]),n=ae({}),r=ae({}),i=ae({});_e(()=>{var x,f,p;const d=(e.headers||Object.keys(e.items[0]??{}).map(c=>({key:c,title:Sa(c)}))).slice(),s=It(d);(x=l==null?void 0:l.groupBy)!=null&&x.value.length&&!s.has("data-table-group")&&d.unshift({key:"data-table-group",title:"Group"}),(f=l==null?void 0:l.showSelect)!=null&&f.value&&!s.has("data-table-select")&&d.unshift({key:"data-table-select"}),(p=l==null?void 0:l.showExpand)!=null&&p.value&&!s.has("data-table-expand")&&d.push({key:"data-table-expand"});const b=Dt(d);nl(b);const v=Math.max(...b.map(c=>Qe(c)))+1,y=rl(b,v);t.value=y.headers,a.value=y.columns;const g=y.headers.flat(1);for(const c of g)c.key&&(c.sortable&&(c.sort&&(n.value[c.key]=c.sort),c.sortRaw&&(r.value[c.key]=c.sortRaw)),c.filter&&(i.value[c.key]=c.filter))});const u={headers:t,columns:a,sortFunctions:n,sortRawFunctions:r,filterFunctions:i};return Se(Pt,u),u}function Re(){const e=pe(Pt);if(!e)throw new Error("Missing headers!");return e}const ol={showSelectAll:!1,allSelected:()=>[],select:e=>{var a;let{items:l,value:t}=e;return new Set(t?[(a=l[0])==null?void 0:a.value]:[])},selectAll:e=>{let{selected:l}=e;return l}},Ft={showSelectAll:!0,allSelected:e=>{let{currentPage:l}=e;return l},select:e=>{let{items:l,value:t,selected:a}=e;for(const n of l)t?a.add(n.value):a.delete(n.value);return a},selectAll:e=>{let{value:l,currentPage:t,selected:a}=e;return Ft.select({items:t,value:l,selected:a})}},Ct={showSelectAll:!0,allSelected:e=>{let{allItems:l}=e;return l},select:e=>{let{items:l,value:t,selected:a}=e;for(const n of l)t?a.add(n.value):a.delete(n.value);return a},selectAll:e=>{let{value:l,allItems:t,selected:a}=e;return Ct.select({items:t,value:l,selected:a})}},il=$({showSelect:Boolean,selectStrategy:{type:[String,Object],default:"page"},modelValue:{type:Array,default:()=>[]},valueComparator:{type:Function,default:Pe}},"DataTable-select"),_t=Symbol.for("vuetify:data-table-selection");function sl(e,l){let{allItems:t,currentPage:a}=l;const n=de(e,"modelValue",e.modelValue,c=>new Set(xe(c).map(T=>{var _;return((_=t.value.find(S=>e.valueComparator(T,S.value)))==null?void 0:_.value)??T})),c=>[...c.values()]),r=D(()=>t.value.filter(c=>c.selectable)),i=D(()=>a.value.filter(c=>c.selectable)),u=D(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;switch(e.selectStrategy){case"single":return ol;case"all":return Ct;case"page":default:return Ft}}),o=ne(null);function d(c){return xe(c).every(T=>n.value.has(T.value))}function s(c){return xe(c).some(T=>n.value.has(T.value))}function b(c,T){const _=u.value.select({items:c,value:T,selected:new Set(n.value)});n.value=_}function v(c,T,_){const S=[];if(T=T??a.value.findIndex(z=>z.value===c.value),e.selectStrategy!=="single"&&(_!=null&&_.shiftKey)&&o.value!==null){const[z,E]=[o.value,T].sort((I,w)=>I-w);S.push(...a.value.slice(z,E+1).filter(I=>I.selectable))}else S.push(c),o.value=T;b(S,!d([c]))}function y(c){const T=u.value.selectAll({value:c,allItems:r.value,currentPage:i.value,selected:new Set(n.value)});n.value=T}const g=D(()=>n.value.size>0),x=D(()=>{const c=u.value.allSelected({allItems:r.value,currentPage:i.value});return!!c.length&&d(c)}),f=N(()=>u.value.showSelectAll),p={toggleSelect:v,select:b,selectAll:y,isSelected:d,isSomeSelected:s,someSelected:g,allSelected:x,showSelectAll:f,lastSelectedIndex:o,selectStrategy:u};return Se(_t,p),p}function Me(){const e=pe(_t);if(!e)throw new Error("Missing selection!");return e}const cl=$({sortBy:{type:Array,default:()=>[]},customKeySort:Object,multiSort:Boolean,mustSort:Boolean},"DataTable-sort"),Bt=Symbol.for("vuetify:data-table-sort");function dl(e){const l=de(e,"sortBy"),t=N(()=>e.mustSort),a=N(()=>e.multiSort);return{sortBy:l,mustSort:t,multiSort:a}}function fl(e){const{sortBy:l,mustSort:t,multiSort:a,page:n}=e,r=o=>{if(o.key==null)return;let d=l.value.map(b=>({...b}))??[];const s=d.find(b=>b.key===o.key);s?s.order==="desc"?t.value&&d.length===1?s.order="asc":d=d.filter(b=>b.key!==o.key):s.order="desc":a.value?d.push({key:o.key,order:"asc"}):d=[{key:o.key,order:"asc"}],l.value=d,n&&(n.value=1)};function i(o){return!!l.value.find(d=>d.key===o.key)}const u={sortBy:l,toggleSort:r,isSorted:i};return Se(Bt,u),u}function At(){const e=pe(Bt);if(!e)throw new Error("Missing sort!");return e}function vl(e,l,t,a){const n=he();return{sortedItems:D(()=>{var i,u;return t.value.length?ml(l.value,t.value,n.current.value,{transform:a==null?void 0:a.transform,sortFunctions:{...e.customKeySort,...(i=a==null?void 0:a.sortFunctions)==null?void 0:i.value},sortRawFunctions:(u=a==null?void 0:a.sortRawFunctions)==null?void 0:u.value}):l.value})}}function ml(e,l,t,a){const n=new Intl.Collator(t,{sensitivity:"accent",usage:"sort"});return e.map(i=>[i,a!=null&&a.transform?a.transform(i):i]).sort((i,u)=>{var o,d;for(let s=0;s<l.length;s++){let b=!1;const v=l[s].key,y=l[s].order??"asc";if(y===!1)continue;let g=Ae(i[1],v),x=Ae(u[1],v),f=i[0].raw,p=u[0].raw;if(y==="desc"&&([g,x]=[x,g],[f,p]=[p,f]),(o=a==null?void 0:a.sortRawFunctions)!=null&&o[v]){const c=a.sortRawFunctions[v](f,p);if(c==null)continue;if(b=!0,c)return c}if((d=a==null?void 0:a.sortFunctions)!=null&&d[v]){const c=a.sortFunctions[v](g,x);if(c==null)continue;if(b=!0,c)return c}if(!b&&(g instanceof Date&&x instanceof Date&&(g=g.getTime(),x=x.getTime()),[g,x]=[g,x].map(c=>c!=null?c.toString().toLocaleLowerCase():c),g!==x))return Te(g)&&Te(x)?0:Te(g)?-1:Te(x)?1:!isNaN(g)&&!isNaN(x)?Number(g)-Number(x):n.compare(g,x)}return 0}).map(i=>{let[u]=i;return u})}const Ot=$({color:String,disableSort:Boolean,fixedHeader:Boolean,multiSort:Boolean,sortAscIcon:{type:J,default:"$sortAsc"},sortDescIcon:{type:J,default:"$sortDesc"},headerProps:{type:Object},sticky:Boolean,...Xe(),...Va()},"VDataTableHeaders"),it=oe()({name:"VDataTableHeaders",props:Ot(),setup(e,l){let{slots:t}=l;const{t:a}=he(),{toggleSort:n,sortBy:r,isSorted:i}=At(),{someSelected:u,allSelected:o,selectAll:d,showSelectAll:s}=Me(),{columns:b,headers:v}=Re(),{loaderClasses:y}=Pa(e);function g(w,m){if(!(e.sticky||e.fixedHeader)&&!w.fixed)return;const V=typeof w.fixed=="string"?w.fixed:w.fixed?"start":"none";return{position:"sticky",left:V==="start"?Q(w.fixedOffset):void 0,right:V==="end"?Q(w.fixedEndOffset):void 0,top:e.sticky||e.fixedHeader?`calc(var(--v-table-header-height) * ${m})`:void 0}}function x(w,m){w.key==="Enter"&&!e.disableSort&&n(m)}function f(w){const m=r.value.find(V=>V.key===w.key);return m?m.order==="asc"?e.sortAscIcon:e.sortDescIcon:e.sortAscIcon}const{backgroundColorClasses:p,backgroundColorStyles:c}=ka(()=>e.color),{displayClasses:T,mobile:_}=Ie(e),S=D(()=>({headers:v.value,columns:b.value,toggleSort:n,isSorted:i,sortBy:r.value,someSelected:u.value,allSelected:o.value,selectAll:d,getSortIcon:f})),z=D(()=>["v-data-table__th",{"v-data-table__th--sticky":e.sticky||e.fixedHeader},T.value,y.value]),E=w=>{let{column:m,x:V,y:B}=w;const G=m.key==="data-table-select"||m.key==="data-table-expand",le=m.key==="data-table-group"&&m.width===0&&!m.title,re=M(e.headerProps??{},m.headerProps??{});return k(ke,M({tag:"th",align:m.align,class:[{"v-data-table__th--sortable":m.sortable&&!e.disableSort,"v-data-table__th--sorted":i(m),"v-data-table__th--fixed":m.fixed},...z.value],style:{width:Q(m.width),minWidth:Q(m.minWidth),maxWidth:Q(m.maxWidth),...g(m,B)},colspan:m.colspan,rowspan:m.rowspan,fixed:m.fixed,nowrap:m.nowrap,lastFixed:m.lastFixed,firstFixedEnd:m.firstFixedEnd,noPadding:G,empty:le,tabindex:m.sortable?0:void 0,onClick:m.sortable?()=>n(m):void 0,onKeydown:m.sortable?H=>x(H,m):void 0},re),{default:()=>{var ce;const H=`header.${m.key}`,te={column:m,selectAll:d,isSorted:i,toggleSort:n,sortBy:r.value,someSelected:u.value,allSelected:o.value,getSortIcon:f};return t[H]?t[H](te):le?"":m.key==="data-table-select"?((ce=t["header.data-table-select"])==null?void 0:ce.call(t,te))??(s.value&&k(Le,{modelValue:o.value,indeterminate:u.value&&!o.value,"onUpdate:modelValue":d},null)):P("div",{class:"v-data-table-header__content"},[P("span",null,[m.title]),m.sortable&&!e.disableSort&&k(Be,{key:"icon",class:"v-data-table-header__sort-icon",icon:f(m)},null),e.multiSort&&i(m)&&P("div",{key:"badge",class:ve(["v-data-table-header__sort-badge",...p.value]),style:Oe(c.value)},[r.value.findIndex(me=>me.key===m.key)+1])])}})},I=()=>{const w=D(()=>b.value.filter(V=>(V==null?void 0:V.sortable)&&!e.disableSort)),m=D(()=>{if(b.value.find(B=>B.key==="data-table-select")!=null)return o.value?"$checkboxOn":u.value?"$checkboxIndeterminate":"$checkboxOff"});return k(ke,M({tag:"th",class:[...z.value],colspan:v.value.length+1},e.headerProps),{default:()=>[P("div",{class:"v-data-table-header__content"},[k(pt,{chips:!0,class:"v-data-table__td-sort-select",clearable:!0,density:"default",items:w.value,label:a("$vuetify.dataTable.sortBy"),multiple:e.multiSort,variant:"underlined","onClick:clear":()=>r.value=[],appendIcon:m.value,"onClick:append":()=>d(!o.value)},{chip:V=>{var B;return k(xt,{onClick:(B=V.item.raw)!=null&&B.sortable?()=>n(V.item.raw):void 0,onMousedown:G=>{G.preventDefault(),G.stopPropagation()}},{default:()=>[V.item.title,k(Be,{class:ve(["v-data-table__td-sort-icon",i(V.item.raw)&&"v-data-table__td-sort-icon-active"]),icon:f(V.item.raw),size:"small"},null)]})}})])]})};se(()=>_.value?P("tr",null,[k(I,null,null)]):P(ue,null,[t.headers?t.headers(S.value):v.value.map((w,m)=>P("tr",null,[w.map((V,B)=>k(E,{column:V,x:B,y:m},null))])),e.loading&&P("tr",{class:"v-data-table-progress"},[P("th",{colspan:b.value.length},[k(Ia,{name:"v-data-table-progress",absolute:!0,active:!0,color:typeof e.loading=="boolean"?void 0:e.loading,indeterminate:!0},{default:t.loader})])])]))}}),gl=$({groupBy:{type:Array,default:()=>[]}},"DataTable-group"),Et=Symbol.for("vuetify:data-table-group");function hl(e){return{groupBy:de(e,"groupBy")}}function bl(e){const{disableSort:l,groupBy:t,sortBy:a}=e,n=ae(new Set),r=D(()=>t.value.map(s=>({...s,order:s.order??!1})).concat(l!=null&&l.value?[]:a.value));function i(s){return n.value.has(s.id)}function u(s){const b=new Set(n.value);i(s)?b.delete(s.id):b.add(s.id),n.value=b}function o(s){function b(v){const y=[];for(const g of v.items)"type"in g&&g.type==="group"?y.push(...b(g)):y.push(g);return[...new Set(y)]}return b({items:s})}const d={sortByWithGroups:r,toggleGroup:u,opened:n,groupBy:t,extractRows:o,isGroupOpen:i};return Se(Et,d),d}function Lt(){const e=pe(Et);if(!e)throw new Error("Missing group!");return e}function yl(e,l){if(!e.length)return[];const t=new Map;for(const a of e){const n=Ae(a.raw,l);t.has(n)||t.set(n,[]),t.get(n).push(a)}return t}function Rt(e,l){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"root";if(!l.length)return[];const n=yl(e,l[0]),r=[],i=l.slice(1);return n.forEach((u,o)=>{const d=l[0],s=`${a}_${d}_${o}`;r.push({depth:t,id:s,key:d,value:o,items:i.length?Rt(u,i,t+1,s):u,type:"group"})}),r}function Mt(e,l,t){const a=[];for(const n of e)"type"in n&&n.type==="group"?(n.value!=null&&a.push(n),(l.has(n.id)||n.value==null)&&(a.push(...Mt(n.items,l,t)),t&&a.push({...n,type:"group-summary"}))):a.push(n);return a}function xl(e,l,t,a){return{flatItems:D(()=>{if(!l.value.length)return e.value;const r=Rt(e.value,l.value.map(i=>i.key));return Mt(r,t.value,ze(a))})}}const Nt=$({item:{type:Object,required:!0},groupCollapseIcon:{type:J,default:"$tableGroupCollapse"},groupExpandIcon:{type:J,default:"$tableGroupExpand"}},"VDataTableGroupHeaderRow"),pl=oe()({name:"VDataTableGroupHeaderRow",props:Nt(),setup(e,l){let{slots:t}=l;const{isGroupOpen:a,toggleGroup:n,extractRows:r}=Lt(),{isSelected:i,isSomeSelected:u,select:o}=Me(),{columns:d}=Re(),s=D(()=>r([e.item])),b=N(()=>d.value.length-(d.value.some(v=>v.key==="data-table-select")?1:0));return()=>P("tr",{class:"v-data-table-group-header-row",style:{"--v-data-table-group-header-row-depth":e.item.depth}},[d.value.map(v=>{var y,g;if(v.key==="data-table-group"){const x=a(e.item)?e.groupCollapseIcon:e.groupExpandIcon,f=()=>n(e.item);return((y=t["data-table-group"])==null?void 0:y.call(t,{item:e.item,count:s.value.length,props:{icon:x,onClick:f}}))??k(ke,{class:"v-data-table-group-header-row__column",colspan:b.value},{default:()=>[k(ge,{size:"small",variant:"text",icon:x,onClick:f},null),P("span",null,[e.item.value]),P("span",null,[je("("),s.value.length,je(")")])]})}else if(v.key==="data-table-select"){const x=i(s.value),f=u(s.value)&&!x,p=c=>o(s.value,c);return((g=t["data-table-select"])==null?void 0:g.call(t,{props:{modelValue:x,indeterminate:f,"onUpdate:modelValue":p}}))??k(ke,{class:"v-data-table__td--select-row",noPadding:!0},{default:()=>[k(Le,{modelValue:x,indeterminate:f,"onUpdate:modelValue":p},null)]})}return""})])}}),Sl=$({expandOnClick:Boolean,showExpand:Boolean,expanded:{type:Array,default:()=>[]}},"DataTable-expand"),$t=Symbol.for("vuetify:datatable:expanded");function wl(e){const l=N(()=>e.expandOnClick),t=de(e,"expanded",e.expanded,u=>new Set(u),u=>[...u.values()]);function a(u,o){const d=new Set(t.value),s=De(u.value);if(o)d.add(s);else{const b=[...t.value].find(v=>De(v)===s);d.delete(b)}t.value=d}function n(u){const o=De(u.value);return[...t.value].some(d=>De(d)===o)}function r(u){a(u,!n(u))}const i={expand:a,expanded:t,expandOnClick:l,isExpanded:n,toggleExpand:r};return Se($t,i),i}function Ht(){const e=pe($t);if(!e)throw new Error("foo");return e}const Kt=$({index:Number,item:Object,cellProps:[Object,Function],collapseIcon:{type:J,default:"$collapse"},expandIcon:{type:J,default:"$expand"},onClick:Ne(),onContextmenu:Ne(),onDblclick:Ne(),...Xe()},"VDataTableRow"),Pl=oe()({name:"VDataTableRow",props:Kt(),setup(e,l){let{slots:t}=l;const{displayClasses:a,mobile:n}=Ie(e,"v-data-table__tr"),{isSelected:r,toggleSelect:i,someSelected:u,allSelected:o,selectAll:d}=Me(),{isExpanded:s,toggleExpand:b}=Ht(),{toggleSort:v,sortBy:y,isSorted:g}=At(),{columns:x}=Re();se(()=>P("tr",{class:ve(["v-data-table__tr",{"v-data-table__tr--clickable":!!(e.onClick||e.onContextmenu||e.onDblclick)},a.value]),onClick:e.onClick,onContextmenu:e.onContextmenu,onDblclick:e.onDblclick},[e.item&&x.value.map((f,p)=>{const c=e.item,T=`item.${f.key}`,_=`header.${f.key}`,S={index:e.index,item:c.raw,internalItem:c,value:Ae(c.columns,f.key),column:f,isSelected:r,toggleSelect:i,isExpanded:s,toggleExpand:b},z={column:f,selectAll:d,isSorted:g,toggleSort:v,sortBy:y.value,someSelected:u.value,allSelected:o.value,getSortIcon:()=>""},E=typeof e.cellProps=="function"?e.cellProps({index:S.index,item:S.item,internalItem:S.internalItem,value:S.value,column:f}):e.cellProps,I=typeof f.cellProps=="function"?f.cellProps({index:S.index,item:S.item,internalItem:S.internalItem,value:S.value}):f.cellProps,w=f.key==="data-table-select"||f.key==="data-table-expand",m=f.key==="data-table-group"&&f.width===0&&!f.title;return k(ke,M({align:f.align,indent:f.intent,class:{"v-data-table__td--expanded-row":f.key==="data-table-expand","v-data-table__td--select-row":f.key==="data-table-select"},fixed:f.fixed,fixedOffset:f.fixedOffset,fixedEndOffset:f.fixedEndOffset,lastFixed:f.lastFixed,firstFixedEnd:f.firstFixedEnd,maxWidth:n.value?void 0:f.maxWidth,noPadding:w,empty:m,nowrap:f.nowrap,width:n.value?void 0:f.width},E,I),{default:()=>{var B,G,le,re;if(f.key==="data-table-select")return((B=t["item.data-table-select"])==null?void 0:B.call(t,{...S,props:{disabled:!c.selectable,modelValue:r([c]),onClick:Fe(()=>i(c),["stop"])}}))??k(Le,{disabled:!c.selectable,modelValue:r([c]),onClick:Fe(H=>i(c,e.index,H),["stop"])},null);if(f.key==="data-table-expand")return((G=t["item.data-table-expand"])==null?void 0:G.call(t,{...S,props:{icon:s(c)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:Fe(()=>b(c),["stop"])}}))??k(ge,{icon:s(c)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:Fe(()=>b(c),["stop"])},null);if(t[T]&&!n.value)return t[T](S);const V=Ta(S.value);return n.value?P(ue,null,[P("div",{class:"v-data-table__td-title"},[((le=t[_])==null?void 0:le.call(t,z))??f.title]),P("div",{class:"v-data-table__td-value"},[((re=t[T])==null?void 0:re.call(t,S))??V])]):V}})})]))}}),zt=$({loading:[Boolean,String],loadingText:{type:String,default:"$vuetify.dataIterator.loadingText"},hideNoData:Boolean,items:{type:Array,default:()=>[]},noDataText:{type:String,default:"$vuetify.noDataText"},rowProps:[Object,Function],cellProps:[Object,Function],...Ge(Kt(),["collapseIcon","expandIcon"]),...Ge(Nt(),["groupCollapseIcon","groupExpandIcon"]),...Xe()},"VDataTableRows"),st=oe()({name:"VDataTableRows",inheritAttrs:!1,props:zt(),setup(e,l){let{attrs:t,slots:a}=l;const{columns:n}=Re(),{expandOnClick:r,toggleExpand:i,isExpanded:u}=Ht(),{isSelected:o,toggleSelect:d}=Me(),{toggleGroup:s,isGroupOpen:b}=Lt(),{t:v}=he(),{mobile:y}=Ie(e);return se(()=>{var x,f;const g=Ge(e,["groupCollapseIcon","groupExpandIcon"]);return e.loading&&(!e.items.length||a.loading)?P("tr",{class:"v-data-table-rows-loading",key:"loading"},[P("td",{colspan:n.value.length},[((x=a.loading)==null?void 0:x.call(a))??v(e.loadingText)])]):!e.loading&&!e.items.length&&!e.hideNoData?P("tr",{class:"v-data-table-rows-no-data",key:"no-data"},[P("td",{colspan:n.value.length},[((f=a["no-data"])==null?void 0:f.call(a))??v(e.noDataText)])]):P(ue,null,[e.items.map((p,c)=>{var S,z;if(p.type==="group"){const E={index:c,item:p,columns:n.value,isExpanded:u,toggleExpand:i,isSelected:o,toggleSelect:d,toggleGroup:s,isGroupOpen:b};return a["group-header"]?a["group-header"](E):k(pl,M({key:`group-header_${p.id}`,item:p},rt(t,":groupHeader",()=>E),g),a)}if(p.type==="group-summary"){const E={index:c,item:p,columns:n.value,toggleGroup:s};return((S=a["group-summary"])==null?void 0:S.call(a,E))??""}const T={index:c,item:p.raw,internalItem:p,columns:n.value,isExpanded:u,toggleExpand:i,isSelected:o,toggleSelect:d},_={...T,props:M({key:`item_${p.key??p.index}`,onClick:r.value?()=>{i(p)}:void 0,index:c,item:p,cellProps:e.cellProps,collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,mobile:y.value},rt(t,":row",()=>T),typeof e.rowProps=="function"?e.rowProps({item:T.item,index:T.index,internalItem:T.internalItem}):e.rowProps)};return P(ue,{key:_.props.key},[a.item?a.item(_):k(Pl,_.props,a),u(p)&&((z=a["expanded-row"])==null?void 0:z.call(a,T))])})])}),{}}}),jt=$({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,striped:{type:String,default:null,validator:e=>["even","odd"].includes(e)},...Ee(),...mt(),...vt(),...ft()},"VTable"),ct=oe()({name:"VTable",props:jt(),setup(e,l){let{slots:t,emit:a}=l;const{themeClasses:n}=dt(e),{densityClasses:r}=Da(e);return se(()=>{const i={VCheckboxBtn:{density:e.density}};return k(e.tag,{class:ve(["v-table",{"v-table--fixed-height":!!e.height,"v-table--fixed-header":e.fixedHeader,"v-table--fixed-footer":e.fixedFooter,"v-table--has-top":!!t.top,"v-table--has-bottom":!!t.bottom,"v-table--hover":e.hover,"v-table--striped-even":e.striped==="even","v-table--striped-odd":e.striped==="odd"},n.value,r.value,e.class]),style:Oe(e.style)},{default:()=>{var u,o;return[(u=t.top)==null?void 0:u.call(t),k(yt,{defaults:i},{default:()=>{var d;return[t.default?P("div",{class:"v-table__wrapper",style:{height:Q(e.height)}},[P("table",null,[t.default()])]):(d=t.wrapper)==null?void 0:d.call(t)]}}),(o=t.bottom)==null?void 0:o.call(t)]}})}),{}}}),kl=$({items:{type:Array,default:()=>[]},itemValue:{type:[String,Array,Function],default:"id"},itemSelectable:{type:[String,Array,Function],default:null},rowProps:[Object,Function],cellProps:[Object,Function],returnObject:Boolean},"DataTable-items");function Il(e,l,t,a){const n=e.returnObject?l:be(l,e.itemValue),r=be(l,e.itemSelectable,!0),i=a.reduce((u,o)=>(o.key!=null&&(u[o.key]=be(l,o.value)),u),{});return{type:"item",key:e.returnObject?be(l,e.itemValue):n,index:t,value:n,selectable:r,columns:i,raw:l}}function Vl(e,l,t){return l.map((a,n)=>Il(e,a,n,t))}function Tl(e,l){return{items:D(()=>Vl(e,e.items,l.value))}}function Dl(e){let{page:l,itemsPerPage:t,sortBy:a,groupBy:n,search:r}=e;const i=qe("VDataTable"),u=()=>({page:l.value,itemsPerPage:t.value,sortBy:a.value,groupBy:n.value,search:r.value});let o=null;ie(u,d=>{Pe(o,d)||(o&&o.search!==d.search&&(l.value=1),i.emit("update:options",d),o=d)},{deep:!0,immediate:!0})}const Fl=(e,l,t)=>{if(e==null||l==null)return-1;if(!l.length)return 0;e=e.toString().toLocaleLowerCase(),l=l.toString().toLocaleLowerCase();const a=[];let n=e.indexOf(l);for(;~n;)a.push([n,n+l.length]),n=e.indexOf(l,n+l.length);return a.length?a:-1};function He(e,l){if(!(e==null||typeof e=="boolean"||e===-1))return typeof e=="number"?[[e,e+l.length]]:Array.isArray(e[0])?e:[e]}const Cl=$({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function _l(e,l,t){var o;const a=[],n=(t==null?void 0:t.default)??Fl,r=t!=null&&t.filterKeys?xe(t.filterKeys):!1,i=Object.keys((t==null?void 0:t.customKeyFilter)??{}).length;if(!(e!=null&&e.length))return a;let u=null;e:for(let d=0;d<e.length;d++){const[s,b=s]=xe(e[d]),v={},y={};let g=-1;if((l||i>0)&&!(t!=null&&t.noFilter)){let x=!1;if(typeof s=="object"){if(s.type==="divider"||s.type==="subheader"){(u==null?void 0:u.type)==="divider"&&s.type==="subheader"&&a.push(u),u={index:d,matches:{},type:s.type};continue}const c=r||Object.keys(b);x=c.length===i;for(const T of c){const _=be(b,T),S=(o=t==null?void 0:t.customKeyFilter)==null?void 0:o[T];if(g=S?S(_,l,s):n(_,l,s),g!==-1&&g!==!1)S?v[T]=He(g,l):y[T]=He(g,l);else if((t==null?void 0:t.filterMode)==="every")continue e}}else g=n(s,l,s),g!==-1&&g!==!1&&(y.title=He(g,l));const f=Object.keys(y).length,p=Object.keys(v).length;if(!f&&!p||(t==null?void 0:t.filterMode)==="union"&&p!==i&&!f||(t==null?void 0:t.filterMode)==="intersection"&&(p!==i||!f&&i>0&&!x))continue}u&&(a.push(u),u=null),a.push({index:d,matches:{...y,...v}})}return a}function Bl(e,l,t,a){const n=ne([]),r=ne(new Map),i=D(()=>a!=null&&a.transform?we(l).map(o=>[o,a.transform(o)]):we(l));_e(()=>{const o=typeof t=="function"?t():we(t),d=typeof o!="string"&&typeof o!="number"?"":String(o),s=_l(i.value,d,{customKeyFilter:{...e.customKeyFilter,...we(a==null?void 0:a.customKeyFilter)},default:e.customFilter,filterKeys:e.filterKeys,filterMode:e.filterMode,noFilter:e.noFilter}),b=we(l),v=[],y=new Map;s.forEach(g=>{let{index:x,matches:f}=g;const p=b[x];v.push(p),y.set(p.value,f)}),n.value=v,r.value=y});function u(o){return r.value.get(o.value)}return{filteredItems:n,filteredMatches:r,getMatches:u}}const Al=$({...zt(),hideDefaultBody:Boolean,hideDefaultFooter:Boolean,hideDefaultHeader:Boolean,width:[String,Number],search:String,...Sl(),...gl(),...el(),...kl(),...il(),...cl(),...Ot(),...jt()},"DataTable"),Ol=$({...Xa(),...Al(),...Cl(),...wt()},"VDataTable"),$l=oe()({name:"VDataTable",props:Ol(),emits:{"update:modelValue":e=>!0,"update:page":e=>!0,"update:itemsPerPage":e=>!0,"update:sortBy":e=>!0,"update:options":e=>!0,"update:groupBy":e=>!0,"update:expanded":e=>!0,"update:currentItems":e=>!0},setup(e,l){let{attrs:t,slots:a}=l;const{groupBy:n}=hl(e),{sortBy:r,multiSort:i,mustSort:u}=dl(e),{page:o,itemsPerPage:d}=Qa(e),{disableSort:s}=Fa(e),{columns:b,headers:v,sortFunctions:y,sortRawFunctions:g,filterFunctions:x}=ul(e,{groupBy:n,showSelect:N(()=>e.showSelect),showExpand:N(()=>e.showExpand)}),{items:f}=Tl(e,b),p=N(()=>e.search),{filteredItems:c}=Bl(e,f,p,{transform:U=>U.columns,customKeyFilter:x}),{toggleSort:T}=fl({sortBy:r,multiSort:i,mustSort:u,page:o}),{sortByWithGroups:_,opened:S,extractRows:z,isGroupOpen:E,toggleGroup:I}=bl({groupBy:n,sortBy:r,disableSort:s}),{sortedItems:w}=vl(e,c,_,{transform:U=>({...U.raw,...U.columns}),sortFunctions:y,sortRawFunctions:g}),{flatItems:m}=xl(w,n,S,()=>!!a["group-summary"]),V=D(()=>m.value.length),{startIndex:B,stopIndex:G,pageCount:le,setItemsPerPage:re}=Ya({page:o,itemsPerPage:d,itemsLength:V}),{paginatedItems:H}=Za({items:m,startIndex:B,stopIndex:G,itemsPerPage:d}),te=D(()=>z(H.value)),{isSelected:ce,select:me,selectAll:F,toggleSelect:O,someSelected:W,allSelected:h}=sl(e,{allItems:f,currentPage:te}),{isExpanded:C,toggleExpand:L}=wl(e);Dl({page:o,itemsPerPage:d,sortBy:r,groupBy:n,search:p}),Ke({VDataTableRows:{hideNoData:N(()=>e.hideNoData),noDataText:N(()=>e.noDataText),loading:N(()=>e.loading),loadingText:N(()=>e.loadingText)}});const j=D(()=>({page:o.value,itemsPerPage:d.value,sortBy:r.value,pageCount:le.value,toggleSort:T,setItemsPerPage:re,someSelected:W.value,allSelected:h.value,isSelected:ce,select:me,selectAll:F,toggleSelect:O,isExpanded:C,toggleExpand:L,isGroupOpen:E,toggleGroup:I,items:te.value.map(U=>U.raw),internalItems:te.value,groupedItems:H.value,columns:b.value,headers:v.value}));return se(()=>{const U=ot.filterProps(e),A=it.filterProps(e),Z=st.filterProps(e),ee=ct.filterProps(e);return k(ct,M({class:["v-data-table",{"v-data-table--show-select":e.showSelect,"v-data-table--loading":e.loading},e.class],style:e.style},ee,{fixedHeader:e.fixedHeader||e.sticky}),{top:()=>{var X;return(X=a.top)==null?void 0:X.call(a,j.value)},default:()=>{var X,R,Y,q,K,fe;return a.default?a.default(j.value):P(ue,null,[(X=a.colgroup)==null?void 0:X.call(a,j.value),!e.hideDefaultHeader&&P("thead",{key:"thead"},[k(it,A,a)]),(R=a.thead)==null?void 0:R.call(a,j.value),!e.hideDefaultBody&&P("tbody",null,[(Y=a["body.prepend"])==null?void 0:Y.call(a,j.value),a.body?a.body(j.value):k(st,M(t,Z,{items:H.value}),a),(q=a["body.append"])==null?void 0:q.call(a,j.value)]),(K=a.tbody)==null?void 0:K.call(a,j.value),(fe=a.tfoot)==null?void 0:fe.call(a,j.value)])},bottom:()=>a.bottom?a.bottom(j.value):!e.hideDefaultFooter&&P(ue,null,[k(bt,null,null),k(ot,U,{prepend:a["footer.prepend"]})])})}),{}}});export{$l as V,ct as a,pt as b};
|