@prefabs.tech/vue3-tanstack-table 0.26.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -3561,7 +3561,10 @@ const li = { class: "pagination" }, si = {
|
|
|
3561
3561
|
}), _i = {
|
|
3562
3562
|
key: 0,
|
|
3563
3563
|
class: "data-actions"
|
|
3564
|
-
}, Mi = {
|
|
3564
|
+
}, Mi = {
|
|
3565
|
+
key: 0,
|
|
3566
|
+
class: "title"
|
|
3567
|
+
}, Ei = { key: 0 }, ki = { key: 0 }, Li = {
|
|
3565
3568
|
name: "TableDataActions"
|
|
3566
3569
|
}, Ti = /* @__PURE__ */ Q({
|
|
3567
3570
|
...Li,
|
|
@@ -19,4 +19,4 @@
|
|
|
19
19
|
* LICENSE.md file in the root directory of this source tree.
|
|
20
20
|
*
|
|
21
21
|
* @license MIT
|
|
22
|
-
*/function ae(){return!0}const go=Symbol("merge-proxy"),fo={get(e,o,t){return o===go?t:e.get(o)},has(e,o){return e.has(o)},set:ae,deleteProperty:ae,getOwnPropertyDescriptor(e,o){return{configurable:!0,enumerable:!0,get(){return e.get(o)},set:ae,deleteProperty:ae}},ownKeys(e){return e.keys()}};function _e(e){return"value"in e?e.value:e}function U(){for(var e=arguments.length,o=new Array(e),t=0;t<e;t++)o[t]=arguments[t];return new Proxy({get(n){for(let r=o.length-1;r>=0;r--){const l=_e(o[r])[n];if(l!==void 0)return l}},has(n){for(let r=o.length-1;r>=0;r--)if(n in _e(o[r]))return!0;return!1},keys(){const n=[];for(let r=0;r<o.length;r++)n.push(...Object.keys(_e(o[r])));return[...Array.from(new Set(n))]}},fo)}const X=i.defineComponent({props:["render","props"],setup:e=>()=>typeof e.render=="function"||typeof e.render=="object"?i.h(e.render,e.props):e.render});function Rt(e){return U(e,{data:i.unref(e.data)})}function Ft(e){const o=i.isRef(e.data),t=U({state:{},onStateChange:()=>{},renderFallbackValue:null,mergeOptions(l,s){return o?{...l,...s}:U(l,s)}},o?Rt(e):e),n=io(t);if(o){const l=i.shallowRef(e.data);i.watch(l,()=>{n.setState(s=>({...s,data:l.value}))},{immediate:!0})}const r=i.ref(n.initialState);return i.watchEffect(()=>{n.setOptions(l=>{var s;const a=new Proxy({},{get:(u,c)=>r.value[c]});return U(l,o?Rt(e):e,{state:U(a,(s=e.state)!=null?s:{}),onStateChange:u=>{u instanceof Function?r.value=u(r.value):r.value=u,e.onStateChange==null||e.onStateChange(u)}})})}),n}var P=(e=>(e.BETWEEN="between",e.CONTAINS="contains",e.ENDS_WITH="endsWith",e.EQUALS="equals",e.GREATER_THAN="greaterThan",e.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",e.IN="in",e.IS_EMPTY="isEmpty",e.IS_NOT_EMPTY="isNotEmpty",e.IS_NOT_NULL="isNotNull",e.IS_NULL="isNull",e.LESS_THAN="lessThan",e.LESS_THAN_OR_EQUAL="lessThanOrEqual",e.LIKE="like",e.NOT_BETWEEN="notBetween",e.NOT_EQUAL="notEqual",e.NOT_IN="notIn",e.NOT_LIKE="notLike",e.STARTS_WITH="startsWith",e))(P||{}),v=(e=>(e.BETWEEN="bt",e.CONTAINS="ct",e.EMPTY="empty",e.ENDS_WITH="ew",e.EQUALS="eq",e.GREATER_THAN="gt",e.GREATER_THAN_OR_EQUAL="gte",e.IN="in",e.LESS_THAN="lt",e.LESS_THAN_OR_EQUAL="lte",e.LIKE="like",e.NULL="null",e.STARTS_WITH="sw",e))(v||{});const po={class:"pagination"},mo={key:0,class:"items-per-page-control"},ho=["value"],So=["value"],wo={key:1,class:"page-input-control"},Co={key:2,class:"pagination-buttons-wrapper"},yo={key:0},Ro={key:1},Fo={key:1},bo={key:3},ko={name:"TablePagination"},Po=i.defineComponent({...ko,props:{currentPage:{required:!0,type:Number},defaultItemsPerPage:{default:void 0,type:Number},inputDebounceTime:{default:void 0,type:Number},itemsPerPageControlLabel:{default:"Items per page",type:String},itemsPerPageOptions:{default:()=>[5,10,20,30],type:Array},pageInputLabel:{default:"Go to page:",type:String},showFirstLastButtons:{default:!0,type:Boolean},showItemsPerPageControl:{default:!0,type:Boolean},showPageButtons:{default:!1,type:Boolean},showPageInput:{type:Boolean,default:!1},showPreviousNextButtons:{default:!0,type:Boolean},totalItems:{required:!0,type:Number}},emits:["update:currentPage","update:itemsPerPage"],setup(e,{emit:o}){const t=e,n=o,r=i.ref(t.defaultItemsPerPage||t.itemsPerPageOptions[0]),l=i.computed(()=>Math.ceil(t.totalItems/r.value)),s=i.computed(()=>Array.from({length:l.value},(c,g)=>g+1)),a=c=>{const g=parseInt(c.target.value,10);r.value=g,n("update:itemsPerPage",r.value)},u=c=>{const g=parseInt(c.toString(),10)-1;!isNaN(g)&&g>=0&&g<l.value&&n("update:currentPage",g)};return(c,g)=>(i.openBlock(),i.createElementBlock("div",po,[e.showItemsPerPageControl?(i.openBlock(),i.createElementBlock("div",mo,[i.createElementVNode("span",null,i.toDisplayString(e.itemsPerPageControlLabel),1),i.createElementVNode("select",{value:r.value,onChange:a},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.itemsPerPageOptions,p=>(i.openBlock(),i.createElementBlock("option",{key:`items-per-page-option-${p}`,value:p},i.toDisplayString(p),9,So))),128))],40,ho)])):i.createCommentVNode("",!0),l.value>1&&e.showPageInput?(i.openBlock(),i.createElementBlock("div",wo,[i.createElementVNode("span",null,i.toDisplayString(e.pageInputLabel),1),i.createVNode(i.unref(B.DebouncedInput),{type:"number","debounce-time":e.inputDebounceTime,"onUpdate:modelValue":u},null,8,["debounce-time"])])):i.createCommentVNode("",!0),l.value>1?(i.openBlock(),i.createElementBlock("div",Co,[e.showFirstLastButtons||e.showPreviousNextButtons?(i.openBlock(),i.createElementBlock("div",yo,[e.showFirstLastButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,disabled:!(e.currentPage>0),class:"first-page",size:"small",onClick:g[0]||(g[0]=p=>c.$emit("update:currentPage",0))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-double-left"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0),e.showPreviousNextButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:1,disabled:!(e.currentPage>0),class:"previous-page",size:"small",onClick:g[1]||(g[1]=p=>c.$emit("update:currentPage",e.currentPage-1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-left"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0),i.createElementVNode("div",null,[e.showPageButtons?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(s.value,p=>(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:`page-button-${p}`,class:i.normalizeClass(`page-button ${p===e.currentPage+1?"active":""}`),label:`${p}`,size:"small",onClick:f=>c.$emit("update:currentPage",p-1)},null,8,["class","label","onClick"]))),128)):(i.openBlock(),i.createElementBlock("span",Ro,i.toDisplayString(`${e.currentPage+1} / ${l.value}`),1))]),e.showFirstLastButtons||e.showPreviousNextButtons?(i.openBlock(),i.createElementBlock("div",Fo,[e.showPreviousNextButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,disabled:!(e.currentPage<l.value-1),class:"next-page",size:"small",onClick:g[2]||(g[2]=p=>c.$emit("update:currentPage",e.currentPage+1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-right"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0),e.showFirstLastButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:1,disabled:!(e.currentPage<l.value-1),class:"last-page",size:"small",onClick:g[3]||(g[3]=p=>c.$emit("update:currentPage",l.value-1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-double-right"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0)])):(i.openBlock(),i.createElementBlock("span",bo,i.toDisplayString(`${e.currentPage+1} / ${l.value}`),1))]))}}),ue=0,$o=[10,20,30],Vo=10,bt="table",kt={day:"2-digit",month:"2-digit",year:"numeric"},xo={...kt,hour:"2-digit",minute:"2-digit",hour12:!1},Pt=({value:e,locale:o="en-GB",formatOptions:t})=>typeof e!="number"||isNaN(e)?e:new Intl.NumberFormat(o,t).format(e),Bo=(e,o,t)=>{const n=t??kt;return B.formatDate(e,o,n)},vo=(e,o,t)=>{const n=t??xo;return B.formatDateTime(e,o,n)},Y=e=>{switch(e){case P.CONTAINS:return{operator:v.CONTAINS};case P.STARTS_WITH:return{operator:v.STARTS_WITH};case P.ENDS_WITH:return{operator:v.ENDS_WITH};case P.EQUALS:return{operator:v.EQUALS};case P.NOT_EQUAL:return{operator:v.EQUALS,not:!0};case P.GREATER_THAN:return{operator:v.GREATER_THAN};case P.GREATER_THAN_OR_EQUAL:return{operator:v.GREATER_THAN_OR_EQUAL};case P.LESS_THAN:return{operator:v.LESS_THAN};case P.LESS_THAN_OR_EQUAL:return{operator:v.LESS_THAN_OR_EQUAL};case P.IS_NULL:return{operator:v.NULL};case P.IS_NOT_NULL:return{operator:v.NULL,not:!0};case P.IS_EMPTY:return{operator:v.EMPTY};case P.IS_NOT_EMPTY:return{operator:v.EMPTY,not:!0};case P.LIKE:return{operator:v.LIKE};case P.NOT_LIKE:return{operator:v.LIKE,not:!0};case P.IN:return{operator:v.IN};case P.NOT_IN:return{operator:v.IN,not:!0};case P.BETWEEN:return{operator:v.BETWEEN};case P.NOT_BETWEEN:return{operator:v.BETWEEN,not:!0};default:throw new Error(`Unhandled filter function: ${e}`)}},$t=e=>{switch(e){case!1:return"ASC";case!0:return"DESC";default:return""}},Me=({align:e,dataType:o})=>e||(o=="other"?"center":o=="number"||o=="currency"?"right":"left"),Vt=e=>{const o=e.value.filter(t=>Bt(t));return o.length<1?null:e.filterFn===P.BETWEEN?o.length>1?{key:e.id,...Y(e.filterFn),value:o.slice(0,2).join(",")}:null:e.filterFn&&!Ao(e.filterFn)?{key:e.id,...Y(e.filterFn),value:o[0]}:{key:e.id,...Y(e.filterFn||P.IN),value:o.join(",")}},Io=(e,o,t)=>{const n=()=>{if(!o||o.length===0)return null;const a=o.filter(u=>Array.isArray(u.value)?u.value.filter(g=>Bt(g)).length>0:typeof u.value=="string"?u.value.trim()!=="":u.value!=null);return a.length===0?null:a.length===1?Array.isArray(a[0].value)?Vt(a[0]):{key:a[0].id,...Y(a[0].filterFn||P.CONTAINS),value:String(a[0].value)}:{AND:a.map(u=>Array.isArray(u.value)?Vt(u):{key:u.id,...Y(u.filterFn||P.CONTAINS),value:String(u.value)})}},r=()=>!t||t&&Object.keys(t).length===0?null:t.pageSize,l=()=>!t||t&&Object.keys(t).length===0?null:t.pageIndex*t.pageSize,s=()=>!e||e.length===0?null:e.length>1?e.map(a=>({key:a.id,direction:$t(a.desc)})):[{key:e[0].id,direction:$t(e[0].desc)}];return{filter:n(),limit:r(),sort:s(),offset:l()}},Eo=(e,o)=>{try{const t=o.getItem(`${bt}-${e}`);return t&&JSON.parse(t)}catch(t){console.log("[Dz table] Could not restore table state",t)}return null},xt=(e,o,t)=>{try{t.setItem(`${bt}-${e}`,JSON.stringify(o))}catch(n){console.log("[Dz table] Could not store table state",n)}},Ao=e=>[P.IN,P.NOT_IN,P.BETWEEN,P.NOT_BETWEEN].includes(e),Bt=e=>e!=null,Do=["data-id","data-selected"],_o=["data-label","data-align"],Mo={key:1},Lo=["colspan"],No={name:"TableBody"},vt=i.defineComponent({...No,props:{customFormatters:{default:()=>({}),type:Object},emptyTableMessage:{default:"No results.",type:String},enableRowSelection:Boolean,locale:{default:void 0,type:String},table:{required:!0,type:Object}},setup(e){const o=e,t=r=>{const l=r.getContext(),s=r.column.columnDef.dateOptions,a=r.column.columnDef.numberOptions,u=r.column.columnDef.cell;return{props:l,render:(()=>{const g={number:f=>Pt({value:Number(f),locale:a?.locale??o.locale,formatOptions:a?.formatOptions}),date:f=>Bo(f,s?.locale??o.locale,s?.formatOptions),datetime:f=>vo(f,s?.locale??o.locale,s?.formatOptions),currency:f=>Pt({value:Number(f),locale:a?.locale??o.locale,formatOptions:{style:"currency",currency:"USD",...a?.formatOptions&&a.formatOptions}}),...o.customFormatters},p=r.column.columnDef.dataType||"text";return g?.[p]?.(l.getValue())||u})()}},n=r=>{const l=r.column.columnDef.tooltip;return typeof l=="string"?l:typeof l=="function"?l(r):r.getValue()};return(r,l)=>(i.openBlock(),i.createElementBlock("tbody",null,[e.table.getRowModel().rows?.length?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(e.table.getRowModel().rows,s=>(i.openBlock(),i.createElementBlock("tr",{key:`table-row-${s.id}`,"data-id":s.id,"data-selected":e.enableRowSelection?s.getIsSelected():void 0},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(s.getVisibleCells(),a=>(i.openBlock(),i.createElementBlock("td",{key:`table-data-${s.id}-${a.id}`,class:i.normalizeClass([a.column.id?`cell-${a.column.id}`:""]),"data-label":a.column.id,"data-align":i.unref(Me)({align:a.column.columnDef.align,dataType:a.column.columnDef.dataType}),style:i.normalizeStyle({width:a.column.columnDef.width,maxWidth:a.column.columnDef.maxWidth,minWidth:a.column.columnDef.minWidth})},[a.column.columnDef.tooltip?(i.openBlock(),i.createBlock(i.unref(B.Tooltip),i.mergeProps({key:0,ref_for:!0},a.column.columnDef.tooltipOptions),{content:i.withCtx(()=>[typeof a.column.columnDef.tooltip=="function"&&typeof n(a)!="string"?(i.openBlock(),i.createBlock(i.resolveDynamicComponent(n(a)),{key:0})):(i.openBlock(),i.createElementBlock(i.Fragment,{key:1},[i.createTextVNode(i.toDisplayString(n(a)),1)],64))]),default:i.withCtx(()=>[i.createVNode(i.unref(X),i.mergeProps({ref_for:!0},t(a)),null,16)]),_:2},1040)):(i.openBlock(),i.createBlock(i.unref(X),i.mergeProps({key:1,ref_for:!0},t(a)),null,16))],14,_o))),128))],8,Do))),128)):(i.openBlock(),i.createElementBlock("tr",Mo,[i.createElementVNode("td",{colspan:e.table.getAllColumns()?.length,class:"empty-table"},i.toDisplayString(e.emptyTableMessage),9,Lo)]))]))}}),To={key:0,class:"data-actions"},Ho={key:0},Oo={key:0},zo={key:0},Go={name:"TableDataActions"},jo=i.defineComponent({...Go,props:{actions:{type:Array,required:!0},autoModeCount:{default:1,type:Number},data:{default:()=>({}),type:Object},displayActions:{default:!0,type:[Boolean,Function]},mode:{default:void 0,type:String,validator:e=>["auto","buttons","dropdown"].includes(e)}},emits:["action:select"],setup(e,{emit:o}){const t=e,n=o,r=i.ref(!1),l=i.ref(),s=i.computed(()=>t.actions.map(d=>({...d,display:typeof d.display=="function"?d.display(t.data):d.display??!0,disabled:typeof d.disabled=="function"?d.disabled(t.data):d.disabled})).filter(d=>d.display)),a=i.computed(()=>{const d=l.value?.confirmationOptions;if(d)return typeof d=="function"?d(t.data):d}),u=i.computed(()=>(typeof t.displayActions=="function"?t.displayActions(t.data):t.displayActions)&&s.value?.length),c=i.computed(()=>s.value?.length&&t.mode==="buttons"||t.mode==="auto"&&s.value?.length<=t.autoModeCount),g=i.computed(()=>s.value?.length&&t.mode==="dropdown"||t.mode==="auto"&&s.value?.length>t.autoModeCount),p=()=>{r.value=!1,n("action:select",l.value)},f=d=>{l.value=d,d?.requireConfirmationModal?r.value=!0:n("action:select",l.value)};return(d,h)=>u.value?(i.openBlock(),i.createElementBlock("div",To,[c.value?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(s.value,(m,S)=>(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),i.mergeProps({ref_for:!0},m,{key:`mode-button-${S}`,class:m.class,disabled:m.disabled,"icon-left":m.icon,label:m.icon?"":m.label,title:m.label,rounded:"",variant:"textOnly",onClick:y=>f(m)}),null,16,["class","disabled","icon-left","label","title","onClick"]))),128)):g.value?(i.openBlock(),i.createBlock(i.unref(B.Dropdown),{key:1,menu:s.value,onSelect:f},{default:i.withCtx(()=>[i.renderSlot(d.$slots,"trigger",{},()=>[i.createVNode(i.unref(_),{icon:"prime:cog",width:"22"})])]),_:3},8,["menu"])):i.createCommentVNode("",!0),i.renderSlot(d.$slots,"confirmationModal",{},()=>[r.value?(i.openBlock(),i.createBlock(i.unref(B.ConfirmationModal),{key:0,"onOn:close":h[0]||(h[0]=m=>r.value=!1),"onOn:confirm":p},i.createSlots({_:2},[a.value?.header?{name:"header",fn:i.withCtx(()=>[typeof a.value?.header=="string"?(i.openBlock(),i.createElementBlock("p",Ho,i.toDisplayString(a.value?.header),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.header),{key:1}))]),key:"0"}:void 0,a.value?.body?{name:"message",fn:i.withCtx(()=>[typeof a.value?.body=="string"?(i.openBlock(),i.createElementBlock("p",Oo,i.toDisplayString(a.value?.body),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.body),{key:1}))]),key:"1"}:void 0,a.value?.footer?{name:"footer",fn:i.withCtx(()=>[typeof a.value?.footer=="string"?(i.openBlock(),i.createElementBlock("p",zo,i.toDisplayString(a.value?.footer),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.footer),{key:1}))]),key:"2"}:void 0]),1024)):i.createCommentVNode("",!0)])])):i.createCommentVNode("",!0)}}),qo=["colSpan","data-align","onClick"],Ko={key:0,class:"sort-state"},Wo={key:0,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Qo={key:0,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Uo={key:1,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Xo={key:0,class:"header-row filters"},Yo=["data-align"],Jo={key:3,class:"number-range-filter"},Zo={name:"TableHeader"},It=i.defineComponent({...Zo,props:{highlightActiveColumn:Boolean,inputDebounceTime:{default:void 0,type:Number},isFilterRowVisible:{default:!1,type:Boolean},table:{required:!0,type:Object}},setup(e){const o=e,t=s=>o.highlightActiveColumn&&(s.getIsSorted()==="asc"||s.getIsSorted()==="desc"||s.getIsFiltered())?"highlight":"",n=s=>s.getFilterValue(),r=s=>s?.length?s.map((a,u)=>{const c=String(a.getDate()).padStart(2,"0"),g=String(a.getMonth()+1).padStart(2,"0"),p=u===0?"00:00:00":"23:59:59";return`${a.getFullYear()}-${g}-${c} ${p}`}).filter(a=>a!==null):null,l=(s,a,u)=>{const c=s.getFilterValue(),g=Array.isArray(c)?[...c]:[void 0,void 0];g[a]=u!==void 0?Number(u):void 0;const p=g.some(f=>f!==void 0);s.setFilterValue(p?g:[])};return(s,a)=>(i.openBlock(),i.createElementBlock("thead",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.table.getHeaderGroups(),u=>(i.openBlock(),i.createElementBlock("tr",{key:u.id,class:"header-row"},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(u.headers,c=>(i.openBlock(),i.createElementBlock("th",{key:`table-header-${c.id}`,class:i.normalizeClass([t(c.column),`column-${c.id}`,c.column.columnDef.enableSorting?"sortable":""]),colSpan:c.colSpan,"data-align":i.unref(Me)({align:c.column.columnDef.align,dataType:c.column.columnDef.dataType}),style:i.normalizeStyle({width:c.column.columnDef.width,maxWidth:c.column.columnDef.maxWidth,minWidth:c.column.columnDef.minWidth}),onClick:g=>c.column.getCanSort()?c.column.getToggleSortingHandler()?.(g):null},[c.isPlaceholder?i.createCommentVNode("",!0):(i.openBlock(),i.createElementBlock(i.Fragment,{key:0},[i.createVNode(i.unref(X),{props:c.getContext(),render:c.column.columnDef.header},null,8,["props","render"]),c.column.columnDef.enableSorting?(i.openBlock(),i.createElementBlock("span",Ko,[!c.column.getIsSorted()&&c.column.getCanSort()?(i.openBlock(),i.createElementBlock("svg",Wo,a[0]||(a[0]=[i.createElementVNode("path",{d:"M18 10.75H6a.74.74 0 0 1-.69-.46a.75.75 0 0 1 .16-.82l6-6a.75.75 0 0 1 1.06 0l6 6a.75.75 0 0 1 .16.82a.74.74 0 0 1-.69.46M7.81 9.25h8.38L12 5.06ZM12 20.75a.74.74 0 0 1-.53-.22l-6-6a.75.75 0 0 1-.16-.82a.74.74 0 0 1 .69-.46h12a.74.74 0 0 1 .69.46a.75.75 0 0 1-.16.82l-6 6a.74.74 0 0 1-.53.22m-4.19-6L12 18.94l4.19-4.19Z",fill:"currentColor"},null,-1)]))):i.createCommentVNode("",!0),c.column.getIsSorted()&&c.column.getCanSort()?(i.openBlock(),i.createElementBlock(i.Fragment,{key:1},[c.column.getIsSorted()==="asc"?(i.openBlock(),i.createElementBlock("svg",Qo,a[1]||(a[1]=[i.createElementVNode("path",{d:"M12.53 7.97a.75.75 0 0 0-1.06 0l-7 7A.75.75 0 0 0 5 16.25h14a.75.75 0 0 0 .53-1.28z",fill:"currentColor"},null,-1)]))):(i.openBlock(),i.createElementBlock("svg",Uo,a[2]||(a[2]=[i.createElementVNode("path",{d:"M5 7.75a.75.75 0 0 0-.53 1.28l7 7a.75.75 0 0 0 1.06 0l7-7A.75.75 0 0 0 19 7.75z",fill:"currentColor"},null,-1)])))],64)):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0)],64))],14,qo))),128))]))),128)),e.isFilterRowVisible?(i.openBlock(),i.createElementBlock("tr",Xo,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.table.getVisibleLeafColumns(),u=>(i.openBlock(),i.createElementBlock("th",{key:`table-filter-${u.id}`,class:i.normalizeClass([t(u),u.id?`column-${u.id}`:"",u.columnDef.className||"",u.getCanFilter()?`filter ${u.columnDef.meta?.filterVariant}`:""]),"data-align":i.unref(Me)({align:u.columnDef.align,dataType:u.columnDef.dataType}),style:i.normalizeStyle({width:u.columnDef.width,maxWidth:u.columnDef.maxWidth,minWidth:u.columnDef.minWidth})},[u.getCanFilter()?(i.openBlock(),i.createElementBlock(i.Fragment,{key:0},[u.columnDef.customFilterComponent?(i.openBlock(),i.createBlock(i.resolveDynamicComponent(u.columnDef.customFilterComponent(u)),{key:0})):u.columnDef.meta?.filterVariant==="multiselect"||u.columnDef.meta?.filterVariant==="select"?(i.openBlock(),i.createBlock(i.unref(z.SelectInput),{key:1,"model-value":n(u),options:u.columnDef.meta?.filterOptions||[],placeholder:u.columnDef.filterPlaceholder,name:`multiselect-filter-${u.columnDef.accessorKey}`,multiple:u.columnDef.meta?.filterVariant==="multiselect","enable-tooltip":"","onUpdate:modelValue":c=>u.setFilterValue(c)},null,8,["model-value","options","placeholder","name","multiple","onUpdate:modelValue"])):u.columnDef.meta?.filterVariant==="dateRange"?(i.openBlock(),i.createBlock(i.unref(z.DatePicker),{key:2,"model-value":n(u),placeholder:u.columnDef.filterPlaceholder,name:"`date-range-${column.columnDef.accessorKey}`",range:"",teleport:"","onUpdate:modelValue":c=>u.setFilterValue(r(c))},null,8,["model-value","placeholder","onUpdate:modelValue"])):u.columnDef.meta?.filterVariant==="range"?(i.openBlock(),i.createElementBlock("div",Jo,[i.createVNode(i.unref(z.NumberInput),{"model-value":Array.isArray(n(u))&&n(u)[0]!==null?Number(n(u)[0]):void 0,placeholder:u.columnDef.filterPlaceholder?.split(",")[0],name:"`range-${column.columnDef.accessorKey}-start`","onUpdate:modelValue":c=>l(u,0,c)},null,8,["model-value","placeholder","onUpdate:modelValue"]),i.createVNode(i.unref(z.NumberInput),{"model-value":Array.isArray(n(u))&&n(u)[1]!==null?Number(n(u)[1]):void 0,placeholder:u.columnDef.filterPlaceholder?.split(",")[1]??u.columnDef.filterPlaceholder,name:"`range-${column.columnDef.accessorKey}-end`","onUpdate:modelValue":c=>l(u,1,c)},null,8,["model-value","placeholder","onUpdate:modelValue"])])):(i.openBlock(),i.createBlock(i.unref(B.DebouncedInput),{key:4,id:`input-filter-${u.id}`,"debounce-time":e.inputDebounceTime,"model-value":typeof n(u)=="string"?String(n(u)):"",placeholder:u.columnDef.filterPlaceholder,"onUpdate:modelValue":c=>u.setFilterValue(c)},null,8,["id","debounce-time","model-value","placeholder","onUpdate:modelValue"]))],64)):i.createCommentVNode("",!0)],14,Yo))),128))])):i.createCommentVNode("",!0)]))}}),er={class:"toolbar"},tr={name:"TableToolbar"},nr=i.defineComponent({...tr,props:{columnActionButtonLabel:{default:"Columns",type:String},hasActionsColumn:Boolean,hasSelectionColumn:Boolean,resetButtonLabel:{default:"Reset all",type:String},showColumnAction:Boolean,showResetButton:Boolean,table:{required:!0,type:Object}},emits:["on:drag","on:reset"],setup(e,{emit:o}){const t=e,n=o,r=i.computed(()=>t.table.getAllLeafColumns().filter(s=>s.id!=="select"&&s.id!=="actions").map((s,a)=>({id:a,data:s,render:u=>{let c=u.columnDef.header;return typeof u.columnDef.header=="function"&&(c=u.columnDef.header()),i.h(z.Checkbox,{label:c,modelValue:u.getIsVisible(),name:u.columnDef.accessorKey,"onUpdate:modelValue":()=>u.toggleVisibility()})}}))),l=s=>{const a=[...t.hasSelectionColumn?["select"]:[],...s.map(u=>String(u?.data?.id)),...t.hasActionsColumn?["actions"]:[]];n("on:drag",a)};return(s,a)=>(i.openBlock(),i.createElementBlock("div",er,[e.showResetButton?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,label:e.resetButtonLabel,variant:"outlined",severity:"secondary",onClick:a[0]||(a[0]=u=>s.$emit("on:reset"))},null,8,["label"])):i.createCommentVNode("",!0),e.showColumnAction?(i.openBlock(),i.createBlock(i.unref(B.Popup),{key:1,position:"bottom"},{content:i.withCtx(()=>[i.createVNode(i.unref(B.SortableList),{list:r.value,onOnDrag:l},null,8,["list"])]),default:i.withCtx(()=>[i.createVNode(i.unref(B.ButtonElement),{label:e.columnActionButtonLabel,variant:"outlined",severity:"secondary"},null,8,["label"])]),_:1})):i.createCommentVNode("",!0),i.renderSlot(s.$slots,"default")]))}}),or=["id"],rr={key:0,class:"loading-overlay"},lr=["data-align"],ir={class:"table-wrapper"},sr={key:0},ar={name:"DataTable"},Et=i.defineComponent({...ar,props:{actionsMode:{default:"auto",type:String,validator:e=>["auto","buttons","dropdown"].includes(e)},autoModeCount:{default:1,type:Number},dataActionMenu:{default:()=>[],type:Array},columnActionButtonLabel:{default:void 0,type:String},columnsData:{type:Array,default:()=>[]},customFormatters:{default:()=>({}),type:Object},data:{type:Array,default:()=>[]},displayActions:{default:!0,type:[Boolean,Function]},emptyTableMessage:{default:void 0,type:String},enableRowSelection:{default:!1,type:Boolean},enableSortingRemoval:{default:!1,type:Boolean},highlightActiveHeaderColumn:Boolean,id:{default:void 0,type:String},initialFilters:{default:()=>[],type:Array},initialSorting:{default:()=>[],type:Array},inputDebounceTime:{default:void 0,type:Number},isLoading:Boolean,isServerTable:Boolean,locale:{default:void 0,type:String},paginated:{default:!0,type:Boolean},paginationOptions:{default:()=>({}),type:Object},persistState:{default:!0,type:Boolean},persistStateStorage:{default:"localStorage",type:String,validator:e=>["localStorage","sessionStorage"].includes(e)},resetButtonLabel:{default:void 0,type:String},rowPerPage:{default:Vo,type:Number},rowPerPageOptions:{default:()=>$o,type:Array},showColumnAction:Boolean,showResetButton:Boolean,tableOptions:{default:()=>({}),type:Object},titleInfo:{default:void 0,type:Object},totalRecords:{default:0,type:Number},visibleColumns:{default:()=>[],type:Array}},emits:["action:select","change:rowSelection","update:request"],setup(e,{emit:o}){const t=e,n=o,r=[],l=i.ref(t.initialFilters),s=i.ref([]),a=i.ref({}),u=i.ref({pageIndex:ue,pageSize:t.paginated?t.rowPerPage:t.data.length}),c=i.ref({}),g=i.ref(t.initialSorting),p=i.computed(()=>t.columnsData.some(w=>w.enableColumnFilter)),f=i.computed(()=>({columnFilters:l.value,columnOrder:s.value,columnVisibility:a.value,pagination:u.value,sorting:g.value})),d=i.computed(()=>B.getStorage(t.persistStateStorage)),h=i.computed(()=>t.isServerTable?t.totalRecords:S.value.getFilteredRowModel().rows?.length),m=i.computed(()=>S.value.getSelectedRowModel().rows.map(w=>w.original)),S=i.computed(()=>Ft({columns:r,state:{columnFilters:l.value,columnOrder:s.value?.length?s.value:t.visibleColumns,columnVisibility:a.value,pagination:u.value,rowSelection:c.value,get sorting(){return g.value}},onColumnFiltersChange:w=>{l.value=typeof w=="function"?w(l.value):w,Array.isArray(l.value)||(l.value=[]),u.value.pageIndex=ue,t.isServerTable&&(l.value=t.columnsData.filter(C=>C.enableColumnFilter&&(t.visibleColumns.includes(String(C.accessorKey??C.id))||!t.visibleColumns.length)).map(C=>{if(C.meta?.filterVariant==="range"){const $=l.value.find(N=>N?.id===C.accessorKey)?.value,[V,I]=$||[],E=C.meta?.serverFilterFn||(typeof V=="number"&&typeof I=="number"&&V<=I?P.BETWEEN:typeof V=="number"&&!I?P.GREATER_THAN_OR_EQUAL:typeof I=="number"?P.LESS_THAN_OR_EQUAL:null);return E&&$?.length?{filterFn:E,id:C.accessorKey,value:$}:void 0}else return{filterFn:C?.meta?.serverFilterFn,id:C.accessorKey,value:l.value.find($=>$.id===C.accessorKey)?.value}}).filter(Boolean),y())},onColumnVisibilityChange:w=>{a.value=typeof w=="function"?w(a.value):w},onPaginationChange:w=>{u.value=typeof w=="function"?w(u.value):w,t.isServerTable&&y()},onRowSelectionChange:w=>{c.value=typeof w=="function"?w(c.value):w,n("change:rowSelection",m.value)},onSortingChange:w=>{g.value=typeof w=="function"?w(g.value):w,u.value.pageIndex=ue,t.isServerTable&&y()},columnResizeMode:"onChange",data:t.data,enableSortingRemoval:t.enableSortingRemoval,getCoreRowModel:St(),getFilteredRowModel:wt(),getPaginationRowModel:Ct(),getSortedRowModel:yt(),manualFiltering:t.isServerTable,manualSorting:t.isServerTable,manualPagination:t.isServerTable,...t.tableOptions}));i.watch([l,s,a,u,g],()=>{t.persistState&&t.id&&xt(t.id,f.value,d.value)});const y=()=>{const w=Io(g.value,l.value,u.value);n("update:request",w)},k=()=>{l.value=t.initialFilters,s.value=[],a.value={},u.value={pageIndex:ue,pageSize:t.paginated?t.rowPerPage:t.data.length},g.value=t.initialSorting},b=()=>{if(t.enableRowSelection&&r.push({accessorKey:"select",header:({table:w})=>i.h(z.Checkbox,{"aria-label":"Select all",modelValue:w.getIsAllPageRowsSelected(),"onUpdate:modelValue":()=>w.toggleAllPageRowsSelected(!w.getIsAllPageRowsSelected())}),cell:({row:w})=>i.h(z.Checkbox,{"aria-label":"Select row",modelValue:w.getIsSelected(),"onUpdate:modelValue":()=>w.toggleSelected(!w.getIsSelected())}),align:"center",enableColumnFilter:!1,enableSorting:!1}),t.columnsData.forEach(w=>{t.visibleColumns.length&&!t.visibleColumns.includes(String(w.accessorKey??w.id))||(w.meta?.filterVariant==="multiselect"&&!w.filterFn?w.filterFn=(C,$,V)=>!V||V.length===0?C:V.some(I=>C.getValue($)==I):w.meta?.filterVariant==="select"&&!w.filterFn?w.filterFn=(C,$,V)=>V===void 0||V.length===0?!0:String(V)===String(C.getValue($)):w.meta?.filterVariant==="dateRange"&&!w.filterFn?w.filterFn=(C,$,V)=>{if(V?.length){const I=new Date(V[1]).setHours(23,59,59,999),E=new Date(C.getValue($)),N=new Date(V[0]).setHours(0,0,0,0);return E.getTime()>=N&&E.getTime()<=I}return!0}:w.meta?.filterVariant==="range"&&(w.filterFn=(C,$,V)=>{if(!Array.isArray(V))return!0;const[I,E]=V,N=C.getValue($);return I&&E?N>=I&&N<=E:I?N>=I:E?N<=E:!0}),r.push({...w,enableColumnFilter:w.enableColumnFilter??!1,enableSorting:w.enableSorting??!1}))}),t.dataActionMenu?.length&&r.push({accessorKey:"actions",align:"center",enableColumnFilter:!1,enableSorting:!1,header:()=>i.h(_,{icon:"prime:cog",width:"24"}),cell:({row:w})=>i.h(jo,{actions:t.dataActionMenu,autoModeCount:t.autoModeCount,data:w.original,displayActions:t.displayActions,mode:t.actionsMode,"onAction:select":C=>n("action:select",{action:C?.key||C?.label,data:w.original})})}),t.persistState&&!t.id)throw new Error('Id is required when prop "persistState" is true');x(),t.isServerTable&&y()},x=()=>{if(!t.persistState||!t.id)return;const w=Eo(t.id,d.value);w&&(l.value=w.columnFilters,s.value=w.columnOrder,a.value=w.columnVisibility,g.value=w.sorting,t.rowPerPageOptions.includes(w.pagination.pageSize)&&(u.value=w.pagination)),xt(t.id,f.value,d.value)};return b(),(w,C)=>(i.openBlock(),i.createElementBlock("div",{id:e.id,class:"table-container"},[e.isLoading?(i.openBlock(),i.createElementBlock("div",rr,[i.createVNode(i.unref(B.LoadingIcon),{class:"loading-icon"})])):i.createCommentVNode("",!0),e.titleInfo?(i.openBlock(),i.createElementBlock("span",{key:1,"data-align":e.titleInfo.align||"center"},i.toDisplayString(e.titleInfo.text),9,lr)):i.createCommentVNode("",!0),e.showColumnAction||e.showResetButton||w.$slots.toolbar?(i.openBlock(),i.createBlock(nr,{key:2,"column-action-button-label":e.columnActionButtonLabel,"has-actions-column":!!e.dataActionMenu.length,"has-selection-column":e.enableRowSelection,"reset-button-label":e.resetButtonLabel,"show-column-action":e.showColumnAction,"show-reset-button":e.showResetButton,table:S.value,"onOn:reset":k,"onOn:drag":C[0]||(C[0]=$=>s.value=$)},{default:i.withCtx(()=>[i.renderSlot(w.$slots,"toolbar")]),_:3},8,["column-action-button-label","has-actions-column","has-selection-column","reset-button-label","show-column-action","show-reset-button","table"])):i.createCommentVNode("",!0),i.createElementVNode("div",ir,[i.createElementVNode("table",{style:i.normalizeStyle(`width: ${S.value.getCenterTotalSize()}`)},[i.createVNode(It,{"highlight-active-column":e.highlightActiveHeaderColumn,"input-debounce-time":e.inputDebounceTime,"is-filter-row-visible":p.value,table:S.value},null,8,["highlight-active-column","input-debounce-time","is-filter-row-visible","table"]),i.createVNode(vt,{"custom-formatters":e.customFormatters,"empty-table-message":e.emptyTableMessage,locale:e.locale,table:S.value},null,8,["custom-formatters","empty-table-message","locale","table"]),w.$slots.footer?(i.openBlock(),i.createElementBlock("tfoot",sr,[i.renderSlot(w.$slots,"footer")])):i.createCommentVNode("",!0)],4)]),(e.isServerTable||e.paginated)&&h.value>0?i.renderSlot(w.$slots,"pagination",{key:3},()=>[i.createVNode(Po,i.mergeProps(e.paginationOptions,{"current-page":u.value.pageIndex,"default-items-per-page":u.value.pageSize,"items-per-page-options":e.rowPerPageOptions,"total-items":h.value,"onUpdate:currentPage":S.value.setPageIndex,"onUpdate:itemsPerPage":S.value.setPageSize}),null,16,["current-page","default-items-per-page","items-per-page-options","total-items","onUpdate:currentPage","onUpdate:itemsPerPage"])]):i.createCommentVNode("",!0)],8,or))}}),ur={name:"FilesTable"},At=i.defineComponent({...ur,props:{archiveFile:Boolean,columnsData:{default:()=>[],type:Array},deleteFile:Boolean,downloadFile:Boolean,editDescription:Boolean,initialSorting:{default:()=>[],type:Array},files:{default:()=>[],type:Array},id:{default:"files-table",type:String},isLoading:Boolean,isServerTable:Boolean,locale:{default:void 0,type:String},persistState:{default:!0,type:Boolean},persistStateStorage:{default:"localStorage",type:String,validator:e=>["localStorage","sessionStorage"].includes(e)},messages:{default:void 0,type:Object},shareFile:Boolean,tableOptions:{default:()=>({}),type:Object},totalRecords:{default:0,type:Number},viewFile:Boolean,visibleColumns:{default:()=>[],type:Array}},emits:["action:archive","action:delete","action:download","action:edit","action:share","action:view","update:request"],setup(e,{emit:o}){const t=e,n=o,r=[{accessorKey:"originalFileName",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"File name",header:"File"},{accessorKey:"description",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Description",header:"Description",tooltip:!0},{accessorKey:"size",enableColumnFilter:!t.isServerTable,enableSorting:!t.isServerTable,filterPlaceholder:"Size",header:"Size",meta:{filterVariant:"range"}},{accessorKey:"uploadedBy",cell:({row:{original:c}})=>c.uploadedBy?c.uploadedBy.givenName||c.uploadedBy.lastName?`${c.uploadedBy.givenName||""} ${c.uploadedBy.lastName||""}`:c.uploadedBy.email:i.h("code",{},"—"),enableColumnFilter:!t.isServerTable,enableSorting:!t.isServerTable,filterFn:(c,g,p)=>{const f=c.getValue(g);return!p||p.length===0?!0:`${f.givenName||""} ${f.lastName||""}`.trim().toLowerCase().includes(p.toLowerCase())||(f.email?.toLowerCase().includes(p.toLowerCase())??!1)},filterPlaceholder:"Name",header:"Uploaded by"},{accessorKey:"uploadedAt",dataType:"datetime",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Date range",header:"Uploaded at",meta:{filterVariant:"dateRange",serverFilterFn:"between"}},{accessorKey:"downloadCount",align:"right",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Number of downloads",header:"Download count",meta:{filterVariant:"range"}},{accessorKey:"lastDownloadedAt",dataType:"datetime",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Date range",header:"Last downloaded at",meta:{filterVariant:"dateRange",serverFilterFn:"between"}}],l=i.computed(()=>{const c=[];return t.archiveFile&&c.push({confirmationOptions:{body:t.messages?.archiveConfirmationMessage||"Are you sure you want to archive this file?",header:t.messages?.archiveConfirmationHeader||"Archive file"},icon:"pi pi-book",key:"archive",label:t.messages?.archiveAction||"Archive",requireConfirmationModal:!0}),t.downloadFile&&c.push({icon:"pi pi-download",key:"download",label:t.messages?.downloadAction||"Download"}),t.editDescription&&c.push({icon:"pi pi-pencil",key:"edit",label:t.messages?.editDescriptionAction||"Edit description"}),t.shareFile&&c.push({icon:"pi pi-share-alt",key:"share",label:t.messages?.shareAction||"Share"}),t.viewFile&&c.push({icon:"pi pi-eye",key:"view",label:t.messages?.viewAction||"View"}),t.deleteFile&&c.push({class:"danger",confirmationOptions:{body:t.messages?.deleteConfirmationMessage||"Are you sure you want to delete this file?",header:t.messages?.deleteConfirmationHeader||"Delete file"},icon:"pi pi-trash",label:t.messages?.deleteAction||"Delete",key:"delete",requireConfirmationModal:!0}),c}),s=i.computed(()=>[...r.map(c=>{const g=t.columnsData.find(p=>p.accessorKey===c.accessorKey);return g?{...c,...g}:c}),...t.columnsData.filter(c=>!r.some(g=>g.accessorKey===c.accessorKey))]),a=c=>{switch(c.action){case"archive":n("action:archive",c.data);break;case"delete":n("action:delete",c.data);break;case"download":n("action:download",c.data);break;case"edit":n("action:edit",c.data);break;case"share":n("action:share",c.data);break;case"view":n("action:view",c.data);break}},u=c=>{n("update:request",c)};return(c,g)=>(i.openBlock(),i.createBlock(Et,i.mergeProps(e.tableOptions,{id:e.id,"columns-data":s.value,data:e.files,"data-action-menu":l.value,"empty-table-message":t.messages?.tableEmpty||"The table is empty","initial-sorting":e.initialSorting,"is-loading":e.isLoading,"is-server-table":e.isServerTable,locale:e.locale,"persist-state":e.persistState,"persist-state-storage":e.persistStateStorage,"total-records":e.totalRecords,"visible-columns":e.visibleColumns,class:"table-files","onAction:select":a,"onUpdate:request":u}),i.createSlots({_:2},[c.$slots.toolbar?{name:"toolbar",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"toolbar")]),key:"0"}:void 0,c.$slots.footer?{name:"footer",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"footer")]),key:"1"}:void 0,c.$slots.pagination?{name:"pagination",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"pagination")]),key:"2"}:void 0]),1040,["id","columns-data","data","data-action-menu","empty-table-message","initial-sorting","is-loading","is-server-table","locale","persist-state","persist-state-storage","total-records","visible-columns"]))}}),cr={name:"FilesPresentation"},dr=i.defineComponent({...cr,props:{actionButtonsVisibility:{default:()=>({archive:!0,delete:!0,download:!0,edit:!0,share:!0,view:!0}),type:Object},files:{default:()=>[],type:Array},messages:{default:void 0,type:Object},listProps:{default:()=>{},type:Object},locale:{default:void 0,type:String},presentation:{default:()=>"list",type:String,validator:e=>["list","table"].includes(e)},tableProps:{default:()=>{},type:Object},visibleFileDetails:{default:()=>["actions","description","downloadCount","lastDownloadedAt","originalFileName","size","uploadedAt","uploadedBy"],type:Array}},emits:["action:archive","action:delete","action:download","action:edit","action:share","action:view"],setup(e,{emit:o}){const t=e,n=o,r=i.computed(()=>Object.fromEntries(["actions","description","downloadCount","lastDownloadedAt","originalFileName","size","uploadedAt","uploadedBy"].map(a=>[a,t.visibleFileDetails.includes(a)]))),l=(s,a)=>{switch(s){case"archive":case"delete":case"download":case"edit":case"share":case"view":n(`action:${s}`,a);break}};return(s,a)=>e.presentation==="list"?(i.openBlock(),i.createBlock(i.unref(B.FilesList),i.mergeProps({key:0},e.listProps,{"action-buttons-visibility":e.actionButtonsVisibility,files:e.files,"file-detail-visibility":r.value,locale:e.locale,messages:e.messages,"onAction:archive":a[0]||(a[0]=u=>l("archive",u)),"onAction:delete":a[1]||(a[1]=u=>l("delete",u)),"onAction:download":a[2]||(a[2]=u=>l("download",u)),"onAction:edit":a[3]||(a[3]=u=>l("edit",u)),"onAction:share":a[4]||(a[4]=u=>l("share",u)),"onAction:view":a[5]||(a[5]=u=>l("view",u))}),null,16,["action-buttons-visibility","files","file-detail-visibility","locale","messages"])):(i.openBlock(),i.createBlock(At,i.mergeProps({key:1},e.tableProps,{"archive-file":e.actionButtonsVisibility.archive,"delete-file":e.actionButtonsVisibility.delete,"download-file":e.actionButtonsVisibility.download,"edit-description":e.actionButtonsVisibility.edit,files:e.files,locale:e.locale,messages:e.messages,"share-file":e.actionButtonsVisibility.share,"view-file":e.actionButtonsVisibility.view,"visible-columns":e.visibleFileDetails,"onAction:archive":a[6]||(a[6]=u=>l("archive",u)),"onAction:delete":a[7]||(a[7]=u=>l("delete",u)),"onAction:download":a[8]||(a[8]=u=>l("download",u)),"onAction:edit":a[9]||(a[9]=u=>l("edit",u)),"onAction:share":a[10]||(a[10]=u=>l("share",u)),"onAction:view":a[11]||(a[11]=u=>l("view",u))}),null,16,["archive-file","delete-file","download-file","edit-description","files","locale","messages","share-file","view-file","visible-columns"]))}}),gr={class:"table-wrapper"},fr={key:0,class:"toggle-wrap"},pr=["colSpan","onClick"],mr={key:0},hr=["data-label"],Sr={class:"page-navigation-container"},wr={class:"page-indicators-selection-container"},Cr={class:"page-number-indicators"},yr={class:"go-to-page-container"},Rr=["value","max"],Fr=["value"],br=["value"],kr={class:"page-navigation-buttons-container"},Pr=["disabled"],$r=["disabled"],Vr=["disabled"],xr=["disabled"],Br={name:"TanstackTable"},vr=i.defineComponent({...Br,props:{columnsData:{type:Array,default:()=>[]},rows:{type:Array,default:()=>[]},enableToggle:{type:Boolean,default:()=>!1}},setup(e){const o=e,t=En(),n=[];o.columnsData.forEach(g=>{const p=t.accessor(g.accessorKey,{header:()=>g.header,footer:f=>f.column.id,enableSorting:g.sort!==void 0?g.sort:!1});n.push(p)});const r=i.ref([]),l=Ft({columns:n,state:{get sorting(){return r.value}},onSortingChange:g=>{r.value=typeof g=="function"?g(r.value):g},columnResizeMode:"onChange",data:o.rows,getCoreRowModel:St(),getFilteredRowModel:wt(),getPaginationRowModel:Ct(),getSortedRowModel:yt()}),s=i.ref(!1),a=()=>{s.value=!s.value},u=g=>{const p=g.target,f=p.value?Number(p.value)-1:0;l.setPageIndex(f)},c=g=>{const p=g.target,f=p.value?Number(p.value):10;l.setPageSize(f)};return(g,p)=>(i.openBlock(),i.createElementBlock("div",gr,[i.createElementVNode("table",{style:i.normalizeStyle(`width: ${i.unref(l).getCenterTotalSize()}`)},[o.enableToggle?(i.openBlock(),i.createElementBlock("div",fr,[i.createElementVNode("button",{class:"table-toggle",onClick:a},[i.createVNode(i.unref(_),{icon:"mingcute:menu-fill",class:"toggle-icon"})])])):i.createCommentVNode("",!0),i.createElementVNode("colgroup",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(o.columnsData,f=>(i.openBlock(),i.createElementBlock("col",{key:f.accessorKey,style:i.normalizeStyle(`width: ${f.size}px`)},null,4))),128))]),i.createElementVNode("thead",{class:i.normalizeClass({expand:s.value})},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(i.unref(l).getHeaderGroups(),f=>(i.openBlock(),i.createElementBlock("tr",{key:f.id},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(f.headers,d=>(i.openBlock(),i.createElementBlock("th",{key:d.id,colSpan:d.colSpan,onClick:h=>d.column.getCanSort()?d.column.getToggleSortingHandler()?.(h):null},[d.isPlaceholder?i.createCommentVNode("",!0):(i.openBlock(),i.createElementBlock("div",mr,[i.createVNode(i.unref(X),{props:d.getContext(),render:d.column.columnDef.header},null,8,["props","render"]),!d.column.getIsSorted()&&d.column.getCanSort()?(i.openBlock(),i.createBlock(i.unref(_),{key:0,icon:"ri:arrow-up-down-line",class:"sort-icon"})):i.createCommentVNode("",!0),d.column.getIsSorted()&&d.column.getCanSort()?(i.openBlock(),i.createBlock(i.unref(_),{key:1,icon:d.column.getIsSorted()==="asc"?"mdi:arrow-up":"mdi:arrow-down",class:"sort-icon"},null,8,["icon"])):i.createCommentVNode("",!0)]))],8,pr))),128))]))),128))],2),i.createElementVNode("tbody",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(i.unref(l).getRowModel().rows,f=>(i.openBlock(),i.createElementBlock("tr",{key:f.id},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(f.getVisibleCells(),d=>(i.openBlock(),i.createElementBlock("td",{key:d.id,"data-label":d.column.id},[i.createVNode(i.unref(X),{props:d.getContext(),render:d.column.columnDef.cell},null,8,["props","render"])],8,hr))),128))]))),128))])],4),i.createElementVNode("div",Sr,[i.createElementVNode("div",wr,[i.createElementVNode("span",Cr,i.toDisplayString(i.unref(l).getState().pagination.pageIndex+1)+" of "+i.toDisplayString(i.unref(l).getPageCount()),1),i.createElementVNode("span",yr,[p[6]||(p[6]=i.createElementVNode("span",{class:"go-to-page-text"}," Go to page: ",-1)),i.createElementVNode("input",{class:"page-input",type:"number",value:i.unref(l).getState().pagination.pageIndex+1,max:i.unref(l).getPageCount(),onInput:p[0]||(p[0]=f=>u(f))},null,40,Rr)]),i.createElementVNode("select",{value:i.unref(l).getState().pagination.pageSize,onChange:p[1]||(p[1]=f=>c(f))},[(i.openBlock(),i.createElementBlock(i.Fragment,null,i.renderList([10,20,30,40,50],f=>i.createElementVNode("option",{key:f,value:f}," Show "+i.toDisplayString(f),9,br)),64))],40,Fr)]),i.createElementVNode("div",kr,[i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanPreviousPage(),onClick:p[2]||(p[2]=f=>i.unref(l).setPageIndex(0))},[i.createVNode(i.unref(_),{icon:"material-symbols:keyboard-double-arrow-left-rounded",class:"navigation-button-icon"})],8,Pr),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanPreviousPage(),onClick:p[3]||(p[3]=f=>i.unref(l).previousPage())},[i.createVNode(i.unref(_),{icon:"material-symbols:arrow-back-ios-new-rounded",class:"navigation-button-icon"})],8,$r),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanNextPage(),onClick:p[4]||(p[4]=f=>i.unref(l).nextPage())},[i.createVNode(i.unref(_),{icon:"material-symbols:arrow-forward-ios-rounded",class:"navigation-button-icon"})],8,Vr),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanNextPage(),onClick:p[5]||(p[5]=f=>i.unref(l).setPageIndex(i.unref(l).getPageCount()-1))},[i.createVNode(i.unref(_),{icon:"material-symbols:keyboard-double-arrow-right-rounded",class:"navigation-button-icon"})],8,xr)])])]))}});D.FilesPresentation=dr,D.FilesTable=At,D.Table=Et,D.TableBody=vt,D.TableHeader=It,D.TanstackTable=vr,Object.defineProperty(D,Symbol.toStringTag,{value:"Module"})});
|
|
22
|
+
*/function ae(){return!0}const go=Symbol("merge-proxy"),fo={get(e,o,t){return o===go?t:e.get(o)},has(e,o){return e.has(o)},set:ae,deleteProperty:ae,getOwnPropertyDescriptor(e,o){return{configurable:!0,enumerable:!0,get(){return e.get(o)},set:ae,deleteProperty:ae}},ownKeys(e){return e.keys()}};function _e(e){return"value"in e?e.value:e}function U(){for(var e=arguments.length,o=new Array(e),t=0;t<e;t++)o[t]=arguments[t];return new Proxy({get(n){for(let r=o.length-1;r>=0;r--){const l=_e(o[r])[n];if(l!==void 0)return l}},has(n){for(let r=o.length-1;r>=0;r--)if(n in _e(o[r]))return!0;return!1},keys(){const n=[];for(let r=0;r<o.length;r++)n.push(...Object.keys(_e(o[r])));return[...Array.from(new Set(n))]}},fo)}const X=i.defineComponent({props:["render","props"],setup:e=>()=>typeof e.render=="function"||typeof e.render=="object"?i.h(e.render,e.props):e.render});function Rt(e){return U(e,{data:i.unref(e.data)})}function Ft(e){const o=i.isRef(e.data),t=U({state:{},onStateChange:()=>{},renderFallbackValue:null,mergeOptions(l,s){return o?{...l,...s}:U(l,s)}},o?Rt(e):e),n=io(t);if(o){const l=i.shallowRef(e.data);i.watch(l,()=>{n.setState(s=>({...s,data:l.value}))},{immediate:!0})}const r=i.ref(n.initialState);return i.watchEffect(()=>{n.setOptions(l=>{var s;const a=new Proxy({},{get:(u,c)=>r.value[c]});return U(l,o?Rt(e):e,{state:U(a,(s=e.state)!=null?s:{}),onStateChange:u=>{u instanceof Function?r.value=u(r.value):r.value=u,e.onStateChange==null||e.onStateChange(u)}})})}),n}var P=(e=>(e.BETWEEN="between",e.CONTAINS="contains",e.ENDS_WITH="endsWith",e.EQUALS="equals",e.GREATER_THAN="greaterThan",e.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",e.IN="in",e.IS_EMPTY="isEmpty",e.IS_NOT_EMPTY="isNotEmpty",e.IS_NOT_NULL="isNotNull",e.IS_NULL="isNull",e.LESS_THAN="lessThan",e.LESS_THAN_OR_EQUAL="lessThanOrEqual",e.LIKE="like",e.NOT_BETWEEN="notBetween",e.NOT_EQUAL="notEqual",e.NOT_IN="notIn",e.NOT_LIKE="notLike",e.STARTS_WITH="startsWith",e))(P||{}),v=(e=>(e.BETWEEN="bt",e.CONTAINS="ct",e.EMPTY="empty",e.ENDS_WITH="ew",e.EQUALS="eq",e.GREATER_THAN="gt",e.GREATER_THAN_OR_EQUAL="gte",e.IN="in",e.LESS_THAN="lt",e.LESS_THAN_OR_EQUAL="lte",e.LIKE="like",e.NULL="null",e.STARTS_WITH="sw",e))(v||{});const po={class:"pagination"},mo={key:0,class:"items-per-page-control"},ho=["value"],So=["value"],wo={key:1,class:"page-input-control"},Co={key:2,class:"pagination-buttons-wrapper"},yo={key:0},Ro={key:1},Fo={key:1},bo={key:3},ko={name:"TablePagination"},Po=i.defineComponent({...ko,props:{currentPage:{required:!0,type:Number},defaultItemsPerPage:{default:void 0,type:Number},inputDebounceTime:{default:void 0,type:Number},itemsPerPageControlLabel:{default:"Items per page",type:String},itemsPerPageOptions:{default:()=>[5,10,20,30],type:Array},pageInputLabel:{default:"Go to page:",type:String},showFirstLastButtons:{default:!0,type:Boolean},showItemsPerPageControl:{default:!0,type:Boolean},showPageButtons:{default:!1,type:Boolean},showPageInput:{type:Boolean,default:!1},showPreviousNextButtons:{default:!0,type:Boolean},totalItems:{required:!0,type:Number}},emits:["update:currentPage","update:itemsPerPage"],setup(e,{emit:o}){const t=e,n=o,r=i.ref(t.defaultItemsPerPage||t.itemsPerPageOptions[0]),l=i.computed(()=>Math.ceil(t.totalItems/r.value)),s=i.computed(()=>Array.from({length:l.value},(c,g)=>g+1)),a=c=>{const g=parseInt(c.target.value,10);r.value=g,n("update:itemsPerPage",r.value)},u=c=>{const g=parseInt(c.toString(),10)-1;!isNaN(g)&&g>=0&&g<l.value&&n("update:currentPage",g)};return(c,g)=>(i.openBlock(),i.createElementBlock("div",po,[e.showItemsPerPageControl?(i.openBlock(),i.createElementBlock("div",mo,[i.createElementVNode("span",null,i.toDisplayString(e.itemsPerPageControlLabel),1),i.createElementVNode("select",{value:r.value,onChange:a},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.itemsPerPageOptions,p=>(i.openBlock(),i.createElementBlock("option",{key:`items-per-page-option-${p}`,value:p},i.toDisplayString(p),9,So))),128))],40,ho)])):i.createCommentVNode("",!0),l.value>1&&e.showPageInput?(i.openBlock(),i.createElementBlock("div",wo,[i.createElementVNode("span",null,i.toDisplayString(e.pageInputLabel),1),i.createVNode(i.unref(B.DebouncedInput),{type:"number","debounce-time":e.inputDebounceTime,"onUpdate:modelValue":u},null,8,["debounce-time"])])):i.createCommentVNode("",!0),l.value>1?(i.openBlock(),i.createElementBlock("div",Co,[e.showFirstLastButtons||e.showPreviousNextButtons?(i.openBlock(),i.createElementBlock("div",yo,[e.showFirstLastButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,disabled:!(e.currentPage>0),class:"first-page",size:"small",onClick:g[0]||(g[0]=p=>c.$emit("update:currentPage",0))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-double-left"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0),e.showPreviousNextButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:1,disabled:!(e.currentPage>0),class:"previous-page",size:"small",onClick:g[1]||(g[1]=p=>c.$emit("update:currentPage",e.currentPage-1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-left"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0),i.createElementVNode("div",null,[e.showPageButtons?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(s.value,p=>(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:`page-button-${p}`,class:i.normalizeClass(`page-button ${p===e.currentPage+1?"active":""}`),label:`${p}`,size:"small",onClick:f=>c.$emit("update:currentPage",p-1)},null,8,["class","label","onClick"]))),128)):(i.openBlock(),i.createElementBlock("span",Ro,i.toDisplayString(`${e.currentPage+1} / ${l.value}`),1))]),e.showFirstLastButtons||e.showPreviousNextButtons?(i.openBlock(),i.createElementBlock("div",Fo,[e.showPreviousNextButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,disabled:!(e.currentPage<l.value-1),class:"next-page",size:"small",onClick:g[2]||(g[2]=p=>c.$emit("update:currentPage",e.currentPage+1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-right"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0),e.showFirstLastButtons?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:1,disabled:!(e.currentPage<l.value-1),class:"last-page",size:"small",onClick:g[3]||(g[3]=p=>c.$emit("update:currentPage",l.value-1))},{iconLeft:i.withCtx(()=>[i.createVNode(i.unref(_),{icon:"prime:angle-double-right"})]),_:1},8,["disabled"])):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0)])):(i.openBlock(),i.createElementBlock("span",bo,i.toDisplayString(`${e.currentPage+1} / ${l.value}`),1))]))}}),ue=0,$o=[10,20,30],Vo=10,bt="table",kt={day:"2-digit",month:"2-digit",year:"numeric"},xo={...kt,hour:"2-digit",minute:"2-digit",hour12:!1},Pt=({value:e,locale:o="en-GB",formatOptions:t})=>typeof e!="number"||isNaN(e)?e:new Intl.NumberFormat(o,t).format(e),Bo=(e,o,t)=>{const n=t??kt;return B.formatDate(e,o,n)},vo=(e,o,t)=>{const n=t??xo;return B.formatDateTime(e,o,n)},Y=e=>{switch(e){case P.CONTAINS:return{operator:v.CONTAINS};case P.STARTS_WITH:return{operator:v.STARTS_WITH};case P.ENDS_WITH:return{operator:v.ENDS_WITH};case P.EQUALS:return{operator:v.EQUALS};case P.NOT_EQUAL:return{operator:v.EQUALS,not:!0};case P.GREATER_THAN:return{operator:v.GREATER_THAN};case P.GREATER_THAN_OR_EQUAL:return{operator:v.GREATER_THAN_OR_EQUAL};case P.LESS_THAN:return{operator:v.LESS_THAN};case P.LESS_THAN_OR_EQUAL:return{operator:v.LESS_THAN_OR_EQUAL};case P.IS_NULL:return{operator:v.NULL};case P.IS_NOT_NULL:return{operator:v.NULL,not:!0};case P.IS_EMPTY:return{operator:v.EMPTY};case P.IS_NOT_EMPTY:return{operator:v.EMPTY,not:!0};case P.LIKE:return{operator:v.LIKE};case P.NOT_LIKE:return{operator:v.LIKE,not:!0};case P.IN:return{operator:v.IN};case P.NOT_IN:return{operator:v.IN,not:!0};case P.BETWEEN:return{operator:v.BETWEEN};case P.NOT_BETWEEN:return{operator:v.BETWEEN,not:!0};default:throw new Error(`Unhandled filter function: ${e}`)}},$t=e=>{switch(e){case!1:return"ASC";case!0:return"DESC";default:return""}},Me=({align:e,dataType:o})=>e||(o=="other"?"center":o=="number"||o=="currency"?"right":"left"),Vt=e=>{const o=e.value.filter(t=>Bt(t));return o.length<1?null:e.filterFn===P.BETWEEN?o.length>1?{key:e.id,...Y(e.filterFn),value:o.slice(0,2).join(",")}:null:e.filterFn&&!Ao(e.filterFn)?{key:e.id,...Y(e.filterFn),value:o[0]}:{key:e.id,...Y(e.filterFn||P.IN),value:o.join(",")}},Io=(e,o,t)=>{const n=()=>{if(!o||o.length===0)return null;const a=o.filter(u=>Array.isArray(u.value)?u.value.filter(g=>Bt(g)).length>0:typeof u.value=="string"?u.value.trim()!=="":u.value!=null);return a.length===0?null:a.length===1?Array.isArray(a[0].value)?Vt(a[0]):{key:a[0].id,...Y(a[0].filterFn||P.CONTAINS),value:String(a[0].value)}:{AND:a.map(u=>Array.isArray(u.value)?Vt(u):{key:u.id,...Y(u.filterFn||P.CONTAINS),value:String(u.value)})}},r=()=>!t||t&&Object.keys(t).length===0?null:t.pageSize,l=()=>!t||t&&Object.keys(t).length===0?null:t.pageIndex*t.pageSize,s=()=>!e||e.length===0?null:e.length>1?e.map(a=>({key:a.id,direction:$t(a.desc)})):[{key:e[0].id,direction:$t(e[0].desc)}];return{filter:n(),limit:r(),sort:s(),offset:l()}},Eo=(e,o)=>{try{const t=o.getItem(`${bt}-${e}`);return t&&JSON.parse(t)}catch(t){console.log("[Dz table] Could not restore table state",t)}return null},xt=(e,o,t)=>{try{t.setItem(`${bt}-${e}`,JSON.stringify(o))}catch(n){console.log("[Dz table] Could not store table state",n)}},Ao=e=>[P.IN,P.NOT_IN,P.BETWEEN,P.NOT_BETWEEN].includes(e),Bt=e=>e!=null,Do=["data-id","data-selected"],_o=["data-label","data-align"],Mo={key:1},Lo=["colspan"],No={name:"TableBody"},vt=i.defineComponent({...No,props:{customFormatters:{default:()=>({}),type:Object},emptyTableMessage:{default:"No results.",type:String},enableRowSelection:Boolean,locale:{default:void 0,type:String},table:{required:!0,type:Object}},setup(e){const o=e,t=r=>{const l=r.getContext(),s=r.column.columnDef.dateOptions,a=r.column.columnDef.numberOptions,u=r.column.columnDef.cell;return{props:l,render:(()=>{const g={number:f=>Pt({value:Number(f),locale:a?.locale??o.locale,formatOptions:a?.formatOptions}),date:f=>Bo(f,s?.locale??o.locale,s?.formatOptions),datetime:f=>vo(f,s?.locale??o.locale,s?.formatOptions),currency:f=>Pt({value:Number(f),locale:a?.locale??o.locale,formatOptions:{style:"currency",currency:"USD",...a?.formatOptions&&a.formatOptions}}),...o.customFormatters},p=r.column.columnDef.dataType||"text";return g?.[p]?.(l.getValue())||u})()}},n=r=>{const l=r.column.columnDef.tooltip;return typeof l=="string"?l:typeof l=="function"?l(r):r.getValue()};return(r,l)=>(i.openBlock(),i.createElementBlock("tbody",null,[e.table.getRowModel().rows?.length?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(e.table.getRowModel().rows,s=>(i.openBlock(),i.createElementBlock("tr",{key:`table-row-${s.id}`,"data-id":s.id,"data-selected":e.enableRowSelection?s.getIsSelected():void 0},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(s.getVisibleCells(),a=>(i.openBlock(),i.createElementBlock("td",{key:`table-data-${s.id}-${a.id}`,class:i.normalizeClass([a.column.id?`cell-${a.column.id}`:""]),"data-label":a.column.id,"data-align":i.unref(Me)({align:a.column.columnDef.align,dataType:a.column.columnDef.dataType}),style:i.normalizeStyle({width:a.column.columnDef.width,maxWidth:a.column.columnDef.maxWidth,minWidth:a.column.columnDef.minWidth})},[a.column.columnDef.tooltip?(i.openBlock(),i.createBlock(i.unref(B.Tooltip),i.mergeProps({key:0,ref_for:!0},a.column.columnDef.tooltipOptions),{content:i.withCtx(()=>[typeof a.column.columnDef.tooltip=="function"&&typeof n(a)!="string"?(i.openBlock(),i.createBlock(i.resolveDynamicComponent(n(a)),{key:0})):(i.openBlock(),i.createElementBlock(i.Fragment,{key:1},[i.createTextVNode(i.toDisplayString(n(a)),1)],64))]),default:i.withCtx(()=>[i.createVNode(i.unref(X),i.mergeProps({ref_for:!0},t(a)),null,16)]),_:2},1040)):(i.openBlock(),i.createBlock(i.unref(X),i.mergeProps({key:1,ref_for:!0},t(a)),null,16))],14,_o))),128))],8,Do))),128)):(i.openBlock(),i.createElementBlock("tr",Mo,[i.createElementVNode("td",{colspan:e.table.getAllColumns()?.length,class:"empty-table"},i.toDisplayString(e.emptyTableMessage),9,Lo)]))]))}}),To={key:0,class:"data-actions"},Ho={key:0,class:"title"},Oo={key:0},zo={key:0},Go={name:"TableDataActions"},jo=i.defineComponent({...Go,props:{actions:{type:Array,required:!0},autoModeCount:{default:1,type:Number},data:{default:()=>({}),type:Object},displayActions:{default:!0,type:[Boolean,Function]},mode:{default:void 0,type:String,validator:e=>["auto","buttons","dropdown"].includes(e)}},emits:["action:select"],setup(e,{emit:o}){const t=e,n=o,r=i.ref(!1),l=i.ref(),s=i.computed(()=>t.actions.map(d=>({...d,display:typeof d.display=="function"?d.display(t.data):d.display??!0,disabled:typeof d.disabled=="function"?d.disabled(t.data):d.disabled})).filter(d=>d.display)),a=i.computed(()=>{const d=l.value?.confirmationOptions;if(d)return typeof d=="function"?d(t.data):d}),u=i.computed(()=>(typeof t.displayActions=="function"?t.displayActions(t.data):t.displayActions)&&s.value?.length),c=i.computed(()=>s.value?.length&&t.mode==="buttons"||t.mode==="auto"&&s.value?.length<=t.autoModeCount),g=i.computed(()=>s.value?.length&&t.mode==="dropdown"||t.mode==="auto"&&s.value?.length>t.autoModeCount),p=()=>{r.value=!1,n("action:select",l.value)},f=d=>{l.value=d,d?.requireConfirmationModal?r.value=!0:n("action:select",l.value)};return(d,h)=>u.value?(i.openBlock(),i.createElementBlock("div",To,[c.value?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(s.value,(m,S)=>(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),i.mergeProps({ref_for:!0},m,{key:`mode-button-${S}`,class:m.class,disabled:m.disabled,"icon-left":m.icon,label:m.icon?"":m.label,title:m.label,rounded:"",variant:"textOnly",onClick:y=>f(m)}),null,16,["class","disabled","icon-left","label","title","onClick"]))),128)):g.value?(i.openBlock(),i.createBlock(i.unref(B.Dropdown),{key:1,menu:s.value,onSelect:f},{default:i.withCtx(()=>[i.renderSlot(d.$slots,"trigger",{},()=>[i.createVNode(i.unref(_),{icon:"prime:cog",width:"22"})])]),_:3},8,["menu"])):i.createCommentVNode("",!0),i.renderSlot(d.$slots,"confirmationModal",{},()=>[r.value?(i.openBlock(),i.createBlock(i.unref(B.ConfirmationModal),{key:0,"onOn:close":h[0]||(h[0]=m=>r.value=!1),"onOn:confirm":p},i.createSlots({_:2},[a.value?.header?{name:"header",fn:i.withCtx(()=>[typeof a.value?.header=="string"?(i.openBlock(),i.createElementBlock("p",Ho,i.toDisplayString(a.value?.header),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.header),{key:1}))]),key:"0"}:void 0,a.value?.body?{name:"message",fn:i.withCtx(()=>[typeof a.value?.body=="string"?(i.openBlock(),i.createElementBlock("p",Oo,i.toDisplayString(a.value?.body),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.body),{key:1}))]),key:"1"}:void 0,a.value?.footer?{name:"footer",fn:i.withCtx(()=>[typeof a.value?.footer=="string"?(i.openBlock(),i.createElementBlock("p",zo,i.toDisplayString(a.value?.footer),1)):(i.openBlock(),i.createBlock(i.resolveDynamicComponent(a.value?.footer),{key:1}))]),key:"2"}:void 0]),1024)):i.createCommentVNode("",!0)])])):i.createCommentVNode("",!0)}}),qo=["colSpan","data-align","onClick"],Ko={key:0,class:"sort-state"},Wo={key:0,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Qo={key:0,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Uo={key:1,class:"sort-icon",height:"16",viewBox:"0 0 24 24",width:"16",xmlns:"http://www.w3.org/2000/svg"},Xo={key:0,class:"header-row filters"},Yo=["data-align"],Jo={key:3,class:"number-range-filter"},Zo={name:"TableHeader"},It=i.defineComponent({...Zo,props:{highlightActiveColumn:Boolean,inputDebounceTime:{default:void 0,type:Number},isFilterRowVisible:{default:!1,type:Boolean},table:{required:!0,type:Object}},setup(e){const o=e,t=s=>o.highlightActiveColumn&&(s.getIsSorted()==="asc"||s.getIsSorted()==="desc"||s.getIsFiltered())?"highlight":"",n=s=>s.getFilterValue(),r=s=>s?.length?s.map((a,u)=>{const c=String(a.getDate()).padStart(2,"0"),g=String(a.getMonth()+1).padStart(2,"0"),p=u===0?"00:00:00":"23:59:59";return`${a.getFullYear()}-${g}-${c} ${p}`}).filter(a=>a!==null):null,l=(s,a,u)=>{const c=s.getFilterValue(),g=Array.isArray(c)?[...c]:[void 0,void 0];g[a]=u!==void 0?Number(u):void 0;const p=g.some(f=>f!==void 0);s.setFilterValue(p?g:[])};return(s,a)=>(i.openBlock(),i.createElementBlock("thead",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.table.getHeaderGroups(),u=>(i.openBlock(),i.createElementBlock("tr",{key:u.id,class:"header-row"},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(u.headers,c=>(i.openBlock(),i.createElementBlock("th",{key:`table-header-${c.id}`,class:i.normalizeClass([t(c.column),`column-${c.id}`,c.column.columnDef.enableSorting?"sortable":""]),colSpan:c.colSpan,"data-align":i.unref(Me)({align:c.column.columnDef.align,dataType:c.column.columnDef.dataType}),style:i.normalizeStyle({width:c.column.columnDef.width,maxWidth:c.column.columnDef.maxWidth,minWidth:c.column.columnDef.minWidth}),onClick:g=>c.column.getCanSort()?c.column.getToggleSortingHandler()?.(g):null},[c.isPlaceholder?i.createCommentVNode("",!0):(i.openBlock(),i.createElementBlock(i.Fragment,{key:0},[i.createVNode(i.unref(X),{props:c.getContext(),render:c.column.columnDef.header},null,8,["props","render"]),c.column.columnDef.enableSorting?(i.openBlock(),i.createElementBlock("span",Ko,[!c.column.getIsSorted()&&c.column.getCanSort()?(i.openBlock(),i.createElementBlock("svg",Wo,a[0]||(a[0]=[i.createElementVNode("path",{d:"M18 10.75H6a.74.74 0 0 1-.69-.46a.75.75 0 0 1 .16-.82l6-6a.75.75 0 0 1 1.06 0l6 6a.75.75 0 0 1 .16.82a.74.74 0 0 1-.69.46M7.81 9.25h8.38L12 5.06ZM12 20.75a.74.74 0 0 1-.53-.22l-6-6a.75.75 0 0 1-.16-.82a.74.74 0 0 1 .69-.46h12a.74.74 0 0 1 .69.46a.75.75 0 0 1-.16.82l-6 6a.74.74 0 0 1-.53.22m-4.19-6L12 18.94l4.19-4.19Z",fill:"currentColor"},null,-1)]))):i.createCommentVNode("",!0),c.column.getIsSorted()&&c.column.getCanSort()?(i.openBlock(),i.createElementBlock(i.Fragment,{key:1},[c.column.getIsSorted()==="asc"?(i.openBlock(),i.createElementBlock("svg",Qo,a[1]||(a[1]=[i.createElementVNode("path",{d:"M12.53 7.97a.75.75 0 0 0-1.06 0l-7 7A.75.75 0 0 0 5 16.25h14a.75.75 0 0 0 .53-1.28z",fill:"currentColor"},null,-1)]))):(i.openBlock(),i.createElementBlock("svg",Uo,a[2]||(a[2]=[i.createElementVNode("path",{d:"M5 7.75a.75.75 0 0 0-.53 1.28l7 7a.75.75 0 0 0 1.06 0l7-7A.75.75 0 0 0 19 7.75z",fill:"currentColor"},null,-1)])))],64)):i.createCommentVNode("",!0)])):i.createCommentVNode("",!0)],64))],14,qo))),128))]))),128)),e.isFilterRowVisible?(i.openBlock(),i.createElementBlock("tr",Xo,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(e.table.getVisibleLeafColumns(),u=>(i.openBlock(),i.createElementBlock("th",{key:`table-filter-${u.id}`,class:i.normalizeClass([t(u),u.id?`column-${u.id}`:"",u.columnDef.className||"",u.getCanFilter()?`filter ${u.columnDef.meta?.filterVariant}`:""]),"data-align":i.unref(Me)({align:u.columnDef.align,dataType:u.columnDef.dataType}),style:i.normalizeStyle({width:u.columnDef.width,maxWidth:u.columnDef.maxWidth,minWidth:u.columnDef.minWidth})},[u.getCanFilter()?(i.openBlock(),i.createElementBlock(i.Fragment,{key:0},[u.columnDef.customFilterComponent?(i.openBlock(),i.createBlock(i.resolveDynamicComponent(u.columnDef.customFilterComponent(u)),{key:0})):u.columnDef.meta?.filterVariant==="multiselect"||u.columnDef.meta?.filterVariant==="select"?(i.openBlock(),i.createBlock(i.unref(z.SelectInput),{key:1,"model-value":n(u),options:u.columnDef.meta?.filterOptions||[],placeholder:u.columnDef.filterPlaceholder,name:`multiselect-filter-${u.columnDef.accessorKey}`,multiple:u.columnDef.meta?.filterVariant==="multiselect","enable-tooltip":"","onUpdate:modelValue":c=>u.setFilterValue(c)},null,8,["model-value","options","placeholder","name","multiple","onUpdate:modelValue"])):u.columnDef.meta?.filterVariant==="dateRange"?(i.openBlock(),i.createBlock(i.unref(z.DatePicker),{key:2,"model-value":n(u),placeholder:u.columnDef.filterPlaceholder,name:"`date-range-${column.columnDef.accessorKey}`",range:"",teleport:"","onUpdate:modelValue":c=>u.setFilterValue(r(c))},null,8,["model-value","placeholder","onUpdate:modelValue"])):u.columnDef.meta?.filterVariant==="range"?(i.openBlock(),i.createElementBlock("div",Jo,[i.createVNode(i.unref(z.NumberInput),{"model-value":Array.isArray(n(u))&&n(u)[0]!==null?Number(n(u)[0]):void 0,placeholder:u.columnDef.filterPlaceholder?.split(",")[0],name:"`range-${column.columnDef.accessorKey}-start`","onUpdate:modelValue":c=>l(u,0,c)},null,8,["model-value","placeholder","onUpdate:modelValue"]),i.createVNode(i.unref(z.NumberInput),{"model-value":Array.isArray(n(u))&&n(u)[1]!==null?Number(n(u)[1]):void 0,placeholder:u.columnDef.filterPlaceholder?.split(",")[1]??u.columnDef.filterPlaceholder,name:"`range-${column.columnDef.accessorKey}-end`","onUpdate:modelValue":c=>l(u,1,c)},null,8,["model-value","placeholder","onUpdate:modelValue"])])):(i.openBlock(),i.createBlock(i.unref(B.DebouncedInput),{key:4,id:`input-filter-${u.id}`,"debounce-time":e.inputDebounceTime,"model-value":typeof n(u)=="string"?String(n(u)):"",placeholder:u.columnDef.filterPlaceholder,"onUpdate:modelValue":c=>u.setFilterValue(c)},null,8,["id","debounce-time","model-value","placeholder","onUpdate:modelValue"]))],64)):i.createCommentVNode("",!0)],14,Yo))),128))])):i.createCommentVNode("",!0)]))}}),er={class:"toolbar"},tr={name:"TableToolbar"},nr=i.defineComponent({...tr,props:{columnActionButtonLabel:{default:"Columns",type:String},hasActionsColumn:Boolean,hasSelectionColumn:Boolean,resetButtonLabel:{default:"Reset all",type:String},showColumnAction:Boolean,showResetButton:Boolean,table:{required:!0,type:Object}},emits:["on:drag","on:reset"],setup(e,{emit:o}){const t=e,n=o,r=i.computed(()=>t.table.getAllLeafColumns().filter(s=>s.id!=="select"&&s.id!=="actions").map((s,a)=>({id:a,data:s,render:u=>{let c=u.columnDef.header;return typeof u.columnDef.header=="function"&&(c=u.columnDef.header()),i.h(z.Checkbox,{label:c,modelValue:u.getIsVisible(),name:u.columnDef.accessorKey,"onUpdate:modelValue":()=>u.toggleVisibility()})}}))),l=s=>{const a=[...t.hasSelectionColumn?["select"]:[],...s.map(u=>String(u?.data?.id)),...t.hasActionsColumn?["actions"]:[]];n("on:drag",a)};return(s,a)=>(i.openBlock(),i.createElementBlock("div",er,[e.showResetButton?(i.openBlock(),i.createBlock(i.unref(B.ButtonElement),{key:0,label:e.resetButtonLabel,variant:"outlined",severity:"secondary",onClick:a[0]||(a[0]=u=>s.$emit("on:reset"))},null,8,["label"])):i.createCommentVNode("",!0),e.showColumnAction?(i.openBlock(),i.createBlock(i.unref(B.Popup),{key:1,position:"bottom"},{content:i.withCtx(()=>[i.createVNode(i.unref(B.SortableList),{list:r.value,onOnDrag:l},null,8,["list"])]),default:i.withCtx(()=>[i.createVNode(i.unref(B.ButtonElement),{label:e.columnActionButtonLabel,variant:"outlined",severity:"secondary"},null,8,["label"])]),_:1})):i.createCommentVNode("",!0),i.renderSlot(s.$slots,"default")]))}}),or=["id"],rr={key:0,class:"loading-overlay"},lr=["data-align"],ir={class:"table-wrapper"},sr={key:0},ar={name:"DataTable"},Et=i.defineComponent({...ar,props:{actionsMode:{default:"auto",type:String,validator:e=>["auto","buttons","dropdown"].includes(e)},autoModeCount:{default:1,type:Number},dataActionMenu:{default:()=>[],type:Array},columnActionButtonLabel:{default:void 0,type:String},columnsData:{type:Array,default:()=>[]},customFormatters:{default:()=>({}),type:Object},data:{type:Array,default:()=>[]},displayActions:{default:!0,type:[Boolean,Function]},emptyTableMessage:{default:void 0,type:String},enableRowSelection:{default:!1,type:Boolean},enableSortingRemoval:{default:!1,type:Boolean},highlightActiveHeaderColumn:Boolean,id:{default:void 0,type:String},initialFilters:{default:()=>[],type:Array},initialSorting:{default:()=>[],type:Array},inputDebounceTime:{default:void 0,type:Number},isLoading:Boolean,isServerTable:Boolean,locale:{default:void 0,type:String},paginated:{default:!0,type:Boolean},paginationOptions:{default:()=>({}),type:Object},persistState:{default:!0,type:Boolean},persistStateStorage:{default:"localStorage",type:String,validator:e=>["localStorage","sessionStorage"].includes(e)},resetButtonLabel:{default:void 0,type:String},rowPerPage:{default:Vo,type:Number},rowPerPageOptions:{default:()=>$o,type:Array},showColumnAction:Boolean,showResetButton:Boolean,tableOptions:{default:()=>({}),type:Object},titleInfo:{default:void 0,type:Object},totalRecords:{default:0,type:Number},visibleColumns:{default:()=>[],type:Array}},emits:["action:select","change:rowSelection","update:request"],setup(e,{emit:o}){const t=e,n=o,r=[],l=i.ref(t.initialFilters),s=i.ref([]),a=i.ref({}),u=i.ref({pageIndex:ue,pageSize:t.paginated?t.rowPerPage:t.data.length}),c=i.ref({}),g=i.ref(t.initialSorting),p=i.computed(()=>t.columnsData.some(w=>w.enableColumnFilter)),f=i.computed(()=>({columnFilters:l.value,columnOrder:s.value,columnVisibility:a.value,pagination:u.value,sorting:g.value})),d=i.computed(()=>B.getStorage(t.persistStateStorage)),h=i.computed(()=>t.isServerTable?t.totalRecords:S.value.getFilteredRowModel().rows?.length),m=i.computed(()=>S.value.getSelectedRowModel().rows.map(w=>w.original)),S=i.computed(()=>Ft({columns:r,state:{columnFilters:l.value,columnOrder:s.value?.length?s.value:t.visibleColumns,columnVisibility:a.value,pagination:u.value,rowSelection:c.value,get sorting(){return g.value}},onColumnFiltersChange:w=>{l.value=typeof w=="function"?w(l.value):w,Array.isArray(l.value)||(l.value=[]),u.value.pageIndex=ue,t.isServerTable&&(l.value=t.columnsData.filter(C=>C.enableColumnFilter&&(t.visibleColumns.includes(String(C.accessorKey??C.id))||!t.visibleColumns.length)).map(C=>{if(C.meta?.filterVariant==="range"){const $=l.value.find(N=>N?.id===C.accessorKey)?.value,[V,I]=$||[],E=C.meta?.serverFilterFn||(typeof V=="number"&&typeof I=="number"&&V<=I?P.BETWEEN:typeof V=="number"&&!I?P.GREATER_THAN_OR_EQUAL:typeof I=="number"?P.LESS_THAN_OR_EQUAL:null);return E&&$?.length?{filterFn:E,id:C.accessorKey,value:$}:void 0}else return{filterFn:C?.meta?.serverFilterFn,id:C.accessorKey,value:l.value.find($=>$.id===C.accessorKey)?.value}}).filter(Boolean),y())},onColumnVisibilityChange:w=>{a.value=typeof w=="function"?w(a.value):w},onPaginationChange:w=>{u.value=typeof w=="function"?w(u.value):w,t.isServerTable&&y()},onRowSelectionChange:w=>{c.value=typeof w=="function"?w(c.value):w,n("change:rowSelection",m.value)},onSortingChange:w=>{g.value=typeof w=="function"?w(g.value):w,u.value.pageIndex=ue,t.isServerTable&&y()},columnResizeMode:"onChange",data:t.data,enableSortingRemoval:t.enableSortingRemoval,getCoreRowModel:St(),getFilteredRowModel:wt(),getPaginationRowModel:Ct(),getSortedRowModel:yt(),manualFiltering:t.isServerTable,manualSorting:t.isServerTable,manualPagination:t.isServerTable,...t.tableOptions}));i.watch([l,s,a,u,g],()=>{t.persistState&&t.id&&xt(t.id,f.value,d.value)});const y=()=>{const w=Io(g.value,l.value,u.value);n("update:request",w)},k=()=>{l.value=t.initialFilters,s.value=[],a.value={},u.value={pageIndex:ue,pageSize:t.paginated?t.rowPerPage:t.data.length},g.value=t.initialSorting},b=()=>{if(t.enableRowSelection&&r.push({accessorKey:"select",header:({table:w})=>i.h(z.Checkbox,{"aria-label":"Select all",modelValue:w.getIsAllPageRowsSelected(),"onUpdate:modelValue":()=>w.toggleAllPageRowsSelected(!w.getIsAllPageRowsSelected())}),cell:({row:w})=>i.h(z.Checkbox,{"aria-label":"Select row",modelValue:w.getIsSelected(),"onUpdate:modelValue":()=>w.toggleSelected(!w.getIsSelected())}),align:"center",enableColumnFilter:!1,enableSorting:!1}),t.columnsData.forEach(w=>{t.visibleColumns.length&&!t.visibleColumns.includes(String(w.accessorKey??w.id))||(w.meta?.filterVariant==="multiselect"&&!w.filterFn?w.filterFn=(C,$,V)=>!V||V.length===0?C:V.some(I=>C.getValue($)==I):w.meta?.filterVariant==="select"&&!w.filterFn?w.filterFn=(C,$,V)=>V===void 0||V.length===0?!0:String(V)===String(C.getValue($)):w.meta?.filterVariant==="dateRange"&&!w.filterFn?w.filterFn=(C,$,V)=>{if(V?.length){const I=new Date(V[1]).setHours(23,59,59,999),E=new Date(C.getValue($)),N=new Date(V[0]).setHours(0,0,0,0);return E.getTime()>=N&&E.getTime()<=I}return!0}:w.meta?.filterVariant==="range"&&(w.filterFn=(C,$,V)=>{if(!Array.isArray(V))return!0;const[I,E]=V,N=C.getValue($);return I&&E?N>=I&&N<=E:I?N>=I:E?N<=E:!0}),r.push({...w,enableColumnFilter:w.enableColumnFilter??!1,enableSorting:w.enableSorting??!1}))}),t.dataActionMenu?.length&&r.push({accessorKey:"actions",align:"center",enableColumnFilter:!1,enableSorting:!1,header:()=>i.h(_,{icon:"prime:cog",width:"24"}),cell:({row:w})=>i.h(jo,{actions:t.dataActionMenu,autoModeCount:t.autoModeCount,data:w.original,displayActions:t.displayActions,mode:t.actionsMode,"onAction:select":C=>n("action:select",{action:C?.key||C?.label,data:w.original})})}),t.persistState&&!t.id)throw new Error('Id is required when prop "persistState" is true');x(),t.isServerTable&&y()},x=()=>{if(!t.persistState||!t.id)return;const w=Eo(t.id,d.value);w&&(l.value=w.columnFilters,s.value=w.columnOrder,a.value=w.columnVisibility,g.value=w.sorting,t.rowPerPageOptions.includes(w.pagination.pageSize)&&(u.value=w.pagination)),xt(t.id,f.value,d.value)};return b(),(w,C)=>(i.openBlock(),i.createElementBlock("div",{id:e.id,class:"table-container"},[e.isLoading?(i.openBlock(),i.createElementBlock("div",rr,[i.createVNode(i.unref(B.LoadingIcon),{class:"loading-icon"})])):i.createCommentVNode("",!0),e.titleInfo?(i.openBlock(),i.createElementBlock("span",{key:1,"data-align":e.titleInfo.align||"center"},i.toDisplayString(e.titleInfo.text),9,lr)):i.createCommentVNode("",!0),e.showColumnAction||e.showResetButton||w.$slots.toolbar?(i.openBlock(),i.createBlock(nr,{key:2,"column-action-button-label":e.columnActionButtonLabel,"has-actions-column":!!e.dataActionMenu.length,"has-selection-column":e.enableRowSelection,"reset-button-label":e.resetButtonLabel,"show-column-action":e.showColumnAction,"show-reset-button":e.showResetButton,table:S.value,"onOn:reset":k,"onOn:drag":C[0]||(C[0]=$=>s.value=$)},{default:i.withCtx(()=>[i.renderSlot(w.$slots,"toolbar")]),_:3},8,["column-action-button-label","has-actions-column","has-selection-column","reset-button-label","show-column-action","show-reset-button","table"])):i.createCommentVNode("",!0),i.createElementVNode("div",ir,[i.createElementVNode("table",{style:i.normalizeStyle(`width: ${S.value.getCenterTotalSize()}`)},[i.createVNode(It,{"highlight-active-column":e.highlightActiveHeaderColumn,"input-debounce-time":e.inputDebounceTime,"is-filter-row-visible":p.value,table:S.value},null,8,["highlight-active-column","input-debounce-time","is-filter-row-visible","table"]),i.createVNode(vt,{"custom-formatters":e.customFormatters,"empty-table-message":e.emptyTableMessage,locale:e.locale,table:S.value},null,8,["custom-formatters","empty-table-message","locale","table"]),w.$slots.footer?(i.openBlock(),i.createElementBlock("tfoot",sr,[i.renderSlot(w.$slots,"footer")])):i.createCommentVNode("",!0)],4)]),(e.isServerTable||e.paginated)&&h.value>0?i.renderSlot(w.$slots,"pagination",{key:3},()=>[i.createVNode(Po,i.mergeProps(e.paginationOptions,{"current-page":u.value.pageIndex,"default-items-per-page":u.value.pageSize,"items-per-page-options":e.rowPerPageOptions,"total-items":h.value,"onUpdate:currentPage":S.value.setPageIndex,"onUpdate:itemsPerPage":S.value.setPageSize}),null,16,["current-page","default-items-per-page","items-per-page-options","total-items","onUpdate:currentPage","onUpdate:itemsPerPage"])]):i.createCommentVNode("",!0)],8,or))}}),ur={name:"FilesTable"},At=i.defineComponent({...ur,props:{archiveFile:Boolean,columnsData:{default:()=>[],type:Array},deleteFile:Boolean,downloadFile:Boolean,editDescription:Boolean,initialSorting:{default:()=>[],type:Array},files:{default:()=>[],type:Array},id:{default:"files-table",type:String},isLoading:Boolean,isServerTable:Boolean,locale:{default:void 0,type:String},persistState:{default:!0,type:Boolean},persistStateStorage:{default:"localStorage",type:String,validator:e=>["localStorage","sessionStorage"].includes(e)},messages:{default:void 0,type:Object},shareFile:Boolean,tableOptions:{default:()=>({}),type:Object},totalRecords:{default:0,type:Number},viewFile:Boolean,visibleColumns:{default:()=>[],type:Array}},emits:["action:archive","action:delete","action:download","action:edit","action:share","action:view","update:request"],setup(e,{emit:o}){const t=e,n=o,r=[{accessorKey:"originalFileName",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"File name",header:"File"},{accessorKey:"description",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Description",header:"Description",tooltip:!0},{accessorKey:"size",enableColumnFilter:!t.isServerTable,enableSorting:!t.isServerTable,filterPlaceholder:"Size",header:"Size",meta:{filterVariant:"range"}},{accessorKey:"uploadedBy",cell:({row:{original:c}})=>c.uploadedBy?c.uploadedBy.givenName||c.uploadedBy.lastName?`${c.uploadedBy.givenName||""} ${c.uploadedBy.lastName||""}`:c.uploadedBy.email:i.h("code",{},"—"),enableColumnFilter:!t.isServerTable,enableSorting:!t.isServerTable,filterFn:(c,g,p)=>{const f=c.getValue(g);return!p||p.length===0?!0:`${f.givenName||""} ${f.lastName||""}`.trim().toLowerCase().includes(p.toLowerCase())||(f.email?.toLowerCase().includes(p.toLowerCase())??!1)},filterPlaceholder:"Name",header:"Uploaded by"},{accessorKey:"uploadedAt",dataType:"datetime",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Date range",header:"Uploaded at",meta:{filterVariant:"dateRange",serverFilterFn:"between"}},{accessorKey:"downloadCount",align:"right",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Number of downloads",header:"Download count",meta:{filterVariant:"range"}},{accessorKey:"lastDownloadedAt",dataType:"datetime",enableColumnFilter:!0,enableSorting:!0,filterPlaceholder:"Date range",header:"Last downloaded at",meta:{filterVariant:"dateRange",serverFilterFn:"between"}}],l=i.computed(()=>{const c=[];return t.archiveFile&&c.push({confirmationOptions:{body:t.messages?.archiveConfirmationMessage||"Are you sure you want to archive this file?",header:t.messages?.archiveConfirmationHeader||"Archive file"},icon:"pi pi-book",key:"archive",label:t.messages?.archiveAction||"Archive",requireConfirmationModal:!0}),t.downloadFile&&c.push({icon:"pi pi-download",key:"download",label:t.messages?.downloadAction||"Download"}),t.editDescription&&c.push({icon:"pi pi-pencil",key:"edit",label:t.messages?.editDescriptionAction||"Edit description"}),t.shareFile&&c.push({icon:"pi pi-share-alt",key:"share",label:t.messages?.shareAction||"Share"}),t.viewFile&&c.push({icon:"pi pi-eye",key:"view",label:t.messages?.viewAction||"View"}),t.deleteFile&&c.push({class:"danger",confirmationOptions:{body:t.messages?.deleteConfirmationMessage||"Are you sure you want to delete this file?",header:t.messages?.deleteConfirmationHeader||"Delete file"},icon:"pi pi-trash",label:t.messages?.deleteAction||"Delete",key:"delete",requireConfirmationModal:!0}),c}),s=i.computed(()=>[...r.map(c=>{const g=t.columnsData.find(p=>p.accessorKey===c.accessorKey);return g?{...c,...g}:c}),...t.columnsData.filter(c=>!r.some(g=>g.accessorKey===c.accessorKey))]),a=c=>{switch(c.action){case"archive":n("action:archive",c.data);break;case"delete":n("action:delete",c.data);break;case"download":n("action:download",c.data);break;case"edit":n("action:edit",c.data);break;case"share":n("action:share",c.data);break;case"view":n("action:view",c.data);break}},u=c=>{n("update:request",c)};return(c,g)=>(i.openBlock(),i.createBlock(Et,i.mergeProps(e.tableOptions,{id:e.id,"columns-data":s.value,data:e.files,"data-action-menu":l.value,"empty-table-message":t.messages?.tableEmpty||"The table is empty","initial-sorting":e.initialSorting,"is-loading":e.isLoading,"is-server-table":e.isServerTable,locale:e.locale,"persist-state":e.persistState,"persist-state-storage":e.persistStateStorage,"total-records":e.totalRecords,"visible-columns":e.visibleColumns,class:"table-files","onAction:select":a,"onUpdate:request":u}),i.createSlots({_:2},[c.$slots.toolbar?{name:"toolbar",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"toolbar")]),key:"0"}:void 0,c.$slots.footer?{name:"footer",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"footer")]),key:"1"}:void 0,c.$slots.pagination?{name:"pagination",fn:i.withCtx(()=>[i.renderSlot(c.$slots,"pagination")]),key:"2"}:void 0]),1040,["id","columns-data","data","data-action-menu","empty-table-message","initial-sorting","is-loading","is-server-table","locale","persist-state","persist-state-storage","total-records","visible-columns"]))}}),cr={name:"FilesPresentation"},dr=i.defineComponent({...cr,props:{actionButtonsVisibility:{default:()=>({archive:!0,delete:!0,download:!0,edit:!0,share:!0,view:!0}),type:Object},files:{default:()=>[],type:Array},messages:{default:void 0,type:Object},listProps:{default:()=>{},type:Object},locale:{default:void 0,type:String},presentation:{default:()=>"list",type:String,validator:e=>["list","table"].includes(e)},tableProps:{default:()=>{},type:Object},visibleFileDetails:{default:()=>["actions","description","downloadCount","lastDownloadedAt","originalFileName","size","uploadedAt","uploadedBy"],type:Array}},emits:["action:archive","action:delete","action:download","action:edit","action:share","action:view"],setup(e,{emit:o}){const t=e,n=o,r=i.computed(()=>Object.fromEntries(["actions","description","downloadCount","lastDownloadedAt","originalFileName","size","uploadedAt","uploadedBy"].map(a=>[a,t.visibleFileDetails.includes(a)]))),l=(s,a)=>{switch(s){case"archive":case"delete":case"download":case"edit":case"share":case"view":n(`action:${s}`,a);break}};return(s,a)=>e.presentation==="list"?(i.openBlock(),i.createBlock(i.unref(B.FilesList),i.mergeProps({key:0},e.listProps,{"action-buttons-visibility":e.actionButtonsVisibility,files:e.files,"file-detail-visibility":r.value,locale:e.locale,messages:e.messages,"onAction:archive":a[0]||(a[0]=u=>l("archive",u)),"onAction:delete":a[1]||(a[1]=u=>l("delete",u)),"onAction:download":a[2]||(a[2]=u=>l("download",u)),"onAction:edit":a[3]||(a[3]=u=>l("edit",u)),"onAction:share":a[4]||(a[4]=u=>l("share",u)),"onAction:view":a[5]||(a[5]=u=>l("view",u))}),null,16,["action-buttons-visibility","files","file-detail-visibility","locale","messages"])):(i.openBlock(),i.createBlock(At,i.mergeProps({key:1},e.tableProps,{"archive-file":e.actionButtonsVisibility.archive,"delete-file":e.actionButtonsVisibility.delete,"download-file":e.actionButtonsVisibility.download,"edit-description":e.actionButtonsVisibility.edit,files:e.files,locale:e.locale,messages:e.messages,"share-file":e.actionButtonsVisibility.share,"view-file":e.actionButtonsVisibility.view,"visible-columns":e.visibleFileDetails,"onAction:archive":a[6]||(a[6]=u=>l("archive",u)),"onAction:delete":a[7]||(a[7]=u=>l("delete",u)),"onAction:download":a[8]||(a[8]=u=>l("download",u)),"onAction:edit":a[9]||(a[9]=u=>l("edit",u)),"onAction:share":a[10]||(a[10]=u=>l("share",u)),"onAction:view":a[11]||(a[11]=u=>l("view",u))}),null,16,["archive-file","delete-file","download-file","edit-description","files","locale","messages","share-file","view-file","visible-columns"]))}}),gr={class:"table-wrapper"},fr={key:0,class:"toggle-wrap"},pr=["colSpan","onClick"],mr={key:0},hr=["data-label"],Sr={class:"page-navigation-container"},wr={class:"page-indicators-selection-container"},Cr={class:"page-number-indicators"},yr={class:"go-to-page-container"},Rr=["value","max"],Fr=["value"],br=["value"],kr={class:"page-navigation-buttons-container"},Pr=["disabled"],$r=["disabled"],Vr=["disabled"],xr=["disabled"],Br={name:"TanstackTable"},vr=i.defineComponent({...Br,props:{columnsData:{type:Array,default:()=>[]},rows:{type:Array,default:()=>[]},enableToggle:{type:Boolean,default:()=>!1}},setup(e){const o=e,t=En(),n=[];o.columnsData.forEach(g=>{const p=t.accessor(g.accessorKey,{header:()=>g.header,footer:f=>f.column.id,enableSorting:g.sort!==void 0?g.sort:!1});n.push(p)});const r=i.ref([]),l=Ft({columns:n,state:{get sorting(){return r.value}},onSortingChange:g=>{r.value=typeof g=="function"?g(r.value):g},columnResizeMode:"onChange",data:o.rows,getCoreRowModel:St(),getFilteredRowModel:wt(),getPaginationRowModel:Ct(),getSortedRowModel:yt()}),s=i.ref(!1),a=()=>{s.value=!s.value},u=g=>{const p=g.target,f=p.value?Number(p.value)-1:0;l.setPageIndex(f)},c=g=>{const p=g.target,f=p.value?Number(p.value):10;l.setPageSize(f)};return(g,p)=>(i.openBlock(),i.createElementBlock("div",gr,[i.createElementVNode("table",{style:i.normalizeStyle(`width: ${i.unref(l).getCenterTotalSize()}`)},[o.enableToggle?(i.openBlock(),i.createElementBlock("div",fr,[i.createElementVNode("button",{class:"table-toggle",onClick:a},[i.createVNode(i.unref(_),{icon:"mingcute:menu-fill",class:"toggle-icon"})])])):i.createCommentVNode("",!0),i.createElementVNode("colgroup",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(o.columnsData,f=>(i.openBlock(),i.createElementBlock("col",{key:f.accessorKey,style:i.normalizeStyle(`width: ${f.size}px`)},null,4))),128))]),i.createElementVNode("thead",{class:i.normalizeClass({expand:s.value})},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(i.unref(l).getHeaderGroups(),f=>(i.openBlock(),i.createElementBlock("tr",{key:f.id},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(f.headers,d=>(i.openBlock(),i.createElementBlock("th",{key:d.id,colSpan:d.colSpan,onClick:h=>d.column.getCanSort()?d.column.getToggleSortingHandler()?.(h):null},[d.isPlaceholder?i.createCommentVNode("",!0):(i.openBlock(),i.createElementBlock("div",mr,[i.createVNode(i.unref(X),{props:d.getContext(),render:d.column.columnDef.header},null,8,["props","render"]),!d.column.getIsSorted()&&d.column.getCanSort()?(i.openBlock(),i.createBlock(i.unref(_),{key:0,icon:"ri:arrow-up-down-line",class:"sort-icon"})):i.createCommentVNode("",!0),d.column.getIsSorted()&&d.column.getCanSort()?(i.openBlock(),i.createBlock(i.unref(_),{key:1,icon:d.column.getIsSorted()==="asc"?"mdi:arrow-up":"mdi:arrow-down",class:"sort-icon"},null,8,["icon"])):i.createCommentVNode("",!0)]))],8,pr))),128))]))),128))],2),i.createElementVNode("tbody",null,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(i.unref(l).getRowModel().rows,f=>(i.openBlock(),i.createElementBlock("tr",{key:f.id},[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(f.getVisibleCells(),d=>(i.openBlock(),i.createElementBlock("td",{key:d.id,"data-label":d.column.id},[i.createVNode(i.unref(X),{props:d.getContext(),render:d.column.columnDef.cell},null,8,["props","render"])],8,hr))),128))]))),128))])],4),i.createElementVNode("div",Sr,[i.createElementVNode("div",wr,[i.createElementVNode("span",Cr,i.toDisplayString(i.unref(l).getState().pagination.pageIndex+1)+" of "+i.toDisplayString(i.unref(l).getPageCount()),1),i.createElementVNode("span",yr,[p[6]||(p[6]=i.createElementVNode("span",{class:"go-to-page-text"}," Go to page: ",-1)),i.createElementVNode("input",{class:"page-input",type:"number",value:i.unref(l).getState().pagination.pageIndex+1,max:i.unref(l).getPageCount(),onInput:p[0]||(p[0]=f=>u(f))},null,40,Rr)]),i.createElementVNode("select",{value:i.unref(l).getState().pagination.pageSize,onChange:p[1]||(p[1]=f=>c(f))},[(i.openBlock(),i.createElementBlock(i.Fragment,null,i.renderList([10,20,30,40,50],f=>i.createElementVNode("option",{key:f,value:f}," Show "+i.toDisplayString(f),9,br)),64))],40,Fr)]),i.createElementVNode("div",kr,[i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanPreviousPage(),onClick:p[2]||(p[2]=f=>i.unref(l).setPageIndex(0))},[i.createVNode(i.unref(_),{icon:"material-symbols:keyboard-double-arrow-left-rounded",class:"navigation-button-icon"})],8,Pr),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanPreviousPage(),onClick:p[3]||(p[3]=f=>i.unref(l).previousPage())},[i.createVNode(i.unref(_),{icon:"material-symbols:arrow-back-ios-new-rounded",class:"navigation-button-icon"})],8,$r),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanNextPage(),onClick:p[4]||(p[4]=f=>i.unref(l).nextPage())},[i.createVNode(i.unref(_),{icon:"material-symbols:arrow-forward-ios-rounded",class:"navigation-button-icon"})],8,Vr),i.createElementVNode("button",{class:"page-navigation-button",disabled:!i.unref(l).getCanNextPage(),onClick:p[5]||(p[5]=f=>i.unref(l).setPageIndex(i.unref(l).getPageCount()-1))},[i.createVNode(i.unref(_),{icon:"material-symbols:keyboard-double-arrow-right-rounded",class:"navigation-button-icon"})],8,xr)])])]))}});D.FilesPresentation=dr,D.FilesTable=At,D.Table=Et,D.TableBody=vt,D.TableHeader=It,D.TanstackTable=vr,Object.defineProperty(D,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prefabs.tech/vue3-tanstack-table",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "Vue3 Tanstack Table Component Library",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@prefabs.tech/eslint-config": "0.2.0",
|
|
24
24
|
"@prefabs.tech/tsconfig": "0.2.0",
|
|
25
|
-
"@prefabs.tech/vue3-form": "0.
|
|
26
|
-
"@prefabs.tech/vue3-ui": "0.
|
|
25
|
+
"@prefabs.tech/vue3-form": "0.27.0",
|
|
26
|
+
"@prefabs.tech/vue3-ui": "0.27.0",
|
|
27
27
|
"@iconify/vue": "4.3.0",
|
|
28
28
|
"@types/node": "24.10.1",
|
|
29
29
|
"@typescript-eslint/eslint-plugin": "8.24.1",
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
"vue-tsc": "1.2.0"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
|
-
"@prefabs.tech/vue3-form": "0.
|
|
54
|
-
"@prefabs.tech/vue3-ui": "0.
|
|
53
|
+
"@prefabs.tech/vue3-form": "0.27.0",
|
|
54
|
+
"@prefabs.tech/vue3-ui": "0.27.0",
|
|
55
55
|
"vue": ">=3.2"
|
|
56
56
|
},
|
|
57
57
|
"engines": {
|