vue3-easy-data-table
Advanced tools
Comparing version 1.4.13 to 1.4.14
@@ -713,5 +713,9 @@ var __defProp = Object.defineProperty; | ||
const rowsPerPageRef = ref(serverOptions.value ? serverOptions.value.rowsPerPage : rowsPerPage.value); | ||
const updateRowsPerPage = (option) => { | ||
rowsPerPageRef.value = option; | ||
}; | ||
return { | ||
rowsItemsComputed, | ||
rowsPerPageRef | ||
rowsPerPageRef, | ||
updateRowsPerPage | ||
}; | ||
@@ -1024,3 +1028,3 @@ } | ||
var DataTable_vue_vue_type_style_index_1_scoped_true_lang = ""; | ||
const _withScopeId = (n) => (pushScopeId("data-v-6a430436"), n = n(), popScopeId(), n); | ||
const _withScopeId = (n) => (pushScopeId("data-v-14bd0f78"), n = n(), popScopeId(), n); | ||
const _hoisted_1 = ["onClick"]; | ||
@@ -1078,3 +1082,3 @@ const _hoisted_2 = { | ||
useCssVars((_ctx) => ({ | ||
"3c94d7d6": unref(tableHeightPx) | ||
"1455c80b": unref(tableHeightPx) | ||
})); | ||
@@ -1138,3 +1142,4 @@ const { | ||
rowsItemsComputed, | ||
rowsPerPageRef | ||
rowsPerPageRef, | ||
updateRowsPerPage | ||
} = useRows(isServerSideMode, rowsItems, serverOptions, rowsPerPage); | ||
@@ -1225,3 +1230,6 @@ const { | ||
prevPage, | ||
updatePage | ||
updatePage, | ||
rowsPerPageOptions: rowsItemsComputed, | ||
rowsPerPageActiveOption: rowsPerPageRef, | ||
updateRowsPerPageActiveOption: updateRowsPerPage | ||
}); | ||
@@ -1391,3 +1399,3 @@ return (_ctx, _cache) => { | ||
}); | ||
var DataTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-6a430436"]]); | ||
var DataTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-14bd0f78"]]); | ||
if (typeof window !== "undefined" && window.Vue) { | ||
@@ -1394,0 +1402,0 @@ window.Vue.createApp({}).component("Vue3EasyDataTable", DataTable); |
@@ -1,1 +0,1 @@ | ||
(function(e,C){typeof exports=="object"&&typeof module!="undefined"?module.exports=C(require("vue")):typeof define=="function"&&define.amd?define(["vue"],C):(e=typeof globalThis!="undefined"?globalThis:e||self,e["vue3-easy-data-table"]=C(e.Vue))})(this,function(e){"use strict";var Rt=Object.defineProperty,zt=Object.defineProperties;var At=Object.getOwnPropertyDescriptors;var Pe=Object.getOwnPropertySymbols;var Ht=Object.prototype.hasOwnProperty,Ot=Object.prototype.propertyIsEnumerable;var Ce=(e,C,b)=>C in e?Rt(e,C,{enumerable:!0,configurable:!0,writable:!0,value:b}):e[C]=b,V=(e,C)=>{for(var b in C||(C={}))Ht.call(C,b)&&Ce(e,b,C[b]);if(Pe)for(var b of Pe(C))Ot.call(C,b)&&Ce(e,b,C[b]);return e},q=(e,C)=>zt(e,At(C));var C="",b=(n,o)=>{const t=n.__vccOpts||n;for(const[i,c]of o)t[i]=c;return t};const Ne=n=>(e.pushScopeId("data-v-e0a0b7f0"),n=n(),e.popScopeId(),n),Se=["onClick"],Be=["checked"],we=Ne(()=>e.createElementVNode("label",{for:"checbox"},null,-1));var Ie=b(e.defineComponent({props:{status:{type:String,required:!0}},emits:["change"],setup(n,{emit:o}){const t=n;e.useCssVars(l=>({"51ab8a49":e.unref(r)}));const i=e.computed(()=>t.status==="allSelected"),c=()=>{o("change",!i.value)},r=e.inject("themeColor");return(l,s)=>(e.openBlock(),e.createElementBlock("div",{class:"easy-checkbox",onClick:e.withModifiers(c,["stop","prevent"])},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(i),class:e.normalizeClass(n.status)},null,10,Be),we],8,Se))}}),[["__scopeId","data-v-e0a0b7f0"]]),jt="";const Ee=n=>(e.pushScopeId("data-v-7e69a276"),n=n(),e.popScopeId(),n),$e=["checked"],Ve=Ee(()=>e.createElementVNode("label",{for:"checbox"},null,-1));var ve=b(e.defineComponent({props:{checked:{type:Boolean,required:!0}},emits:["change"],setup(n,{emit:o}){e.useCssVars(i=>({fdaf7e9e:e.unref(t)}));const t=e.inject("themeColor");return(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:"easy-checkbox",onClick:c[0]||(c[0]=e.withModifiers(r=>o("change"),["stop","prevent"]))},[e.createElementVNode("input",{type:"checkbox",checked:n.checked},null,8,$e),Ve]))}}),[["__scopeId","data-v-7e69a276"]]),Wt="";const Le=n=>(e.pushScopeId("data-v-09dad912"),n=n(),e.popScopeId(),n),Fe={class:"easy-data-table__rows-selector"},Te={class:"rows-input"},Re=Le(()=>e.createElementVNode("div",{class:"triangle"},null,-1)),ze=["onClick"];var Ae=b(e.defineComponent({props:{modelValue:{type:Number,required:!0},rowsItems:{type:Array,required:!0}},emits:["update:modelValue"],setup(n,{emit:o}){const t=n;e.useCssVars(g=>({"7fe9410c":e.unref(k)}));const i=e.ref(!1),c=e.ref(!1),r=e.inject("dataTable");e.watch(i,g=>{if(g&&r){const y=window.innerHeight,p=r.value.getBoundingClientRect().height,x=r.value.getBoundingClientRect().top;y-(p+x)<=100?c.value=!0:c.value=!1}});const l=e.computed({get:()=>t.modelValue,set:g=>{o("update:modelValue",g)}}),s=g=>{l.value=g,i.value=!1},a=(g,y)=>{let p=g.parentNode;for(;p!=null;){if(p.classList&&p.classList.contains(y))return!0;p=p.parentNode}return!1},d=g=>{a(g.target,"easy-data-table__rows-selector")||(i.value=!1)};e.onMounted(()=>{document.addEventListener("click",d)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",d)});const k=e.inject("themeColor");return(g,y)=>(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("div",{class:"rows-input__wrapper",onClick:y[0]||(y[0]=p=>i.value=!i.value)},[e.createElementVNode("div",Te,e.toDisplayString(e.unref(l)),1),Re]),e.createElementVNode("ul",{class:e.normalizeClass(["select-items",{show:i.value,inside:c.value}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rowsItems,p=>(e.openBlock(),e.createElementBlock("li",{key:p,class:e.normalizeClass({selected:p===e.unref(l)}),onClick:x=>s(p)},e.toDisplayString(p),11,ze))),128))],2)]))}}),[["__scopeId","data-v-09dad912"]]),Jt="";const J=n=>(e.pushScopeId("data-v-1fa3a520"),n=n(),e.popScopeId(),n),He={class:"lds-ring"},Oe=[J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1))];var De=b(e.defineComponent({setup(n){e.useCssVars(t=>({"26774109":e.unref(o)}));const o=e.inject("themeColor");return(t,i)=>(e.openBlock(),e.createElementBlock("div",He,Oe))}}),[["__scopeId","data-v-1fa3a520"]]),Yt="";const je={class:"loader-line"};var Me=b(e.defineComponent({setup(n){e.useCssVars(t=>({"0d327f57":e.unref(o)}));const o=e.inject("themeColor");return(t,i)=>(e.openBlock(),e.createElementBlock("div",je))}}),[["__scopeId","data-v-7d281cac"]]),en="";const We={class:"buttons-pagination"},qe=["onClick"];var Je=b(e.defineComponent({props:{maxPaginationNumber:{type:Number,required:!0},currentPaginationNumber:{type:Number,required:!0}},emits:["updatePage"],setup(n,{emit:o}){const t=n;e.useCssVars(s=>({"40dd4f07":e.unref(l)}));const i=7,c=s=>{s.type==="button"&&!s.active&&o("updatePage",s.page)},r=e.computed(()=>{const s=[];if(t.maxPaginationNumber<=i)for(let a=1;a<=t.maxPaginationNumber;a+=1)s.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if([1,2,t.maxPaginationNumber,t.maxPaginationNumber-1].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)if(a<=3)s.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if(a===4)s.push({type:"omission"});else{const d=t.maxPaginationNumber-(i-a);s.push({type:"button",page:d,active:d===t.currentPaginationNumber,activePrev:d+1===t.currentPaginationNumber})}else if([3,4].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)a<=5?s.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber}):a===6?s.push({type:"omission"}):s.push({type:"button",page:t.maxPaginationNumber,active:t.maxPaginationNumber===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if([t.maxPaginationNumber-2,t.maxPaginationNumber-3].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)if(a===1)s.push({type:"button",page:1,active:t.currentPaginationNumber===1,activePrev:a+1===t.currentPaginationNumber});else if(a===2)s.push({type:"omission"});else{const d=t.maxPaginationNumber-(i-a);s.push({type:"button",page:d,active:d===t.currentPaginationNumber,activePrev:d+1===t.currentPaginationNumber})}else for(let a=1;a<=i;a+=1)if(a===1)s.push({type:"button",page:1,active:t.currentPaginationNumber===1,activePrev:a+1===t.currentPaginationNumber});else if(a===2||a===6)s.push({type:"omission"});else if(a===7)s.push({type:"button",page:t.maxPaginationNumber,active:t.maxPaginationNumber===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else{const d=4-a,k=t.currentPaginationNumber-d;s.push({type:"button",page:k,active:k===t.currentPaginationNumber,activePrev:k+1===t.currentPaginationNumber})}return s}),l=e.inject("themeColor");return(s,a)=>(e.openBlock(),e.createElementBlock("div",We,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),(d,k)=>(e.openBlock(),e.createElementBlock("div",{key:k,class:e.normalizeClass(["item",{button:d.type==="button",active:d.type==="button"&&d.active,"active-prev":d.type==="button"&&d.activePrev,omission:d.type==="omission"}]),onClick:g=>c(d)},e.toDisplayString(d.type==="button"?d.page:"..."),11,qe))),128))]))}}),[["__scopeId","data-v-4c681fa2"]]),nn="";const le=n=>(e.pushScopeId("data-v-c9da5286"),n=n(),e.popScopeId(),n),Ue=[le(()=>e.createElementVNode("span",{class:"arrow arrow-right"},null,-1))],Ge=[le(()=>e.createElementVNode("span",{class:"arrow arrow-left"},null,-1))];var Ke=b(e.defineComponent({props:{isFirstPage:{type:Boolean,required:!1},isLastPage:{type:Boolean,required:!1}},emits:["clickPrevPage","clickNextPage"],setup(n,{emit:o}){const t=e.useSlots();return(i,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["previous-page__click-button",{"first-page":n.isFirstPage}]),onClick:c[0]||(c[0]=r=>o("clickPrevPage"))},Ue,2),e.unref(t).buttonsPagination?e.renderSlot(i.$slots,"buttonsPagination",{key:0},void 0,!0):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["next-page__click-button",{"last-page":n.isLastPage}]),onClick:c[1]||(c[1]=r=>o("clickNextPage"))},Ge,2)],64))}}),[["__scopeId","data-v-c9da5286"]]);function Qe(n,o,t){return{clickRow:c=>{const r=V({},c);if(n.value){const{checkbox:l}=c;delete r.checkbox,r.isSelected=l}if(o.value){const{index:l}=c;delete r.index,r.indexInCurrentPage=l}t("clickRow",r)}}}function Xe(n,o){const t=e.ref([]);return{expandingItemIndexList:t,updateExpandingItemIndexList:(r,l,s)=>{s.stopPropagation();const a=t.value.indexOf(r);a!==-1?t.value.splice(a,1):(o("expandRow",n.value.findIndex(d=>d===l)),t.value.push(r))},clearExpandingItemIndexList:()=>{t.value=[]}}}function Ye(n){const o=e.computed(()=>n.value.filter(c=>c.fixed)),t=e.computed(()=>o.value.length?o.value[o.value.length-1].value:""),i=e.computed(()=>{if(!o.value.length)return[];const c=o.value.map(r=>{var l;return(l=r.width)!=null?l:100});return o.value.map((r,l)=>{var s,a;return{value:r.value,fixed:(s=r.fixed)!=null?s:!0,width:(a=r.width)!=null?a:100,distance:l===0?0:c.reduce((d,k,g)=>{let y=d;return g<l&&(y+=k),y})}})});return{fixedHeaders:o,lastFixedColumn:t,fixedColumnsInfos:i}}function Ze(n,o,t,i,c,r,l,s,a,d,k,g,y,p,x,N,f){const _=e.computed(()=>r.value.findIndex(I=>I.fixed)!==-1),h=e.computed(()=>_.value?r.value.filter(I=>I.fixed):[]),P=e.computed(()=>r.value.filter(I=>!I.fixed)),S=e.ref((()=>p.value!==""?{sortBy:p.value,sortDesc:x.value==="desc"}:null)()),w=e.computed(()=>{var F;const T=[...h.value,...P.value].map(L=>{const H=L;return L.sortable&&(H.sortType="none"),g.value&&L.value===g.value.sortBy&&g.value.sortType&&(H.sortType=g.value.sortType),!d.value&&S.value&&L.value===S.value.sortBy&&(H.sortType=S.value.sortDesc?"desc":"asc"),H});let B=[];l.value?B=[i.value||_.value?{text:"",value:"expand",fixed:!0,width:o.value}:{text:"",value:"expand"},...T]:B=T;let A=[];y.value?A=[c.value||_.value?{text:"#",value:"index",fixed:!0,width:s.value}:{text:"#",value:"index"},...B]:A=B;let j=[];return a.value?j=[t.value||_.value?{text:"checkbox",value:"checkbox",fixed:!0,width:(F=n.value)!=null?F:36}:{text:"checkbox",value:"checkbox"},...A]:j=A,j}),z=e.computed(()=>w.value.map(I=>I.value));return{clientSortOptions:S,headerColumns:z,headersForRender:w,updateSortField:(I,T)=>{let B=null;T==="none"?B="asc":T==="asc"?B="desc":B=k.value?"asc":null,d.value?N(I,B):B===null?S.value=null:S.value={sortBy:I,sortDesc:B==="desc"},f("updateSort",{sortType:B,sortBy:I})}}}function et(n,o,t,i,c,r,l,s,a){const d=e.computed(()=>(n.value-1)*c.value+1),k=e.computed(()=>t.value?Math.min(a.value,n.value*c.value):Math.min(s.value.length,n.value*c.value)),g=e.computed(()=>t.value?i.value:s.value.slice(d.value-1,k.value)),y=e.computed(()=>l.value?g.value.map((N,f)=>V({index:d.value+f},N)):g.value),p=e.computed(()=>r.value.length===0||r.value.every(f=>s.value.findIndex(_=>JSON.stringify(f)===JSON.stringify(_))===-1)?"noneSelected":r.value.length===s.value.length&&r.value.every(_=>s.value.findIndex(h=>JSON.stringify(_)===JSON.stringify(h))!==-1)?"allSelected":"partSelected"),x=e.computed(()=>o.value?p.value==="allSelected"?y.value.map(N=>V({checkbox:!0},N)):p.value==="noneSelected"?y.value.map(N=>V({checkbox:!1},N)):y.value.map(N=>{const f=r.value.findIndex(_=>{const h=V({},N);return delete h.index,JSON.stringify(_)===JSON.stringify(h)})!==-1;return V({checkbox:f},N)}):y.value);return{currentPageFirstIndex:d,currentPageLastIndex:k,multipleSelectStatus:p,pageItems:x}}function tt(n,o,t,i,c,r){const l=e.ref(c.value?c.value.page:1),s=e.computed(()=>Math.ceil(t.value/i.value)),a=e.computed(()=>l.value===s.value),d=e.computed(()=>l.value===1);return{currentPaginationNumber:l,maxPaginationNumber:s,isLastPage:a,isFirstPage:d,nextPage:()=>{if(!a.value&&!o.value)if(n.value){const x=l.value+1;r(x)}else l.value+=1},prevPage:()=>{if(!d.value&&!o.value)if(n.value){const x=l.value-1;r(x)}else l.value-=1},updatePage:x=>{o.value||(n.value?r(x):l.value=x)},updateCurrentPaginationNumber:x=>{l.value=x}}}function nt(n,o,t,i){const c=e.computed(()=>!n.value&&o.value.findIndex(l=>l===i.value)===-1?[i.value,...o.value]:o.value),r=e.ref(t.value?t.value.rowsPerPage:i.value);return{rowsItemsComputed:c,rowsPerPageRef:r}}function at(n,o){const t=e.computed({get:()=>{if(n.value){const{page:l,rowsPerPage:s,sortBy:a,sortType:d}=n.value;return{page:l,rowsPerPage:s,sortBy:a!=null?a:null,sortType:d!=null?d:null}}return null},set:l=>{o("update:serverOptions",l)}});return{serverOptionsComputed:t,updateServerOptionsPage:l=>{t.value&&(t.value=q(V({},t.value),{page:l}))},updateServerOptionsSort:(l,s)=>{t.value&&(t.value=q(V({},t.value),{sortBy:s!==null?l:null,sortType:s}))},updateServerOptionsRowsPerPage:l=>{t.value&&(t.value=q(V({},t.value),{page:1,rowsPerPage:l}))}}}function D(n,o){if(n.includes(".")){let t="";return n.split(".").forEach((c,r)=>{t=r===0?o[c]:t[c]}),t}return o[n]}function ot(n,o){const t=D(n,o);return Array.isArray(t)?t.join(","):t}function lt(n,o,t,i,c,r,l,s,a){const d=e.computed(()=>{if(!t.value&&l.value!==""){const f=new RegExp(l.value,"i");return i.value.filter(_=>f.test(r.value!==""?_[r.value]:Object.values(_).join(" ")))}return i.value}),k=e.computed(()=>{let f=[...d.value];return o.value?(o.value.forEach(_=>{f=f.filter(h=>{const{field:P,comparison:S,criteria:w}=_;if(typeof S=="function")return S(h[P],w);switch(S){case"=":return h[P]===w;case"!=":return h[P]!==w;case">":return h[P]>w;case"<":return h[P]<w;case"<=":return h[P]<=w;case">=":return h[P]>=w;case"between":return h[P]>=Math.min(...w)&&h[P]<=Math.max(...w);default:return h[P]===w}})}),f):d.value}),g=e.computed(()=>{if(t.value)return i.value;if(n.value===null)return k.value;const{sortBy:f,sortDesc:_}=n.value;return[...k.value].sort((P,S)=>D(f,P)<D(f,S)?_?1:-1:D(f,P)>D(f,S)?_?-1:1:0)}),y=e.computed(()=>t.value?s.value:g.value.length),p=e.computed({get:()=>{var f;return(f=c.value)!=null?f:[]},set:f=>{a("update:itemsSelected",f)}});return{totalItems:g,selectItemsComputed:p,totalItemsLength:y,toggleSelectAll:f=>{p.value=f?g.value:[]},toggleSelectItem:f=>{const _=f.checkbox;if(delete f.checkbox,delete f.index,_)p.value=p.value.filter(h=>JSON.stringify(h)!==JSON.stringify(f));else{const h=p.value;h.unshift(f),p.value=h}}}}var rt={alternating:{type:Boolean,default:!1},buttonsPagination:{type:Boolean,default:!1},checkboxColumnWidth:{type:Number,default:null},emptyMessage:{type:String,default:"No Available Data"},expandColumnWidth:{type:Number,default:36},filterOptions:{type:Array,default:null},fixedExpand:{type:Boolean,default:!1},fixedHeader:{type:Boolean,default:!0},fixedCheckbox:{type:Boolean,default:!1},fixedIndex:{type:Boolean,default:!1},hideFooter:{type:Boolean,default:!1},hideRowsPerPage:{type:Boolean,default:!1},hideHeader:{type:Boolean,default:!1},indexColumnWidth:{type:Number,default:60},itemsSelected:{type:Array,default:null},loading:{type:Boolean,deault:!1},rowsPerPage:{type:Number,default:25},rowsItems:{type:Array,default:()=>[25,50,100]},rowsPerPageMessage:{type:String,default:"rows per page:"},searchField:{type:String,default:""},searchValue:{type:String,default:""},serverOptions:{type:Object,default:null},serverItemsLength:{type:Number,default:0},showIndex:{type:Boolean,default:!1},sortBy:{type:String,default:""},sortType:{type:String,default:"asc"},tableHeight:{type:Number,default:null},themeColor:{type:String,default:"#42b883"},tableClassName:{type:String,default:""},headerClassName:{type:String,default:""},headerItemClassName:{type:[Function,String],default:""},bodyRowClassName:{type:[Function,String],default:""},bodyItemClassName:{type:[Function,String],default:""},noHover:{type:Boolean,default:!1},borderCell:{type:Boolean,default:!1},mustSort:{type:Boolean,default:!1}},rn="",sn="";const st=n=>(e.pushScopeId("data-v-6a430436"),n=n(),e.popScopeId(),n),it=["onClick"],ct={key:1,class:"header"},dt={key:1,class:"header-text"},ut=["onClick"],pt=["onClick"],ft=["colspan"],mt={key:0,class:"vue3-easy-data-table__loading"},gt=st(()=>e.createElementVNode("div",{class:"vue3-easy-data-table__loading-mask"},null,-1)),ht={class:"loading-entity"},_t={key:1,class:"vue3-easy-data-table__message"},yt={key:0,class:"vue3-easy-data-table__footer"},kt={key:0,class:"pagination__rows-per-page"},bt={class:"pagination__items-index"},xt=e.defineComponent({props:q(V({},rt),{items:{type:Array,required:!0},headers:{type:Array,required:!0}}),emits:["clickRow","expandRow","updateSort","update:itemsSelected","update:serverOptions"],setup(n,{expose:o,emit:t}){const i=n;e.useCssVars(m=>({"3c94d7d6":e.unref(j)}));const{checkboxColumnWidth:c,expandColumnWidth:r,filterOptions:l,fixedCheckbox:s,fixedExpand:a,fixedHeader:d,fixedIndex:k,headers:g,indexColumnWidth:y,items:p,itemsSelected:x,loading:N,mustSort:f,rowsItems:_,rowsPerPage:h,searchField:P,searchValue:S,serverItemsLength:w,serverOptions:z,showIndex:U,sortBy:I,sortType:T,tableHeight:B,themeColor:A}=e.toRefs(i),j=e.computed(()=>B.value?`${B.value}px`:null);e.provide("themeColor",A.value);const F=e.useSlots(),L=e.computed(()=>!!F.pagination),H=e.computed(()=>!!F.loading),se=e.computed(()=>!!F.expand),ie=e.ref(),Q=e.ref();e.provide("dataTable",ie);const ce=e.ref(!1);e.onMounted(()=>{Q.value.addEventListener("scroll",()=>{ce.value=Q.value.scrollLeft>0})});const X=e.computed(()=>x.value!==null),R=e.computed(()=>z.value!==null),{serverOptionsComputed:Y,updateServerOptionsPage:Pt,updateServerOptionsSort:Ct,updateServerOptionsRowsPerPage:Nt}=at(z,t),{clientSortOptions:de,headerColumns:ue,headersForRender:M,updateSortField:St}=Ze(c,r,s,a,k,g,se,y,X,R,f,Y,U,I,T,Ct,t),{rowsItemsComputed:Bt,rowsPerPageRef:O}=nt(R,_,z,h),{totalItems:wt,selectItemsComputed:It,totalItemsLength:G,toggleSelectAll:Et,toggleSelectItem:$t}=lt(de,l,R,p,x,P,S,w,t),{currentPaginationNumber:W,maxPaginationNumber:Z,isLastPage:ee,isFirstPage:te,nextPage:ne,prevPage:ae,updatePage:K,updateCurrentPaginationNumber:Vt}=tt(R,N,G,O,z,Pt),{currentPageFirstIndex:pe,currentPageLastIndex:fe,multipleSelectStatus:me,pageItems:ge}=et(W,X,R,p,O,It,U,wt,G),{expandingItemIndexList:he,updateExpandingItemIndexList:vt,clearExpandingItemIndexList:_e}=Xe(p,t),{fixedHeaders:oe,lastFixedColumn:ye,fixedColumnsInfos:Lt}=Ye(M),{clickRow:Ft}=Qe(X,U,t),Tt=m=>{var u;const v=(u=m.width)!=null?u:oe.value.length?100:null;if(v)return`width: ${v}px; min-width: ${v}px;`},ke=(m,v="th")=>{if(!oe.value.length)return;const u=Lt.value.find(E=>E.value===m);if(u)return`left: ${u.distance}px;z-index: ${v==="th"?3:1};position: sticky;`};return e.watch(N,(m,v)=>{Y.value&&m===!1&&v===!0&&(Vt(Y.value.page),_e())}),e.watch(p,()=>{R.value||K(1)},{deep:!0}),e.watch(O,m=>{R.value?Nt(m):K(1)}),e.watch([W,de,P,S,l],()=>{_e()},{deep:!0}),o({currentPageFirstIndex:pe,currentPageLastIndex:fe,clientItemsLength:G,maxPaginationNumber:Z,currentPaginationNumber:W,isLastPage:ee,isFirstPage:te,nextPage:ne,prevPage:ae,updatePage:K}),(m,v)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dataTable",ref:ie,class:e.normalizeClass(["vue3-easy-data-table",[m.tableClassName]])},[e.createElementVNode("div",{ref_key:"tableBody",ref:Q,class:e.normalizeClass(["vue3-easy-data-table__main",{"fixed-header":e.unref(d),"fixed-height":e.unref(B),"show-shadow":ce.value,"table-fixed":e.unref(oe).length,hoverable:!m.noHover,"border-cell":m.borderCell}])},[e.createElementVNode("table",null,[e.createElementVNode("colgroup",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M),(u,E)=>(e.openBlock(),e.createElementBlock("col",{key:E,style:e.normalizeStyle(Tt(u))},null,4))),128))]),e.unref(M).length&&!m.hideHeader?(e.openBlock(),e.createElementBlock("thead",{key:0,class:e.normalizeClass(["vue3-easy-data-table__header",[m.headerClassName]])},[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M),(u,E)=>(e.openBlock(),e.createElementBlock("th",{key:E,class:e.normalizeClass([{sortable:u.sortable,none:u.sortable&&u.sortType==="none",desc:u.sortable&&u.sortType==="desc",asc:u.sortable&&u.sortType==="asc",shadow:u.value===e.unref(ye)},typeof m.headerItemClassName=="string"?m.headerItemClassName:m.headerItemClassName(u,E)]),style:e.normalizeStyle(ke(u.value)),onClick:e.withModifiers($=>u.sortable&&u.sortType?e.unref(St)(u.value,u.sortType):null,["stop"])},[u.text==="checkbox"?(e.openBlock(),e.createBlock(Ie,{key:e.unref(me),status:e.unref(me),onChange:e.unref(Et)},null,8,["status","onChange"])):(e.openBlock(),e.createElementBlock("span",ct,[e.unref(F)[`header-${u.value}`]?e.renderSlot(m.$slots,`header-${u.value}`,e.normalizeProps(e.mergeProps({key:0},u)),void 0,!0):(e.openBlock(),e.createElementBlock("span",dt,e.toDisplayString(u.text),1)),u.sortable?(e.openBlock(),e.createElementBlock("i",{key:u.sortType?u.sortType:"none",class:e.normalizeClass(["sortType-icon",{desc:u.sortType==="desc"}])},null,2)):e.createCommentVNode("",!0)]))],14,it))),128))])],2)):e.createCommentVNode("",!0),e.unref(p).length&&e.unref(ue).length?(e.openBlock(),e.createElementBlock("tbody",{key:1,class:e.normalizeClass(["vue3-easy-data-table__body",{"row-alternation":m.alternating}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(ge),(u,E)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:E},[e.createElementVNode("tr",{class:e.normalizeClass([{"even-row":(E+1)%2===0},typeof m.bodyRowClassName=="string"?m.bodyRowClassName:m.bodyRowClassName(u,E)]),onClick:$=>e.unref(Ft)(u)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(ue),($,be)=>(e.openBlock(),e.createElementBlock("td",{key:be,style:e.normalizeStyle(ke($,"td")),class:e.normalizeClass([{shadow:$===e.unref(ye),"can-expand":$==="expand"},typeof m.bodyItemClassName=="string"?m.bodyItemClassName:m.bodyItemClassName($,be)]),onClick:xe=>$==="expand"?e.unref(vt)(E,u,xe):null},[e.unref(F)[`item-${$}`]?e.renderSlot(m.$slots,`item-${$}`,e.normalizeProps(e.mergeProps({key:0},u)),void 0,!0):$==="expand"?(e.openBlock(),e.createElementBlock("i",{key:1,class:e.normalizeClass(["expand-icon",{expanding:e.unref(he).includes(E)}])},null,2)):$==="checkbox"?(e.openBlock(),e.createBlock(ve,{key:2,checked:u[$],onChange:xe=>e.unref($t)(u)},null,8,["checked","onChange"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.createTextVNode(e.toDisplayString(e.unref(ot)($,u)),1)],64))],14,pt))),128))],10,ut),e.unref(se)&&e.unref(he).includes(E)?(e.openBlock(),e.createElementBlock("tr",{key:0,class:e.normalizeClass({"even-row":(E+1)%2===0})},[e.createElementVNode("td",{colspan:e.unref(M).length,class:"expand"},[u.expandLoading?(e.openBlock(),e.createBlock(Me,{key:0,class:"expand-loading"})):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"expand",e.normalizeProps(e.guardReactiveProps(u)),void 0,!0)],8,ft)],2)):e.createCommentVNode("",!0)],64))),128))],2)):e.createCommentVNode("",!0)]),e.unref(N)?(e.openBlock(),e.createElementBlock("div",mt,[gt,e.createElementVNode("div",ht,[e.unref(H)?e.renderSlot(m.$slots,"loading",{key:0},void 0,!0):(e.openBlock(),e.createBlock(De,{key:1}))])])):e.createCommentVNode("",!0),!e.unref(ge).length&&!e.unref(N)?(e.openBlock(),e.createElementBlock("div",_t,e.toDisplayString(m.emptyMessage),1)):e.createCommentVNode("",!0)],2),m.hideFooter?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",yt,[m.hideRowsPerPage?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",kt,[e.createTextVNode(e.toDisplayString(m.rowsPerPageMessage)+" ",1),e.createVNode(Ae,{modelValue:e.unref(O),"onUpdate:modelValue":v[0]||(v[0]=u=>e.isRef(O)?O.value=u:null),"rows-items":e.unref(Bt)},null,8,["modelValue","rows-items"])])),e.createElementVNode("div",bt,e.toDisplayString(`${e.unref(pe)}\u2013${e.unref(fe)}`)+" of "+e.toDisplayString(e.unref(G)),1),e.unref(L)?e.renderSlot(m.$slots,"pagination",e.normalizeProps(e.mergeProps({key:1},{isFirstPage:e.unref(te),isLastPage:e.unref(ee),currentPaginationNumber:e.unref(W),maxPaginationNumber:e.unref(Z),nextPage:e.unref(ne),prevPage:e.unref(ae)})),void 0,!0):(e.openBlock(),e.createBlock(Ke,{key:2,"is-first-page":e.unref(te),"is-last-page":e.unref(ee),onClickNextPage:e.unref(ne),onClickPrevPage:e.unref(ae)},e.createSlots({_:2},[m.buttonsPagination?{name:"buttonsPagination",fn:e.withCtx(()=>[e.createVNode(Je,{"current-pagination-number":e.unref(W),"max-pagination-number":e.unref(Z),onUpdatePage:e.unref(K)},null,8,["current-pagination-number","max-pagination-number","onUpdatePage"])])}:void 0]),1032,["is-first-page","is-last-page","onClickNextPage","onClickPrevPage"]))]))],2))}});var re=b(xt,[["__scopeId","data-v-6a430436"]]);return typeof window!="undefined"&&window.Vue&&window.Vue.createApp({}).component("Vue3EasyDataTable",re),re}); | ||
(function(e,C){typeof exports=="object"&&typeof module!="undefined"?module.exports=C(require("vue")):typeof define=="function"&&define.amd?define(["vue"],C):(e=typeof globalThis!="undefined"?globalThis:e||self,e["vue3-easy-data-table"]=C(e.Vue))})(this,function(e){"use strict";var Ot=Object.defineProperty,At=Object.defineProperties;var zt=Object.getOwnPropertyDescriptors;var Ce=Object.getOwnPropertySymbols;var Ht=Object.prototype.hasOwnProperty,Dt=Object.prototype.propertyIsEnumerable;var Ne=(e,C,b)=>C in e?Ot(e,C,{enumerable:!0,configurable:!0,writable:!0,value:b}):e[C]=b,V=(e,C)=>{for(var b in C||(C={}))Ht.call(C,b)&&Ne(e,b,C[b]);if(Ce)for(var b of Ce(C))Dt.call(C,b)&&Ne(e,b,C[b]);return e},q=(e,C)=>At(e,zt(C));var C="",b=(n,l)=>{const t=n.__vccOpts||n;for(const[i,c]of l)t[i]=c;return t};const Se=n=>(e.pushScopeId("data-v-e0a0b7f0"),n=n(),e.popScopeId(),n),Be=["onClick"],we=["checked"],Ie=Se(()=>e.createElementVNode("label",{for:"checbox"},null,-1));var Ee=b(e.defineComponent({props:{status:{type:String,required:!0}},emits:["change"],setup(n,{emit:l}){const t=n;e.useCssVars(s=>({"51ab8a49":e.unref(r)}));const i=e.computed(()=>t.status==="allSelected"),c=()=>{l("change",!i.value)},r=e.inject("themeColor");return(s,o)=>(e.openBlock(),e.createElementBlock("div",{class:"easy-checkbox",onClick:e.withModifiers(c,["stop","prevent"])},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(i),class:e.normalizeClass(n.status)},null,10,we),Ie],8,Be))}}),[["__scopeId","data-v-e0a0b7f0"]]),Mt="";const $e=n=>(e.pushScopeId("data-v-7e69a276"),n=n(),e.popScopeId(),n),Ve=["checked"],ve=$e(()=>e.createElementVNode("label",{for:"checbox"},null,-1));var Le=b(e.defineComponent({props:{checked:{type:Boolean,required:!0}},emits:["change"],setup(n,{emit:l}){e.useCssVars(i=>({fdaf7e9e:e.unref(t)}));const t=e.inject("themeColor");return(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:"easy-checkbox",onClick:c[0]||(c[0]=e.withModifiers(r=>l("change"),["stop","prevent"]))},[e.createElementVNode("input",{type:"checkbox",checked:n.checked},null,8,Ve),ve]))}}),[["__scopeId","data-v-7e69a276"]]),qt="";const Fe=n=>(e.pushScopeId("data-v-09dad912"),n=n(),e.popScopeId(),n),Re={class:"easy-data-table__rows-selector"},Te={class:"rows-input"},Oe=Fe(()=>e.createElementVNode("div",{class:"triangle"},null,-1)),Ae=["onClick"];var ze=b(e.defineComponent({props:{modelValue:{type:Number,required:!0},rowsItems:{type:Array,required:!0}},emits:["update:modelValue"],setup(n,{emit:l}){const t=n;e.useCssVars(g=>({"7fe9410c":e.unref(k)}));const i=e.ref(!1),c=e.ref(!1),r=e.inject("dataTable");e.watch(i,g=>{if(g&&r){const y=window.innerHeight,p=r.value.getBoundingClientRect().height,x=r.value.getBoundingClientRect().top;y-(p+x)<=100?c.value=!0:c.value=!1}});const s=e.computed({get:()=>t.modelValue,set:g=>{l("update:modelValue",g)}}),o=g=>{s.value=g,i.value=!1},a=(g,y)=>{let p=g.parentNode;for(;p!=null;){if(p.classList&&p.classList.contains(y))return!0;p=p.parentNode}return!1},d=g=>{a(g.target,"easy-data-table__rows-selector")||(i.value=!1)};e.onMounted(()=>{document.addEventListener("click",d)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",d)});const k=e.inject("themeColor");return(g,y)=>(e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("div",{class:"rows-input__wrapper",onClick:y[0]||(y[0]=p=>i.value=!i.value)},[e.createElementVNode("div",Te,e.toDisplayString(e.unref(s)),1),Oe]),e.createElementVNode("ul",{class:e.normalizeClass(["select-items",{show:i.value,inside:c.value}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rowsItems,p=>(e.openBlock(),e.createElementBlock("li",{key:p,class:e.normalizeClass({selected:p===e.unref(s)}),onClick:x=>o(p)},e.toDisplayString(p),11,Ae))),128))],2)]))}}),[["__scopeId","data-v-09dad912"]]),Ut="";const J=n=>(e.pushScopeId("data-v-1fa3a520"),n=n(),e.popScopeId(),n),He={class:"lds-ring"},De=[J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1)),J(()=>e.createElementVNode("div",null,null,-1))];var je=b(e.defineComponent({setup(n){e.useCssVars(t=>({"26774109":e.unref(l)}));const l=e.inject("themeColor");return(t,i)=>(e.openBlock(),e.createElementBlock("div",He,De))}}),[["__scopeId","data-v-1fa3a520"]]),Zt="";const Me={class:"loader-line"};var We=b(e.defineComponent({setup(n){e.useCssVars(t=>({"0d327f57":e.unref(l)}));const l=e.inject("themeColor");return(t,i)=>(e.openBlock(),e.createElementBlock("div",Me))}}),[["__scopeId","data-v-7d281cac"]]),tn="";const qe={class:"buttons-pagination"},Je=["onClick"];var Ue=b(e.defineComponent({props:{maxPaginationNumber:{type:Number,required:!0},currentPaginationNumber:{type:Number,required:!0}},emits:["updatePage"],setup(n,{emit:l}){const t=n;e.useCssVars(o=>({"40dd4f07":e.unref(s)}));const i=7,c=o=>{o.type==="button"&&!o.active&&l("updatePage",o.page)},r=e.computed(()=>{const o=[];if(t.maxPaginationNumber<=i)for(let a=1;a<=t.maxPaginationNumber;a+=1)o.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if([1,2,t.maxPaginationNumber,t.maxPaginationNumber-1].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)if(a<=3)o.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if(a===4)o.push({type:"omission"});else{const d=t.maxPaginationNumber-(i-a);o.push({type:"button",page:d,active:d===t.currentPaginationNumber,activePrev:d+1===t.currentPaginationNumber})}else if([3,4].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)a<=5?o.push({type:"button",page:a,active:a===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber}):a===6?o.push({type:"omission"}):o.push({type:"button",page:t.maxPaginationNumber,active:t.maxPaginationNumber===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else if([t.maxPaginationNumber-2,t.maxPaginationNumber-3].includes(t.currentPaginationNumber))for(let a=1;a<=i;a+=1)if(a===1)o.push({type:"button",page:1,active:t.currentPaginationNumber===1,activePrev:a+1===t.currentPaginationNumber});else if(a===2)o.push({type:"omission"});else{const d=t.maxPaginationNumber-(i-a);o.push({type:"button",page:d,active:d===t.currentPaginationNumber,activePrev:d+1===t.currentPaginationNumber})}else for(let a=1;a<=i;a+=1)if(a===1)o.push({type:"button",page:1,active:t.currentPaginationNumber===1,activePrev:a+1===t.currentPaginationNumber});else if(a===2||a===6)o.push({type:"omission"});else if(a===7)o.push({type:"button",page:t.maxPaginationNumber,active:t.maxPaginationNumber===t.currentPaginationNumber,activePrev:a+1===t.currentPaginationNumber});else{const d=4-a,k=t.currentPaginationNumber-d;o.push({type:"button",page:k,active:k===t.currentPaginationNumber,activePrev:k+1===t.currentPaginationNumber})}return o}),s=e.inject("themeColor");return(o,a)=>(e.openBlock(),e.createElementBlock("div",qe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),(d,k)=>(e.openBlock(),e.createElementBlock("div",{key:k,class:e.normalizeClass(["item",{button:d.type==="button",active:d.type==="button"&&d.active,"active-prev":d.type==="button"&&d.activePrev,omission:d.type==="omission"}]),onClick:g=>c(d)},e.toDisplayString(d.type==="button"?d.page:"..."),11,Je))),128))]))}}),[["__scopeId","data-v-4c681fa2"]]),an="";const le=n=>(e.pushScopeId("data-v-c9da5286"),n=n(),e.popScopeId(),n),Ge=[le(()=>e.createElementVNode("span",{class:"arrow arrow-right"},null,-1))],Ke=[le(()=>e.createElementVNode("span",{class:"arrow arrow-left"},null,-1))];var Qe=b(e.defineComponent({props:{isFirstPage:{type:Boolean,required:!1},isLastPage:{type:Boolean,required:!1}},emits:["clickPrevPage","clickNextPage"],setup(n,{emit:l}){const t=e.useSlots();return(i,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["previous-page__click-button",{"first-page":n.isFirstPage}]),onClick:c[0]||(c[0]=r=>l("clickPrevPage"))},Ge,2),e.unref(t).buttonsPagination?e.renderSlot(i.$slots,"buttonsPagination",{key:0},void 0,!0):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["next-page__click-button",{"last-page":n.isLastPage}]),onClick:c[1]||(c[1]=r=>l("clickNextPage"))},Ke,2)],64))}}),[["__scopeId","data-v-c9da5286"]]);function Xe(n,l,t){return{clickRow:c=>{const r=V({},c);if(n.value){const{checkbox:s}=c;delete r.checkbox,r.isSelected=s}if(l.value){const{index:s}=c;delete r.index,r.indexInCurrentPage=s}t("clickRow",r)}}}function Ye(n,l){const t=e.ref([]);return{expandingItemIndexList:t,updateExpandingItemIndexList:(r,s,o)=>{o.stopPropagation();const a=t.value.indexOf(r);a!==-1?t.value.splice(a,1):(l("expandRow",n.value.findIndex(d=>d===s)),t.value.push(r))},clearExpandingItemIndexList:()=>{t.value=[]}}}function Ze(n){const l=e.computed(()=>n.value.filter(c=>c.fixed)),t=e.computed(()=>l.value.length?l.value[l.value.length-1].value:""),i=e.computed(()=>{if(!l.value.length)return[];const c=l.value.map(r=>{var s;return(s=r.width)!=null?s:100});return l.value.map((r,s)=>{var o,a;return{value:r.value,fixed:(o=r.fixed)!=null?o:!0,width:(a=r.width)!=null?a:100,distance:s===0?0:c.reduce((d,k,g)=>{let y=d;return g<s&&(y+=k),y})}})});return{fixedHeaders:l,lastFixedColumn:t,fixedColumnsInfos:i}}function et(n,l,t,i,c,r,s,o,a,d,k,g,y,p,x,N,f){const _=e.computed(()=>r.value.findIndex(I=>I.fixed)!==-1),h=e.computed(()=>_.value?r.value.filter(I=>I.fixed):[]),P=e.computed(()=>r.value.filter(I=>!I.fixed)),S=e.ref((()=>p.value!==""?{sortBy:p.value,sortDesc:x.value==="desc"}:null)()),w=e.computed(()=>{var F;const R=[...h.value,...P.value].map(L=>{const H=L;return L.sortable&&(H.sortType="none"),g.value&&L.value===g.value.sortBy&&g.value.sortType&&(H.sortType=g.value.sortType),!d.value&&S.value&&L.value===S.value.sortBy&&(H.sortType=S.value.sortDesc?"desc":"asc"),H});let B=[];s.value?B=[i.value||_.value?{text:"",value:"expand",fixed:!0,width:l.value}:{text:"",value:"expand"},...R]:B=R;let z=[];y.value?z=[c.value||_.value?{text:"#",value:"index",fixed:!0,width:o.value}:{text:"#",value:"index"},...B]:z=B;let j=[];return a.value?j=[t.value||_.value?{text:"checkbox",value:"checkbox",fixed:!0,width:(F=n.value)!=null?F:36}:{text:"checkbox",value:"checkbox"},...z]:j=z,j}),A=e.computed(()=>w.value.map(I=>I.value));return{clientSortOptions:S,headerColumns:A,headersForRender:w,updateSortField:(I,R)=>{let B=null;R==="none"?B="asc":R==="asc"?B="desc":B=k.value?"asc":null,d.value?N(I,B):B===null?S.value=null:S.value={sortBy:I,sortDesc:B==="desc"},f("updateSort",{sortType:B,sortBy:I})}}}function tt(n,l,t,i,c,r,s,o,a){const d=e.computed(()=>(n.value-1)*c.value+1),k=e.computed(()=>t.value?Math.min(a.value,n.value*c.value):Math.min(o.value.length,n.value*c.value)),g=e.computed(()=>t.value?i.value:o.value.slice(d.value-1,k.value)),y=e.computed(()=>s.value?g.value.map((N,f)=>V({index:d.value+f},N)):g.value),p=e.computed(()=>r.value.length===0||r.value.every(f=>o.value.findIndex(_=>JSON.stringify(f)===JSON.stringify(_))===-1)?"noneSelected":r.value.length===o.value.length&&r.value.every(_=>o.value.findIndex(h=>JSON.stringify(_)===JSON.stringify(h))!==-1)?"allSelected":"partSelected"),x=e.computed(()=>l.value?p.value==="allSelected"?y.value.map(N=>V({checkbox:!0},N)):p.value==="noneSelected"?y.value.map(N=>V({checkbox:!1},N)):y.value.map(N=>{const f=r.value.findIndex(_=>{const h=V({},N);return delete h.index,JSON.stringify(_)===JSON.stringify(h)})!==-1;return V({checkbox:f},N)}):y.value);return{currentPageFirstIndex:d,currentPageLastIndex:k,multipleSelectStatus:p,pageItems:x}}function nt(n,l,t,i,c,r){const s=e.ref(c.value?c.value.page:1),o=e.computed(()=>Math.ceil(t.value/i.value)),a=e.computed(()=>s.value===o.value),d=e.computed(()=>s.value===1);return{currentPaginationNumber:s,maxPaginationNumber:o,isLastPage:a,isFirstPage:d,nextPage:()=>{if(!a.value&&!l.value)if(n.value){const x=s.value+1;r(x)}else s.value+=1},prevPage:()=>{if(!d.value&&!l.value)if(n.value){const x=s.value-1;r(x)}else s.value-=1},updatePage:x=>{l.value||(n.value?r(x):s.value=x)},updateCurrentPaginationNumber:x=>{s.value=x}}}function at(n,l,t,i){const c=e.computed(()=>!n.value&&l.value.findIndex(o=>o===i.value)===-1?[i.value,...l.value]:l.value),r=e.ref(t.value?t.value.rowsPerPage:i.value);return{rowsItemsComputed:c,rowsPerPageRef:r,updateRowsPerPage:o=>{r.value=o}}}function ot(n,l){const t=e.computed({get:()=>{if(n.value){const{page:s,rowsPerPage:o,sortBy:a,sortType:d}=n.value;return{page:s,rowsPerPage:o,sortBy:a!=null?a:null,sortType:d!=null?d:null}}return null},set:s=>{l("update:serverOptions",s)}});return{serverOptionsComputed:t,updateServerOptionsPage:s=>{t.value&&(t.value=q(V({},t.value),{page:s}))},updateServerOptionsSort:(s,o)=>{t.value&&(t.value=q(V({},t.value),{sortBy:o!==null?s:null,sortType:o}))},updateServerOptionsRowsPerPage:s=>{t.value&&(t.value=q(V({},t.value),{page:1,rowsPerPage:s}))}}}function D(n,l){if(n.includes(".")){let t="";return n.split(".").forEach((c,r)=>{t=r===0?l[c]:t[c]}),t}return l[n]}function lt(n,l){const t=D(n,l);return Array.isArray(t)?t.join(","):t}function rt(n,l,t,i,c,r,s,o,a){const d=e.computed(()=>{if(!t.value&&s.value!==""){const f=new RegExp(s.value,"i");return i.value.filter(_=>f.test(r.value!==""?_[r.value]:Object.values(_).join(" ")))}return i.value}),k=e.computed(()=>{let f=[...d.value];return l.value?(l.value.forEach(_=>{f=f.filter(h=>{const{field:P,comparison:S,criteria:w}=_;if(typeof S=="function")return S(h[P],w);switch(S){case"=":return h[P]===w;case"!=":return h[P]!==w;case">":return h[P]>w;case"<":return h[P]<w;case"<=":return h[P]<=w;case">=":return h[P]>=w;case"between":return h[P]>=Math.min(...w)&&h[P]<=Math.max(...w);default:return h[P]===w}})}),f):d.value}),g=e.computed(()=>{if(t.value)return i.value;if(n.value===null)return k.value;const{sortBy:f,sortDesc:_}=n.value;return[...k.value].sort((P,S)=>D(f,P)<D(f,S)?_?1:-1:D(f,P)>D(f,S)?_?-1:1:0)}),y=e.computed(()=>t.value?o.value:g.value.length),p=e.computed({get:()=>{var f;return(f=c.value)!=null?f:[]},set:f=>{a("update:itemsSelected",f)}});return{totalItems:g,selectItemsComputed:p,totalItemsLength:y,toggleSelectAll:f=>{p.value=f?g.value:[]},toggleSelectItem:f=>{const _=f.checkbox;if(delete f.checkbox,delete f.index,_)p.value=p.value.filter(h=>JSON.stringify(h)!==JSON.stringify(f));else{const h=p.value;h.unshift(f),p.value=h}}}}var st={alternating:{type:Boolean,default:!1},buttonsPagination:{type:Boolean,default:!1},checkboxColumnWidth:{type:Number,default:null},emptyMessage:{type:String,default:"No Available Data"},expandColumnWidth:{type:Number,default:36},filterOptions:{type:Array,default:null},fixedExpand:{type:Boolean,default:!1},fixedHeader:{type:Boolean,default:!0},fixedCheckbox:{type:Boolean,default:!1},fixedIndex:{type:Boolean,default:!1},hideFooter:{type:Boolean,default:!1},hideRowsPerPage:{type:Boolean,default:!1},hideHeader:{type:Boolean,default:!1},indexColumnWidth:{type:Number,default:60},itemsSelected:{type:Array,default:null},loading:{type:Boolean,deault:!1},rowsPerPage:{type:Number,default:25},rowsItems:{type:Array,default:()=>[25,50,100]},rowsPerPageMessage:{type:String,default:"rows per page:"},searchField:{type:String,default:""},searchValue:{type:String,default:""},serverOptions:{type:Object,default:null},serverItemsLength:{type:Number,default:0},showIndex:{type:Boolean,default:!1},sortBy:{type:String,default:""},sortType:{type:String,default:"asc"},tableHeight:{type:Number,default:null},themeColor:{type:String,default:"#42b883"},tableClassName:{type:String,default:""},headerClassName:{type:String,default:""},headerItemClassName:{type:[Function,String],default:""},bodyRowClassName:{type:[Function,String],default:""},bodyItemClassName:{type:[Function,String],default:""},noHover:{type:Boolean,default:!1},borderCell:{type:Boolean,default:!1},mustSort:{type:Boolean,default:!1}},sn="",cn="";const it=n=>(e.pushScopeId("data-v-14bd0f78"),n=n(),e.popScopeId(),n),ct=["onClick"],dt={key:1,class:"header"},ut={key:1,class:"header-text"},pt=["onClick"],ft=["onClick"],mt=["colspan"],gt={key:0,class:"vue3-easy-data-table__loading"},ht=it(()=>e.createElementVNode("div",{class:"vue3-easy-data-table__loading-mask"},null,-1)),_t={class:"loading-entity"},yt={key:1,class:"vue3-easy-data-table__message"},kt={key:0,class:"vue3-easy-data-table__footer"},bt={key:0,class:"pagination__rows-per-page"},xt={class:"pagination__items-index"},Pt=e.defineComponent({props:q(V({},st),{items:{type:Array,required:!0},headers:{type:Array,required:!0}}),emits:["clickRow","expandRow","updateSort","update:itemsSelected","update:serverOptions"],setup(n,{expose:l,emit:t}){const i=n;e.useCssVars(m=>({"1455c80b":e.unref(j)}));const{checkboxColumnWidth:c,expandColumnWidth:r,filterOptions:s,fixedCheckbox:o,fixedExpand:a,fixedHeader:d,fixedIndex:k,headers:g,indexColumnWidth:y,items:p,itemsSelected:x,loading:N,mustSort:f,rowsItems:_,rowsPerPage:h,searchField:P,searchValue:S,serverItemsLength:w,serverOptions:A,showIndex:U,sortBy:I,sortType:R,tableHeight:B,themeColor:z}=e.toRefs(i),j=e.computed(()=>B.value?`${B.value}px`:null);e.provide("themeColor",z.value);const F=e.useSlots(),L=e.computed(()=>!!F.pagination),H=e.computed(()=>!!F.loading),se=e.computed(()=>!!F.expand),ie=e.ref(),Q=e.ref();e.provide("dataTable",ie);const ce=e.ref(!1);e.onMounted(()=>{Q.value.addEventListener("scroll",()=>{ce.value=Q.value.scrollLeft>0})});const X=e.computed(()=>x.value!==null),T=e.computed(()=>A.value!==null),{serverOptionsComputed:Y,updateServerOptionsPage:Ct,updateServerOptionsSort:Nt,updateServerOptionsRowsPerPage:St}=ot(A,t),{clientSortOptions:de,headerColumns:ue,headersForRender:M,updateSortField:Bt}=et(c,r,o,a,k,g,se,y,X,T,f,Y,U,I,R,Nt,t),{rowsItemsComputed:pe,rowsPerPageRef:O,updateRowsPerPage:wt}=at(T,_,A,h),{totalItems:It,selectItemsComputed:Et,totalItemsLength:G,toggleSelectAll:$t,toggleSelectItem:Vt}=rt(de,s,T,p,x,P,S,w,t),{currentPaginationNumber:W,maxPaginationNumber:Z,isLastPage:ee,isFirstPage:te,nextPage:ne,prevPage:ae,updatePage:K,updateCurrentPaginationNumber:vt}=nt(T,N,G,O,A,Ct),{currentPageFirstIndex:fe,currentPageLastIndex:me,multipleSelectStatus:ge,pageItems:he}=tt(W,X,T,p,O,Et,U,It,G),{expandingItemIndexList:_e,updateExpandingItemIndexList:Lt,clearExpandingItemIndexList:ye}=Ye(p,t),{fixedHeaders:oe,lastFixedColumn:ke,fixedColumnsInfos:Ft}=Ze(M),{clickRow:Rt}=Xe(X,U,t),Tt=m=>{var u;const v=(u=m.width)!=null?u:oe.value.length?100:null;if(v)return`width: ${v}px; min-width: ${v}px;`},be=(m,v="th")=>{if(!oe.value.length)return;const u=Ft.value.find(E=>E.value===m);if(u)return`left: ${u.distance}px;z-index: ${v==="th"?3:1};position: sticky;`};return e.watch(N,(m,v)=>{Y.value&&m===!1&&v===!0&&(vt(Y.value.page),ye())}),e.watch(p,()=>{T.value||K(1)},{deep:!0}),e.watch(O,m=>{T.value?St(m):K(1)}),e.watch([W,de,P,S,s],()=>{ye()},{deep:!0}),l({currentPageFirstIndex:fe,currentPageLastIndex:me,clientItemsLength:G,maxPaginationNumber:Z,currentPaginationNumber:W,isLastPage:ee,isFirstPage:te,nextPage:ne,prevPage:ae,updatePage:K,rowsPerPageOptions:pe,rowsPerPageActiveOption:O,updateRowsPerPageActiveOption:wt}),(m,v)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dataTable",ref:ie,class:e.normalizeClass(["vue3-easy-data-table",[m.tableClassName]])},[e.createElementVNode("div",{ref_key:"tableBody",ref:Q,class:e.normalizeClass(["vue3-easy-data-table__main",{"fixed-header":e.unref(d),"fixed-height":e.unref(B),"show-shadow":ce.value,"table-fixed":e.unref(oe).length,hoverable:!m.noHover,"border-cell":m.borderCell}])},[e.createElementVNode("table",null,[e.createElementVNode("colgroup",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M),(u,E)=>(e.openBlock(),e.createElementBlock("col",{key:E,style:e.normalizeStyle(Tt(u))},null,4))),128))]),e.unref(M).length&&!m.hideHeader?(e.openBlock(),e.createElementBlock("thead",{key:0,class:e.normalizeClass(["vue3-easy-data-table__header",[m.headerClassName]])},[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M),(u,E)=>(e.openBlock(),e.createElementBlock("th",{key:E,class:e.normalizeClass([{sortable:u.sortable,none:u.sortable&&u.sortType==="none",desc:u.sortable&&u.sortType==="desc",asc:u.sortable&&u.sortType==="asc",shadow:u.value===e.unref(ke)},typeof m.headerItemClassName=="string"?m.headerItemClassName:m.headerItemClassName(u,E)]),style:e.normalizeStyle(be(u.value)),onClick:e.withModifiers($=>u.sortable&&u.sortType?e.unref(Bt)(u.value,u.sortType):null,["stop"])},[u.text==="checkbox"?(e.openBlock(),e.createBlock(Ee,{key:e.unref(ge),status:e.unref(ge),onChange:e.unref($t)},null,8,["status","onChange"])):(e.openBlock(),e.createElementBlock("span",dt,[e.unref(F)[`header-${u.value}`]?e.renderSlot(m.$slots,`header-${u.value}`,e.normalizeProps(e.mergeProps({key:0},u)),void 0,!0):(e.openBlock(),e.createElementBlock("span",ut,e.toDisplayString(u.text),1)),u.sortable?(e.openBlock(),e.createElementBlock("i",{key:u.sortType?u.sortType:"none",class:e.normalizeClass(["sortType-icon",{desc:u.sortType==="desc"}])},null,2)):e.createCommentVNode("",!0)]))],14,ct))),128))])],2)):e.createCommentVNode("",!0),e.unref(p).length&&e.unref(ue).length?(e.openBlock(),e.createElementBlock("tbody",{key:1,class:e.normalizeClass(["vue3-easy-data-table__body",{"row-alternation":m.alternating}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(he),(u,E)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:E},[e.createElementVNode("tr",{class:e.normalizeClass([{"even-row":(E+1)%2===0},typeof m.bodyRowClassName=="string"?m.bodyRowClassName:m.bodyRowClassName(u,E)]),onClick:$=>e.unref(Rt)(u)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(ue),($,xe)=>(e.openBlock(),e.createElementBlock("td",{key:xe,style:e.normalizeStyle(be($,"td")),class:e.normalizeClass([{shadow:$===e.unref(ke),"can-expand":$==="expand"},typeof m.bodyItemClassName=="string"?m.bodyItemClassName:m.bodyItemClassName($,xe)]),onClick:Pe=>$==="expand"?e.unref(Lt)(E,u,Pe):null},[e.unref(F)[`item-${$}`]?e.renderSlot(m.$slots,`item-${$}`,e.normalizeProps(e.mergeProps({key:0},u)),void 0,!0):$==="expand"?(e.openBlock(),e.createElementBlock("i",{key:1,class:e.normalizeClass(["expand-icon",{expanding:e.unref(_e).includes(E)}])},null,2)):$==="checkbox"?(e.openBlock(),e.createBlock(Le,{key:2,checked:u[$],onChange:Pe=>e.unref(Vt)(u)},null,8,["checked","onChange"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.createTextVNode(e.toDisplayString(e.unref(lt)($,u)),1)],64))],14,ft))),128))],10,pt),e.unref(se)&&e.unref(_e).includes(E)?(e.openBlock(),e.createElementBlock("tr",{key:0,class:e.normalizeClass({"even-row":(E+1)%2===0})},[e.createElementVNode("td",{colspan:e.unref(M).length,class:"expand"},[u.expandLoading?(e.openBlock(),e.createBlock(We,{key:0,class:"expand-loading"})):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"expand",e.normalizeProps(e.guardReactiveProps(u)),void 0,!0)],8,mt)],2)):e.createCommentVNode("",!0)],64))),128))],2)):e.createCommentVNode("",!0)]),e.unref(N)?(e.openBlock(),e.createElementBlock("div",gt,[ht,e.createElementVNode("div",_t,[e.unref(H)?e.renderSlot(m.$slots,"loading",{key:0},void 0,!0):(e.openBlock(),e.createBlock(je,{key:1}))])])):e.createCommentVNode("",!0),!e.unref(he).length&&!e.unref(N)?(e.openBlock(),e.createElementBlock("div",yt,e.toDisplayString(m.emptyMessage),1)):e.createCommentVNode("",!0)],2),m.hideFooter?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",kt,[m.hideRowsPerPage?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",bt,[e.createTextVNode(e.toDisplayString(m.rowsPerPageMessage)+" ",1),e.createVNode(ze,{modelValue:e.unref(O),"onUpdate:modelValue":v[0]||(v[0]=u=>e.isRef(O)?O.value=u:null),"rows-items":e.unref(pe)},null,8,["modelValue","rows-items"])])),e.createElementVNode("div",xt,e.toDisplayString(`${e.unref(fe)}\u2013${e.unref(me)}`)+" of "+e.toDisplayString(e.unref(G)),1),e.unref(L)?e.renderSlot(m.$slots,"pagination",e.normalizeProps(e.mergeProps({key:1},{isFirstPage:e.unref(te),isLastPage:e.unref(ee),currentPaginationNumber:e.unref(W),maxPaginationNumber:e.unref(Z),nextPage:e.unref(ne),prevPage:e.unref(ae)})),void 0,!0):(e.openBlock(),e.createBlock(Qe,{key:2,"is-first-page":e.unref(te),"is-last-page":e.unref(ee),onClickNextPage:e.unref(ne),onClickPrevPage:e.unref(ae)},e.createSlots({_:2},[m.buttonsPagination?{name:"buttonsPagination",fn:e.withCtx(()=>[e.createVNode(Ue,{"current-pagination-number":e.unref(W),"max-pagination-number":e.unref(Z),onUpdatePage:e.unref(K)},null,8,["current-pagination-number","max-pagination-number","onUpdatePage"])])}:void 0]),1032,["is-first-page","is-last-page","onClickNextPage","onClickPrevPage"]))]))],2))}});var re=b(Pt,[["__scopeId","data-v-14bd0f78"]]);return typeof window!="undefined"&&window.Vue&&window.Vue.createApp({}).component("Vue3EasyDataTable",re),re}); |
@@ -6,3 +6,3 @@ { | ||
"private": false, | ||
"version": "1.4.13", | ||
"version": "1.4.14", | ||
"types": "./types/main.d.ts", | ||
@@ -9,0 +9,0 @@ "license": "MIT", |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
101718
1604