@dcodegroup-au/dsg-vue 0.1.2 → 0.1.3
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.
- package/dist/{DsgTablePerPage.vue_vue_type_style_index_0_lang-Ui9JRdZP.js → DsgTablePerPage.vue_vue_type_style_index_0_lang-GtZjhKHp.js} +3 -3
- package/dist/{DsgTablePerPage.vue_vue_type_style_index_0_lang-0tHi6h4J.cjs → DsgTablePerPage.vue_vue_type_style_index_0_lang-fzZtwOCZ.cjs} +1 -1
- package/dist/dsg-vue.cjs +10 -10
- package/dist/dsg-vue.esm.js +720 -712
- package/dist/dsg-vue.table.cjs +1 -1
- package/dist/dsg-vue.table.esm.js +1 -1
- package/package.json +1 -1
package/dist/dsg-vue.table.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),B=require("./DsgTablePerPage.vue_vue_type_style_index_0_lang-0tHi6h4J.cjs"),U=require("./dsg-vue.helpers-string.cjs"),O=require("./dsg-vue.helpers-object.cjs"),ge={class:"dsg-table--pagination"},me=["disabled"],fe=["disabled"],ve=["onClick","innerHTML"],be=["onClick","innerHTML"],pe=["disabled"],ke=["disabled"],K=e.defineComponent({__name:"DsgTablePagination",props:e.mergeModels({onEachSide:{default:3},firstPage:{default:1},showFirstLast:{type:Boolean,default:!0},firstIcon:{default:"chevron-left-double"},lastIcon:{default:"chevron-right-double"},prevIcon:{default:"chevron-left"},nextIcon:{default:"chevron-right"}},{pagination:{default:null},paginationModifiers:{}}),emits:e.mergeModels(["dsg-table:change-page"],["update:pagination"]),setup(a,{expose:h,emit:u}){const r=e.useModel(a,"pagination"),f=e.computed(()=>r.value===null?0:r.value?.last_page-a.firstPage+1),g=e.computed(()=>r.value===null?0:r.value?.last_page),b=e.computed(()=>r.value===null?!1:r.value?.current_page===a.firstPage),p=e.computed(()=>r.value===null?!1:r.value?.current_page===g.value),V=e.computed(()=>f.value<a.onEachSide*2+4),D=e.computed(()=>a.onEachSide*2+1),v=e.computed(()=>!r.value||r.value?.current_page<=a.onEachSide?1:r.value?.current_page>=f.value-a.onEachSide?f.value-a.onEachSide*2:r.value?.current_page-a.onEachSide),m=u,o=c=>{m("dsg-table:change-page",c)},s=c=>c===r.value?.current_page;return h({loadPage:o}),(c,C)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ge,[c.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:C[0]||(C[0]=w=>o(c.firstPage)),class:e.normalizeClass([[b.value?"disabled":""],"dsg-table--pagination-link"]),disabled:b.value,title:"First","aria-label":"First"},[e.createVNode(B._sfc_main,{icon:c.firstIcon,size:"sm"},null,8,["icon"])],10,me)):e.createCommentVNode("",!0),e.createElementVNode("a",{onClick:C[1]||(C[1]=w=>o("prev")),class:e.normalizeClass([[b.value?"disabled":""],"dsg-table--pagination-link"]),disabled:b.value,title:"Previous","aria-label":"Previous"},[e.createVNode(B._sfc_main,{icon:c.prevIcon,size:"sm"},null,8,["icon"])],10,fe),V.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(f.value,(w,y)=>(e.openBlock(),e.createElementBlock("a",{key:y,onClick:N=>o(y+c.firstPage),class:e.normalizeClass([[s(y+c.firstPage)?"active":""],"dsg-table--pagination-link"]),innerHTML:w},null,10,ve))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(D.value,(w,y)=>(e.openBlock(),e.createElementBlock("a",{key:y,onClick:N=>o(v.value+y+c.firstPage-1),class:e.normalizeClass([[s(v.value+y+c.firstPage-1)?"active":""],"dsg-table--pagination-link"]),innerHTML:v.value+w-1},null,10,be))),128)),e.createElementVNode("a",{onClick:C[2]||(C[2]=w=>o("next")),class:e.normalizeClass([[p.value?"disabled":""],"dsg-table--pagination-link"]),disabled:p.value,title:"Next","aria-label":"Next"},[e.createVNode(B._sfc_main,{icon:c.nextIcon,size:"sm"},null,8,["icon"])],10,pe),c.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:3,onClick:C[3]||(C[3]=w=>o(g.value)),class:e.normalizeClass([[p.value?"disabled":""],"dsg-table--pagination-link"]),disabled:p.value,title:"Last","aria-label":"Last"},[e.createVNode(B._sfc_main,{icon:c.lastIcon,size:"sm"},null,8,["icon"])],10,ke)):e.createCommentVNode("",!0)],512)),[[e.vShow,r.value&&g.value>c.firstPage]])}}),he=["innerHTML"],Q=e.defineComponent({__name:"DsgTablePaginationInfo",props:e.mergeModels({infoTemplate:{default:"Displaying {from} to {to} of {total} items"},noDataTemplate:{default:"No relevant data"}},{pagination:{default:null},paginationModifiers:{}}),emits:["update:pagination"],setup(a){const h=e.useModel(a,"pagination"),u=e.computed(()=>h.value==null||h.value.total==0?a.noDataTemplate:a.infoTemplate.replace("{from}",(h.value?.from||0).toString()).replace("{to}",(h.value?.to||0).toString()).replace("{total}",(h.value?.total||0).toString()));return(r,f)=>(e.openBlock(),e.createElementBlock("div",{class:"dsg-table--pagination-info",innerHTML:u.value},null,8,he))}}),ye={class:"dsg-table--actions",ref:"dsgTableActions"},Be={class:"dsg-table--action-trigger"},Ce={key:0,class:"dsg-table--actions-menu-wrapper"},we=["href","target","onClick"],Pe=["textContent"],Ee={key:0},Se={key:1},De=["href","target","onClick"],$e={class:"flex-1"},Y=e.defineComponent({__name:"DsgTableActions",props:{placement:{default:"auto"}},emits:["dsg-table:action-edit","dsg-table:action-view","dsg-table:action-delete","dsg-table:action-archive","dsg-table:link-clicked"],setup(a,{emit:h}){const u=e.ref(!1);e.useTemplateRef("dsgTableActions");const r=e.useAttrs(),f=e.ref(r.data.rowData?.actions??null),g=e.ref(r.data.rowData?.links??null),b=e.ref(r.data.rowData??null),p=m=>{switch(m){case"edit":return"edit-05";case"view":return"eye";case"delete":return"trash-01";case"archive":return"eye-off";default:return"dots-horizontal"}},V=(m,o,s)=>{switch(o){case"edit":v("dsg-table:action-edit",s,b.value);break;case"view":v("dsg-table:action-view",s,b.value);break;case"delete":v("dsg-table:action-delete",s,b.value);break;case"archive":v("dsg-table:action-archive",s,b.value);break}},D=(m,o)=>{const s=m.actionId||m.label.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-");v("dsg-table:link-clicked",o,s,b.value)},v=h;return(m,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(e.unref(B.kt),{triggers:[],placement:m.placement,"handle-resize":!0,strategy:"absolute",shown:u.value,class:"dsg-table--actions__popper",onHide:o[1]||(o[1]=s=>u.value=!1),ref:"floatingVueFilterDropdown"},{popper:e.withCtx(()=>[u.value?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(s,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[["edit","view","delete","archive"].includes(String(c))?(e.openBlock(),e.createElementBlock("a",{key:c,href:f.value?.link,target:f.value?.target||"_self",onClick:C=>V(s,String(c),C)},[e.createElementVNode("div",{class:e.normalizeClass(["dsg-table--actions-menu-item",String(c)])},[e.createVNode(B._sfc_main,{icon:p(String(c)),size:"sm"},null,8,["icon"]),e.createElementVNode("span",{class:"flex-1",textContent:e.toDisplayString(e.unref(U.ucfirst)(String(c)))},null,8,Pe)],2)],8,we)):e.createCommentVNode("",!0)],64))),256)),f.value&&g.value?(e.openBlock(),e.createElementBlock("hr",Ee)):e.createCommentVNode("",!0),g.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.label},[s.hasOwnProperty("component")?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.component),{key:0,quote:e.unref(r).data.data.rowData,"row-data":e.unref(r).data.data.rowData},null,8,["quote","row-data"])):s.hasOwnProperty("type")&&s.type=="break"?(e.openBlock(),e.createElementBlock("hr",Se)):(e.openBlock(),e.createElementBlock("a",{key:2,href:s.link,target:s.target||"_self",class:e.normalizeClass(["dsg-table--actions-menu-item",s.class]),onClick:c=>D(s,c)},[s.icon?(e.openBlock(),e.createBlock(B._sfc_main,{key:0,icon:s.icon,size:"sm"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("span",$e,e.toDisplayString(s.label),1)],10,De))],64))),128)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("div",Be,[e.createElementVNode("button",{type:"button",class:"dsg-table--actions-button","aria-expanded":"false","aria-haspopup":"true",onClick:o[0]||(o[0]=s=>u.value=!u.value)},[e.renderSlot(m.$slots,"dsg-table-action-button-content",{},()=>[e.createVNode(B._sfc_main,{icon:"dots-vertical",size:"sm"})])])])]),_:3},8,["placement","shown"])])),[[e.unref(B.vOnClickOutside),()=>u.value=!1]])}}),Ve={class:"dsg-table--search"},G=e.defineComponent({__name:"DsgTableSearch",props:{name:{},id:{},placeholder:{default:"Search"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},hidden:{type:Boolean,default:!1},extraClasses:{},eventName:{}},emits:["dsg-table:term-changed"],setup(a,{emit:h}){const u=e.ref(""),r=h,f=B.useDebounceFn(g=>{u.value=g,r("dsg-table:term-changed",u.value)},300);return(g,b)=>(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(B._sfc_main$4,{value:u.value,"onUpdate:value":b[0]||(b[0]=p=>u.value=p),name:g.name,id:g.id||g.name,placeholder:g.placeholder,disabled:g.disabled,required:g.required,readonly:g.readonly,hidden:g.hidden,"has-clear-button":!0,autocomplete:"off",size:"sm",icon:"search-sm","icon-clickable":!0,onIconClicked:b[1]||(b[1]=p=>e.unref(f)(p)),onEnterPressed:b[2]||(b[2]=p=>e.unref(f)(p)),onOnClear:b[3]||(b[3]=()=>e.unref(f)(""))},null,8,["value","name","id","placeholder","disabled","required","readonly","hidden"])]))}}),Te={class:"dsg-table--header-row"},Ne={key:0,class:"dsg-table--th dsg-table--th-checkbox",scope:"col"},Fe={key:1,class:"dsg-table--th dsg-table--th-expand-detail",scope:"col"},Me=["title","id","onClick"],Le={key:0,class:"dsg-table--th-sort-icon"},ze=["innerHTML"],Re=["innerHTML"],J=e.defineComponent({__name:"DsgTableRowHeader",props:e.mergeModels({fields:{},scrollVisible:{type:Boolean},hasSelectAll:{type:Boolean,default:!1},showExpandDetail:{type:Boolean,default:!0},tableDataLength:{default:0}},{sortField:{default:null},sortFieldModifiers:{},selectedRows:{default:[]},selectedRowsModifiers:{},hasSelected:{type:Boolean,default:!1},hasSelectedModifiers:{}}),emits:e.mergeModels(["dsg-table:sort-field","dsg-table:on-select-all","dsg-table:on-deselect-all"],["update:sortField","update:selectedRows","update:hasSelected"]),setup(a,{emit:h}){const u=e.useModel(a,"sortField"),r=e.useModel(a,"selectedRows"),f=e.useModel(a,"hasSelected"),g=e.ref("17px"),b=v=>{f.value&&r.value.length>0&&r.value.length!==a.tableDataLength?(f.value=!0,p("dsg-table:on-select-all")):!f.value&&r.value.length===0?(f.value=!1,p("dsg-table:on-select-all")):p("dsg-table:on-deselect-all")},p=h,V=(v,m)=>[v,v+"-"+U.toSnakeCase(String(m?.name)),m.titleClass||"",{sortable:m.sortable},{"sort-active":u.value?.name===m.name}],D=v=>{v.sortable&&(u.value={name:String(v?.name),field:String(v?.sortField),direction:u.value?.name===v.name&&u.value?.direction==="asc"?"desc":"asc"},p("dsg-table:sort-field",v))};return(v,m)=>(e.openBlock(),e.createElementBlock("tr",Te,[v.hasSelectAll?(e.openBlock(),e.createElementBlock("th",Ne,[e.createVNode(B._sfc_main$2,{modelValue:f.value,"onUpdate:modelValue":[m[0]||(m[0]=o=>f.value=o),b],indeterminate:r.value.length>0&&r.value.length!==v.tableDataLength},null,8,["modelValue","indeterminate"])])):e.createCommentVNode("",!0),v.showExpandDetail?(e.openBlock(),e.createElementBlock("th",Fe)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.fields,(o,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o?.visible?(e.openBlock(),e.createElementBlock("th",{key:s,class:e.normalizeClass(V("dsg-table--th",o)),style:e.normalizeStyle([{width:o.width||void 0},o.style]),title:o.title+(o.sortable?" Sort":""),id:"_"+o.name,onClick:c=>D(o),scope:"col"},[o.sortable?(e.openBlock(),e.createElementBlock("div",Le,[o.title?(e.openBlock(),e.createElementBlock("span",{key:0,class:"dsg-table--th-title",innerHTML:o.title},null,8,ze)):e.createCommentVNode("",!0),o.sortable&&u.value?.name!==o.name?(e.openBlock(),e.createBlock(B._sfc_main,{key:1,icon:"chevron-selector-vertical",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),o.sortable&&u.value?.name===o.name&&u.value?.direction==="asc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:2,icon:"chevron-down",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),o.sortable&&u.value?.name===o.name&&u.value?.direction==="desc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:3,icon:"chevron-up",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("span",{key:1,class:"dsg-table--th-title",innerHTML:e.unref(U.ucwords)(String(o?.title))},null,8,Re))],14,Me)):e.createCommentVNode("",!0)],64))),256)),v.scrollVisible?(e.openBlock(),e.createElementBlock("th",{key:2,style:e.normalizeStyle({width:g.value}),class:"dsg-table--th-col-gutter"},null,4)):e.createCommentVNode("",!0)]))}}),He={class:"dsg-table--wrapper"},Ie=["span"],Ae={key:0,class:"dsg-table--loading"},Oe=["colspan"],Ue=["colspan"],qe=["onClick","onDblclick","onMouseover"],We={key:0,class:"dsg-table--tbody-cell dsg-table--tbody-cell-checkbox"},je=["onClick","onDblclick","onContextmenu"],xe=["innerHTML"],Ke=["onClick"],Qe=["colspan"],Ye={key:2},Ge=["colspan"],Je={class:"dsg-table--footer"},Xe=e.defineComponent({__name:"DsgTableComponent",props:e.mergeModels({fields:{default:()=>[]},isDraggable:{type:Boolean,default:!1},dragApi:{default:""},loadOnStart:{type:Boolean,default:!0},apiUrl:{default:""},httpMethod:{default:"get"},reactiveApiUrl:{type:Boolean,default:!0},apiMode:{type:Boolean,default:!0},data:{default:null},dataManager:{type:[Function,null],default:null},dataPath:{default:"data"},tableLayout:{default:"fixed"},paginationPath:{default:"links.pagination"},queryParams:{default:()=>({sort:"sort",order:"order",page:"page",perPage:"per_page"})},httpOptions:{default:()=>({})},hasDetailRow:{type:Boolean,default:!1},showExpandDetail:{type:Boolean,default:!0},initialPage:{default:1},firstPage:{default:1},sortOrder:{default:()=>[]},multiSort:{type:Boolean},tableHeight:{default:null},multiSortKey:{},rowClass:{type:[String,Function],default:""},detailRowComponent:{},detailRowTransition:{default:"fade"},detailRowClass:{type:[String,Function]},detailRowOptions:{default:()=>({})},trackBy:{default:"id"},css:{default:()=>({tableWrapper:"dsg-table-wrapper",thead:"dsg-table-thead",tbody:"dsg-table-tbody",table:"dsg-table-component"})},minRows:{default:0},noDataTemplate:{default:"No Data Available"},showSortIcons:{type:Boolean},headerRows:{},transform:{type:[Function,null],default:null},sortParams:{type:[Function,null],default:null},fieldPrefix:{},eventPrefix:{},selectable:{type:Boolean,default:!1}},{filterParams:{default:{}},filterParamsModifiers:{},perPage:{default:20},perPageModifiers:{}}),emits:e.mergeModels(["dsg-table:loading","dsg-table:loaded","dsg-table:load-success","dsg-table:load-error","dsg-table:pagination-data","dsg-table:rows-selected"],["update:filterParams","update:perPage"]),setup(a,{expose:h,emit:u}){const r=t=>t.map((n,d)=>({field:n.field||"",title:n.title||"",name:n.name||"",titleClass:n.titleClass||"",dataClass:n.dataClass||"",visible:n.visible!==!1,width:n.width||void 0,sortField:n.sortField||null,sortable:n.sortField,formatter:n.formatter||null,$_index:d})),f=e.ref(r(a.fields)),g=e.ref(a.data),b=e.ref(null),p=e.ref(a.initialPage),V=e.ref("17px"),D=e.ref(!1),v=e.ref({}),m=e.ref(0),o=e.ref(!0),s=e.ref(null),c=e.ref(null),C=e.useModel(a,"filterParams"),w=e.useModel(a,"perPage"),y=e.ref([]),N=e.ref(!1),F=e.computed(()=>a.tableHeight!=null),M=e.computed(()=>f.value.filter(t=>t.visible).length);e.watch(()=>y.value.length,t=>{N.value=a.selectable&&t>0},{immediate:!0}),e.watch(()=>a.fields,t=>{f.value=r(t)},{immediate:!0}),e.watch(()=>C.value,()=>{L()},{deep:!0}),e.watch(()=>w.value,()=>{L()});const T=u,R=(t,n)=>t.formatter&&typeof t.formatter=="function"?t.formatter(t,n):O.data_get(n,String(t?.name),""),z=t=>"dsg-field--"+t.name?.toLowerCase().replaceAll(/[_ ]/g,"-"),H=t=>{if(a.selectable){if(t.selected)y.value.push(t);else{const n=y.value.findIndex(d=>d[a.trackBy]===t[a.trackBy]);n!==-1&&y.value.splice(n,1)}T("dsg-table:rows-selected",y.value)}},l=()=>{a.selectable&&(g.value?.forEach(t=>{t.selected=!0}),y.value=g.value?.filter(t=>t.selected)??[],T("dsg-table:rows-selected",y.value))},i=()=>{a.selectable&&(g.value?.forEach(t=>{t.selected=!1}),y.value=[],T("dsg-table:rows-selected",y.value))},k=t=>{t==="prev"?p.value>a.firstPage&&p.value--:t==="next"?p.value<(b.value?.last_page??0)&&p.value++:t!=p.value&&t>=a.firstPage&&t<=(b.value?.last_page??0)&&(p.value=t),L()},P=()=>({[a.queryParams?.sort]:s.value?(s.value?.direction==="desc"?"-":"")+s.value?.field:void 0,[a.queryParams?.order]:s.value?.direction,[a.queryParams?.page]:p.value,[a.queryParams?.perPage]:w.value}),E=()=>{c.value&&(c.value.abort(),c.value=null)},I=async(t,n)=>{E();const d=new AbortController;if(n.signal=d.signal,c.value=d,a.httpMethod.toLowerCase()==="get")return await B.axios.get(t,n);{const $=n.params;return delete n.params,await B.axios.post(t,$,n)}},q=t=>{T("dsg-table:load-success",t);const n=a.transform?a.transform(t.data):t.data;g.value=O.data_get(n,a.dataPath,null),a.selectable&&g.value?.forEach(d=>{d.selected=d.selected??!1}),b.value=O.data_get(n,a.paginationPath,null)??null,m.value=g.value?.length?g.value[0].order:m,b.value===null&&console.warn('DsgTable: pagination-path "'+a.paginationPath+`" not found. It looks like the data returned from the server does not have pagination information or you may have set it incorrectly.
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),B=require("./DsgTablePerPage.vue_vue_type_style_index_0_lang-fzZtwOCZ.cjs"),U=require("./dsg-vue.helpers-string.cjs"),O=require("./dsg-vue.helpers-object.cjs"),ge={class:"dsg-table--pagination"},me=["disabled"],fe=["disabled"],ve=["onClick","innerHTML"],be=["onClick","innerHTML"],pe=["disabled"],ke=["disabled"],K=e.defineComponent({__name:"DsgTablePagination",props:e.mergeModels({onEachSide:{default:3},firstPage:{default:1},showFirstLast:{type:Boolean,default:!0},firstIcon:{default:"chevron-left-double"},lastIcon:{default:"chevron-right-double"},prevIcon:{default:"chevron-left"},nextIcon:{default:"chevron-right"}},{pagination:{default:null},paginationModifiers:{}}),emits:e.mergeModels(["dsg-table:change-page"],["update:pagination"]),setup(a,{expose:h,emit:u}){const r=e.useModel(a,"pagination"),f=e.computed(()=>r.value===null?0:r.value?.last_page-a.firstPage+1),g=e.computed(()=>r.value===null?0:r.value?.last_page),b=e.computed(()=>r.value===null?!1:r.value?.current_page===a.firstPage),p=e.computed(()=>r.value===null?!1:r.value?.current_page===g.value),V=e.computed(()=>f.value<a.onEachSide*2+4),D=e.computed(()=>a.onEachSide*2+1),v=e.computed(()=>!r.value||r.value?.current_page<=a.onEachSide?1:r.value?.current_page>=f.value-a.onEachSide?f.value-a.onEachSide*2:r.value?.current_page-a.onEachSide),m=u,o=c=>{m("dsg-table:change-page",c)},s=c=>c===r.value?.current_page;return h({loadPage:o}),(c,C)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ge,[c.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:C[0]||(C[0]=w=>o(c.firstPage)),class:e.normalizeClass([[b.value?"disabled":""],"dsg-table--pagination-link"]),disabled:b.value,title:"First","aria-label":"First"},[e.createVNode(B._sfc_main,{icon:c.firstIcon,size:"sm"},null,8,["icon"])],10,me)):e.createCommentVNode("",!0),e.createElementVNode("a",{onClick:C[1]||(C[1]=w=>o("prev")),class:e.normalizeClass([[b.value?"disabled":""],"dsg-table--pagination-link"]),disabled:b.value,title:"Previous","aria-label":"Previous"},[e.createVNode(B._sfc_main,{icon:c.prevIcon,size:"sm"},null,8,["icon"])],10,fe),V.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(f.value,(w,y)=>(e.openBlock(),e.createElementBlock("a",{key:y,onClick:N=>o(y+c.firstPage),class:e.normalizeClass([[s(y+c.firstPage)?"active":""],"dsg-table--pagination-link"]),innerHTML:w},null,10,ve))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(D.value,(w,y)=>(e.openBlock(),e.createElementBlock("a",{key:y,onClick:N=>o(v.value+y+c.firstPage-1),class:e.normalizeClass([[s(v.value+y+c.firstPage-1)?"active":""],"dsg-table--pagination-link"]),innerHTML:v.value+w-1},null,10,be))),128)),e.createElementVNode("a",{onClick:C[2]||(C[2]=w=>o("next")),class:e.normalizeClass([[p.value?"disabled":""],"dsg-table--pagination-link"]),disabled:p.value,title:"Next","aria-label":"Next"},[e.createVNode(B._sfc_main,{icon:c.nextIcon,size:"sm"},null,8,["icon"])],10,pe),c.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:3,onClick:C[3]||(C[3]=w=>o(g.value)),class:e.normalizeClass([[p.value?"disabled":""],"dsg-table--pagination-link"]),disabled:p.value,title:"Last","aria-label":"Last"},[e.createVNode(B._sfc_main,{icon:c.lastIcon,size:"sm"},null,8,["icon"])],10,ke)):e.createCommentVNode("",!0)],512)),[[e.vShow,r.value&&g.value>c.firstPage]])}}),he=["innerHTML"],Q=e.defineComponent({__name:"DsgTablePaginationInfo",props:e.mergeModels({infoTemplate:{default:"Displaying {from} to {to} of {total} items"},noDataTemplate:{default:"No relevant data"}},{pagination:{default:null},paginationModifiers:{}}),emits:["update:pagination"],setup(a){const h=e.useModel(a,"pagination"),u=e.computed(()=>h.value==null||h.value.total==0?a.noDataTemplate:a.infoTemplate.replace("{from}",(h.value?.from||0).toString()).replace("{to}",(h.value?.to||0).toString()).replace("{total}",(h.value?.total||0).toString()));return(r,f)=>(e.openBlock(),e.createElementBlock("div",{class:"dsg-table--pagination-info",innerHTML:u.value},null,8,he))}}),ye={class:"dsg-table--actions",ref:"dsgTableActions"},Be={class:"dsg-table--action-trigger"},Ce={key:0,class:"dsg-table--actions-menu-wrapper"},we=["href","target","onClick"],Pe=["textContent"],Ee={key:0},Se={key:1},De=["href","target","onClick"],$e={class:"flex-1"},Y=e.defineComponent({__name:"DsgTableActions",props:{placement:{default:"auto"}},emits:["dsg-table:action-edit","dsg-table:action-view","dsg-table:action-delete","dsg-table:action-archive","dsg-table:link-clicked"],setup(a,{emit:h}){const u=e.ref(!1);e.useTemplateRef("dsgTableActions");const r=e.useAttrs(),f=e.ref(r.data.rowData?.actions??null),g=e.ref(r.data.rowData?.links??null),b=e.ref(r.data.rowData??null),p=m=>{switch(m){case"edit":return"edit-05";case"view":return"eye";case"delete":return"trash-01";case"archive":return"eye-off";default:return"dots-horizontal"}},V=(m,o,s)=>{switch(o){case"edit":v("dsg-table:action-edit",s,b.value);break;case"view":v("dsg-table:action-view",s,b.value);break;case"delete":v("dsg-table:action-delete",s,b.value);break;case"archive":v("dsg-table:action-archive",s,b.value);break}},D=(m,o)=>{const s=m.actionId||m.label.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-");v("dsg-table:link-clicked",o,s,b.value)},v=h;return(m,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(e.unref(B.kt),{triggers:[],placement:m.placement,"handle-resize":!0,strategy:"absolute",shown:u.value,class:"dsg-table--actions__popper",onHide:o[1]||(o[1]=s=>u.value=!1),ref:"floatingVueFilterDropdown"},{popper:e.withCtx(()=>[u.value?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(s,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[["edit","view","delete","archive"].includes(String(c))?(e.openBlock(),e.createElementBlock("a",{key:c,href:f.value?.link,target:f.value?.target||"_self",onClick:C=>V(s,String(c),C)},[e.createElementVNode("div",{class:e.normalizeClass(["dsg-table--actions-menu-item",String(c)])},[e.createVNode(B._sfc_main,{icon:p(String(c)),size:"sm"},null,8,["icon"]),e.createElementVNode("span",{class:"flex-1",textContent:e.toDisplayString(e.unref(U.ucfirst)(String(c)))},null,8,Pe)],2)],8,we)):e.createCommentVNode("",!0)],64))),256)),f.value&&g.value?(e.openBlock(),e.createElementBlock("hr",Ee)):e.createCommentVNode("",!0),g.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.label},[s.hasOwnProperty("component")?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.component),{key:0,quote:e.unref(r).data.data.rowData,"row-data":e.unref(r).data.data.rowData},null,8,["quote","row-data"])):s.hasOwnProperty("type")&&s.type=="break"?(e.openBlock(),e.createElementBlock("hr",Se)):(e.openBlock(),e.createElementBlock("a",{key:2,href:s.link,target:s.target||"_self",class:e.normalizeClass(["dsg-table--actions-menu-item",s.class]),onClick:c=>D(s,c)},[s.icon?(e.openBlock(),e.createBlock(B._sfc_main,{key:0,icon:s.icon,size:"sm"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("span",$e,e.toDisplayString(s.label),1)],10,De))],64))),128)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("div",Be,[e.createElementVNode("button",{type:"button",class:"dsg-table--actions-button","aria-expanded":"false","aria-haspopup":"true",onClick:o[0]||(o[0]=s=>u.value=!u.value)},[e.renderSlot(m.$slots,"dsg-table-action-button-content",{},()=>[e.createVNode(B._sfc_main,{icon:"dots-vertical",size:"sm"})])])])]),_:3},8,["placement","shown"])])),[[e.unref(B.vOnClickOutside),()=>u.value=!1]])}}),Ve={class:"dsg-table--search"},G=e.defineComponent({__name:"DsgTableSearch",props:{name:{},id:{},placeholder:{default:"Search"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},hidden:{type:Boolean,default:!1},extraClasses:{},eventName:{}},emits:["dsg-table:term-changed"],setup(a,{emit:h}){const u=e.ref(""),r=h,f=B.useDebounceFn(g=>{u.value=g,r("dsg-table:term-changed",u.value)},300);return(g,b)=>(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(B._sfc_main$4,{value:u.value,"onUpdate:value":b[0]||(b[0]=p=>u.value=p),name:g.name,id:g.id||g.name,placeholder:g.placeholder,disabled:g.disabled,required:g.required,readonly:g.readonly,hidden:g.hidden,"has-clear-button":!0,autocomplete:"off",size:"sm",icon:"search-sm","icon-clickable":!0,onIconClicked:b[1]||(b[1]=p=>e.unref(f)(p)),onEnterPressed:b[2]||(b[2]=p=>e.unref(f)(p)),onOnClear:b[3]||(b[3]=()=>e.unref(f)(""))},null,8,["value","name","id","placeholder","disabled","required","readonly","hidden"])]))}}),Te={class:"dsg-table--header-row"},Ne={key:0,class:"dsg-table--th dsg-table--th-checkbox",scope:"col"},Fe={key:1,class:"dsg-table--th dsg-table--th-expand-detail",scope:"col"},Me=["title","id","onClick"],Le={key:0,class:"dsg-table--th-sort-icon"},ze=["innerHTML"],Re=["innerHTML"],J=e.defineComponent({__name:"DsgTableRowHeader",props:e.mergeModels({fields:{},scrollVisible:{type:Boolean},hasSelectAll:{type:Boolean,default:!1},showExpandDetail:{type:Boolean,default:!0},tableDataLength:{default:0}},{sortField:{default:null},sortFieldModifiers:{},selectedRows:{default:[]},selectedRowsModifiers:{},hasSelected:{type:Boolean,default:!1},hasSelectedModifiers:{}}),emits:e.mergeModels(["dsg-table:sort-field","dsg-table:on-select-all","dsg-table:on-deselect-all"],["update:sortField","update:selectedRows","update:hasSelected"]),setup(a,{emit:h}){const u=e.useModel(a,"sortField"),r=e.useModel(a,"selectedRows"),f=e.useModel(a,"hasSelected"),g=e.ref("17px"),b=v=>{f.value&&r.value.length>0&&r.value.length!==a.tableDataLength?(f.value=!0,p("dsg-table:on-select-all")):!f.value&&r.value.length===0?(f.value=!1,p("dsg-table:on-select-all")):p("dsg-table:on-deselect-all")},p=h,V=(v,m)=>[v,v+"-"+U.toSnakeCase(String(m?.name)),m.titleClass||"",{sortable:m.sortable},{"sort-active":u.value?.name===m.name}],D=v=>{v.sortable&&(u.value={name:String(v?.name),field:String(v?.sortField),direction:u.value?.name===v.name&&u.value?.direction==="asc"?"desc":"asc"},p("dsg-table:sort-field",v))};return(v,m)=>(e.openBlock(),e.createElementBlock("tr",Te,[v.hasSelectAll?(e.openBlock(),e.createElementBlock("th",Ne,[e.createVNode(B._sfc_main$2,{modelValue:f.value,"onUpdate:modelValue":[m[0]||(m[0]=o=>f.value=o),b],indeterminate:r.value.length>0&&r.value.length!==v.tableDataLength},null,8,["modelValue","indeterminate"])])):e.createCommentVNode("",!0),v.showExpandDetail?(e.openBlock(),e.createElementBlock("th",Fe)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.fields,(o,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o?.visible?(e.openBlock(),e.createElementBlock("th",{key:s,class:e.normalizeClass(V("dsg-table--th",o)),style:e.normalizeStyle([{width:o.width||void 0},o.style]),title:o.title+(o.sortable?" Sort":""),id:"_"+o.name,onClick:c=>D(o),scope:"col"},[o.sortable?(e.openBlock(),e.createElementBlock("div",Le,[o.title?(e.openBlock(),e.createElementBlock("span",{key:0,class:"dsg-table--th-title",innerHTML:o.title},null,8,ze)):e.createCommentVNode("",!0),o.sortable&&u.value?.name!==o.name?(e.openBlock(),e.createBlock(B._sfc_main,{key:1,icon:"chevron-selector-vertical",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),o.sortable&&u.value?.name===o.name&&u.value?.direction==="asc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:2,icon:"chevron-down",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),o.sortable&&u.value?.name===o.name&&u.value?.direction==="desc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:3,icon:"chevron-up",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("span",{key:1,class:"dsg-table--th-title",innerHTML:e.unref(U.ucwords)(String(o?.title))},null,8,Re))],14,Me)):e.createCommentVNode("",!0)],64))),256)),v.scrollVisible?(e.openBlock(),e.createElementBlock("th",{key:2,style:e.normalizeStyle({width:g.value}),class:"dsg-table--th-col-gutter"},null,4)):e.createCommentVNode("",!0)]))}}),He={class:"dsg-table--wrapper"},Ie=["span"],Ae={key:0,class:"dsg-table--loading"},Oe=["colspan"],Ue=["colspan"],qe=["onClick","onDblclick","onMouseover"],We={key:0,class:"dsg-table--tbody-cell dsg-table--tbody-cell-checkbox"},je=["onClick","onDblclick","onContextmenu"],xe=["innerHTML"],Ke=["onClick"],Qe=["colspan"],Ye={key:2},Ge=["colspan"],Je={class:"dsg-table--footer"},Xe=e.defineComponent({__name:"DsgTableComponent",props:e.mergeModels({fields:{default:()=>[]},isDraggable:{type:Boolean,default:!1},dragApi:{default:""},loadOnStart:{type:Boolean,default:!0},apiUrl:{default:""},httpMethod:{default:"get"},reactiveApiUrl:{type:Boolean,default:!0},apiMode:{type:Boolean,default:!0},data:{default:null},dataManager:{type:[Function,null],default:null},dataPath:{default:"data"},tableLayout:{default:"fixed"},paginationPath:{default:"links.pagination"},queryParams:{default:()=>({sort:"sort",order:"order",page:"page",perPage:"per_page"})},httpOptions:{default:()=>({})},hasDetailRow:{type:Boolean,default:!1},showExpandDetail:{type:Boolean,default:!0},initialPage:{default:1},firstPage:{default:1},sortOrder:{default:()=>[]},multiSort:{type:Boolean},tableHeight:{default:null},multiSortKey:{},rowClass:{type:[String,Function],default:""},detailRowComponent:{},detailRowTransition:{default:"fade"},detailRowClass:{type:[String,Function]},detailRowOptions:{default:()=>({})},trackBy:{default:"id"},css:{default:()=>({tableWrapper:"dsg-table-wrapper",thead:"dsg-table-thead",tbody:"dsg-table-tbody",table:"dsg-table-component"})},minRows:{default:0},noDataTemplate:{default:"No Data Available"},showSortIcons:{type:Boolean},headerRows:{},transform:{type:[Function,null],default:null},sortParams:{type:[Function,null],default:null},fieldPrefix:{},eventPrefix:{},selectable:{type:Boolean,default:!1}},{filterParams:{default:{}},filterParamsModifiers:{},perPage:{default:20},perPageModifiers:{}}),emits:e.mergeModels(["dsg-table:loading","dsg-table:loaded","dsg-table:load-success","dsg-table:load-error","dsg-table:pagination-data","dsg-table:rows-selected"],["update:filterParams","update:perPage"]),setup(a,{expose:h,emit:u}){const r=t=>t.map((n,d)=>({field:n.field||"",title:n.title||"",name:n.name||"",titleClass:n.titleClass||"",dataClass:n.dataClass||"",visible:n.visible!==!1,width:n.width||void 0,sortField:n.sortField||null,sortable:n.sortField,formatter:n.formatter||null,$_index:d})),f=e.ref(r(a.fields)),g=e.ref(a.data),b=e.ref(null),p=e.ref(a.initialPage),V=e.ref("17px"),D=e.ref(!1),v=e.ref({}),m=e.ref(0),o=e.ref(!0),s=e.ref(null),c=e.ref(null),C=e.useModel(a,"filterParams"),w=e.useModel(a,"perPage"),y=e.ref([]),N=e.ref(!1),F=e.computed(()=>a.tableHeight!=null),M=e.computed(()=>f.value.filter(t=>t.visible).length);e.watch(()=>y.value.length,t=>{N.value=a.selectable&&t>0},{immediate:!0}),e.watch(()=>a.fields,t=>{f.value=r(t)},{immediate:!0}),e.watch(()=>C.value,()=>{L()},{deep:!0}),e.watch(()=>w.value,()=>{L()});const T=u,R=(t,n)=>t.formatter&&typeof t.formatter=="function"?t.formatter(t,n):O.data_get(n,String(t?.name),""),z=t=>"dsg-field--"+t.name?.toLowerCase().replaceAll(/[_ ]/g,"-"),H=t=>{if(a.selectable){if(t.selected)y.value.push(t);else{const n=y.value.findIndex(d=>d[a.trackBy]===t[a.trackBy]);n!==-1&&y.value.splice(n,1)}T("dsg-table:rows-selected",y.value)}},l=()=>{a.selectable&&(g.value?.forEach(t=>{t.selected=!0}),y.value=g.value?.filter(t=>t.selected)??[],T("dsg-table:rows-selected",y.value))},i=()=>{a.selectable&&(g.value?.forEach(t=>{t.selected=!1}),y.value=[],T("dsg-table:rows-selected",y.value))},k=t=>{t==="prev"?p.value>a.firstPage&&p.value--:t==="next"?p.value<(b.value?.last_page??0)&&p.value++:t!=p.value&&t>=a.firstPage&&t<=(b.value?.last_page??0)&&(p.value=t),L()},P=()=>({[a.queryParams?.sort]:s.value?(s.value?.direction==="desc"?"-":"")+s.value?.field:void 0,[a.queryParams?.order]:s.value?.direction,[a.queryParams?.page]:p.value,[a.queryParams?.perPage]:w.value}),E=()=>{c.value&&(c.value.abort(),c.value=null)},I=async(t,n)=>{E();const d=new AbortController;if(n.signal=d.signal,c.value=d,a.httpMethod.toLowerCase()==="get")return await B.axios.get(t,n);{const $=n.params;return delete n.params,await B.axios.post(t,$,n)}},q=t=>{T("dsg-table:load-success",t);const n=a.transform?a.transform(t.data):t.data;g.value=O.data_get(n,a.dataPath,null),a.selectable&&g.value?.forEach(d=>{d.selected=d.selected??!1}),b.value=O.data_get(n,a.paginationPath,null)??null,m.value=g.value?.length?g.value[0].order:m,b.value===null&&console.warn('DsgTable: pagination-path "'+a.paginationPath+`" not found. It looks like the data returned from the server does not have pagination information or you may have set it incorrectly.
|
|
2
2
|
You can explicitly suppress this warning by setting pagination-path="".`),T("dsg-table:pagination-data",b.value),p.value>(b.value?.to||0)&&(p.value=a.initialPage),T("dsg-table:loaded"),o.value=!1},W=t=>{console.error("load-error",t),T("dsg-table:load-error",t),T("dsg-table:loaded"),o.value=!1},L=(t=q,n=W,d={})=>{const $=t||q,S=n||W;if(a.apiMode)return o.value=!0,T("dsg-table:loading",o.value),a.httpOptions.params={...P(),...C.value},I(a.apiUrl,a.httpOptions).then($).catch(A=>S(A))},ne=(t,n,d)=>{},se=(t,n,d)=>{},re=(t,n,d)=>{},ie=(t,n,d,$)=>{},de=(t,n,d,$)=>{},ce=(t,n,d,$)=>{},ue=(t,n,d)=>{};e.onMounted(()=>{a.apiMode===!0&&L()});const j=()=>{a.apiMode&&(y.value=[],E(),L())};return h({changePage:k,reload:j}),(t,n)=>(e.openBlock(),e.createElementBlock("div",He,[e.createElementVNode("div",{ref:"dsgTableBodyWrapper",class:e.normalizeClass(["dsg-table-body-wrapper",{"fixed-header":F.value}]),style:e.normalizeStyle({height:t.tableHeight||void 0})},[e.createElementVNode("table",{class:e.normalizeClass(["dsg-table-main",F.value?"fixed-header":"",v.value.table,"table-"+t.tableLayout])},[e.createElementVNode("colgroup",{span:M.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(d,$)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[d?.visible?(e.openBlock(),e.createElementBlock("col",{key:$,style:e.normalizeStyle({width:d.width||void 0}),class:e.normalizeClass("dsg-table--col-"+d.name+" "+d.titleClass)},null,6)):e.createCommentVNode("",!0)],64))),256)),!F.value&&D.value?(e.openBlock(),e.createElementBlock("col",{key:0,style:e.normalizeStyle({width:V.value}),class:"dsg-table--col-gutter"},null,4)):e.createCommentVNode("",!0)],8,Ie),e.createElementVNode("thead",{class:e.normalizeClass([[v.value.thead,{sticky:F.value,"top-0":F.value}],"dsg-table--head"])},[e.renderSlot(t.$slots,"tableHeader",{fields:f.value},()=>[e.createVNode(J,{fields:f.value,"has-select-all":t.selectable,"selected-rows":y.value,"onUpdate:selectedRows":n[0]||(n[0]=d=>y.value=d),"has-selected":N.value,"onUpdate:hasSelected":n[1]||(n[1]=d=>N.value=d),"scroll-visible":D.value,"show-expand-detail":t.hasDetailRow&&t.showExpandDetail,"table-data-length":g.value?.length,"sort-field":s.value,"onUpdate:sortField":n[2]||(n[2]=d=>s.value=d),"onDsgTable:sortField":n[3]||(n[3]=d=>j()),"onDsgTable:onSelectAll":l,"onDsgTable:onDeselectAll":i},null,8,["fields","has-select-all","selected-rows","has-selected","scroll-visible","show-expand-detail","table-data-length","sort-field"])])],2),e.createElementVNode("tbody",{class:e.normalizeClass(["dsg-table--body",v.value.tbody])},[o.value?(e.openBlock(),e.createElementBlock("tr",Ae,[e.createElementVNode("td",{colspan:M.value},[e.createElementVNode("div",{"aria-label":"Loading...",role:"status",class:"flex items-center space-x-3 h-12 w-full justify-center",colspan:M.value},[e.renderSlot(t.$slots,"dsg-table-loading",{},()=>[e.createVNode(B._sfc_main,{icon:"loading-02",class:"animate-spin"}),n[4]||(n[4]=e.createElementVNode("span",{class:"text-xs font-medium text-gray-500"},"Loading...",-1))])],8,Ue)],8,Oe)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value,(d,$)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:$},[e.createElementVNode("tr",{class:e.normalizeClass(["dsg-table--tbody-row",{odd:$%2===0,even:$%2!==0,"row-selected":d.selected}]),onClick:S=>ne(),onDblclick:S=>se(),onMouseover:S=>re()},[t.selectable?(e.openBlock(),e.createElementBlock("td",We,[e.createVNode(B._sfc_main$2,{modelValue:d.selected,"onUpdate:modelValue":[S=>d.selected=S,S=>H(d)]},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(S,A)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:A},[S.visible?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(["dsg-table--tbody-cell",S.dataClass]),style:e.normalizeStyle({width:S.width||void 0}),onClick:x=>ie(),onDblclick:x=>de(),onContextmenu:x=>ce()},[e.renderSlot(t.$slots,z(S),{rowData:d,rowIndex:$,rowField:S},()=>[e.createElementVNode("span",{innerHTML:R(S,d)},null,8,xe)])],46,je)):e.createCommentVNode("",!0)],64))),128))],42,qe),t.hasDetailRow?(e.openBlock(),e.createBlock(e.Transition,{key:0,name:t.detailRowTransition},{default:e.withCtx(()=>[e.createElementVNode("tr",{class:"dsg-table--tbody-detail-row",onClick:S=>ue()},[e.createElementVNode("td",{colspan:M.value},[e.renderSlot(t.$slots,"dsg-table-detail-row",{rowData:d,rowIndex:$,options:t.detailRowOptions})],8,Qe)],8,Ke)]),_:2},1032,["name"])):e.createCommentVNode("",!0)],64))),128)),!g.value?.length&&t.noDataTemplate.length?(e.openBlock(),e.createElementBlock("tr",Ye,[e.createElementVNode("td",{colspan:M.value,class:"dsg-table--empty-result"},[e.renderSlot(t.$slots,"dsg-table-empty-result",{},()=>[e.createTextVNode(e.toDisplayString(t.noDataTemplate),1)])],8,Ge)])):e.createCommentVNode("",!0)],2),e.createElementVNode("tfoot",Je,[e.renderSlot(t.$slots,"dsg-table-footer",{fields:f.value,data:g.value})])],2)],6)]))}}),Ze={class:"dsg-table"},_e={key:0,class:"dsg-table--pre-header"},et={class:"dsg-table--pre-header-left"},tt=["textContent"],at={class:"dsg-table--pre-header-right"},lt={key:1,class:"dsg-table--search-header",ref:"dsgTableSearchHeaderEl"},ot={class:"dsg-table--search-top"},nt={key:2,class:"dsg-table--footer",ref:"dsgTableFooterEl"},st={class:"dsg-table--footer-left"},rt={class:"dsg-table--footer-center"},it={class:"dsg-table--footer-right"},dt=e.defineComponent({__name:"DsgTable",props:{getUrl:{},fields:{},loadOnStart:{type:Boolean,default:!0},displayPaginationInfo:{type:Boolean,default:!0},reloadOnChangeTimer:{type:Boolean,default:!1},selectable:{type:Boolean,default:!1},trackBy:{default:"id"},title:{default:""},filters:{default:()=>{}},initialFilters:{default:()=>({})},filterEntity:{default:""},filterEndpoint:{default:""},filterSearchEndpoint:{default:""},tableLayout:{default:"fixed"},data:{default:null},hasHeader:{type:Boolean,default:!0},hasFooter:{type:Boolean,default:!0},css:{default:()=>({tableWrapper:"border-b"})}},emits:["dsg-table:action-edit","dsg-table:action-view","dsg-table:action-delete","dsg-table:action-archive","dsg-table:link-clicked","dsg-table:rows-selected","dsg-table:filter-updated","dsg-table:term-changed","dsg-table:data-loaded"],setup(a,{expose:h,emit:u}){const r=l=>{c.value=l},f=e.ref(!!(a.filterEntity||a.filterEndpoint)),g=()=>{if(f.value){let l={};return B.getQueryStrings().forEach(i=>{if(i.key.startsWith("filter[")){const k=i.key.replace("filter[","").replace("]",""),P=i.value;l[`filter[${k}]`]=P.join(",")}}),l}else return{}},b=e.computed(()=>({...a.css,tableWrapper:"border-b "+(a.css?.tableWrapper||"")})),p=e.useSlots(),V=e.ref(!0),D=e.ref(null),v=e.ref("<p>Showing {from} to {to} of {total}</p>"),m=e.ref(null),o=e.useTemplateRef("dsgTable"),s=e.ref({perPage:20,change:r}),c=e.ref(20),C=e.ref({...g(),...a.initialFilters}),w=u,y=l=>{o.value?.changePage(l)},N=l=>{m.value=l},F=({data:l})=>{D.value=l,w("dsg-table:data-loaded",l)},M=()=>{V.value===!1&&o.value?.reload()},T=l=>{o.value?.setData(o.value?.tableData.map(i=>i.id===l.id?l:i))},R=l=>{C.value=l},z=l=>{C.value["filter[term]"]=l,w("dsg-table:term-changed",l)},H=(l,i,k)=>{C.value={"filter[term]":C.value["filter[term]"],...l},w("dsg-table:filter-updated",C.value,i,k)};return h({reloadTable:M,updateRowTable:T,termChanged:z,setFilters:R}),(l,i)=>(e.openBlock(),e.createElementBlock("div",Ze,[l.hasHeader?(e.openBlock(),e.createElementBlock("div",_e,[e.renderSlot(l.$slots,"dsg-table--pre-header",{},()=>[e.createElementVNode("div",et,[e.renderSlot(l.$slots,"dsg-table--page-title",{data:D.value,title:l.title},()=>[l.title.length>0?(e.openBlock(),e.createElementBlock("h1",{key:0,class:"dsg-table--title",textContent:e.toDisplayString(l.title)},null,8,tt)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",at,[e.renderSlot(l.$slots,"dsg-table--page-actions",{data:D.value})])])])):e.createCommentVNode("",!0),l.displayPaginationInfo?(e.openBlock(),e.createElementBlock("div",lt,[e.createElementVNode("div",ot,[e.renderSlot(l.$slots,"dsg-table--search-header",{data:D.value},()=>[e.createVNode(G,{name:"term","onDsgTable:termChanged":i[0]||(i[0]=k=>z(k))}),e.createVNode(B._sfc_main$7,{entity:l.filterEntity,"filter-endpoint":l.filterEndpoint,"search-endpoint":l.filterSearchEndpoint,filters:l.filters,"onDsgTable:filterUpdated":i[1]||(i[1]=(k,P,E)=>H(k,P,E))},null,8,["entity","filter-endpoint","search-endpoint","filters"]),e.renderSlot(l.$slots,"dsg-table--search-actions",{data:D.value})])]),e.renderSlot(l.$slots,"dsg-table--search-navigation")],512)):e.createCommentVNode("",!0),e.createVNode(Xe,{ref:"dsgTable","api-url":l.getUrl,"filter-params":C.value,"onUpdate:filterParams":i[7]||(i[7]=k=>C.value=k),"per-page":c.value,"onUpdate:perPage":i[8]||(i[8]=k=>c.value=k),fields:l.fields,"load-on-start":l.loadOnStart,"pagination-path":"meta",selectable:l.selectable,"track-by":l.trackBy,"table-layout":l.tableLayout,css:b.value,data:l.data,"onDsgTable:loading":i[9]||(i[9]=k=>V.value=!0),"onDsgTable:loaded":i[10]||(i[10]=k=>V.value=!1),"onDsgTable:paginationData":N,"onDsgTable:loadSuccess":F,"onDsgTable:rowsSelected":i[11]||(i[11]=k=>w("dsg-table:rows-selected",k))},e.createSlots({"dsg-field--actions":e.withCtx(k=>[e.renderSlot(l.$slots,"dsg-table-actions",{data:k},()=>[(e.openBlock(),e.createBlock(Y,{key:k.rowIndex,data:k,"onDsgTable:actionEdit":i[2]||(i[2]=(P,E)=>w("dsg-table:action-edit",P,E)),"onDsgTable:actionView":i[3]||(i[3]=(P,E)=>w("dsg-table:action-view",P,E)),"onDsgTable:actionDelete":i[4]||(i[4]=(P,E)=>w("dsg-table:action-delete",P,E)),"onDsgTable:actionArchive":i[5]||(i[5]=(P,E)=>w("dsg-table:action-archive",P,E)),"onDsgTable:linkClicked":i[6]||(i[6]=(P,E,I)=>w("dsg-table:link-clicked",P,E,I))},null,8,["data"]))])]),_:2},[e.renderList(e.unref(p),(k,P)=>({name:P,fn:e.withCtx(E=>[String(P)!=="dsg-field--actions"?e.renderSlot(l.$slots,P,e.normalizeProps(e.mergeProps({key:0},E))):e.createCommentVNode("",!0)])}))]),1032,["api-url","filter-params","per-page","fields","load-on-start","selectable","track-by","table-layout","css","data"]),l.hasFooter?(e.openBlock(),e.createElementBlock("div",nt,[e.createElementVNode("div",st,[e.renderSlot(l.$slots,"dsg-table--footer-left",{data:m.value,perPage:s.value},()=>[e.createVNode(Q,{ref:"paginationInfoStart",pagination:m.value,"onUpdate:pagination":i[12]||(i[12]=k=>m.value=k),"info-template":v.value},null,8,["pagination","info-template"]),e.renderSlot(l.$slots,"dsg-table--footer-left-extras",{data:m.value,perPage:s.value})])]),e.createElementVNode("div",rt,[e.renderSlot(l.$slots,"dsg-table--footer-center",{data:m.value,perPage:s.value},()=>[e.renderSlot(l.$slots,"dsg-table--footer-center-extras",{data:m.value,perPage:s.value})])]),e.createElementVNode("div",it,[e.renderSlot(l.$slots,"dsg-table--footer-right",{data:m.value,perPage:s.value},()=>[V.value===!1?(e.openBlock(),e.createBlock(K,{key:0,ref:"pagination",pagination:m.value,"onUpdate:pagination":i[13]||(i[13]=k=>m.value=k),"onDsgTable:changePage":y},null,8,["pagination"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"dsg-table--footer-right-extras",{data:m.value,perPage:s.value})])])],512)):e.createCommentVNode("",!0)]))}}),ct={class:"dsg-table--per-page"},ut=["value","textContent"],gt=e.defineComponent({__name:"DsgTablePerPage",props:{perPageOptions:{default:()=>[10,20,30,50,100]},perPage:{}},setup(a){return(h,u)=>(e.openBlock(),e.createElementBlock("div",ct,[e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":u[0]||(u[0]=r=>h.perPage.perPage=r),class:"dsg-table--per-page-select",onChange:u[1]||(u[1]=r=>h.perPage.change(h.perPage.perPage))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.perPageOptions,r=>(e.openBlock(),e.createElementBlock("option",{key:r,value:r,textContent:e.toDisplayString(r)},null,8,ut))),128))],544),[[e.vModelSelect,h.perPage.perPage]])]))}}),X=dt,Z=Y,_=gt,ee=B._sfc_main$7,te=K,ae=Q,le=G,oe=J,mt={DsgTable:X,DsgTableActions:Z,DsgTablePerPage:_,DsgTableFilter:ee,DsgTablePagination:te,DsgTablePaginationInfo:ae,DsgTableSearch:le,DsgTableRowHeader:oe};exports.DsgTable=X;exports.DsgTableActions=Z;exports.DsgTableFilter=ee;exports.DsgTablePagination=te;exports.DsgTablePaginationInfo=ae;exports.DsgTablePerPage=_;exports.DsgTableRowHeader=oe;exports.DsgTableSearch=le;exports.default=mt;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as W, mergeModels as G, useModel as Y, computed as V, withDirectives as oe, createElementBlock as s, openBlock as a, createCommentVNode as w, createElementVNode as y, normalizeClass as M, createVNode as L, Fragment as R, renderList as q, vShow as Se, ref as k, useTemplateRef as ge, useAttrs as Fe, unref as U, withCtx as Z, renderSlot as T, toDisplayString as x, createBlock as N, resolveDynamicComponent as Be, normalizeStyle as J, watch as ee, onMounted as Me, Transition as Le, createTextVNode as Ee, useSlots as Re, createSlots as He, normalizeProps as Ie, mergeProps as ze, vModelSelect as Ae } from "vue";
|
|
2
|
-
import { _ as O, k as Ve, v as Oe, f as Ue, u as qe, c as ve, e as ce, i as be, j as Ne } from "./DsgTablePerPage.vue_vue_type_style_index_0_lang-
|
|
2
|
+
import { _ as O, k as Ve, v as Oe, f as Ue, u as qe, c as ve, e as ce, i as be, j as Ne } from "./DsgTablePerPage.vue_vue_type_style_index_0_lang-GtZjhKHp.js";
|
|
3
3
|
import { ucfirst as We, ucwords as je, toSnakeCase as Ke } from "./dsg-vue.helpers-string.esm.js";
|
|
4
4
|
import { data_get as ne } from "./dsg-vue.helpers-object.esm.js";
|
|
5
5
|
const Qe = { class: "dsg-table--pagination" }, Ye = ["disabled"], Ge = ["disabled"], Je = ["onClick", "innerHTML"], Xe = ["onClick", "innerHTML"], Ze = ["disabled"], xe = ["disabled"], fe = /* @__PURE__ */ W({
|