@dcodegroup-au/dsg-vue 0.1.23 → 0.1.26

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.
@@ -1,4 +1,4 @@
1
- import { _ as xe, D as ct, a as vo, b as Ia, c as vn, k as go, d as Ot, e as Bi, u as po, f as Oa, g as xo, h as yo, i as wo } from "./DsgTablePerPage.vue_vue_type_style_index_0_lang-DqY7xflh.js";
1
+ import { _ as xe, D as ct, a as vo, b as Ia, c as vn, k as go, d as Ot, e as Bi, u as po, f as Oa, g as xo, h as yo, i as wo } from "./DsgTablePerPage.vue_vue_type_style_index_0_lang-CuM5o1Z1.js";
2
2
  import { defineComponent as ve, openBlock as E, createElementBlock as O, normalizeClass as q, unref as je, createVNode as K, normalizeProps as Ta, guardReactiveProps as mo, ref as te, renderSlot as W, createCommentVNode as P, createElementVNode as L, Fragment as Ie, renderList as Ke, Transition as Zn, withCtx as Le, useTemplateRef as wt, toDisplayString as X, createBlock as j, reactive as Ht, mergeProps as Ve, toRaw as it, createApp as Ao, nextTick as Mr, computed as pe, onMounted as fr, onUnmounted as wi, h as jr, isVNode as Da, cloneVNode as Eo, watchEffect as Rr, useAttrs as bo, onBeforeUnmount as mi, withKeys as lt, withModifiers as me, withDirectives as qt, vShow as _r, normalizeStyle as tr, createTextVNode as Zt, Teleport as Na, watch as Lr, useModel as gn, mergeModels as pn, vModelSelect as _o, resolveDynamicComponent as Co } from "vue";
3
3
  import { C as So } from "./DsgColoursConfig-BseFo6-R.js";
4
4
  import { _ as Ra } from "./DsgLabel.vue_vue_type_style_index_0_lang-BYL1w85l.js";
@@ -5284,6 +5284,7 @@ const w1 = {
5284
5284
  t.useTeleport || x();
5285
5285
  };
5286
5286
  Rr(() => {
5287
+ u.value = (Array.isArray(t.errors) ? t.errors : [t.errors]).filter((b) => b != null && b !== "");
5287
5288
  }), Lr(
5288
5289
  () => t.options,
5289
5290
  (b) => {
@@ -24668,10 +24669,7 @@ const Tc = /* @__PURE__ */ cr(Cc, [["render", Oc], ["__scopeId", "data-v-3b725b2
24668
24669
  ], 64))), 128))
24669
24670
  ]));
24670
24671
  }
24671
- }), zc = /* @__PURE__ */ cr(Gc, [["__scopeId", "data-v-8f108e12"]]), Wc = { class: "dsg-tab--mobile" }, Xc = {
24672
- "aria-label": "Select a tab",
24673
- class: "dsg-tab--mobile-select"
24674
- }, jc = ["selected", "textContent"], Kc = { class: "dsg-tab--desktop" }, Yc = { class: "dsg-tab--desktop-wrapper" }, Zc = ["href", "onClick", "aria-current"], qc = ["textContent"], Qc = {
24672
+ }), zc = /* @__PURE__ */ cr(Gc, [["__scopeId", "data-v-8f108e12"]]), Wc = { class: "dsg-tab--mobile" }, Xc = ["value"], jc = ["value", "textContent"], Kc = { class: "dsg-tab--desktop" }, Yc = { class: "dsg-tab--desktop-wrapper" }, Zc = ["href", "onClick", "aria-current"], qc = ["textContent"], Qc = {
24675
24673
  key: 0,
24676
24674
  class: "dsg-tab--content"
24677
24675
  }, Jc = /* @__PURE__ */ ve({
@@ -24689,30 +24687,38 @@ const Tc = /* @__PURE__ */ cr(Cc, [["render", Oc], ["__scopeId", "data-v-3b725b2
24689
24687
  },
24690
24688
  emits: ["tab-clicked"],
24691
24689
  setup(t, { emit: e }) {
24692
- const r = e, n = (a) => {
24693
- t.tabs.forEach((o) => {
24694
- o.current = a.name === o.name;
24690
+ const r = e, n = (o) => {
24691
+ t.tabs.forEach((s) => {
24692
+ s.current = o.name === s.name;
24695
24693
  });
24696
- }, i = (a) => {
24697
- if (t.useWindowLocation && a.href && !t.preventVisits && (window.location.href = a.href), t.replaceState) {
24698
- const o = new URL(window.location.href), s = new URLSearchParams(o.search);
24699
- s.set("tab", a.key);
24700
- const u = `${o.origin}${o.pathname}?${s.toString()}`;
24701
- t.replaceStrategy === "window" && window.history.pushState({}, "", u);
24702
- }
24703
- t.selfUpdate && n(a), t.preventVisits && r("tab-clicked", a);
24694
+ }, i = (o) => {
24695
+ if (t.useWindowLocation && o.href && !t.preventVisits && (window.location.href = o.href), t.replaceState) {
24696
+ const s = new URL(window.location.href), u = new URLSearchParams(s.search);
24697
+ u.set("tab", o.key);
24698
+ const l = `${s.origin}${s.pathname}?${u.toString()}`;
24699
+ t.replaceStrategy === "window" && window.history.pushState({}, "", l);
24700
+ }
24701
+ t.selfUpdate && n(o), t.preventVisits && r("tab-clicked", o);
24702
+ }, a = (o) => {
24703
+ const s = o.target.value, u = t.tabs.find((l) => l.key === s);
24704
+ u && i(u);
24704
24705
  };
24705
- return (a, o) => (E(), O("div", {
24706
+ return (o, s) => (E(), O("div", {
24706
24707
  class: q(["dsg-tab", `dsg-tab--${t.style}`])
24707
24708
  }, [
24708
24709
  L("div", Wc, [
24709
- L("select", Xc, [
24710
- (E(!0), O(Ie, null, Ke(t.tabs, (s) => (E(), O("option", {
24711
- key: s.name,
24712
- selected: s.current,
24713
- textContent: X(s.name)
24710
+ L("select", {
24711
+ "aria-label": "Select a tab",
24712
+ class: "dsg-tab--mobile-select",
24713
+ value: t.tabs.find((u) => u.current)?.key,
24714
+ onChange: a
24715
+ }, [
24716
+ (E(!0), O(Ie, null, Ke(t.tabs, (u) => (E(), O("option", {
24717
+ key: u.name,
24718
+ value: u.key,
24719
+ textContent: X(u.name)
24714
24720
  }, null, 8, jc))), 128))
24715
- ]),
24721
+ ], 40, Xc),
24716
24722
  K(xe, {
24717
24723
  class: "dsg-tab--mobile-select-icon",
24718
24724
  icon: "chevron-down",
@@ -24726,21 +24732,21 @@ const Tc = /* @__PURE__ */ cr(Cc, [["render", Oc], ["__scopeId", "data-v-3b725b2
24726
24732
  class: q(["dsg-tab--desktop-nav", t.style === "pills" ? "dsg-tab--pills-nav" : ""]),
24727
24733
  "aria-label": "Tabs"
24728
24734
  }, [
24729
- (E(!0), O(Ie, null, Ke(t.tabs, (s) => (E(), O("a", {
24730
- key: s.name,
24731
- href: s.href,
24732
- onClick: me((u) => i(s), ["prevent"]),
24733
- class: q(["dsg-tab--desktop-link", [t.style === "pills" ? s.current ? "pills-active" : "pills-inactive" : s.current ? "link-active" : "link-inactive"]]),
24734
- "aria-current": s.current ? "page" : void 0
24735
+ (E(!0), O(Ie, null, Ke(t.tabs, (u) => (E(), O("a", {
24736
+ key: u.name,
24737
+ href: u.href,
24738
+ onClick: me((l) => i(u), ["prevent"]),
24739
+ class: q(["dsg-tab--desktop-link", [t.style === "pills" ? u.current ? "pills-active" : "pills-inactive" : u.current ? "link-active" : "link-inactive"]]),
24740
+ "aria-current": u.current ? "page" : void 0
24735
24741
  }, [
24736
24742
  L("span", {
24737
24743
  class: "dsg-tab--desktop-link-label",
24738
- textContent: X(s.name)
24744
+ textContent: X(u.name)
24739
24745
  }, null, 8, qc),
24740
- s.badge ? (E(), j(Ga, {
24746
+ u.badge ? (E(), j(Ga, {
24741
24747
  key: 0,
24742
- label: s.badge.label,
24743
- "theme-color": s.current ? "brand" : "gray",
24748
+ label: u.badge.label,
24749
+ "theme-color": u.current ? "brand" : "gray",
24744
24750
  theme: "pill-color",
24745
24751
  size: "sm"
24746
24752
  }, null, 8, ["label", "theme-color"])) : P("", !0)
@@ -24749,10 +24755,10 @@ const Tc = /* @__PURE__ */ cr(Cc, [["render", Oc], ["__scopeId", "data-v-3b725b2
24749
24755
  ])
24750
24756
  ]),
24751
24757
  t.useSlots ? (E(), O("div", Qc, [
24752
- (E(!0), O(Ie, null, Ke(t.tabs, (s, u) => (E(), O(Ie, null, [
24753
- s.current ? W(a.$slots, `dsg-tab--content--${String(s.key).trim().toLowerCase().replace(/[^0-9a-zA-Z]/g, "-").replace(/-+/g, "-")}`, {
24758
+ (E(!0), O(Ie, null, Ke(t.tabs, (u, l) => (E(), O(Ie, null, [
24759
+ u.current ? W(o.$slots, `dsg-tab--content--${String(u.key).trim().toLowerCase().replace(/[^0-9a-zA-Z]/g, "-").replace(/-+/g, "-")}`, {
24754
24760
  key: 0,
24755
- data: s
24761
+ data: u
24756
24762
  }) : P("", !0)
24757
24763
  ], 64))), 256))
24758
24764
  ])) : P("", !0)
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),S=require("./DsgTablePerPage.vue_vue_type_style_index_0_lang-BcCyPwKx.cjs"),G=require("./dsg-vue.helpers-string.cjs"),Y=require("./dsg-vue.helpers-object.cjs"),ye=require("./dsg-vue.helpers.cjs"),pe={class:"dsg-table--pagination"},we=["disabled"],Be=["disabled"],Ce=["onClick","innerHTML"],Pe=["onClick","innerHTML"],Se=["disabled"],De=["disabled"],_=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(t,{expose:E,emit:g}){const i=e.useModel(t,"pagination"),B=e.computed(()=>i.value===null?0:i.value?.last_page-t.firstPage+1),$=e.computed(()=>i.value===null?0:i.value?.last_page),c=e.computed(()=>i.value===null?!1:i.value?.current_page===t.firstPage),f=e.computed(()=>i.value===null?!1:i.value?.current_page===$.value),V=e.computed(()=>B.value<t.onEachSide*2+4),D=e.computed(()=>t.onEachSide*2+1),C=e.computed(()=>!i.value||i.value?.current_page<=t.onEachSide?1:i.value?.current_page>=B.value-t.onEachSide?B.value-t.onEachSide*2:i.value?.current_page-t.onEachSide),v=g,n=h=>{v("dsg-table:change-page",h)},u=h=>h===i.value?.current_page;return E({loadPage:n}),(h,b)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",pe,[t.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:b[0]||(b[0]=p=>n(t.firstPage)),class:e.normalizeClass([[c.value?"disabled":""],"dsg-table--pagination-link"]),disabled:c.value,title:"First","aria-label":"First"},[e.createVNode(S._sfc_main,{icon:t.firstIcon,size:"sm"},null,8,["icon"])],10,we)):e.createCommentVNode("",!0),e.createElementVNode("a",{onClick:b[1]||(b[1]=p=>n("prev")),class:e.normalizeClass([[c.value?"disabled":""],"dsg-table--pagination-link"]),disabled:c.value,title:"Previous","aria-label":"Previous"},[e.createVNode(S._sfc_main,{icon:t.prevIcon,size:"sm"},null,8,["icon"])],10,Be),V.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(B.value,(p,N)=>(e.openBlock(),e.createElementBlock("a",{key:N,onClick:z=>n(N+t.firstPage),class:e.normalizeClass([[u(N+t.firstPage)?"active":""],"dsg-table--pagination-link"]),innerHTML:p},null,10,Ce))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(D.value,(p,N)=>(e.openBlock(),e.createElementBlock("a",{key:N,onClick:z=>n(C.value+N+t.firstPage-1),class:e.normalizeClass([[u(C.value+N+t.firstPage-1)?"active":""],"dsg-table--pagination-link"]),innerHTML:C.value+p-1},null,10,Pe))),128)),e.createElementVNode("a",{onClick:b[2]||(b[2]=p=>n("next")),class:e.normalizeClass([[f.value?"disabled":""],"dsg-table--pagination-link"]),disabled:f.value,title:"Next","aria-label":"Next"},[e.createVNode(S._sfc_main,{icon:t.nextIcon,size:"sm"},null,8,["icon"])],10,Se),t.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:3,onClick:b[3]||(b[3]=p=>n($.value)),class:e.normalizeClass([[f.value?"disabled":""],"dsg-table--pagination-link"]),disabled:f.value,title:"Last","aria-label":"Last"},[e.createVNode(S._sfc_main,{icon:t.lastIcon,size:"sm"},null,8,["icon"])],10,De)):e.createCommentVNode("",!0)],512)),[[e.vShow,i.value&&$.value>t.firstPage]])}}),Ee=["innerHTML"],ee=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(t){const E=e.useModel(t,"pagination"),g=e.computed(()=>E.value==null||E.value.total==0?t.noDataTemplate:t.infoTemplate.replace("{from}",(E.value?.from||0).toString()).replace("{to}",(E.value?.to||0).toString()).replace("{total}",(E.value?.total||0).toString()));return(i,B)=>(e.openBlock(),e.createElementBlock("div",{class:"dsg-table--pagination-info",innerHTML:g.value},null,8,Ee))}}),$e={class:"dsg-table--actions",ref:"dsgTableActions"},Ve={class:"dsg-table--action-trigger"},Te={key:0,class:"dsg-table--actions-menu-wrapper"},Ne=["href","target","onClick"],Fe=["textContent"],xe={key:0},Me={key:1},Le=["href","target","onClick"],ze={class:"flex-1"},te=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(t,{emit:E}){const g=e.ref(!1);e.useTemplateRef("dsgTableActions");const i=e.useAttrs(),B=e.ref(i.data.rowData?.actions??null),$=e.ref(i.data.rowData?.links??null),c=e.ref(i.data.rowData??null),f=v=>{switch(v){case"edit":return"edit-05";case"view":return"eye";case"delete":return"trash-01";case"archive":return"eye-off";default:return"dots-horizontal"}},V=(v,n,u)=>{switch(n){case"edit":C("dsg-table:action-edit",u,c.value);break;case"view":C("dsg-table:action-view",u,c.value);break;case"delete":C("dsg-table:action-delete",u,c.value);break;case"archive":C("dsg-table:action-archive",u,c.value);break}},D=(v,n)=>{const u=v.actionId||v.label.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-");C("dsg-table:link-clicked",n,u,c.value)},C=E;return(v,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",$e,[e.createVNode(e.unref(S.kt),{triggers:[],placement:t.placement,"handle-resize":!0,strategy:"absolute",shown:g.value,class:"dsg-table--actions__popper",onHide:n[1]||(n[1]=u=>g.value=!1),ref:"floatingVueFilterDropdown"},{popper:e.withCtx(()=>[g.value?(e.openBlock(),e.createElementBlock("div",Te,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(u,h)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[["edit","view","delete","archive"].includes(String(h))?(e.openBlock(),e.createElementBlock("a",{key:h,href:B.value?.link,target:B.value?.target||"_self",onClick:b=>V(u,String(h),b)},[e.createElementVNode("div",{class:e.normalizeClass(["dsg-table--actions-menu-item",String(h)])},[e.createVNode(S._sfc_main,{icon:f(String(h)),size:"sm"},null,8,["icon"]),e.createElementVNode("span",{class:"flex-1",textContent:e.toDisplayString(e.unref(G.ucfirst)(String(h)))},null,8,Fe)],2)],8,Ne)):e.createCommentVNode("",!0)],64))),256)),B.value&&$.value?(e.openBlock(),e.createElementBlock("hr",xe)):e.createCommentVNode("",!0),$.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList($.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.label},[u.hasOwnProperty("component")?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.component),{key:0,quote:e.unref(i).data.data.rowData,"row-data":e.unref(i).data.data.rowData},null,8,["quote","row-data"])):u.hasOwnProperty("type")&&u.type=="break"?(e.openBlock(),e.createElementBlock("hr",Me)):(e.openBlock(),e.createElementBlock("a",{key:2,href:u.link,target:u.target||"_self",class:e.normalizeClass(["dsg-table--actions-menu-item",u.class]),onClick:h=>D(u,h)},[u.icon?(e.openBlock(),e.createBlock(S._sfc_main,{key:0,icon:u.icon,size:"sm"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("span",ze,e.toDisplayString(u.label),1)],10,Le))],64))),128)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("div",Ve,[e.createElementVNode("button",{type:"button",class:"dsg-table--actions-button","aria-expanded":"false","aria-haspopup":"true",onClick:n[0]||(n[0]=u=>g.value=!g.value)},[e.renderSlot(v.$slots,"dsg-table-action-button-content",{},()=>[e.createVNode(S._sfc_main,{icon:"dots-vertical",size:"sm"})])])])]),_:3},8,["placement","shown"])])),[[e.unref(S.vOnClickOutside),()=>g.value=!1]])}}),Re={class:"dsg-table--search"},ae=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:{},replaceState:{type:Boolean,default:!0}},emits:["dsg-table:term-changed"],setup(t,{emit:E}){const g=e.ref("");e.onMounted(()=>{const c=new URL(window.location.href).searchParams.get("term");c&&(g.value=c,i("dsg-table:term-changed",c))});const i=E,B=S.useDebounceFn($=>{if(g.value=$,t.replaceState){const c=new URL(window.location.href);g.value?c.searchParams.set("term",g.value):c.searchParams.delete("term"),window.history.pushState({},"",c.toString())}i("dsg-table:term-changed",g.value)},300);return($,c)=>(e.openBlock(),e.createElementBlock("div",Re,[e.createVNode(S._sfc_main$4,{modelValue:g.value,"onUpdate:modelValue":c[0]||(c[0]=f=>g.value=f),name:t.name,id:t.id||t.name,placeholder:t.placeholder,disabled:t.disabled,required:t.required,readonly:t.readonly,hidden:t.hidden,"has-clear-button":!0,autocomplete:"off",size:"sm",icon:"search-sm","icon-clickable":!0,onIconClicked:c[1]||(c[1]=f=>e.unref(B)(f)),onEnterPressed:c[2]||(c[2]=f=>e.unref(B)(f)),onOnClear:c[3]||(c[3]=()=>e.unref(B)(""))},null,8,["modelValue","name","id","placeholder","disabled","required","readonly","hidden"])]))}}),Ue={class:"dsg-table--header-row"},Ie={key:0,class:"dsg-table--th dsg-table--th-checkbox",scope:"col"},qe={key:1,class:"dsg-table--th dsg-table--th-expand-detail",scope:"col"},Ae=["title","id","onClick"],He={key:0,class:"dsg-table--th-sort-icon"},Oe=["innerHTML"],We=["innerHTML"],le=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(t,{emit:E}){const g=e.useModel(t,"sortField"),i=e.useModel(t,"selectedRows"),B=e.useModel(t,"hasSelected"),$=e.ref("17px"),c=C=>{B.value&&i.value.length>0&&i.value.length!==t.tableDataLength?(B.value=!0,f("dsg-table:on-select-all")):!B.value&&i.value.length===0?(B.value=!1,f("dsg-table:on-select-all")):f("dsg-table:on-deselect-all")},f=E,V=(C,v)=>[C,C+"-"+G.toSnakeCase(String(v?.name)),v.titleClass||"",{sortable:v.sortable},{"sort-active":g.value?.name===v.name}],D=C=>{C.sortable&&(g.value={name:String(C?.name),field:String(C?.sortField),direction:g.value?.name===C.name&&g.value?.direction==="asc"?"desc":"asc"},f("dsg-table:sort-field",C))};return(C,v)=>(e.openBlock(),e.createElementBlock("tr",Ue,[t.hasSelectAll?(e.openBlock(),e.createElementBlock("th",Ie,[e.createVNode(S._sfc_main$2,{modelValue:B.value,"onUpdate:modelValue":[v[0]||(v[0]=n=>B.value=n),c],indeterminate:i.value.length>0&&i.value.length!==t.tableDataLength},null,8,["modelValue","indeterminate"])])):e.createCommentVNode("",!0),t.showExpandDetail?(e.openBlock(),e.createElementBlock("th",qe)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,(n,u)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n?.visible?(e.openBlock(),e.createElementBlock("th",{key:u,class:e.normalizeClass(V("dsg-table--th",n)),style:e.normalizeStyle([{width:n.width||void 0},n.style]),title:n.title+(n.sortable?" Sort":""),id:"_"+n.name,onClick:h=>D(n),scope:"col"},[n.sortable?(e.openBlock(),e.createElementBlock("div",He,[n.title?(e.openBlock(),e.createElementBlock("span",{key:0,class:"dsg-table--th-title",innerHTML:n.title},null,8,Oe)):e.createCommentVNode("",!0),n.sortable&&g.value?.name!==n.name?(e.openBlock(),e.createBlock(S._sfc_main,{key:1,icon:"chevron-selector-vertical",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),n.sortable&&g.value?.name===n.name&&g.value?.direction==="asc"?(e.openBlock(),e.createBlock(S._sfc_main,{key:2,icon:"chevron-down",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),n.sortable&&g.value?.name===n.name&&g.value?.direction==="desc"?(e.openBlock(),e.createBlock(S._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(G.ucwords)(String(n?.title))},null,8,We))],14,Ae)):e.createCommentVNode("",!0)],64))),256)),t.scrollVisible?(e.openBlock(),e.createElementBlock("th",{key:2,style:e.normalizeStyle({width:$.value}),class:"dsg-table--th-col-gutter"},null,4)):e.createCommentVNode("",!0)]))}}),je={class:"dsg-table--wrapper"},Qe=["span"],Ke={key:0,class:"dsg-table--loading"},Ye=["colspan"],Ge=["colspan"],Je=["onClick","onDblclick","onMouseover"],Xe={key:0,class:"dsg-table--tbody-cell dsg-table--tbody-cell-checkbox"},Ze=["onClick","onDblclick","onContextmenu"],_e=["innerHTML"],et=["onClick"],tt=["colspan"],at={key:2},lt=["colspan"],nt={class:"dsg-table--footer"},ot=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},replaceState:{type:Boolean,default:!0},replaceStrategy:{default:"window"}},{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","dsg-table:row-clicked","dsg-table:row-hover","dsg-table:row-dblclick"],["update:filterParams","update:perPage"]),setup(t,{expose:E,emit:g}){const i=a=>a.map((l,r)=>({field:l.field||"",title:l.title||"",name:l.name||"",titleClass:l.titleClass||"",dataClass:l.dataClass||"",visible:l.visible??!0,width:l.width||void 0,sortField:l.sortField||null,sortable:l.sortField,formatter:l.formatter||null,$_index:r})),B=()=>{if(!t.apiMode)return null;const l=S.getQueryStrings().find(r=>r.key===t.queryParams.sort);if(l&&l.value.length>0){const r=l.value[0],y=r.startsWith("-"),m=y?r.substring(1):r,P=t.fields.find(U=>U.sortField===m||U.name===m||U.field===m);return P?{name:String(P.name||P.field),field:m,direction:y?"desc":"asc"}:{name:m,field:m,direction:y?"desc":"asc"}}return null},$=()=>{if(!(!t.apiMode||!t.replaceState)&&t.replaceStrategy==="window"){const a=new URL(window.location.href),l=new URLSearchParams(a.search);if(l.delete(t.queryParams.sort),b.value){const y=(b.value.direction==="desc"?"-":"")+b.value.field;l.set(t.queryParams.sort,y)}const r=`${a.pathname}${l.toString()?"?"+l.toString():""}`;window.history.pushState({},"",r)}},c=e.ref(i(t.fields)),f=e.ref(t.data),V=e.ref(null),D=e.ref(t.initialPage),C=e.ref("17px"),v=e.ref(!1),n=e.ref({}),u=e.ref(0),h=e.ref(!0),b=e.ref(B()),p=e.ref(null),N=e.ref(0),z=e.useModel(t,"filterParams"),q=e.useModel(t,"perPage"),T=e.ref([]),I=e.ref(!1),x=e.computed(()=>t.tableHeight!=null),M=e.computed(()=>c.value.filter(a=>a.visible).length);e.watch(()=>T.value.length,a=>{I.value=t.selectable&&a>0},{immediate:!0}),e.watch(()=>t.fields,a=>{c.value=i(a)},{immediate:!0,deep:!0}),e.watch(()=>z.value,a=>{L()},{deep:!0}),e.watch(()=>q.value,()=>{L()}),e.watch(()=>t.apiUrl,(a,l)=>{t.apiMode&&a!==l&&a&&L()}),e.watch(()=>b.value,()=>{$()},{deep:!0});const F=g,O=(a,l)=>a.formatter&&typeof a.formatter=="function"?a.formatter(a,l):Y.data_get(l,String(a?.name),""),W=a=>"dsg-field--"+a.name?.toLowerCase().replaceAll(/[_ ]/g,"-"),j=(a,l)=>{const r={odd:l%2===0,even:l%2!==0,"row-selected":a.selected};if(!t.rowClass)return r;let y={};if(typeof t.rowClass=="function"){const m=t.rowClass(a,l);typeof m=="string"?m.split(" ").forEach(P=>{P.trim()&&(y[P.trim()]=!0)}):Array.isArray(m)?m.forEach(P=>{typeof P=="string"&&P.trim()&&(y[P.trim()]=!0)}):typeof m=="object"&&m!==null&&(y=m)}else typeof t.rowClass=="string"&&t.rowClass.split(" ").forEach(m=>{m.trim()&&(y[m.trim()]=!0)});return{...r,...y}},Q=a=>{if(t.selectable){if(a.selected)T.value.push(a);else{const l=T.value.findIndex(r=>r[t.trackBy]===a[t.trackBy]);l!==-1&&T.value.splice(l,1)}F("dsg-table:rows-selected",T.value)}},K=()=>{t.selectable&&(f.value?.forEach(a=>{a.selected=!0}),T.value=f.value?.filter(a=>a.selected)??[],F("dsg-table:rows-selected",T.value))},A=()=>{t.selectable&&(f.value?.forEach(a=>{a.selected=!1}),T.value=[],F("dsg-table:rows-selected",T.value))},R=a=>{f.value=Array.isArray(a)?a:[],t.selectable&&f.value.forEach(l=>{l.selected=l.selected??!1})},o=()=>f.value??[],s=a=>{a==="prev"?D.value>t.firstPage&&D.value--:a==="next"?D.value<(V.value?.last_page??0)&&D.value++:a!=D.value&&a>=t.firstPage&&a<=(V.value?.last_page??0)&&(D.value=a),L()},d=()=>({[t.queryParams?.sort]:b.value?(b.value?.direction==="desc"?"-":"")+b.value?.field:void 0,[t.queryParams?.order]:b.value?.direction,[t.queryParams?.page]:D.value,[t.queryParams?.perPage]:q.value}),k=()=>{p.value&&(p.value.abort(),p.value=null)},w=(a,l)=>{k(),N.value++;const r=N.value,y=new AbortController;return l.signal=y.signal,p.value=y,(t.httpMethod.toLowerCase()==="get"?S.axios.get(a,l):(()=>{const P=l.params;return delete l.params,S.axios.post(a,P,l)})()).then(P=>({...P,_requestId:r,_apiUrl:a}),P=>{throw P.name==="AbortError"||P.code==="ERR_CANCELED"?{...P,_requestId:r,_cancelled:!0}:{...P,_requestId:r}})},H=a=>{if(a._requestId&&a._requestId!==N.value||a._apiUrl&&a._apiUrl!==t.apiUrl)return;F("dsg-table:load-success",a);const l=t.transform?t.transform(a.data):a.data;f.value=Y.data_get(l,t.dataPath,null),t.selectable&&f.value?.forEach(r=>{r.selected=r.selected??!1}),V.value=Y.data_get(l,t.paginationPath,null)??null,u.value=f.value?.length?f.value[0].order:u,!ye.isEmpty(t.paginationPath)&&V.value===null&&console.warn('DsgTable: pagination-path "'+t.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
- You can explicitly suppress this warning by setting pagination-path="".`),p.value=null,F("dsg-table:pagination-data",V.value),V.value&&D.value>(V.value?.last_page||0)&&f.value?.length===0&&(D.value=t.initialPage,L()),F("dsg-table:loaded"),h.value=!1},J=a=>{a._requestId&&a._requestId!==N.value||a._apiUrl&&a._apiUrl!==t.apiUrl||a._cancelled||(console.error("load-error",a),p.value=null,F("dsg-table:load-error",a),F("dsg-table:loaded"),h.value=!1)},X=()=>{if(t.data!==null&&Array.isArray(t.data)){R(t.data),h.value=!1;return}if(t.dataManager&&typeof t.dataManager=="function"){const a=t.dataManager();R(a),h.value=!1}else R(t.data),h.value=!1},L=(a=H,l=J,r={})=>{const y=a||H,m=l||J;if(!t.apiMode){X();return}return h.value=!0,F("dsg-table:loading",h.value),t.httpOptions.params={...d(),...z.value},w(t.apiUrl,t.httpOptions).then(y).catch(P=>m(P))},ge=(a,l,r)=>{F("dsg-table:row-clicked",a,l,r)},me=(a,l,r)=>{F("dsg-table:row-dblclick",a,l,r)},fe=(a,l,r)=>{},ve=(a,l,r,y)=>{},be=(a,l,r,y)=>{},he=(a,l,r,y)=>{},ke=(a,l,r)=>{};e.onMounted(()=>{t.apiMode===!0?L():X()});const Z=()=>{t.apiMode&&(T.value=[],k(),L())};return E({changePage:s,reload:Z,getData:o,setData:R,setLoading:a=>{h.value=a,F("dsg-table:loading",h.value)}}),(a,l)=>(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("div",{ref:"dsgTableBodyWrapper",class:e.normalizeClass(["dsg-table-body-wrapper",{"fixed-header":x.value}]),style:e.normalizeStyle({height:t.tableHeight||void 0})},[e.createElementVNode("table",{class:e.normalizeClass(["dsg-table-main",x.value?"fixed-header":"",n.value.table,"table-"+t.tableLayout])},[e.createElementVNode("colgroup",{span:M.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(r,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r?.visible?(e.openBlock(),e.createElementBlock("col",{key:y,style:e.normalizeStyle({width:r.width||void 0}),class:e.normalizeClass("dsg-table--col-"+r.name+" "+r.titleClass)},null,6)):e.createCommentVNode("",!0)],64))),256)),!x.value&&v.value?(e.openBlock(),e.createElementBlock("col",{key:0,style:e.normalizeStyle({width:C.value}),class:"dsg-table--col-gutter"},null,4)):e.createCommentVNode("",!0)],8,Qe),e.createElementVNode("thead",{class:e.normalizeClass([[n.value.thead,{sticky:x.value,"top-0":x.value}],"dsg-table--head"])},[e.renderSlot(a.$slots,"tableHeader",{fields:c.value},()=>[e.createVNode(le,{fields:c.value,"has-select-all":t.selectable,"selected-rows":T.value,"onUpdate:selectedRows":l[0]||(l[0]=r=>T.value=r),"has-selected":I.value,"onUpdate:hasSelected":l[1]||(l[1]=r=>I.value=r),"scroll-visible":v.value,"show-expand-detail":t.hasDetailRow&&t.showExpandDetail,"table-data-length":f.value?.length,"sort-field":b.value,"onUpdate:sortField":l[2]||(l[2]=r=>b.value=r),"onDsgTable:sortField":l[3]||(l[3]=r=>Z()),"onDsgTable:onSelectAll":K,"onDsgTable:onDeselectAll":A},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",n.value.tbody])},[h.value?(e.openBlock(),e.createElementBlock("tr",Ke,[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(a.$slots,"dsg-table-loading",{},()=>[e.createVNode(S._sfc_main,{icon:"loading-02",class:"animate-spin"}),l[4]||(l[4]=e.createElementVNode("span",{class:"text-xs font-medium text-gray-500"},"Loading...",-1))])],8,Ge)],8,Ye)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(f.value,(r,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[e.createElementVNode("tr",{class:e.normalizeClass(["dsg-table--tbody-row",j(r,y)]),onClick:m=>ge(m,y,r),onDblclick:m=>me(m,y,r),onMouseover:m=>fe()},[t.selectable?(e.openBlock(),e.createElementBlock("td",Xe,[e.createVNode(S._sfc_main$2,{modelValue:r.selected,"onUpdate:modelValue":[m=>r.selected=m,m=>Q(r)]},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(m,P)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:P},[m.visible?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(["dsg-table--tbody-cell",m.dataClass]),style:e.normalizeStyle({width:m.width||void 0}),onClick:U=>ve(),onDblclick:U=>be(),onContextmenu:U=>he()},[e.renderSlot(a.$slots,W(m),{rowData:r,rowIndex:y,rowField:m},()=>[e.createElementVNode("span",{innerHTML:O(m,r)},null,8,_e)])],46,Ze)):e.createCommentVNode("",!0)],64))),128))],42,Je),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:m=>ke()},[e.createElementVNode("td",{colspan:M.value},[e.renderSlot(a.$slots,"dsg-table-detail-row",{rowData:r,rowIndex:y,options:t.detailRowOptions})],8,tt)],8,et)]),_:2},1032,["name"])):e.createCommentVNode("",!0)],64))),128)),!h.value&&!f.value?.length&&t.noDataTemplate.length?(e.openBlock(),e.createElementBlock("tr",at,[e.createElementVNode("td",{colspan:M.value,class:"dsg-table--empty-result"},[e.renderSlot(a.$slots,"dsg-table-empty-result",{},()=>[e.createTextVNode(e.toDisplayString(t.noDataTemplate),1)])],8,lt)])):e.createCommentVNode("",!0)],2),e.createElementVNode("tfoot",nt,[e.renderSlot(a.$slots,"dsg-table-footer",{fields:c.value,data:f.value})])],2)],6)]))}}),st={class:"dsg-table"},rt={key:0,class:"dsg-table--pre-header"},it={class:"dsg-table--pre-header-left"},dt=["textContent"],ct={class:"dsg-table--pre-header-right"},ut={key:1,class:"dsg-table--search-header",ref:"dsgTableSearchHeaderEl"},gt={class:"dsg-table--search-top"},mt={key:2,class:"dsg-table--footer",ref:"dsgTableFooterEl"},ft={class:"dsg-table--footer-left"},vt={class:"dsg-table--footer-center"},bt={class:"dsg-table--footer-right"},ht=e.defineComponent({__name:"DsgTable",props:{getUrl:{},fields:{},loadOnStart:{type:Boolean,default:!0},displaySearch:{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"},autoSortFilters:{type:Boolean,default:!0},data:{default:null},hasHeader:{type:Boolean,default:!0},hasFooter:{type:Boolean,default:!0},perPage:{default:20},paginationPath:{default:"meta"},css:{default:()=>({tableWrapper:"border-b"})},rowClass:{type:[String,Function],default:void 0},apiMode:{type:Boolean,default:!0},replaceState:{type:Boolean,default:!0},replaceStrategy:{default:"window"}},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:row-clicked","dsg-table:row-hover","dsg-table:row-dblclick","dsg-table:filter-updated","dsg-table:term-changed","dsg-table:data-loaded"],setup(t,{expose:E,emit:g}){const i=o=>{h.value=o},B=e.ref(t.apiMode&&!!(t.filterEntity||t.filterEndpoint||t.getUrl)),$=()=>{if(B.value){let o={};return S.getQueryStrings().forEach(s=>{if(s.key.startsWith("filter[")){const d=s.key.replace("filter[","").replace("]",""),k=s.value;o[`filter[${d}]`]=k.join(",")}}),o}else return{}},c=e.computed(()=>({...t.css,tableWrapper:"border-b "+(t.css?.tableWrapper||"")})),f=e.useSlots(),V=e.ref(!0),D=e.ref(null),C=e.ref("<p>Showing {from} to {to} of {total}</p>"),v=e.ref(null),n=e.useTemplateRef("dsgTable"),u=e.ref({perPage:t.perPage,change:i}),h=e.ref(t.perPage),b=e.ref({...$(),...t.initialFilters}),p=g,N=o=>{n.value?.changePage(o)},z=o=>{v.value=o},q=({data:o})=>{D.value=o,p("dsg-table:data-loaded",o)},T=()=>{n.value?.reload()},I=o=>{n.value?.setLoading(o)},x=o=>{const s=n.value?.getData?.()??[];n.value?.setData(s.map(d=>d.id===o.id?o:d))},M=o=>{const s=n.value?.getData?.()??[];n.value?.setData([...s,o])},F=o=>{const s=n.value?.getData?.()??[];n.value?.setData(s.filter(d=>d.id!==o.id))},O=o=>{n.value?.setData(o)},W=()=>n.value?.getData()??[],j=o=>{const s=n.value?.getData()??[],d=o(s);d&&n.value?.setData(d)},Q=o=>{b.value=o},K=()=>b.value??{},A=o=>{const s={...b.value};!o||o.trim()===""?delete s["filter[term]"]:s["filter[term]"]=o,b.value=s,e.nextTick(()=>{T()}),p("dsg-table:term-changed",o)},R=(o,s,d)=>{let k={};b.value["filter[term]"]&&(k["filter[term]"]=b.value["filter[term]"]),Object.keys(o).forEach(w=>{o[w]!==null&&o[w]!==void 0&&o[w]!==""&&(k[w]=o[w])}),b.value=k,e.nextTick(()=>{T()}),p("dsg-table:filter-updated",b.value,s,d)};return E({reloadTable:T,updateRowTable:x,addRowTable:M,deleteRowTable:F,setData:O,getData:W,mutateData:j,termChanged:A,setFilters:Q,getFilters:K,setLoading:I}),(o,s)=>(e.openBlock(),e.createElementBlock("div",st,[t.hasHeader?(e.openBlock(),e.createElementBlock("div",rt,[e.renderSlot(o.$slots,"dsg-table--pre-header",{},()=>[e.createElementVNode("div",it,[e.renderSlot(o.$slots,"dsg-table--page-title",{data:D.value,title:t.title},()=>[t.title.length>0?(e.openBlock(),e.createElementBlock("h1",{key:0,class:"dsg-table--title",textContent:e.toDisplayString(t.title)},null,8,dt)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",ct,[e.renderSlot(o.$slots,"dsg-table--page-actions",{data:D.value})])])])):e.createCommentVNode("",!0),t.displaySearch?(e.openBlock(),e.createElementBlock("div",ut,[e.createElementVNode("div",gt,[e.renderSlot(o.$slots,"dsg-table--search-header",{data:D.value},()=>[e.createVNode(ae,{name:"term","onDsgTable:termChanged":s[0]||(s[0]=d=>A(d))}),e.createVNode(S._sfc_main$7,{entity:t.filterEntity,"filter-endpoint":t.filterEndpoint,"search-endpoint":t.filterSearchEndpoint,"auto-sort":t.autoSortFilters,filters:t.filters,"onDsgTable:filterUpdated":s[1]||(s[1]=(d,k,w)=>R(d,k,w))},null,8,["entity","filter-endpoint","search-endpoint","auto-sort","filters"]),e.renderSlot(o.$slots,"dsg-table--search-actions",{data:D.value})])]),e.renderSlot(o.$slots,"dsg-table--search-navigation")],512)):e.createCommentVNode("",!0),e.createVNode(ot,{ref:"dsgTable","api-url":t.getUrl,"filter-params":b.value,"onUpdate:filterParams":s[7]||(s[7]=d=>b.value=d),"per-page":h.value,"onUpdate:perPage":s[8]||(s[8]=d=>h.value=d),fields:t.fields,"load-on-start":t.loadOnStart,"pagination-path":t.paginationPath,selectable:t.selectable,"track-by":t.trackBy,"table-layout":t.tableLayout,css:c.value,data:t.data,"row-class":t.rowClass,"api-mode":B.value,"replace-state":t.replaceState,"replace-strategy":t.replaceStrategy,"onDsgTable:loading":s[9]||(s[9]=d=>V.value=!0),"onDsgTable:loaded":s[10]||(s[10]=d=>V.value=!1),"onDsgTable:paginationData":z,"onDsgTable:loadSuccess":q,"onDsgTable:rowsSelected":s[11]||(s[11]=d=>p("dsg-table:rows-selected",d)),"onDsgTable:rowClicked":s[12]||(s[12]=(d,k,w)=>p("dsg-table:row-clicked",d,k,w)),"onDsgTable:rowHover":s[13]||(s[13]=(d,k,w)=>p("dsg-table:row-hover",d,k,w)),"onDsgTable:rowDblclick":s[14]||(s[14]=(d,k,w)=>p("dsg-table:row-dblclick",d,k,w))},e.createSlots({"dsg-field--actions":e.withCtx(d=>[e.renderSlot(o.$slots,"dsg-table-actions",{data:d},()=>[(e.openBlock(),e.createBlock(te,{key:d.rowIndex,data:d,"onDsgTable:actionEdit":s[2]||(s[2]=(k,w)=>p("dsg-table:action-edit",k,w)),"onDsgTable:actionView":s[3]||(s[3]=(k,w)=>p("dsg-table:action-view",k,w)),"onDsgTable:actionDelete":s[4]||(s[4]=(k,w)=>p("dsg-table:action-delete",k,w)),"onDsgTable:actionArchive":s[5]||(s[5]=(k,w)=>p("dsg-table:action-archive",k,w)),"onDsgTable:linkClicked":s[6]||(s[6]=(k,w,H)=>p("dsg-table:link-clicked",k,w,H))},null,8,["data"]))])]),_:2},[e.renderList(e.unref(f),(d,k)=>({name:k,fn:e.withCtx(w=>[String(k)!=="dsg-field--actions"?e.renderSlot(o.$slots,k,e.normalizeProps(e.mergeProps({key:0},w))):e.createCommentVNode("",!0)])}))]),1032,["api-url","filter-params","per-page","fields","load-on-start","pagination-path","selectable","track-by","table-layout","css","data","row-class","api-mode","replace-state","replace-strategy"]),t.hasFooter?(e.openBlock(),e.createElementBlock("div",mt,[e.createElementVNode("div",ft,[e.renderSlot(o.$slots,"dsg-table--footer-left",{data:v.value,perPage:u.value},()=>[t.displayPaginationInfo?(e.openBlock(),e.createBlock(ee,{key:0,ref:"paginationInfoStart",pagination:v.value,"onUpdate:pagination":s[15]||(s[15]=d=>v.value=d),"info-template":C.value},null,8,["pagination","info-template"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"dsg-table--footer-left-extras",{data:v.value,perPage:u.value})])]),e.createElementVNode("div",vt,[e.renderSlot(o.$slots,"dsg-table--footer-center",{data:v.value,perPage:u.value},()=>[e.renderSlot(o.$slots,"dsg-table--footer-center-extras",{data:v.value,perPage:u.value})])]),e.createElementVNode("div",bt,[e.renderSlot(o.$slots,"dsg-table--footer-right",{data:v.value,perPage:u.value},()=>[V.value===!1&&t.displayPaginationInfo?(e.openBlock(),e.createBlock(_,{key:0,ref:"pagination",pagination:v.value,"onUpdate:pagination":s[16]||(s[16]=d=>v.value=d),"onDsgTable:changePage":N},null,8,["pagination"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"dsg-table--footer-right-extras",{data:v.value,perPage:u.value})])])],512)):e.createCommentVNode("",!0)]))}}),kt={class:"dsg-table--per-page"},yt=["value","textContent"],pt=e.defineComponent({__name:"DsgTablePerPage",props:{perPageOptions:{default:()=>[10,20,30,50,100]},perPage:{}},setup(t){return(E,g)=>(e.openBlock(),e.createElementBlock("div",kt,[e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":g[0]||(g[0]=i=>t.perPage.perPage=i),class:"dsg-table--per-page-select",onChange:g[1]||(g[1]=i=>t.perPage.change(t.perPage.perPage))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.perPageOptions,i=>(e.openBlock(),e.createElementBlock("option",{key:i,value:i,textContent:e.toDisplayString(i)},null,8,yt))),128))],544),[[e.vModelSelect,t.perPage.perPage]])]))}}),ne=ht,oe=te,se=pt,re=S._sfc_main$7,ie=_,de=ee,ce=ae,ue=le,wt={DsgTable:ne,DsgTableActions:oe,DsgTablePerPage:se,DsgTableFilter:re,DsgTablePagination:ie,DsgTablePaginationInfo:de,DsgTableSearch:ce,DsgTableRowHeader:ue};exports.DsgTable=ne;exports.DsgTableActions=oe;exports.DsgTableFilter=re;exports.DsgTablePagination=ie;exports.DsgTablePaginationInfo=de;exports.DsgTablePerPage=se;exports.DsgTableRowHeader=ue;exports.DsgTableSearch=ce;exports.default=wt;
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-CbBjK4gC.cjs"),O=require("./dsg-vue.helpers-string.cjs"),G=require("./dsg-vue.helpers-object.cjs"),pe=require("./dsg-vue.helpers.cjs"),ye={class:"dsg-table--pagination"},we=["disabled"],Be=["disabled"],Ce=["onClick","innerHTML"],Pe=["onClick","innerHTML"],Se=["disabled"],Ee=["disabled"],_=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(t,{expose:D,emit:g}){const i=e.useModel(t,"pagination"),C=e.computed(()=>i.value===null?0:i.value?.last_page-t.firstPage+1),$=e.computed(()=>i.value===null?0:i.value?.last_page),c=e.computed(()=>i.value===null?!1:i.value?.current_page===t.firstPage),f=e.computed(()=>i.value===null?!1:i.value?.current_page===$.value),V=e.computed(()=>C.value<t.onEachSide*2+4),E=e.computed(()=>t.onEachSide*2+1),P=e.computed(()=>!i.value||i.value?.current_page<=t.onEachSide?1:i.value?.current_page>=C.value-t.onEachSide?C.value-t.onEachSide*2:i.value?.current_page-t.onEachSide),v=g,l=h=>{v("dsg-table:change-page",h)},u=h=>h===i.value?.current_page;return D({loadPage:l}),(h,b)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ye,[t.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:b[0]||(b[0]=y=>l(t.firstPage)),class:e.normalizeClass([[c.value?"disabled":""],"dsg-table--pagination-link"]),disabled:c.value,title:"First","aria-label":"First"},[e.createVNode(B._sfc_main,{icon:t.firstIcon,size:"sm"},null,8,["icon"])],10,we)):e.createCommentVNode("",!0),e.createElementVNode("a",{onClick:b[1]||(b[1]=y=>l("prev")),class:e.normalizeClass([[c.value?"disabled":""],"dsg-table--pagination-link"]),disabled:c.value,title:"Previous","aria-label":"Previous"},[e.createVNode(B._sfc_main,{icon:t.prevIcon,size:"sm"},null,8,["icon"])],10,Be),V.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(C.value,(y,N)=>(e.openBlock(),e.createElementBlock("a",{key:N,onClick:z=>l(N+t.firstPage),class:e.normalizeClass([[u(N+t.firstPage)?"active":""],"dsg-table--pagination-link"]),innerHTML:y},null,10,Ce))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(E.value,(y,N)=>(e.openBlock(),e.createElementBlock("a",{key:N,onClick:z=>l(P.value+N+t.firstPage-1),class:e.normalizeClass([[u(P.value+N+t.firstPage-1)?"active":""],"dsg-table--pagination-link"]),innerHTML:P.value+y-1},null,10,Pe))),128)),e.createElementVNode("a",{onClick:b[2]||(b[2]=y=>l("next")),class:e.normalizeClass([[f.value?"disabled":""],"dsg-table--pagination-link"]),disabled:f.value,title:"Next","aria-label":"Next"},[e.createVNode(B._sfc_main,{icon:t.nextIcon,size:"sm"},null,8,["icon"])],10,Se),t.showFirstLast?(e.openBlock(),e.createElementBlock("a",{key:3,onClick:b[3]||(b[3]=y=>l($.value)),class:e.normalizeClass([[f.value?"disabled":""],"dsg-table--pagination-link"]),disabled:f.value,title:"Last","aria-label":"Last"},[e.createVNode(B._sfc_main,{icon:t.lastIcon,size:"sm"},null,8,["icon"])],10,Ee)):e.createCommentVNode("",!0)],512)),[[e.vShow,i.value&&$.value>t.firstPage]])}}),De=["innerHTML"],ee=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(t){const D=e.useModel(t,"pagination"),g=e.computed(()=>D.value==null||D.value.total==0?t.noDataTemplate:t.infoTemplate.replace("{from}",(D.value?.from||0).toString()).replace("{to}",(D.value?.to||0).toString()).replace("{total}",(D.value?.total||0).toString()));return(i,C)=>(e.openBlock(),e.createElementBlock("div",{class:"dsg-table--pagination-info",innerHTML:g.value},null,8,De))}}),$e={class:"dsg-table--actions",ref:"dsgTableActions"},Ve={class:"dsg-table--action-trigger"},Te={key:0,class:"dsg-table--actions-menu-wrapper"},Ne=["href","target","onClick"],Fe=["textContent"],xe={key:0},Me={key:1},Le=["href","target","onClick"],ze={class:"flex-1"},te=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(t,{emit:D}){const g=e.ref(!1);e.useTemplateRef("dsgTableActions");const i=e.useAttrs(),C=e.ref(i.data.rowData?.actions??null),$=e.ref(i.data.rowData?.links??null),c=e.ref(i.data.rowData??null),f=v=>{switch(v){case"edit":return"edit-05";case"view":return"eye";case"delete":return"trash-01";case"archive":return"eye-off";default:return"dots-horizontal"}},V=(v,l,u)=>{switch(l){case"edit":P("dsg-table:action-edit",u,c.value);break;case"view":P("dsg-table:action-view",u,c.value);break;case"delete":P("dsg-table:action-delete",u,c.value);break;case"archive":P("dsg-table:action-archive",u,c.value);break}},E=(v,l)=>{const u=v.actionId||v.label.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-");P("dsg-table:link-clicked",l,u,c.value)},P=D;return(v,l)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",$e,[e.createVNode(e.unref(B.kt),{triggers:[],placement:t.placement,"handle-resize":!0,strategy:"absolute",shown:g.value,class:"dsg-table--actions__popper",onHide:l[1]||(l[1]=u=>g.value=!1),ref:"floatingVueFilterDropdown"},{popper:e.withCtx(()=>[g.value?(e.openBlock(),e.createElementBlock("div",Te,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(u,h)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[["edit","view","delete","archive"].includes(String(h))?(e.openBlock(),e.createElementBlock("a",{key:h,href:C.value?.link,target:C.value?.target||"_self",onClick:b=>V(u,String(h),b)},[e.createElementVNode("div",{class:e.normalizeClass(["dsg-table--actions-menu-item",String(h)])},[e.createVNode(B._sfc_main,{icon:f(String(h)),size:"sm"},null,8,["icon"]),e.createElementVNode("span",{class:"flex-1",textContent:e.toDisplayString(e.unref(O.ucfirst)(String(h)))},null,8,Fe)],2)],8,Ne)):e.createCommentVNode("",!0)],64))),256)),C.value&&$.value?(e.openBlock(),e.createElementBlock("hr",xe)):e.createCommentVNode("",!0),$.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList($.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.label},[u.hasOwnProperty("component")?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.component),{key:0,quote:e.unref(i).data.data.rowData,"row-data":e.unref(i).data.data.rowData},null,8,["quote","row-data"])):u.hasOwnProperty("type")&&u.type=="break"?(e.openBlock(),e.createElementBlock("hr",Me)):(e.openBlock(),e.createElementBlock("a",{key:2,href:u.link,target:u.target||"_self",class:e.normalizeClass(["dsg-table--actions-menu-item",u.class]),onClick:h=>E(u,h)},[u.icon?(e.openBlock(),e.createBlock(B._sfc_main,{key:0,icon:u.icon,size:"sm"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("span",ze,e.toDisplayString(u.label),1)],10,Le))],64))),128)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("div",Ve,[e.createElementVNode("button",{type:"button",class:"dsg-table--actions-button","aria-expanded":"false","aria-haspopup":"true",onClick:l[0]||(l[0]=u=>g.value=!g.value)},[e.renderSlot(v.$slots,"dsg-table-action-button-content",{},()=>[e.createVNode(B._sfc_main,{icon:"dots-vertical",size:"sm"})])])])]),_:3},8,["placement","shown"])])),[[e.unref(B.vOnClickOutside),()=>g.value=!1]])}}),Re={class:"dsg-table--search"},ae=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:{},replaceState:{type:Boolean,default:!0}},emits:["dsg-table:term-changed"],setup(t,{emit:D}){const g=e.ref("");e.onMounted(()=>{const c=new URL(window.location.href).searchParams.get("term");c&&(g.value=c,i("dsg-table:term-changed",c))});const i=D,C=B.useDebounceFn($=>{if(g.value=$,t.replaceState){const c=new URL(window.location.href);g.value?c.searchParams.set("term",g.value):c.searchParams.delete("term"),window.history.pushState({},"",c.toString())}i("dsg-table:term-changed",g.value)},300);return($,c)=>(e.openBlock(),e.createElementBlock("div",Re,[e.createVNode(B._sfc_main$4,{modelValue:g.value,"onUpdate:modelValue":c[0]||(c[0]=f=>g.value=f),name:t.name,id:t.id||t.name,placeholder:t.placeholder,disabled:t.disabled,required:t.required,readonly:t.readonly,hidden:t.hidden,"has-clear-button":!0,autocomplete:"off",size:"sm",icon:"search-sm","icon-clickable":!0,onIconClicked:c[1]||(c[1]=f=>e.unref(C)(f)),onEnterPressed:c[2]||(c[2]=f=>e.unref(C)(f)),onOnClear:c[3]||(c[3]=()=>e.unref(C)(""))},null,8,["modelValue","name","id","placeholder","disabled","required","readonly","hidden"])]))}}),Ue={class:"dsg-table--header-row"},He={key:0,class:"dsg-table--th dsg-table--th-checkbox",scope:"col"},Ie={key:1,class:"dsg-table--th dsg-table--th-expand-detail",scope:"col"},qe=["title","id","onClick"],Ae={key:0,class:"dsg-table--th-sort-icon"},Oe=["innerHTML"],We=["innerHTML"],je=["innerHTML"],Qe=["innerHTML"],le=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(t,{emit:D}){const g=e.useModel(t,"sortField"),i=e.useModel(t,"selectedRows"),C=e.useModel(t,"hasSelected"),$=e.ref("17px"),c=P=>{C.value&&i.value.length>0&&i.value.length!==t.tableDataLength?(C.value=!0,f("dsg-table:on-select-all")):!C.value&&i.value.length===0?(C.value=!1,f("dsg-table:on-select-all")):f("dsg-table:on-deselect-all")},f=D,V=(P,v)=>[P,P+"-"+O.toSnakeCase(String(v?.name)),v.titleClass||"",{sortable:v.sortable},{"sort-active":g.value?.name===v.name}],E=P=>{P.sortable&&(g.value={name:String(P?.name),field:String(P?.sortField),direction:g.value?.name===P.name&&g.value?.direction==="asc"?"desc":"asc"},f("dsg-table:sort-field",P))};return(P,v)=>(e.openBlock(),e.createElementBlock("tr",Ue,[t.hasSelectAll?(e.openBlock(),e.createElementBlock("th",He,[e.createVNode(B._sfc_main$2,{modelValue:C.value,"onUpdate:modelValue":[v[0]||(v[0]=l=>C.value=l),c],indeterminate:i.value.length>0&&i.value.length!==t.tableDataLength},null,8,["modelValue","indeterminate"])])):e.createCommentVNode("",!0),t.showExpandDetail?(e.openBlock(),e.createElementBlock("th",Ie)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,(l,u)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[l?.visible?(e.openBlock(),e.createElementBlock("th",{key:u,class:e.normalizeClass(V("dsg-table--th",l)),style:e.normalizeStyle([{width:l.width||void 0},l.style]),title:l.title+(l.sortable?" Sort":""),id:"_"+l.name,onClick:h=>E(l),scope:"col"},[l.sortable?(e.openBlock(),e.createElementBlock("div",Ae,[l.tooltip?(e.openBlock(),e.createBlock(B._sfc_main$1,e.mergeProps({key:0,ref_for:!0},l.tooltip,{class:"dsg-table--th-tooltip"}),{"dsg-tooltip--trigger":e.withCtx(()=>[l.title?(e.openBlock(),e.createElementBlock("span",{key:0,class:"dsg-table--th-title",innerHTML:l.title},null,8,Oe)):e.createCommentVNode("",!0),l.tooltip.icon?(e.openBlock(),e.createBlock(B._sfc_main,{key:1,icon:l.tooltip.icon,class:"inline-flex",size:"xs"},null,8,["icon"])):e.createCommentVNode("",!0)]),_:2},1040)):l.title?(e.openBlock(),e.createElementBlock("span",{key:1,class:"dsg-table--th-title",innerHTML:l.title},null,8,We)):e.createCommentVNode("",!0),l.sortable&&g.value?.name!==l.name?(e.openBlock(),e.createBlock(B._sfc_main,{key:2,icon:"chevron-selector-vertical",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),l.sortable&&g.value?.name===l.name&&g.value?.direction==="asc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:3,icon:"chevron-down",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0),l.sortable&&g.value?.name===l.name&&g.value?.direction==="desc"?(e.openBlock(),e.createBlock(B._sfc_main,{key:4,icon:"chevron-up",class:"inline-flex",size:"xs"})):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.tooltip?(e.openBlock(),e.createBlock(B._sfc_main$1,e.mergeProps({key:0,ref_for:!0},l.tooltip,{class:"dsg-table--th-tooltip"}),{"dsg-tooltip--trigger":e.withCtx(()=>[e.createElementVNode("span",{class:"dsg-table--th-title",innerHTML:e.unref(O.ucwords)(String(l?.title))},null,8,je),l.tooltip.icon?(e.openBlock(),e.createBlock(B._sfc_main,{key:0,icon:l.tooltip.icon,class:"inline-flex",size:"xs"},null,8,["icon"])):e.createCommentVNode("",!0)]),_:2},1040)):(e.openBlock(),e.createElementBlock("span",{key:1,class:"dsg-table--th-title",innerHTML:e.unref(O.ucwords)(String(l?.title))},null,8,Qe))],64))],14,qe)):e.createCommentVNode("",!0)],64))),256)),t.scrollVisible?(e.openBlock(),e.createElementBlock("th",{key:2,style:e.normalizeStyle({width:$.value}),class:"dsg-table--th-col-gutter"},null,4)):e.createCommentVNode("",!0)]))}}),Ke={class:"dsg-table--wrapper"},Ye=["span"],Ge={key:0,class:"dsg-table--loading"},Je=["colspan"],Xe=["colspan"],Ze=["onClick","onDblclick","onMouseover"],_e={key:0,class:"dsg-table--tbody-cell dsg-table--tbody-cell-checkbox"},et=["onClick","onDblclick","onContextmenu"],tt=["innerHTML"],at=["onClick"],lt=["colspan"],nt={key:2},ot=["colspan"],st={class:"dsg-table--footer"},rt=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},replaceState:{type:Boolean,default:!0},replaceStrategy:{default:"window"}},{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","dsg-table:row-clicked","dsg-table:row-hover","dsg-table:row-dblclick"],["update:filterParams","update:perPage"]),setup(t,{expose:D,emit:g}){const i=a=>a.map((n,r)=>({field:n.field||"",title:n.title||"",name:n.name||"",titleClass:n.titleClass||"",dataClass:n.dataClass||"",visible:n.visible??!0,width:n.width||void 0,sortField:n.sortField||null,sortable:n.sortField,formatter:n.formatter||null,tooltip:n.tooltip??null,$_index:r})),C=()=>{if(!t.apiMode)return null;const n=B.getQueryStrings().find(r=>r.key===t.queryParams.sort);if(n&&n.value.length>0){const r=n.value[0],p=r.startsWith("-"),m=p?r.substring(1):r,S=t.fields.find(U=>U.sortField===m||U.name===m||U.field===m);return S?{name:String(S.name||S.field),field:m,direction:p?"desc":"asc"}:{name:m,field:m,direction:p?"desc":"asc"}}return null},$=()=>{if(!(!t.apiMode||!t.replaceState)&&t.replaceStrategy==="window"){const a=new URL(window.location.href),n=new URLSearchParams(a.search);if(n.delete(t.queryParams.sort),b.value){const p=(b.value.direction==="desc"?"-":"")+b.value.field;n.set(t.queryParams.sort,p)}const r=`${a.pathname}${n.toString()?"?"+n.toString():""}`;window.history.pushState({},"",r)}},c=e.ref(i(t.fields)),f=e.ref(t.data),V=e.ref(null),E=e.ref(t.initialPage),P=e.ref("17px"),v=e.ref(!1),l=e.ref({}),u=e.ref(0),h=e.ref(!0),b=e.ref(C()),y=e.ref(null),N=e.ref(0),z=e.useModel(t,"filterParams"),I=e.useModel(t,"perPage"),T=e.ref([]),H=e.ref(!1),x=e.computed(()=>t.tableHeight!=null),M=e.computed(()=>c.value.filter(a=>a.visible).length);e.watch(()=>T.value.length,a=>{H.value=t.selectable&&a>0},{immediate:!0}),e.watch(()=>t.fields,a=>{c.value=i(a)},{immediate:!0,deep:!0}),e.watch(()=>z.value,a=>{L()},{deep:!0}),e.watch(()=>I.value,()=>{L()}),e.watch(()=>t.apiUrl,(a,n)=>{t.apiMode&&a!==n&&a&&L()}),e.watch(()=>b.value,()=>{$()},{deep:!0});const F=g,W=(a,n)=>a.formatter&&typeof a.formatter=="function"?a.formatter(a,n):G.data_get(n,String(a?.name),""),j=a=>"dsg-field--"+a.name?.toLowerCase().replaceAll(/[_ ]/g,"-"),Q=(a,n)=>{const r={odd:n%2===0,even:n%2!==0,"row-selected":a.selected};if(!t.rowClass)return r;let p={};if(typeof t.rowClass=="function"){const m=t.rowClass(a,n);typeof m=="string"?m.split(" ").forEach(S=>{S.trim()&&(p[S.trim()]=!0)}):Array.isArray(m)?m.forEach(S=>{typeof S=="string"&&S.trim()&&(p[S.trim()]=!0)}):typeof m=="object"&&m!==null&&(p=m)}else typeof t.rowClass=="string"&&t.rowClass.split(" ").forEach(m=>{m.trim()&&(p[m.trim()]=!0)});return{...r,...p}},K=a=>{if(t.selectable){if(a.selected)T.value.push(a);else{const n=T.value.findIndex(r=>r[t.trackBy]===a[t.trackBy]);n!==-1&&T.value.splice(n,1)}F("dsg-table:rows-selected",T.value)}},Y=()=>{t.selectable&&(f.value?.forEach(a=>{a.selected=!0}),T.value=f.value?.filter(a=>a.selected)??[],F("dsg-table:rows-selected",T.value))},q=()=>{t.selectable&&(f.value?.forEach(a=>{a.selected=!1}),T.value=[],F("dsg-table:rows-selected",T.value))},R=a=>{f.value=Array.isArray(a)?a:[],t.selectable&&f.value.forEach(n=>{n.selected=n.selected??!1})},o=()=>f.value??[],s=a=>{a==="prev"?E.value>t.firstPage&&E.value--:a==="next"?E.value<(V.value?.last_page??0)&&E.value++:a!=E.value&&a>=t.firstPage&&a<=(V.value?.last_page??0)&&(E.value=a),L()},d=()=>({[t.queryParams?.sort]:b.value?(b.value?.direction==="desc"?"-":"")+b.value?.field:void 0,[t.queryParams?.order]:b.value?.direction,[t.queryParams?.page]:E.value,[t.queryParams?.perPage]:I.value}),k=()=>{y.value&&(y.value.abort(),y.value=null)},w=(a,n)=>{k(),N.value++;const r=N.value,p=new AbortController;return n.signal=p.signal,y.value=p,(t.httpMethod.toLowerCase()==="get"?B.axios.get(a,n):(()=>{const S=n.params;return delete n.params,B.axios.post(a,S,n)})()).then(S=>({...S,_requestId:r,_apiUrl:a}),S=>{throw S.name==="AbortError"||S.code==="ERR_CANCELED"?{...S,_requestId:r,_cancelled:!0}:{...S,_requestId:r}})},A=a=>{if(a._requestId&&a._requestId!==N.value||a._apiUrl&&a._apiUrl!==t.apiUrl)return;F("dsg-table:load-success",a);const n=t.transform?t.transform(a.data):a.data;f.value=G.data_get(n,t.dataPath,null),t.selectable&&f.value?.forEach(r=>{r.selected=r.selected??!1}),V.value=G.data_get(n,t.paginationPath,null)??null,u.value=f.value?.length?f.value[0].order:u,!pe.isEmpty(t.paginationPath)&&V.value===null&&console.warn('DsgTable: pagination-path "'+t.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
+ You can explicitly suppress this warning by setting pagination-path="".`),y.value=null,F("dsg-table:pagination-data",V.value),V.value&&E.value>(V.value?.last_page||0)&&f.value?.length===0&&(E.value=t.initialPage,L()),F("dsg-table:loaded"),h.value=!1},J=a=>{a._requestId&&a._requestId!==N.value||a._apiUrl&&a._apiUrl!==t.apiUrl||a._cancelled||(console.error("load-error",a),y.value=null,F("dsg-table:load-error",a),F("dsg-table:loaded"),h.value=!1)},X=()=>{if(t.data!==null&&Array.isArray(t.data)){R(t.data),h.value=!1;return}if(t.dataManager&&typeof t.dataManager=="function"){const a=t.dataManager();R(a),h.value=!1}else R(t.data),h.value=!1},L=(a=A,n=J,r={})=>{const p=a||A,m=n||J;if(!t.apiMode){X();return}return h.value=!0,F("dsg-table:loading",h.value),t.httpOptions.params={...d(),...z.value},w(t.apiUrl,t.httpOptions).then(p).catch(S=>m(S))},ge=(a,n,r)=>{F("dsg-table:row-clicked",a,n,r)},me=(a,n,r)=>{F("dsg-table:row-dblclick",a,n,r)},fe=(a,n,r)=>{},ve=(a,n,r,p)=>{},be=(a,n,r,p)=>{},he=(a,n,r,p)=>{},ke=(a,n,r)=>{};e.onMounted(()=>{t.apiMode===!0?L():X()});const Z=()=>{t.apiMode&&(T.value=[],k(),L())};return D({changePage:s,reload:Z,getData:o,setData:R,setLoading:a=>{h.value=a,F("dsg-table:loading",h.value)}}),(a,n)=>(e.openBlock(),e.createElementBlock("div",Ke,[e.createElementVNode("div",{ref:"dsgTableBodyWrapper",class:e.normalizeClass(["dsg-table-body-wrapper",{"fixed-header":x.value}]),style:e.normalizeStyle({height:t.tableHeight||void 0})},[e.createElementVNode("table",{class:e.normalizeClass(["dsg-table-main",x.value?"fixed-header":"",l.value.table,"table-"+t.tableLayout])},[e.createElementVNode("colgroup",{span:M.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(r,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r?.visible?(e.openBlock(),e.createElementBlock("col",{key:p,style:e.normalizeStyle({width:r.width||void 0}),class:e.normalizeClass("dsg-table--col-"+r.name+" "+r.titleClass)},null,6)):e.createCommentVNode("",!0)],64))),256)),!x.value&&v.value?(e.openBlock(),e.createElementBlock("col",{key:0,style:e.normalizeStyle({width:P.value}),class:"dsg-table--col-gutter"},null,4)):e.createCommentVNode("",!0)],8,Ye),e.createElementVNode("thead",{class:e.normalizeClass([[l.value.thead,{sticky:x.value,"top-0":x.value}],"dsg-table--head"])},[e.renderSlot(a.$slots,"tableHeader",{fields:c.value},()=>[e.createVNode(le,{fields:c.value,"has-select-all":t.selectable,"selected-rows":T.value,"onUpdate:selectedRows":n[0]||(n[0]=r=>T.value=r),"has-selected":H.value,"onUpdate:hasSelected":n[1]||(n[1]=r=>H.value=r),"scroll-visible":v.value,"show-expand-detail":t.hasDetailRow&&t.showExpandDetail,"table-data-length":f.value?.length,"sort-field":b.value,"onUpdate:sortField":n[2]||(n[2]=r=>b.value=r),"onDsgTable:sortField":n[3]||(n[3]=r=>Z()),"onDsgTable:onSelectAll":Y,"onDsgTable:onDeselectAll":q},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",l.value.tbody])},[h.value?(e.openBlock(),e.createElementBlock("tr",Ge,[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(a.$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,Xe)],8,Je)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(f.value,(r,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:p},[e.createElementVNode("tr",{class:e.normalizeClass(["dsg-table--tbody-row",Q(r,p)]),onClick:m=>ge(m,p,r),onDblclick:m=>me(m,p,r),onMouseover:m=>fe()},[t.selectable?(e.openBlock(),e.createElementBlock("td",_e,[e.createVNode(B._sfc_main$2,{modelValue:r.selected,"onUpdate:modelValue":[m=>r.selected=m,m=>K(r)]},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(m,S)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:S},[m.visible?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(["dsg-table--tbody-cell",m.dataClass]),style:e.normalizeStyle({width:m.width||void 0}),onClick:U=>ve(),onDblclick:U=>be(),onContextmenu:U=>he()},[e.renderSlot(a.$slots,j(m),{rowData:r,rowIndex:p,rowField:m},()=>[e.createElementVNode("span",{innerHTML:W(m,r)},null,8,tt)])],46,et)):e.createCommentVNode("",!0)],64))),128))],42,Ze),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:m=>ke()},[e.createElementVNode("td",{colspan:M.value},[e.renderSlot(a.$slots,"dsg-table-detail-row",{rowData:r,rowIndex:p,options:t.detailRowOptions})],8,lt)],8,at)]),_:2},1032,["name"])):e.createCommentVNode("",!0)],64))),128)),!h.value&&!f.value?.length&&t.noDataTemplate.length?(e.openBlock(),e.createElementBlock("tr",nt,[e.createElementVNode("td",{colspan:M.value,class:"dsg-table--empty-result"},[e.renderSlot(a.$slots,"dsg-table-empty-result",{},()=>[e.createTextVNode(e.toDisplayString(t.noDataTemplate),1)])],8,ot)])):e.createCommentVNode("",!0)],2),e.createElementVNode("tfoot",st,[e.renderSlot(a.$slots,"dsg-table-footer",{fields:c.value,data:f.value})])],2)],6)]))}}),it={class:"dsg-table"},dt={key:0,class:"dsg-table--pre-header"},ct={class:"dsg-table--pre-header-left"},ut=["textContent"],gt={class:"dsg-table--pre-header-right"},mt={key:1,class:"dsg-table--search-header",ref:"dsgTableSearchHeaderEl"},ft={class:"dsg-table--search-top"},vt={key:2,class:"dsg-table--footer",ref:"dsgTableFooterEl"},bt={class:"dsg-table--footer-left"},ht={class:"dsg-table--footer-center"},kt={class:"dsg-table--footer-right"},pt=e.defineComponent({__name:"DsgTable",props:{getUrl:{},fields:{},loadOnStart:{type:Boolean,default:!0},displaySearch:{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"},autoSortFilters:{type:Boolean,default:!0},data:{default:null},hasHeader:{type:Boolean,default:!0},hasFooter:{type:Boolean,default:!0},perPage:{default:20},paginationPath:{default:"meta"},css:{default:()=>({tableWrapper:"border-b"})},rowClass:{type:[String,Function],default:void 0},apiMode:{type:Boolean,default:!0},replaceState:{type:Boolean,default:!0},replaceStrategy:{default:"window"}},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:row-clicked","dsg-table:row-hover","dsg-table:row-dblclick","dsg-table:filter-updated","dsg-table:term-changed","dsg-table:data-loaded"],setup(t,{expose:D,emit:g}){const i=o=>{h.value=o},C=e.ref(t.apiMode&&!!(t.filterEntity||t.filterEndpoint||t.getUrl)),$=()=>{if(C.value){let o={};return B.getQueryStrings().forEach(s=>{if(s.key.startsWith("filter[")){const d=s.key.replace("filter[","").replace("]",""),k=s.value;o[`filter[${d}]`]=k.join(",")}}),o}else return{}},c=e.computed(()=>({...t.css,tableWrapper:"border-b "+(t.css?.tableWrapper||"")})),f=e.useSlots(),V=e.ref(!0),E=e.ref(null),P=e.ref("<p>Showing {from} to {to} of {total}</p>"),v=e.ref(null),l=e.useTemplateRef("dsgTable"),u=e.ref({perPage:t.perPage,change:i}),h=e.ref(t.perPage),b=e.ref({...$(),...t.initialFilters}),y=g,N=o=>{l.value?.changePage(o)},z=o=>{v.value=o},I=({data:o})=>{E.value=o,y("dsg-table:data-loaded",o)},T=()=>{l.value?.reload()},H=o=>{l.value?.setLoading(o)},x=o=>{const s=l.value?.getData?.()??[];l.value?.setData(s.map(d=>d.id===o.id?o:d))},M=o=>{const s=l.value?.getData?.()??[];l.value?.setData([...s,o])},F=o=>{const s=l.value?.getData?.()??[];l.value?.setData(s.filter(d=>d.id!==o.id))},W=o=>{l.value?.setData(o)},j=()=>l.value?.getData()??[],Q=o=>{const s=l.value?.getData()??[],d=o(s);d&&l.value?.setData(d)},K=o=>{b.value=o},Y=()=>b.value??{},q=o=>{const s={...b.value};!o||o.trim()===""?delete s["filter[term]"]:s["filter[term]"]=o,b.value=s,e.nextTick(()=>{T()}),y("dsg-table:term-changed",o)},R=(o,s,d)=>{let k={};b.value["filter[term]"]&&(k["filter[term]"]=b.value["filter[term]"]),Object.keys(o).forEach(w=>{o[w]!==null&&o[w]!==void 0&&o[w]!==""&&(k[w]=o[w])}),b.value=k,e.nextTick(()=>{T()}),y("dsg-table:filter-updated",b.value,s,d)};return D({reloadTable:T,updateRowTable:x,addRowTable:M,deleteRowTable:F,setData:W,getData:j,mutateData:Q,termChanged:q,setFilters:K,getFilters:Y,setLoading:H}),(o,s)=>(e.openBlock(),e.createElementBlock("div",it,[t.hasHeader?(e.openBlock(),e.createElementBlock("div",dt,[e.renderSlot(o.$slots,"dsg-table--pre-header",{},()=>[e.createElementVNode("div",ct,[e.renderSlot(o.$slots,"dsg-table--page-title",{data:E.value,title:t.title},()=>[t.title.length>0?(e.openBlock(),e.createElementBlock("h1",{key:0,class:"dsg-table--title",textContent:e.toDisplayString(t.title)},null,8,ut)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",gt,[e.renderSlot(o.$slots,"dsg-table--page-actions",{data:E.value})])])])):e.createCommentVNode("",!0),t.displaySearch?(e.openBlock(),e.createElementBlock("div",mt,[e.createElementVNode("div",ft,[e.renderSlot(o.$slots,"dsg-table--search-header",{data:E.value},()=>[e.createVNode(ae,{name:"term","onDsgTable:termChanged":s[0]||(s[0]=d=>q(d))}),e.createVNode(B._sfc_main$7,{entity:t.filterEntity,"filter-endpoint":t.filterEndpoint,"search-endpoint":t.filterSearchEndpoint,"auto-sort":t.autoSortFilters,filters:t.filters,"onDsgTable:filterUpdated":s[1]||(s[1]=(d,k,w)=>R(d,k,w))},null,8,["entity","filter-endpoint","search-endpoint","auto-sort","filters"]),e.renderSlot(o.$slots,"dsg-table--search-actions",{data:E.value})])]),e.renderSlot(o.$slots,"dsg-table--search-navigation")],512)):e.createCommentVNode("",!0),e.createVNode(rt,{ref:"dsgTable","api-url":t.getUrl,"filter-params":b.value,"onUpdate:filterParams":s[7]||(s[7]=d=>b.value=d),"per-page":h.value,"onUpdate:perPage":s[8]||(s[8]=d=>h.value=d),fields:t.fields,"load-on-start":t.loadOnStart,"pagination-path":t.paginationPath,selectable:t.selectable,"track-by":t.trackBy,"table-layout":t.tableLayout,css:c.value,data:t.data,"row-class":t.rowClass,"api-mode":C.value,"replace-state":t.replaceState,"replace-strategy":t.replaceStrategy,"onDsgTable:loading":s[9]||(s[9]=d=>V.value=!0),"onDsgTable:loaded":s[10]||(s[10]=d=>V.value=!1),"onDsgTable:paginationData":z,"onDsgTable:loadSuccess":I,"onDsgTable:rowsSelected":s[11]||(s[11]=d=>y("dsg-table:rows-selected",d)),"onDsgTable:rowClicked":s[12]||(s[12]=(d,k,w)=>y("dsg-table:row-clicked",d,k,w)),"onDsgTable:rowHover":s[13]||(s[13]=(d,k,w)=>y("dsg-table:row-hover",d,k,w)),"onDsgTable:rowDblclick":s[14]||(s[14]=(d,k,w)=>y("dsg-table:row-dblclick",d,k,w))},e.createSlots({"dsg-field--actions":e.withCtx(d=>[e.renderSlot(o.$slots,"dsg-table-actions",{data:d},()=>[(e.openBlock(),e.createBlock(te,{key:d.rowIndex,data:d,"onDsgTable:actionEdit":s[2]||(s[2]=(k,w)=>y("dsg-table:action-edit",k,w)),"onDsgTable:actionView":s[3]||(s[3]=(k,w)=>y("dsg-table:action-view",k,w)),"onDsgTable:actionDelete":s[4]||(s[4]=(k,w)=>y("dsg-table:action-delete",k,w)),"onDsgTable:actionArchive":s[5]||(s[5]=(k,w)=>y("dsg-table:action-archive",k,w)),"onDsgTable:linkClicked":s[6]||(s[6]=(k,w,A)=>y("dsg-table:link-clicked",k,w,A))},null,8,["data"]))])]),_:2},[e.renderList(e.unref(f),(d,k)=>({name:k,fn:e.withCtx(w=>[String(k)!=="dsg-field--actions"?e.renderSlot(o.$slots,k,e.normalizeProps(e.mergeProps({key:0},w))):e.createCommentVNode("",!0)])}))]),1032,["api-url","filter-params","per-page","fields","load-on-start","pagination-path","selectable","track-by","table-layout","css","data","row-class","api-mode","replace-state","replace-strategy"]),t.hasFooter?(e.openBlock(),e.createElementBlock("div",vt,[e.createElementVNode("div",bt,[e.renderSlot(o.$slots,"dsg-table--footer-left",{data:v.value,perPage:u.value},()=>[t.displayPaginationInfo?(e.openBlock(),e.createBlock(ee,{key:0,ref:"paginationInfoStart",pagination:v.value,"onUpdate:pagination":s[15]||(s[15]=d=>v.value=d),"info-template":P.value},null,8,["pagination","info-template"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"dsg-table--footer-left-extras",{data:v.value,perPage:u.value})])]),e.createElementVNode("div",ht,[e.renderSlot(o.$slots,"dsg-table--footer-center",{data:v.value,perPage:u.value},()=>[e.renderSlot(o.$slots,"dsg-table--footer-center-extras",{data:v.value,perPage:u.value})])]),e.createElementVNode("div",kt,[e.renderSlot(o.$slots,"dsg-table--footer-right",{data:v.value,perPage:u.value},()=>[V.value===!1&&t.displayPaginationInfo?(e.openBlock(),e.createBlock(_,{key:0,ref:"pagination",pagination:v.value,"onUpdate:pagination":s[16]||(s[16]=d=>v.value=d),"onDsgTable:changePage":N},null,8,["pagination"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"dsg-table--footer-right-extras",{data:v.value,perPage:u.value})])])],512)):e.createCommentVNode("",!0)]))}}),yt={class:"dsg-table--per-page"},wt=["value","textContent"],Bt=e.defineComponent({__name:"DsgTablePerPage",props:{perPageOptions:{default:()=>[10,20,30,50,100]},perPage:{}},setup(t){return(D,g)=>(e.openBlock(),e.createElementBlock("div",yt,[e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":g[0]||(g[0]=i=>t.perPage.perPage=i),class:"dsg-table--per-page-select",onChange:g[1]||(g[1]=i=>t.perPage.change(t.perPage.perPage))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.perPageOptions,i=>(e.openBlock(),e.createElementBlock("option",{key:i,value:i,textContent:e.toDisplayString(i)},null,8,wt))),128))],544),[[e.vModelSelect,t.perPage.perPage]])]))}}),ne=pt,oe=te,se=Bt,re=B._sfc_main$7,ie=_,de=ee,ce=ae,ue=le,Ct={DsgTable:ne,DsgTableActions:oe,DsgTablePerPage:se,DsgTableFilter:re,DsgTablePagination:ie,DsgTablePaginationInfo:de,DsgTableSearch:ce,DsgTableRowHeader:ue};exports.DsgTable=ne;exports.DsgTableActions=oe;exports.DsgTableFilter=re;exports.DsgTablePagination=ie;exports.DsgTablePaginationInfo=de;exports.DsgTablePerPage=se;exports.DsgTableRowHeader=ue;exports.DsgTableSearch=ce;exports.default=Ct;