1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2026-08-12 17:40:32 +00:00
Classworks/assets/VDataTable-C0z5sFU7.js

2 lines
34 KiB
JavaScript

import{q as Y,p as E,o as je,z as Pe,j as Z,an as ee,u as re,a5 as De,I as $,ap as vt,a as G,aq as yt,w as le,ah as ht,r as We,ar as ge,as as ie,F as bt,a0 as Te,at as Ve,ag as we,aj as ke,au as Ae,ai as de,l as pt}from"./vendor-vuetify-KiFW-YAv.js";import{l as z,e as T,d as te,o as Ce,p as ae,k as S,j as k,m as j,n as me,w as xt,a as St,b as X,s as Pt,t as R,F as q,N as wt,I as kt,a1 as Re,x as ce,aa as fe,S as It,y as Dt}from"./vendor-vue-Hxtt57UU.js";import{V as Ne}from"./VPagination-DC48wzod.js";import{V as Ke,u as Tt,m as Vt}from"./VSelect-BdFWh1xd.js";import{a3 as Ct,H as Ft,a4 as Bt,f as Ge,a5 as Ot,M as Fe,h as ze,i as _t}from"./index-BvGH7GyK.js";import{V as ve}from"./VCheckboxBtn-D_PchAC2.js";import{V as Et}from"./VChip-CyVmT8se.js";import{b as $e,m as At}from"./VTable-C8JDgtcy.js";const Rt=E({page:{type:[Number,String],default:1},itemsPerPage:{type:[Number,String],default:10},pageBy:{type:String,default:"any"}},"DataTable-paginate"),qe=Symbol.for("vuetify:data-table-pagination");function Nt(e){const a=Y(e,"page",void 0,t=>Number(t??1)),l=Y(e,"itemsPerPage",void 0,t=>Number(t??10));return{page:a,itemsPerPage:l}}function Gt(e){const{page:a,itemsPerPage:l,itemsLength:t}=e,n=T(()=>l.value===-1?0:l.value*(a.value-1)),r=T(()=>l.value===-1?t.value:Math.min(t.value,n.value+l.value)),o=T(()=>l.value===-1||t.value===0?1:Math.ceil(t.value/l.value));Ce([a,o],()=>{a.value>o.value&&(a.value=o.value)});function s(f){l.value=f,a.value=1}function u(){a.value=Pe(a.value+1,1,o.value)}function d(){a.value=Pe(a.value-1,1,o.value)}function g(f){a.value=Pe(f,1,o.value)}const m={page:a,itemsPerPage:l,startIndex:n,stopIndex:r,pageCount:o,itemsLength:t,nextPage:u,prevPage:d,setPage:g,setItemsPerPage:s};return ae(qe,m),m}function $t(){const e=te(qe);if(!e)throw new Error("Missing pagination!");return e}function Ht(e){const a=je("usePaginatedItems"),{items:l,startIndex:t,stopIndex:n,itemsPerPage:r}=e,o=T(()=>r.value<=0?z(l):z(l).slice(t.value,n.value));return Ce(o,s=>{a.emit("update:currentItems",s)},{immediate:!0}),{paginatedItems:o}}function Lt(e){const{sortedItems:a,paginate:l,group:t}=e,n=z(e.pageBy);if(n==="item"){const{paginatedItems:r,pageCount:o,setItemsPerPage:s}=l(a),{flatItems:u}=t(r);return{pageCount:o,setItemsPerPage:s,paginatedItems:u}}if(n==="group"){const{flatItems:r,groups:o}=t(a),{paginatedItems:s,pageCount:u,setItemsPerPage:d}=l(o),g=T(()=>{if(!s.value.length)return[];const m=s.value.at(0).id,f=s.value.at(-1).id,p=r.value.findIndex(y=>y.type==="group"&&y.id===m),h=r.value.findIndex(y=>y.type==="group"&&y.id===f),x=r.value.findIndex((y,i)=>i>h&&y.type==="group"&&y.depth===0);return r.value.slice(p,x===-1?void 0:x)});return{pageCount:u,setItemsPerPage:d,paginatedItems:g}}if(n==="any"){const{flatItems:r}=t(a),{paginatedItems:o,pageCount:s,setItemsPerPage:u}=l(r);return{pageCount:s,setItemsPerPage:u,paginatedItems:o}}throw new Error(`Unrecognized pagination target ${n}`)}const Ue=E({color:String,prevIcon:{type:$,default:"$prev"},nextIcon:{type:$,default:"$next"},firstIcon:{type:$,default:"$first"},lastIcon:{type:$,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"),He=Z()({name:"VDataTableFooter",props:Ue(),setup(e,a){let{slots:l}=a;const{t}=ee(),{page:n,pageCount:r,startIndex:o,stopIndex:s,itemsLength:u,itemsPerPage:d,setItemsPerPage:g}=$t(),m=T(()=>e.itemsPerPageOptions.map(f=>typeof f=="number"?{value:f,title:f===-1?t("$vuetify.dataFooter.itemsPerPageAll"):String(f)}:{...f,title:isNaN(Number(f.title))?t(f.title):f.title}));return re(()=>{var p;const f=Ne.filterProps(e);return S("div",{class:"v-data-table-footer"},[(p=l.prepend)==null?void 0:p.call(l),S("div",{class:"v-data-table-footer__items-per-page"},[S("span",null,[t(e.itemsPerPageText)]),k(Ke,{items:m.value,itemColor:e.color,modelValue:d.value,"onUpdate:modelValue":h=>g(Number(h)),density:"compact",variant:"outlined","aria-label":t(e.itemsPerPageText),hideDetails:!0},null)]),S("div",{class:"v-data-table-footer__info"},[S("div",null,[t(e.pageText,u.value?o.value+1:0,s.value,u.value)])]),S("div",{class:"v-data-table-footer__pagination"},[k(Ne,j({modelValue:n.value,"onUpdate:modelValue":h=>n.value=h,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"},De(f,["color"])),null)])])}),{}}}),ne=vt({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,a)=>{let{slots:l}=a;const t=e.tag??"td",n=typeof e.fixed=="string"?e.fixed:e.fixed?"start":"none";return k(t,{class:me(["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:G(e.height),width:G(e.width),maxWidth:G(e.maxWidth),left:n==="start"?G(e.fixedOffset||null):void 0,right:n==="end"?G(e.fixedEndOffset||null):void 0,paddingInlineStart:e.indent?G(e.indent):void 0}},{default:()=>{var r;return[(r=l.default)==null?void 0:r.call(l)]}})}),Mt=E({headers:Array},"DataTable-header"),Qe=Symbol.for("vuetify:data-table-headers"),Je={title:"",sortable:!1},jt={...Je,width:48};function Wt(){const a=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).map(l=>({element:l,priority:0}));return{enqueue:(l,t)=>{let n=!1;for(let r=0;r<a.length;r++)if(a[r].priority>t){a.splice(r,0,{element:l,priority:t}),n=!0;break}n||a.push({element:l,priority:t})},size:()=>a.length,count:()=>{let l=0;if(!a.length)return 0;const t=Math.floor(a[0].priority);for(let n=0;n<a.length;n++)Math.floor(a[n].priority)===t&&(l+=1);return l},dequeue:()=>a.shift()}}function Ie(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(!e.children)a.push(e);else for(const l of e.children)Ie(l,a);return a}function Xe(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Set;for(const l of e)l.key&&a.add(l.key),l.children&&Xe(l.children,a);return a}function Kt(e){if(e.key){if(e.key==="data-table-group")return Je;if(["data-table-expand","data-table-select"].includes(e.key))return jt}}function Be(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.children?Math.max(a,...e.children.map(l=>Be(l,a+1))):a}function zt(e){let a=!1;function l(r,o){let s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"none";if(r)if(s!=="none"&&(r.fixed=s),r.fixed===!0&&(r.fixed="start"),r.fixed===o)if(r.children)if(o==="start")for(let u=r.children.length-1;u>=0;u--)l(r.children[u],o,o);else for(let u=0;u<r.children.length;u++)l(r.children[u],o,o);else!a&&o==="start"?r.lastFixed=!0:!a&&o==="end"?r.firstFixedEnd=!0:isNaN(Number(r.width))?yt(`Multiple fixed columns should have a static width (key: ${r.key})`):r.minWidth=Math.max(Number(r.width)||0,Number(r.minWidth)||0),a=!0;else if(r.children)if(o==="start")for(let u=r.children.length-1;u>=0;u--)l(r.children[u],o);else for(let u=0;u<r.children.length;u++)l(r.children[u],o);else a=!1}for(let r=e.length-1;r>=0;r--)l(e[r],"start");for(let r=0;r<e.length;r++)l(e[r],"end");let t=0;for(let r=0;r<e.length;r++)t=Ye(e[r],t);let n=0;for(let r=e.length-1;r>=0;r--)n=Ze(e[r],n)}function Ye(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return a;if(e.children){e.fixedOffset=a;for(const l of e.children)a=Ye(l,a)}else e.fixed&&e.fixed!=="end"&&(e.fixedOffset=a,a+=parseFloat(e.width||"0")||0);return a}function Ze(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return a;if(e.children){e.fixedEndOffset=a;for(const l of e.children)a=Ze(l,a)}else e.fixed==="end"&&(e.fixedEndOffset=a,a+=parseFloat(e.width||"0")||0);return a}function qt(e,a){const l=[];let t=0;const n=Wt(e);for(;n.size()>0;){let o=n.count();const s=[];let u=1;for(;o>0;){const{element:d,priority:g}=n.dequeue(),m=a-t-Be(d);if(s.push({...d,rowspan:m??1,colspan:d.children?Ie(d).length:1}),d.children)for(const f of d.children){const p=g%1+u/Math.pow(10,t+2);n.enqueue(f,t+m+p)}u+=1,o-=1}t+=1,l.push(s)}return{columns:e.map(o=>Ie(o)).flat(),headers:l}}function et(e){const a=[];for(const l of e){const t={...Kt(l),...l},n=t.key??(typeof t.value=="string"?t.value:null),r=t.value??n??null,o={...t,key:n,value:r,sortable:t.sortable??(t.key!=null||!!t.sort),children:t.children?et(t.children):void 0};a.push(o)}return a}function Ut(e,a){const l=X([]),t=X([]),n=X({}),r=X({}),o=X({});xt(()=>{var x,y,i;const d=(e.headers||Object.keys(e.items[0]??{}).map(c=>({key:c,title:St(c)}))).slice(),g=Xe(d);(x=a==null?void 0:a.groupBy)!=null&&x.value.length&&!g.has("data-table-group")&&d.unshift({key:"data-table-group",title:"Group"}),(y=a==null?void 0:a.showSelect)!=null&&y.value&&!g.has("data-table-select")&&d.unshift({key:"data-table-select"}),(i=a==null?void 0:a.showExpand)!=null&&i.value&&!g.has("data-table-expand")&&d.push({key:"data-table-expand"});const m=et(d);zt(m);const f=Math.max(...m.map(c=>Be(c)))+1,p=qt(m,f);l.value=p.headers,t.value=p.columns;const h=p.headers.flat(1);n.value={},r.value={},o.value={};for(const c of h)c.key&&(c.sortable&&(c.sort&&(n.value[c.key]=c.sort),c.sortRaw&&(r.value[c.key]=c.sortRaw)),c.filter&&(o.value[c.key]=c.filter))});const s={headers:l,columns:t,sortFunctions:n,sortRawFunctions:r,filterFunctions:o};return ae(Qe,s),s}function ye(){const e=te(Qe);if(!e)throw new Error("Missing headers!");return e}const Qt={showSelectAll:!1,allSelected:()=>[],select:e=>{var t;let{items:a,value:l}=e;return new Set(l?[(t=a[0])==null?void 0:t.value]:[])},selectAll:e=>{let{selected:a}=e;return a}},tt={showSelectAll:!0,allSelected:e=>{let{currentPage:a}=e;return a},select:e=>{let{items:a,value:l,selected:t}=e;for(const n of a)l?t.add(n.value):t.delete(n.value);return t},selectAll:e=>{let{value:a,currentPage:l,selected:t}=e;return tt.select({items:l,value:a,selected:t})}},Jt={showSelectAll:!0,allSelected:e=>{let{allItems:a}=e;return a},select:e=>{let{items:a,value:l,selected:t}=e;for(const n of a)l?t.add(n.value):t.delete(n.value);return t},selectAll:e=>{let{value:a,allItems:l}=e;return new Set(a?l.map(t=>t.value):[])}},Xt=E({showSelect:Boolean,selectStrategy:{type:[String,Object],default:"page"},modelValue:{type:Array,default:()=>[]},valueComparator:Function},"DataTable-select"),at=Symbol.for("vuetify:data-table-selection");function Yt(e,a){let{allItems:l,currentPage:t}=a;const n=Y(e,"modelValue",e.modelValue,c=>{const b=e.valueComparator;return b?new Set(le(c).map(P=>{var C;return((C=l.value.find(w=>b(P,w.value)))==null?void 0:C.value)??P})):new Set(le(c).map(P=>{var C,w;return ht(P)?((C=l.value.find(F=>P===F.value))==null?void 0:C.value)??P:((w=l.value.find(F=>We(P,F.value)))==null?void 0:w.value)??P}))},c=>[...c.values()]),r=T(()=>l.value.filter(c=>c.selectable)),o=T(()=>z(t).filter(c=>c.selectable)),s=T(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;switch(e.selectStrategy){case"single":return Qt;case"all":return Jt;case"page":default:return tt}}),u=Pt(null);function d(c){return le(c).every(b=>n.value.has(b.value))}function g(c){return le(c).some(b=>n.value.has(b.value))}function m(c,b){const P=s.value.select({items:c,value:b,selected:new Set(n.value)});n.value=P}function f(c,b,P){const C=[],w=z(t);if(b=b??w.findIndex(F=>F.value===c.value),e.selectStrategy!=="single"&&(P!=null&&P.shiftKey)&&u.value!==null){const[F,U]=[u.value,b].sort((W,I)=>W-I);C.push(...w.slice(F,U+1).filter(W=>W.selectable))}else C.push(c),u.value=b;m(C,!d([c]))}function p(c){const b=s.value.selectAll({value:c,allItems:r.value,currentPage:o.value,selected:new Set(n.value)});n.value=b}const h=T(()=>n.value.size>0),x=T(()=>{const c=s.value.allSelected({allItems:r.value,currentPage:o.value});return!!c.length&&d(c)}),y=R(()=>s.value.showSelectAll),i={toggleSelect:f,select:m,selectAll:p,isSelected:d,isSomeSelected:g,someSelected:h,allSelected:x,showSelectAll:y,lastSelectedIndex:u,selectStrategy:s};return ae(at,i),i}function he(){const e=te(at);if(!e)throw new Error("Missing selection!");return e}const Zt=E({initialSortOrder:{type:String,default:"asc",validator:e=>!e||["asc","desc"].includes(e)},sortBy:{type:Array,default:()=>[]},customKeySort:Object,multiSort:{type:[Boolean,Object],default:!1},mustSort:Boolean},"DataTable-sort"),lt=Symbol.for("vuetify:data-table-sort");function ea(e){const a=R(()=>e.initialSortOrder),l=Y(e,"sortBy"),t=R(()=>e.mustSort),n=R(()=>e.multiSort);return{initialSortOrder:a,sortBy:l,multiSort:n,mustSort:t}}function ta(e,a){if(!bt(e))return{active:!!e};const{key:l,mode:t,modifier:n}=e,r=n==="alt"&&(a==null?void 0:a.altKey)||n==="shift"&&(a==null?void 0:a.shiftKey);return{active:!l||(a==null?void 0:a.ctrlKey)||(a==null?void 0:a.metaKey)||!1,mode:r?t==="append"?"prepend":"append":t}}function aa(e){const{initialSortOrder:a,sortBy:l,mustSort:t,multiSort:n,page:r}=e,o=function(d,g){let m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(d.key==null)return;let f=l.value.map(y=>({...y}))??[];const p=f.find(y=>y.key===d.key),h=a.value,x=a.value==="desc"?"asc":"desc";if(p)p.order===x?m||t.value&&f.length===1?p.order=a.value:f=f.filter(y=>y.key!==d.key):p.order=x;else{const{active:y,mode:i}=ta(n.value,g);y?i==="prepend"?f.unshift({key:d.key,order:h}):f.push({key:d.key,order:h}):f=[{key:d.key,order:h}]}l.value=f,r&&(r.value=1)};function s(d){return!!l.value.find(g=>g.key===d.key)}const u={sortBy:l,toggleSort:o,isSorted:s};return ae(lt,u),u}function nt(){const e=te(lt);if(!e)throw new Error("Missing sort!");return e}function la(e,a,l,t){const n=ee();return{sortedItems:T(()=>{var o,s;return l.value.length?na(a.value,l.value,n.current.value,{transform:t==null?void 0:t.transform,sortFunctions:{...e.customKeySort,...(o=t==null?void 0:t.sortFunctions)==null?void 0:o.value},sortRawFunctions:(s=t==null?void 0:t.sortRawFunctions)==null?void 0:s.value}):a.value})}}function na(e,a,l,t){const n=new Intl.Collator(l,{sensitivity:"accent",usage:"sort"});return e.map(o=>[o,t!=null&&t.transform?t.transform(o):o]).sort((o,s)=>{var u,d;for(let g=0;g<a.length;g++){let m=!1;const f=a[g].key,p=a[g].order??"asc";if(p===!1)continue;let h=ge(o[1],f),x=ge(s[1],f),y=o[0].raw,i=s[0].raw;if(p==="desc"&&([h,x]=[x,h],[y,i]=[i,y]),(u=t==null?void 0:t.sortRawFunctions)!=null&&u[f]){const c=t.sortRawFunctions[f](y,i);if(c==null)continue;if(m=!0,c)return c}if((d=t==null?void 0:t.sortFunctions)!=null&&d[f]){const c=t.sortFunctions[f](h,x);if(c==null)continue;if(m=!0,c)return c}if(!m&&(h instanceof Date&&x instanceof Date&&(h=h.getTime(),x=x.getTime()),[h,x]=[h,x].map(c=>c!=null?c.toString().toLocaleLowerCase():c),h!==x))return ie(h)&&ie(x)?0:ie(h)?-1:ie(x)?1:!isNaN(h)&&!isNaN(x)?Number(h)-Number(x):n.compare(h,x)}return 0}).map(o=>{let[s]=o;return s})}const rt=E({color:String,disableSort:Boolean,fixedHeader:Boolean,multiSort:Boolean,initialSortOrder:String,sortIcon:{type:$},sortAscIcon:{type:$,default:"$sortAsc"},sortDescIcon:{type:$,default:"$sortDesc"},headerProps:{type:Object},selectAllLabel:{type:String,default:"$vuetify.dataTable.ariaLabel.selectAll"},sticky:Boolean,...Fe(),...Ve(),...Ot()},"VDataTableHeaders"),Le=Z()({name:"VDataTableHeaders",props:rt(),setup(e,a){let{slots:l}=a;const{t}=ee(),{toggleSort:n,sortBy:r,isSorted:o}=nt(),{someSelected:s,allSelected:u,selectAll:d,showSelectAll:g}=he(),{columns:m,headers:f}=ye(),{loaderClasses:p}=Ct(e);function h(I,v){if(!(e.sticky||e.fixedHeader)&&!I.fixed)return;const V=typeof I.fixed=="string"?I.fixed:I.fixed?"start":"none";return{position:"sticky",left:V==="start"?G(I.fixedOffset):void 0,right:V==="end"?G(I.fixedEndOffset):void 0,top:e.sticky||e.fixedHeader?`calc(var(--v-table-header-height) * ${v})`:void 0}}function x(I,v){I.key==="Enter"&&!e.disableSort&&n(v,I)}function y(I){const v=r.value.find(V=>V.key===I.key);switch(v==null?void 0:v.order){case"asc":return e.sortAscIcon;case"desc":return e.sortDescIcon;default:return e.sortIcon||(e.initialSortOrder==="asc"?e.sortAscIcon:e.sortDescIcon)}}const{backgroundColorClasses:i,backgroundColorStyles:c}=Ft(()=>e.color),{displayClasses:b,mobile:P}=Te(e),C=T(()=>({headers:f.value,columns:m.value,toggleSort:n,isSorted:o,sortBy:r.value,someSelected:s.value,allSelected:u.value,selectAll:d,getSortIcon:y})),w=T(()=>["v-data-table__th",{"v-data-table__th--sticky":e.sticky||e.fixedHeader},b.value,p.value]),F=I=>{let{column:v,x:V,y:H}=I;const L=v.key==="data-table-select"||v.key==="data-table-expand",D=v.key==="data-table-group"&&v.width===0&&!v.title,B=j(e.headerProps??{},v.headerProps??{}),O=v.sortable&&!e.disableSort,K=O?r.value.find(_=>_.key===v.key):void 0,N=(K==null?void 0:K.order)==="asc"?"ascending":(K==null?void 0:K.order)==="desc"?"descending":void 0;return k(ne,j({tag:"th","aria-sort":N,align:v.align,class:[{"v-data-table__th--sortable":O,"v-data-table__th--sorted":o(v),"v-data-table__th--fixed":v.fixed},...w.value],style:{width:G(v.width),minWidth:G(v.minWidth),maxWidth:G(v.maxWidth),...h(v,H)},colspan:v.colspan,rowspan:v.rowspan,fixed:v.fixed,nowrap:v.nowrap,lastFixed:v.lastFixed,firstFixedEnd:v.firstFixedEnd,noPadding:L,empty:D,tabindex:O?0:void 0,onClick:O?_=>n(v,_):void 0,onKeydown:O?_=>x(_,v):void 0},B),{default:()=>{var oe;const _=`header.${v.key}`,J={column:v,selectAll:d,isSorted:o,toggleSort:n,sortBy:r.value,someSelected:s.value,allSelected:u.value,getSortIcon:y};return l[_]?l[_](J):D?"":v.key==="data-table-select"?((oe=l["header.data-table-select"])==null?void 0:oe.call(l,J))??(g.value&&k(ve,{"aria-label":t(e.selectAllLabel),color:e.color,density:e.density,modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":d},null)):S("div",{class:"v-data-table-header__content"},[S("span",null,[v.title]),v.sortable&&!e.disableSort&&k(Ge,{key:"icon",class:"v-data-table-header__sort-icon",icon:y(v)},null),e.multiSort&&o(v)&&S("div",{key:"badge",class:me(["v-data-table-header__sort-badge",...i.value]),style:wt(c.value)},[r.value.findIndex(be=>be.key===v.key)+1])])}})},U=()=>{const I=T(()=>m.value.filter(D=>(D==null?void 0:D.sortable)&&!e.disableSort)),v=m.value.find(D=>D.key==="data-table-select"),V=T({get:()=>I.value.filter(D=>{let{key:B}=D;return r.value.some(O=>O.key===B)}),set:D=>{const B=le(D),O=r.value.map(N=>N.key);B.filter(N=>{let{key:_}=N;return!O.includes(_)}).forEach(N=>n(N)),kt(()=>r.value=r.value.filter(N=>{let{key:_}=N;return B.some(J=>J.key===_)}))}});function H(){return k(Ke,{modelValue:V.value,"onUpdate:modelValue":D=>V.value=D,chips:!0,color:e.color,class:"v-data-table__td-sort-select",clearable:!0,density:"default",items:I.value,label:t("$vuetify.dataTable.sortBy"),multiple:e.multiSort,variant:"underlined",returnObject:!0,"onClick:clear":()=>r.value=[]},{chip:D=>{let{item:B}=D;return k(Et,{onClick:B.raw.sortable?()=>n(B.raw,void 0,!0):void 0,onMousedown:O=>{O.preventDefault(),O.stopPropagation()}},{default:()=>[B.title,k(Ge,{class:me(["v-data-table__td-sort-icon",o(B.raw)&&"v-data-table__td-sort-icon-active"]),icon:y(B.raw),size:"small"},null)]})}})}function L(){return k(ve,{"aria-label":t(e.selectAllLabel),class:"v-data-table-header__select-all",color:e.color,density:"compact",modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":()=>d(!u.value)},null)}return k(ne,j({tag:"th",class:[...w.value],colspan:f.value.length+1},e.headerProps),{default:()=>{var D;return[S("div",{class:"v-data-table-header__content"},[((D=l["mobile.header"])==null?void 0:D.call(l,C.value))??S(q,null,[I.value.length>0&&H(),v&&L()])])]}})},W=T(()=>{if(l["mobile.header"])return!0;const I=m.value.some(V=>(V==null?void 0:V.sortable)&&!e.disableSort),v=m.value.some(V=>V.key==="data-table-select");return I||v});re(()=>P.value?S(q,null,[W.value&&S("tr",null,[k(U,null,null)])]):S(q,null,[l.headers?l.headers(C.value):f.value.map((I,v)=>S("tr",null,[I.map((V,H)=>k(F,{column:V,x:H,y:v},null))])),e.loading&&S("tr",{class:"v-data-table-progress"},[S("th",{colspan:m.value.length},[k(Bt,{name:"v-data-table-progress",absolute:!0,active:!0,color:typeof e.loading=="boolean"||e.loading==="true"?e.color:e.loading,indeterminate:!0},{default:l.loader})])])]))}}),ra=E({groupBy:{type:Array,default:()=>[]}},"DataTable-group"),ot=Symbol.for("vuetify:data-table-group");function oa(e){return{groupBy:Y(e,"groupBy")}}function sa(e){const{disableSort:a,groupBy:l,sortBy:t}=e,n=X(new Set),r=T(()=>l.value.map(g=>({...g,order:g.order??!1})).concat(a!=null&&a.value?[]:t.value));function o(g){return n.value.has(g.id)}function s(g){const m=new Set(n.value);o(g)?m.delete(g.id):m.add(g.id),n.value=m}function u(g){function m(f){const p=[];for(const h of f.items)"type"in h&&h.type==="group"?p.push(...m(h)):p.push(h);return[...new Set(p)]}return m({items:g})}const d={sortByWithGroups:r,toggleGroup:s,opened:n,groupBy:l,extractRows:u,isGroupOpen:o};return ae(ot,d),d}function st(){const e=te(ot);if(!e)throw new Error("Missing group!");return e}function ua(e,a){if(!e.length)return[];const l=new Map;for(const t of e){const n=ge(t.raw,a);l.has(n)||l.set(n,[]),l.get(n).push(t)}return l}function ut(e,a){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"root";if(!a.length)return[];const n=ua(e,a[0]),r=[],o=a.slice(1);return n.forEach((s,u)=>{const d=a[0],g=`${t}_${d}_${u}`;r.push({depth:l,id:g,key:d,value:u,items:o.length?ut(s,o,l+1,g):s,type:"group"})}),r}function it(e,a,l){const t=[];for(const n of e)"type"in n&&n.type==="group"?(n.value!=null&&t.push(n),(a.has(n.id)||n.value==null)&&(t.push(...it(n.items,a,l)),l&&t.push({...n,type:"group-summary"}))):t.push(n);return t}function ia(e,a,l,t){const n=T(()=>a.value.length?ut(z(e),a.value.map(o=>o.key)):[]),r=T(()=>a.value.length?it(n.value,l.value,z(t)):z(e));return{groups:n,flatItems:r}}const dt=E({item:{type:Object,required:!0},groupCollapseIcon:{type:$,default:"$tableGroupCollapse"},groupExpandIcon:{type:$,default:"$tableGroupExpand"},selectGroupLabel:{type:String,default:"$vuetify.dataTable.ariaLabel.selectGroup"},...Fe()},"VDataTableGroupHeaderRow"),da=Z()({name:"VDataTableGroupHeaderRow",props:dt(),setup(e,a){let{slots:l}=a;const{t}=ee(),{isGroupOpen:n,toggleGroup:r,extractRows:o}=st(),{isSelected:s,isSomeSelected:u,select:d}=he(),{columns:g}=ye(),m=T(()=>o([e.item])),f=R(()=>g.value.length-(g.value.some(p=>p.key==="data-table-select")?1:0));return()=>S("tr",{class:"v-data-table-group-header-row",style:{"--v-data-table-group-header-row-depth":e.item.depth}},[g.value.map(p=>{var h,x;if(p.key==="data-table-group"){const y=n(e.item)?e.groupCollapseIcon:e.groupExpandIcon,i=()=>r(e.item);return((h=l["data-table-group"])==null?void 0:h.call(l,{item:e.item,count:m.value.length,props:{icon:y,onClick:i}}))??k(ne,{class:"v-data-table-group-header-row__column",colspan:f.value},{default:()=>[k(ze,{size:"small",variant:"text",icon:y,onClick:i},null),S("span",null,[e.item.value]),S("span",null,[Re("("),m.value.length,Re(")")])]})}else if(p.key==="data-table-select"){const y=m.value.filter(P=>P.selectable),i=y.length>0&&s(y),c=u(y)&&!i,b=P=>d(y,P);return((x=l["data-table-select"])==null?void 0:x.call(l,{props:{modelValue:i,indeterminate:c,"onUpdate:modelValue":b}}))??k(ne,{class:"v-data-table__td--select-row",noPadding:!0},{default:()=>[k(ve,{"aria-label":t(e.selectGroupLabel),density:e.density,disabled:y.length===0,modelValue:i,indeterminate:c,"onUpdate:modelValue":b},null)]})}return""})])}}),ca=E({expandOnClick:Boolean,showExpand:Boolean,expanded:{type:Array,default:()=>[]}},"DataTable-expand"),ct=Symbol.for("vuetify:datatable:expanded");function fa(e){const a=R(()=>e.expandOnClick),l=Y(e,"expanded",e.expanded,s=>new Set(s),s=>[...s.values()]);function t(s,u){const d=new Set(l.value),g=ce(s.value);if(u)d.add(g);else{const m=[...l.value].find(f=>ce(f)===g);d.delete(m)}l.value=d}function n(s){const u=ce(s.value);return[...l.value].some(d=>ce(d)===u)}function r(s){t(s,!n(s))}const o={expand:t,expanded:l,expandOnClick:a,isExpanded:n,toggleExpand:r};return ae(ct,o),o}function ft(){const e=te(ct);if(!e)throw new Error("foo");return e}const gt=E({color:String,index:Number,item:Object,cellProps:[Object,Function],collapseIcon:{type:$,default:"$collapse"},expandIcon:{type:$,default:"$expand"},selectRowLabel:{type:String,default:"$vuetify.dataTable.ariaLabel.selectRow"},onClick:we(),onContextmenu:we(),onDblclick:we(),...Fe(),...Ve()},"VDataTableRow"),ga=Z()({name:"VDataTableRow",props:gt(),setup(e,a){let{slots:l}=a;const{t}=ee(),{displayClasses:n,mobile:r}=Te(e,"v-data-table__tr"),{isSelected:o,toggleSelect:s,someSelected:u,allSelected:d,selectAll:g}=he(),{isExpanded:m,toggleExpand:f}=ft(),{toggleSort:p,sortBy:h,isSorted:x}=nt(),{columns:y}=ye();re(()=>S("tr",{class:me(["v-data-table__tr",{"v-data-table__tr--clickable":!!(e.onClick||e.onContextmenu||e.onDblclick)},n.value]),onClick:e.onClick,onContextmenu:e.onContextmenu,onDblclick:e.onDblclick},[e.item&&y.value.map((i,c)=>{const b=e.item,P=`item.${i.key}`,C=`header.${i.key}`,w={index:e.index,item:b.raw,internalItem:b,value:ge(b.columns,i.key),column:i,isSelected:o,toggleSelect:s,isExpanded:m,toggleExpand:f},F={column:i,selectAll:g,isSorted:x,toggleSort:p,sortBy:h.value,someSelected:u.value,allSelected:d.value,getSortIcon:()=>""},U=typeof e.cellProps=="function"?e.cellProps({index:w.index,item:w.item,internalItem:w.internalItem,value:w.value,column:i}):e.cellProps,W=typeof i.cellProps=="function"?i.cellProps({index:w.index,item:w.item,internalItem:w.internalItem,value:w.value}):i.cellProps,I=i.key==="data-table-select"||i.key==="data-table-expand",v=i.key==="data-table-group"&&i.width===0&&!i.title;return k(ne,j({align:i.align,indent:i.indent,class:{"v-data-table__td--expanded-row":i.key==="data-table-expand","v-data-table__td--select-row":i.key==="data-table-select"},fixed:i.fixed,fixedOffset:i.fixedOffset,fixedEndOffset:i.fixedEndOffset,lastFixed:i.lastFixed,firstFixedEnd:i.firstFixedEnd,maxWidth:r.value?void 0:i.maxWidth,noPadding:I,empty:v,nowrap:i.nowrap,width:r.value?void 0:i.width},U,W),{default:()=>{var H,L,D,B;if(i.key==="data-table-select")return((H=l["item.data-table-select"])==null?void 0:H.call(l,{...w,props:{color:e.color,disabled:!b.selectable,modelValue:o([b]),onClick:fe(()=>s(b),["stop"])}}))??k(ve,{"aria-label":t(e.selectRowLabel),color:e.color,disabled:!b.selectable,density:e.density,modelValue:o([b]),onClick:fe(O=>s(b,e.index,O),["stop"])},null);if(i.key==="data-table-expand")return((L=l["item.data-table-expand"])==null?void 0:L.call(l,{...w,props:{icon:m(b)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:fe(()=>f(b),["stop"])}}))??k(ze,{icon:m(b)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:fe(()=>f(b),["stop"])},null);if(l[P]&&!r.value)return l[P](w);const V=It(w.value);return r.value?S(q,null,[S("div",{class:"v-data-table__td-title"},[((D=l[C])==null?void 0:D.call(l,F))??i.title]),S("div",{class:"v-data-table__td-value"},[((B=l[P])==null?void 0:B.call(l,w))??V])]):V}})})]))}}),mt=E({color:String,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],...ke(gt(),["collapseIcon","expandIcon","density"]),...ke(dt(),["groupCollapseIcon","groupExpandIcon","density"]),...Ve()},"VDataTableRows"),Me=Z()({name:"VDataTableRows",inheritAttrs:!1,props:mt(),setup(e,a){let{attrs:l,slots:t}=a;const{columns:n}=ye(),{expandOnClick:r,toggleExpand:o,isExpanded:s}=ft(),{isSelected:u,toggleSelect:d}=he(),{toggleGroup:g,isGroupOpen:m}=st(),{t:f}=ee(),{mobile:p}=Te(e);return re(()=>{var x,y;const h=ke(e,["groupCollapseIcon","groupExpandIcon","density"]);return e.loading&&(!e.items.length||t.loading)?S("tr",{class:"v-data-table-rows-loading",key:"loading"},[S("td",{colspan:n.value.length},[((x=t.loading)==null?void 0:x.call(t))??f(e.loadingText)])]):!e.loading&&!e.items.length&&!e.hideNoData?S("tr",{class:"v-data-table-rows-no-data",key:"no-data"},[S("td",{colspan:n.value.length},[((y=t["no-data"])==null?void 0:y.call(t))??f(e.noDataText)])]):S(q,null,[e.items.map((i,c)=>{var C,w;if(i.type==="group"){const F={index:c,item:i,columns:n.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d,toggleGroup:g,isGroupOpen:m};return t["group-header"]?t["group-header"](F):k(da,j({key:`group-header_${i.id}`,item:i},Ae(l,":groupHeader",()=>F),h),t)}if(i.type==="group-summary"){const F={index:c,item:i,columns:n.value,toggleGroup:g};return((C=t["group-summary"])==null?void 0:C.call(t,F))??""}const b={index:i.virtualIndex??c,item:i.raw,internalItem:i,columns:n.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d},P={...b,props:j({key:`item_${i.key??i.index}`,onClick:r.value?()=>{o(i)}:void 0,index:c,item:i,color:e.color,cellProps:e.cellProps,collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,density:e.density,mobile:p.value},Ae(l,":row",()=>b),typeof e.rowProps=="function"?e.rowProps({item:b.item,index:b.index,internalItem:b.internalItem}):e.rowProps)};return S(q,{key:P.props.key},[t.item?t.item(P):k(ga,P.props,t),s(i)&&((w=t["expanded-row"])==null?void 0:w.call(t,b))])})])}),{}}}),ma=E({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 va(e,a,l,t){const n=e.returnObject?a:de(a,e.itemValue),r=de(a,e.itemSelectable,!0),o=t.reduce((s,u)=>(u.key!=null&&(s[u.key]=de(a,u.value)),s),{});return{type:"item",key:e.returnObject?de(a,e.itemValue):n,index:l,value:n,selectable:r,columns:o,raw:a}}function ya(e,a,l){return a.map((t,n)=>va(e,t,n,l))}function ha(e,a){return{items:T(()=>ya(e,e.items,a.value))}}function ba(e){let{page:a,itemsPerPage:l,sortBy:t,groupBy:n,search:r}=e;const o=je("VDataTable"),s=()=>({page:a.value,itemsPerPage:l.value,sortBy:t.value,groupBy:n.value,search:r.value});let u=null;Ce(s,d=>{We(u,d)||(u&&u.search!==d.search&&(a.value=1),o.emit("update:options",d),u=d)},{deep:!0,immediate:!0})}const pa=E({...mt(),hideDefaultBody:Boolean,hideDefaultFooter:Boolean,hideDefaultHeader:Boolean,width:[String,Number],search:String,...ca(),...ra(),...Mt(),...ma(),...Xt(),...Zt(),...De(rt(),["multiSort","initialSortOrder"]),...At()},"DataTable"),xa=E({...Rt(),...pa(),...Vt(),...Ue()},"VDataTable"),Ca=Z()({name:"VDataTable",props:xa(),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,a){let{attrs:l,slots:t}=a;const{groupBy:n}=oa(e),{initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u}=ea(e),{page:d,itemsPerPage:g}=Nt(e),{disableSort:m}=Dt(e),{columns:f,headers:p,sortFunctions:h,sortRawFunctions:x,filterFunctions:y}=Ut(e,{groupBy:n,showSelect:R(()=>e.showSelect),showExpand:R(()=>e.showExpand)}),{items:i}=ha(e,f),c=R(()=>e.search),{filteredItems:b}=Tt(e,i,c,{transform:A=>A.columns,customKeyFilter:y}),{toggleSort:P}=aa({initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u,page:d}),{sortByWithGroups:C,opened:w,extractRows:F,isGroupOpen:U,toggleGroup:W}=sa({groupBy:n,sortBy:o,disableSort:m}),{sortedItems:I}=la(e,b,C,{transform:A=>({...A.raw,...A.columns}),sortFunctions:h,sortRawFunctions:x}),v=T(()=>e.pageBy==="auto"?e.groupBy.length?"group":"item":e.pageBy),{pageCount:V,setItemsPerPage:H,paginatedItems:L}=Lt({pageBy:v,sortedItems:I,paginate:A=>{const pe=T(()=>z(A).length),{startIndex:xe,stopIndex:Se,pageCount:Q,setItemsPerPage:se}=Gt({page:d,itemsPerPage:g,itemsLength:pe}),{paginatedItems:ue}=Ht({items:A,startIndex:xe,stopIndex:Se,itemsPerPage:g});return{paginatedItems:ue,pageCount:Q,setItemsPerPage:se}},group:A=>ia(A,n,w,()=>!!t["group-summary"])}),D=T(()=>F(L.value)),{isSelected:B,select:O,selectAll:K,toggleSelect:N,someSelected:_,allSelected:J}=Yt(e,{allItems:i,currentPage:D}),{isExpanded:oe,toggleExpand:be}=fa(e);ba({page:d,itemsPerPage:g,sortBy:o,groupBy:n,search:c}),pt({VDataTableRows:{hideNoData:R(()=>e.hideNoData),noDataText:R(()=>e.noDataText),loading:R(()=>e.loading),loadingText:R(()=>e.loadingText)}});const M=T(()=>({page:d.value,itemsPerPage:g.value,sortBy:o.value,pageCount:V.value,toggleSort:P,setItemsPerPage:H,someSelected:_.value,allSelected:J.value,isSelected:B,select:O,selectAll:K,toggleSelect:N,isExpanded:oe,toggleExpand:be,isGroupOpen:U,toggleGroup:W,items:D.value.map(A=>A.raw),internalItems:D.value,groupedItems:L.value,columns:f.value,headers:p.value}));return re(()=>{const A=He.filterProps(e),pe=Le.filterProps(De(e,["multiSort"])),xe=Me.filterProps(e),Se=$e.filterProps(e);return k($e,j({class:["v-data-table",{"v-data-table--show-select":e.showSelect,"v-data-table--loading":e.loading},e.class],style:e.style},Se,{fixedHeader:e.fixedHeader||e.sticky}),{top:()=>{var Q;return(Q=t.top)==null?void 0:Q.call(t,M.value)},default:()=>{var Q,se,ue,Oe,_e,Ee;return t.default?t.default(M.value):S(q,null,[(Q=t.colgroup)==null?void 0:Q.call(t,M.value),!e.hideDefaultHeader&&S("thead",{key:"thead"},[k(Le,j(pe,{multiSort:!!e.multiSort}),t)]),(se=t.thead)==null?void 0:se.call(t,M.value),!e.hideDefaultBody&&S("tbody",null,[(ue=t["body.prepend"])==null?void 0:ue.call(t,M.value),t.body?t.body(M.value):k(Me,j(l,xe,{items:L.value}),t),(Oe=t["body.append"])==null?void 0:Oe.call(t,M.value)]),(_e=t.tbody)==null?void 0:_e.call(t,M.value),(Ee=t.tfoot)==null?void 0:Ee.call(t,M.value)])},bottom:()=>t.bottom?t.bottom(M.value):!e.hideDefaultFooter&&S(q,null,[k(_t,null,null),k(He,A,{prepend:t["footer.prepend"]})])})}),{}}});export{Ca as V};