@digitalwalletcorp/vue-core 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- "use strict";const e=require("vue"),C=require("@digitalwalletcorp/vue-svg-icons"),M=e.defineComponent({__name:"label-icon",props:{preset:{},gap:{},iconClass:{type:[Boolean,null,String,Object,Array]},iconStyle:{type:[Boolean,null,String,Object,Array]},labelClass:{type:[Boolean,null,String,Object,Array]},labelStyle:{type:[Boolean,null,String,Object,Array]}},setup(r){const n=r,t=e.useSlots();return(o,a)=>(e.openBlock(),e.createElementBlock("span",{class:"dwui-label-icon",style:e.normalizeStyle(n.gap==null?void 0:{"--dwui-gap-label-icon":n.gap})},[e.renderSlot(o.$slots,"icon",{},()=>[n.preset!=null?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.preset.icon),e.mergeProps({key:0},n.preset.iconProps,{class:n.iconClass,style:n.iconStyle}),null,16,["class","style"])):e.createCommentVNode("",!0)]),t.default!=null||n.preset!=null?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["dwui-label",n.labelClass]),style:e.normalizeStyle(n.labelStyle)},[e.renderSlot(o.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(typeof n.preset?.label=="function"?n.preset.label():n.preset?.label),1)])],6)):e.createCommentVNode("",!0)],4))}}),pe=70;function Z(r){const n=e.ref(!0);let t;return e.onMounted(()=>{const o=r.value;o!=null&&(t=new ResizeObserver(()=>{n.value=pe<=o.scrollHeight}),t.observe(o))}),e.onBeforeUnmount(()=>{t?.disconnect()}),n}const fe=["disabled"],ge={class:"dwui-accordion-legend"},ve=["aria-expanded"],he=e.defineComponent({__name:"accordion-fieldset",props:e.mergeModels({legend:{},disabled:{type:Boolean},initialExpand:{type:Boolean}},{expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:expanded"],setup(r){const n=r,t=e.useSlots(),o=e.ref(),a=e.useModel(r,"expanded"),l=e.ref(!!n.initialExpand),i=e.computed({get:()=>a.value??l.value,set:d=>{l.value=d,a.value=d}}),m=Z(o),c=()=>{i.value=!i.value};return(d,v)=>(e.openBlock(),e.createElementBlock("fieldset",{class:"dwui-accordion-fieldset",disabled:n.disabled},[e.createElementVNode("legend",ge,[e.createElementVNode("button",{type:"button",class:"dwui-accordion-toggle","aria-expanded":i.value,onClick:c},[e.createVNode(e.unref(C.SvgTriangleButton),{direction:i.value?"up":"down"},null,8,["direction"]),n.legend!=null||t.legend!=null||t.icon!=null?(e.openBlock(),e.createBlock(M,{key:0},e.createSlots({_:2},[t.icon!=null?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"icon")]),key:"0"}:void 0,n.legend!=null||t.legend!=null?{name:"default",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"legend",{},()=>[e.createTextVNode(e.toDisplayString(n.legend),1)])]),key:"1"}:void 0]),1024)):e.createCommentVNode("",!0)],8,ve)]),e.createElementVNode("div",{ref_key:"refContents",ref:o,class:e.normalizeClass(["dwui-accordion-contents",e.unref(m)?i.value?"dwui-expanded":"dwui-shrunk":""])},[e.renderSlot(d.$slots,"default")],2)],8,fe))}}),be={class:"dwui-accordion-section"},we={key:0,class:"dwui-accordion-section-control"},ye=["disabled","aria-expanded"],ke=e.defineComponent({__name:"accordion-section",props:e.mergeModels({disabled:{type:Boolean},initialExpand:{type:Boolean},noGradient:{type:Boolean},expandLabel:{},collapseLabel:{},expandPreset:{},collapsePreset:{}},{expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:expanded"],setup(r){const n=r,t=e.useSlots(),o=e.ref(),a=e.useModel(r,"expanded"),l=e.ref(!!n.initialExpand),i=e.computed({get:()=>a.value??l.value,set:y=>{l.value=y,a.value=y}}),m=Z(o),c=e.computed(()=>i.value?n.collapsePreset:n.expandPreset),d=()=>(i.value?t["collapse-icon"]:t["expand-icon"])??c.value?.icon,v=()=>(i.value?t["collapse-icon"]:t["expand-icon"])==null?c.value?.iconProps:void 0,p=e.computed(()=>{const y=i.value?n.collapseLabel:n.expandLabel;if(y!=null)return y;const _=c.value?.label;return typeof _=="function"?_():_}),u=()=>{i.value=!i.value};return(y,_)=>(e.openBlock(),e.createElementBlock("div",be,[e.createElementVNode("div",{ref_key:"refContents",ref:o,class:e.normalizeClass(["dwui-accordion-section-contents",[e.unref(m)?i.value?"dwui-expanded":"dwui-shrunk":"",{"dwui-no-gradient":n.noGradient}]])},[e.renderSlot(y.$slots,"default")],2),e.unref(m)?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("button",{type:"button",class:"dwui-accordion-section-toggle",disabled:n.disabled,"aria-expanded":i.value,onClick:e.withModifiers(u,["stop"])},[d()!=null||p.value!=null?(e.openBlock(),e.createBlock(M,{key:0},e.createSlots({_:2},[d()!=null?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d()),e.normalizeProps(e.guardReactiveProps(v())),null,16))]),key:"0"}:void 0,p.value!=null?{name:"default",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),key:"1"}:void 0]),1024)):(e.openBlock(),e.createBlock(e.unref(C.SvgTriangleButton),{key:1,direction:i.value?"up":"down"},null,8,["direction"]))],8,ye)])):e.createCommentVNode("",!0)]))}}),Be=["aria-label"],_e=e.defineComponent({__name:"copy-button",props:{value:{},label:{default:"Copy"}},emits:["emit:copy","emit:error"],setup(r,{emit:n}){const t=r,o=n,a=e.useSlots(),l=async()=>{const i=String(typeof t.value=="function"?t.value():t.value);try{await navigator.clipboard.writeText(i)}catch(m){o("emit:error",m);return}o("emit:copy",i)};return(i,m)=>(e.openBlock(),e.createElementBlock("button",{type:"button",class:"dwui-copy-button","aria-label":a.default?void 0:t.label,onClick:l},[e.renderSlot(i.$slots,"default",{},()=>[e.createVNode(e.unref(C.SvgMemo))])],8,Be))}}),Se=["aria-label","aria-checked"],Ce={class:"dwui-dark-mode-selector-track"},$e={class:"dwui-dark-mode-selector-icon-light"},Ee={class:"dwui-dark-mode-selector-icon-dark"},Ne=e.defineComponent({__name:"dark-mode-selector",props:{storageKey:{default:"dwui-color-scheme"},label:{default:"Dark mode"}},emits:["emit:change"],setup(r,{emit:n}){const t=r,o=n,a=e.ref(!1);let l=null,i=null;const m=w=>w==="light"||w==="dark",c=()=>i?.matches?"dark":"light",d=()=>{try{const w=localStorage.getItem(t.storageKey);return m(w)?w:null}catch{return null}},v=w=>{const h=document.documentElement.classList;h.remove(w==="dark"?"light":"dark"),h.add(w),a.value=w==="dark",l!==w&&(l=w,o("emit:change",w))},p=w=>{try{localStorage.setItem(t.storageKey,w)}catch{}v(w)},u=()=>{p(a.value?"light":"dark")},y=w=>{p(w.matches?"dark":"light")},_=w=>{w.key===t.storageKey&&v(m(w.newValue)?w.newValue:c())};return e.onMounted(()=>{i=window.matchMedia("(prefers-color-scheme: dark)"),v(d()??c()),i.addEventListener("change",y),window.addEventListener("storage",_)}),e.onBeforeUnmount(()=>{i?.removeEventListener("change",y),window.removeEventListener("storage",_)}),(w,h)=>(e.openBlock(),e.createElementBlock("button",{type:"button",role:"switch",class:"dwui-dark-mode-selector","aria-label":t.label,"aria-checked":a.value,onClick:u},[e.createElementVNode("span",Ce,[e.createElementVNode("span",$e,[e.renderSlot(w.$slots,"icon-light",{},()=>[e.createVNode(e.unref(C.SvgHighBrightness))])]),e.createElementVNode("span",Ee,[e.renderSlot(w.$slots,"icon-dark",{},()=>[e.createVNode(e.unref(C.SvgMoonPhases),{"moon-age":3.85})])])]),h[0]||(h[0]=e.createElementVNode("span",{class:"dwui-dark-mode-selector-handle"},null,-1))],8,Se))}}),xe={class:"dwui-pagination"},Pe={class:"dwui-pagination-list"},Ve=["disabled","aria-label","title"],Le=["disabled","aria-label","title"],Me=["disabled","aria-label","title"],Te=["aria-current","onClick"],De=["disabled","aria-label","title"],ze=["disabled","aria-label","title"],Ae=["disabled","aria-label","title"],Ie={key:0,class:"dwui-pagination-select"},Oe=["value","disabled"],He=["value"],Re=e.defineComponent({__name:"pagination",props:{current:{},totalCount:{},limit:{},maxPagination:{},showPageSelect:{type:Boolean},labels:{}},emits:["emit:changePage"],setup(r,{emit:n}){const t=r,o=n,a=e.computed(()=>Math.ceil(t.totalCount/t.limit)),l=e.computed(()=>Math.min(Math.max(t.current,1),a.value)),i=e.ref(!1),m=e.computed(()=>a.value<1?[]:i.value?Array.from({length:a.value},(h,k)=>k+1):[l.value]),c=e.computed(()=>{if(a.value<1)return[];const h=Math.min(Math.max(l.value-Math.floor((t.maxPagination-1)/2),1),Math.max(a.value-t.maxPagination+1,1)),k=Math.min(h+t.maxPagination-1,a.value);return Array.from({length:k-h+1},(g,S)=>h+S)}),d=h=>{h!==t.current&&o("emit:changePage",h)},v=h=>{let k;h<0?k=Math.max(c.value[0]-t.maxPagination,1):k=Math.min(c.value[c.value.length-1]+t.maxPagination,a.value)-t.maxPagination+1,d(k+Math.round((t.maxPagination-1)/2))},p=h=>{d(Number(h.target.value))},u=()=>{i.value=!0},y=h=>{document.activeElement!==h.currentTarget&&(i.value=!1)},_=()=>{i.value=!0},w=()=>{i.value=!1};return(h,k)=>(e.openBlock(),e.createElementBlock("div",xe,[e.createElementVNode("ul",Pe,[e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:l.value<=1,"aria-label":t.labels.firstPage,title:t.labels.firstPage,onClick:k[0]||(k[0]=g=>d(1))},[e.createVNode(e.unref(C.SvgChevronDouble),{direction:"left",size:"1em","stroke-width":8})],8,Ve)]),e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:l.value<=1,"aria-label":t.labels.previousPage,title:t.labels.previousPage,onClick:k[1]||(k[1]=g=>d(l.value-1))},[e.createVNode(e.unref(C.SvgChevron),{direction:"left",size:"1em","stroke-width":8})],8,Le)]),e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:c.value.length===0||c.value[0]===1,"aria-label":t.labels.previousPages,title:t.labels.previousPages,onClick:k[2]||(k[2]=g=>v(-1))},[e.createVNode(e.unref(C.SvgBlackArrow),{direction:"left",size:"1em"})],8,Me)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,g=>(e.openBlock(),e.createElementBlock("li",{key:g},[e.createElementVNode("button",{type:"button",class:e.normalizeClass(["dwui-pagination-page",{"dwui-current":g===l.value}]),"aria-current":g===l.value?"page":void 0,onClick:S=>d(g)},e.toDisplayString(g),11,Te)]))),128)),e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:c.value.length===0||c.value[c.value.length-1]===a.value,"aria-label":t.labels.nextPages,title:t.labels.nextPages,onClick:k[3]||(k[3]=g=>v(1))},[e.createVNode(e.unref(C.SvgBlackArrow),{direction:"right",size:"1em"})],8,De)]),e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:a.value<=l.value,"aria-label":t.labels.nextPage,title:t.labels.nextPage,onClick:k[4]||(k[4]=g=>d(l.value+1))},[e.createVNode(e.unref(C.SvgChevron),{direction:"right",size:"1em","stroke-width":8})],8,ze)]),e.createElementVNode("li",null,[e.createElementVNode("button",{type:"button",disabled:a.value<=l.value,"aria-label":t.labels.lastPage,title:t.labels.lastPage,onClick:k[5]||(k[5]=g=>d(a.value))},[e.createVNode(e.unref(C.SvgChevronDouble),{direction:"right",size:"1em","stroke-width":8})],8,Ae)])]),t.showPageSelect?(e.openBlock(),e.createElementBlock("label",Ie,[e.createElementVNode("span",null,e.toDisplayString(t.labels.pageNumber),1),e.createElementVNode("select",{value:l.value,disabled:a.value<=1,onPointerenter:u,onPointerleave:y,onFocus:_,onBlur:w,onChange:p},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,g=>(e.openBlock(),e.createElementBlock("option",{key:g,value:g},e.toDisplayString(g)+" ("+e.toDisplayString((g-1)*t.limit+1)+" - "+e.toDisplayString(Math.min(g*t.limit,t.totalCount))+") ",9,He))),128))],40,Oe)])):e.createCommentVNode("",!0)]))}}),Fe={class:"dwui-data-table-controls"},We={class:"dwui-data-table-tools"},je={key:0,class:"dwui-data-table-total"},Ke={class:"dwui-data-table-total-count"},Ue={key:1,class:"dwui-data-table-limit"},Ge=["value","max"],Xe=["title","aria-label"],qe=["title","aria-label"],G=e.defineComponent({__name:"data-table-controls",props:{pagination:{type:Boolean},showTotal:{type:Boolean},showLimit:{type:Boolean},showPageSelect:{type:Boolean},showDownloadPage:{type:Boolean},showDownloadAll:{type:Boolean},current:{},limit:{},maxLimit:{},maxPagination:{},totalCount:{},labels:{},formatTotalCount:{type:Function}},emits:["emit:changePage","emit:changeLimit","emit:downloadPage","emit:downloadAll"],setup(r,{emit:n}){const t=r,o=n,a=new Intl.NumberFormat("en-US"),l=e.computed(()=>t.formatTotalCount?t.formatTotalCount(t.totalCount):a.format(t.totalCount)),i=m=>{const c=m.target,d=Math.min(Math.max(Math.trunc(Number(c.value))||1,1),t.maxLimit);c.value=String(d),d!==t.limit&&o("emit:changeLimit",d)};return(m,c)=>(e.openBlock(),e.createElementBlock("div",Fe,[t.pagination?(e.openBlock(),e.createBlock(Re,{key:0,current:t.current,"total-count":t.totalCount,limit:t.limit,"max-pagination":t.maxPagination,"show-page-select":t.showPageSelect,labels:t.labels,"onEmit:changePage":c[0]||(c[0]=d=>o("emit:changePage",d))},null,8,["current","total-count","limit","max-pagination","show-page-select","labels"])):e.createCommentVNode("",!0),e.createElementVNode("div",We,[t.showTotal?(e.openBlock(),e.createElementBlock("span",je,[e.createElementVNode("span",null,e.toDisplayString(t.labels.totalCount),1),e.createElementVNode("span",Ke,e.toDisplayString(l.value),1),e.createElementVNode("span",null,e.toDisplayString(t.labels.totalUnit),1)])):e.createCommentVNode("",!0),t.showLimit?(e.openBlock(),e.createElementBlock("label",Ue,[e.createElementVNode("span",null,e.toDisplayString(t.labels.limit),1),e.createElementVNode("input",{type:"number",value:t.limit,min:"1",max:t.maxLimit,step:"1",onChange:i},null,40,Ge)])):e.createCommentVNode("",!0),t.showDownloadPage?(e.openBlock(),e.createElementBlock("button",{key:2,type:"button",title:t.labels.downloadPage,"aria-label":t.labels.downloadPage,onClick:c[1]||(c[1]=d=>o("emit:downloadPage"))},[e.createVNode(e.unref(C.SvgFolderDownload))],8,Xe)):e.createCommentVNode("",!0),t.showDownloadAll?(e.openBlock(),e.createElementBlock("button",{key:3,type:"button",title:t.labels.downloadAll,"aria-label":t.labels.downloadAll,onClick:c[2]||(c[2]=d=>o("emit:downloadAll"))},[e.createVNode(e.unref(C.SvgCloudDownload))],8,qe)):e.createCommentVNode("",!0)])]))}}),R=(r,n)=>{let t=r;for(const o of n.replace(/\[(\w+)\]/g,".$1").split(".")){if(t==null)return;t=t[o]}return t},F=r=>typeof r=="function"?r():r??"",X=r=>r===!0||r==="true"||r==="1"||r==="on"||r===1,q=r=>typeof r=="number"?r:Number(String(r).replace(/[^+\-\d.]/g,"")),Ye=(r,n,t)=>{if(r==null&&n==null)return 0;if(r==null)return-1;if(n==null)return 1;if(r===n)return 0;switch(t){case"boolean":return(X(r)?1:0)-(X(n)?1:0);case"number":{const o=q(r),a=q(n);return Number.isNaN(o)||Number.isNaN(a)?(Number.isNaN(o)?0:1)-(Number.isNaN(a)?0:1):o-a}case"object":return A(r).localeCompare(A(n));default:return String(r).localeCompare(String(n))}},A=r=>{try{return JSON.stringify(r,(n,t)=>typeof t=="bigint"?t.toString():t)??""}catch{return""}},Qe=["rowspan","colspan","title","aria-sort"],Je={class:"dwui-data-table-header"},Ze=["role","tabindex","onClick","onKeydown"],et=["innerHTML"],tt={key:2},ot=["onPointerdown"],nt={key:0,class:"dwui-data-table-no-data"},lt=["colspan"],at={key:0,class:"dwui-data-table-loading"},rt=e.defineComponent({__name:"data-table",props:{dataList:{},headers:{},loading:{type:Boolean,default:!1},totalCount:{default:void 0},current:{default:1},limit:{default:100},maxLimit:{default:9999},maxPagination:{default:7},selectable:{type:Boolean,default:!0},controls:{default:"both"},pagination:{default:"both"},showDownloadPage:{type:Boolean,default:!0},showDownloadAll:{type:Boolean,default:!0},showTotal:{type:Boolean,default:!0},showLimit:{type:Boolean,default:!0},showPageSelect:{type:Boolean,default:!1},showNoData:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},sortable:{type:Boolean,default:!0},sortMode:{default:"remote"},contentClass:{type:[Boolean,null,String,Object,Array],default:void 0},contentStyle:{type:[Boolean,null,String,Object,Array],default:void 0},tableClass:{type:[Boolean,null,String,Object,Array],default:void 0},tableStyle:{type:[Boolean,null,String,Object,Array],default:void 0},labels:{default:void 0},formatTotalCount:{type:Function,default:void 0}},emits:["emit:selectRow","emit:changeSort","emit:updateHeader","emit:dblclickRow","emit:changeLimit","emit:changePage","emit:downloadPage","emit:downloadAll"],setup(r,{expose:n,emit:t}){const o=r,a=t,l=e.ref(),i=e.ref(),m=e.ref(),c=e.ref({}),d=e.ref(""),v=e.ref(!1),p=e.ref();let u;const y=e.computed(()=>o.headers.map(s=>c.value[s.id]==null?s:{...s,width:c.value[s.id]})),_=e.computed(()=>{const s={totalCount:"Total",totalUnit:"",limit:"Rows per page",noData:"No data found",pageNumber:"Page",downloadPage:"Download this page",downloadAll:"Download all",firstPage:"First page",previousPage:"Previous page",previousPages:"Previous pages",nextPages:"Next pages",nextPage:"Next page",lastPage:"Last page",...o.labels},f={};for(const b of Object.keys(s)){const $=s[b];f[b]=typeof $=="function"?$():$}return f}),w=e.computed(()=>Math.min(o.limit,o.maxLimit)),h=e.computed(()=>({showTotal:o.showTotal,showLimit:o.showLimit,showPageSelect:o.showPageSelect,showDownloadPage:o.showDownloadPage,showDownloadAll:o.showDownloadAll,current:o.current,limit:w.value,maxLimit:o.maxLimit,maxPagination:o.maxPagination,totalCount:o.totalCount??o.dataList.length,formatTotalCount:o.formatTotalCount,labels:_.value})),k=e.shallowRef(void 0),g=e.computed(()=>{const s=o.sortMode==="page"?o.headers.find(b=>b.id===d.value):void 0;if(!s)return o.dataList;const f=s.compare??((b,$)=>{const x=s.sortKey??s.id;return Ye(R(b,x),R($,x),s.type??"string")});return[...o.dataList].sort((b,$)=>v.value?f($,b):f(b,$))}),S=e.computed(()=>{const s=k.value;if(s==null)return-1;const f=g.value.indexOf(s);if(f!==-1)return f;const b=A(s);return b===""?-1:g.value.findIndex($=>A($)===b)}),B=e.computed(()=>o.headers.reduce((s,f)=>s+(f.colspan==null?1:Number(f.colspan)),0)),N=s=>{if(s!=null)return typeof s=="number"?`${s}px`:s},E=s=>({width:N(s.width),minWidth:N(s.minWidth),maxWidth:N(s.maxWidth)}),V=s=>{if(d.value===s)return v.value?"descending":"ascending"},P=s=>{if(!(!o.sortable||d.value!==s))return v.value?"down":"up"},L=s=>(o.current-1)*w.value+s+1,W=()=>Array.from(m.value?.children??[]).filter(s=>s.tagName==="TR"&&!s.classList.contains("dwui-data-table-no-data")),ie=s=>Array.from(s.children).filter(f=>f.tagName==="TD"||f.tagName==="TH"),j=()=>{a("emit:updateHeader",y.value.map(s=>({...s})))},I=()=>{W().forEach((s,f)=>s.classList.toggle("dwui-selected",f===S.value))},se=()=>{const s=l.value,f=W()[S.value];if(!s||!f)return;const b=i.value?.offsetHeight??0,$=f.offsetTop,x=$+f.offsetHeight;$<s.scrollTop+b?s.scrollTop=$-b:s.scrollTop+s.clientHeight<x&&(s.scrollTop=x-s.clientHeight)},D=(s,f)=>{k.value=s,a("emit:selectRow",s,f)},K=(s,f)=>{o.selectable&&(f===S.value?D(void 0,-1):(D(s,f),l.value?.focus({preventScroll:!0})))},ce=(s,f)=>{f!==S.value&&K(s,f),a("emit:dblclickRow",s,f)},de=s=>{if(s.target!==s.currentTarget||S.value<0||s.key!=="ArrowUp"&&s.key!=="ArrowDown")return;const f=S.value+(s.key==="ArrowUp"?-1:1);f<0||g.value.length<=f||(s.preventDefault(),D(g.value[f],f))},O=s=>{!o.sortable||o.dataList.length===0||(v.value=d.value===s.id?!v.value:!1,d.value=s.id,a("emit:changeSort",{sortKey:d.value,descending:v.value}))},ue=(s,f)=>{if(!o.resizable)return;s.preventDefault();const b=i.value?.firstElementChild,$=b?ie(b):[];for(const[x,T]of $.entries())c.value[o.headers[x].id]=T.getBoundingClientRect().width;p.value={index:f,x:s.clientX},s.currentTarget.setPointerCapture(s.pointerId),j()},me=s=>{if(!p.value)return;const f=s.clientX-p.value.x;if(f===0)return;p.value.x=s.clientX;const b=p.value.index,$=o.headers.map(T=>T.id);c.value[$[b]]+=f;const x=f/($.length-b-1);for(const T of $.slice(b+1))c.value[T]-=x},U=()=>{p.value&&(p.value=void 0,j())};return e.onMounted(()=>{u=new MutationObserver(I),m.value&&u.observe(m.value,{childList:!0}),I()}),e.onBeforeUnmount(()=>{u?.disconnect()}),e.watch(()=>o.headers,(s,f)=>{const b=s.map(x=>x.id),$=f.map(x=>x.id);(b.length!==$.length||b.some(x=>!$.includes(x)))&&(c.value={})}),e.watch(()=>o.loading,(s,f)=>{f&&!s&&(o.sortMode==="page"&&(d.value="",v.value=!1),k.value!=null&&D(void 0,-1))}),e.watch(S,s=>{0<=s&&se()},{flush:"post"}),e.watch(S,I,{flush:"post"}),n({getSortContext:()=>({sortKey:d.value,descending:v.value})}),(s,f)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["dwui-data-table",{"dwui-selectable":o.selectable}])},[o.controls==="both"||o.controls==="top"?(e.openBlock(),e.createBlock(G,e.mergeProps({key:0},h.value,{pagination:o.pagination==="both"||o.pagination==="top","onEmit:changePage":f[0]||(f[0]=b=>a("emit:changePage",b)),"onEmit:changeLimit":f[1]||(f[1]=b=>a("emit:changeLimit",b)),"onEmit:downloadPage":f[2]||(f[2]=b=>a("emit:downloadPage")),"onEmit:downloadAll":f[3]||(f[3]=b=>a("emit:downloadAll"))}),null,16,["pagination"])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"refContent",ref:l,class:e.normalizeClass(["dwui-data-table-content",[{"dwui-loading":o.loading},o.contentClass]]),style:e.normalizeStyle(o.contentStyle),tabindex:"-1",onKeydown:de},[e.createElementVNode("table",{class:e.normalizeClass(o.tableClass),style:e.normalizeStyle(o.tableStyle)},[e.createElementVNode("thead",{ref_key:"refThead",ref:i},[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(b,$)=>(e.openBlock(),e.createElementBlock("th",{key:b.id,rowspan:b.rowspan,colspan:b.colspan,title:b.title,style:e.normalizeStyle(E(b)),"aria-sort":V(b.id),scope:"col"},[e.createElementVNode("div",Je,[e.createElementVNode("span",{class:"dwui-data-table-sort",role:o.sortable?"button":void 0,tabindex:o.sortable?0:void 0,onClick:x=>O(b),onKeydown:[e.withKeys(e.withModifiers(x=>O(b),["prevent"]),["enter"]),e.withKeys(e.withModifiers(x=>O(b),["prevent"]),["space"])]},[P(b.id)?(e.openBlock(),e.createBlock(e.unref(C.SvgPointingTriangle),{key:0,direction:P(b.id),size:"0.7em"},null,8,["direction"])):e.createCommentVNode("",!0),b.html?(e.openBlock(),e.createElementBlock("span",{key:1,innerHTML:e.unref(F)(b.label)},null,8,et)):(e.openBlock(),e.createElementBlock("span",tt,e.toDisplayString(e.unref(F)(b.label)),1))],40,Ze)]),o.resizable&&$<y.value.length-1?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dwui-data-table-resizer",onPointerdown:x=>ue(x,$),onPointermove:me,onPointerup:U,onPointercancel:U},null,40,ot)):e.createCommentVNode("",!0)],12,Qe))),128))])],512),e.createElementVNode("tbody",{ref_key:"refTbody",ref:m},[o.loading?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(s.$slots,"default",{rows:g.value,clickRow:K,dblclickRow:ce,rowNumber:L,selectedIndex:S.value}),o.dataList.length===0&&o.showNoData?(e.openBlock(),e.createElementBlock("tr",nt,[e.createElementVNode("td",{colspan:B.value},e.toDisplayString(_.value.noData),9,lt)])):e.createCommentVNode("",!0)],64))],512)],6),o.loading?(e.openBlock(),e.createElementBlock("div",at,[e.renderSlot(s.$slots,"loading",{},()=>[f[8]||(f[8]=e.createElementVNode("div",{class:"dwui-data-table-loading-spinner"},null,-1))])])):e.createCommentVNode("",!0)],38),o.controls==="both"||o.controls==="bottom"?(e.openBlock(),e.createBlock(G,e.mergeProps({key:1},h.value,{pagination:o.pagination==="both"||o.pagination==="bottom","onEmit:changePage":f[4]||(f[4]=b=>a("emit:changePage",b)),"onEmit:changeLimit":f[5]||(f[5]=b=>a("emit:changeLimit",b)),"onEmit:downloadPage":f[6]||(f[6]=b=>a("emit:downloadPage")),"onEmit:downloadAll":f[7]||(f[7]=b=>a("emit:downloadAll"))}),null,16,["pagination"])):e.createCommentVNode("",!0)],2))}}),Y={top:"bottom",bottom:"top",left:"right",right:"left"},H=(r,n,t)=>Math.min(Math.max(r,n),t),ee=(r,n,t,o)=>{const{offset:a,margin:l,arrowMargin:i}=o,[m,c="center"]=o.placement.split("-"),d=m==="top"||m==="bottom",v=r.top+r.height,p=r.left+r.width,u={top:r.top-l,bottom:t.height-v-l,left:r.left-l,right:t.width-p-l},w=(d?n.height:n.width)+a<=u[m]||u[Y[m]]<=u[m]?m:Y[m];let h;switch(w){case"top":h=r.top-a-n.height;break;case"bottom":h=v+a;break;case"left":h=r.left-a-n.width;break;default:h=p+a;break}const k=d?r.left:r.top,g=d?r.width:r.height,S=d?n.width:n.height;let B;switch(c){case"start":B=k;break;case"end":B=k+g-S;break;default:B=k+(g-S)/2;break}const N=H(d?h:B,l,Math.max(l,t.height-l-n.height)),E=H(d?B:h,l,Math.max(l,t.width-l-n.width)),V=k+g/2,L=H(V-(d?E:N),i,Math.max(i,S-i));return{top:N,left:E,side:w,arrow:L}},it=["popover","data-side"],st={class:"dwui-anchored-popover-content"},Q=4,ct=7,dt=12,ut=8,te=e.defineComponent({__name:"anchored-popover",props:{anchor:{},placement:{},arrow:{type:Boolean},mode:{}},emits:["emit:open","emit:close"],setup(r,{expose:n,emit:t}){const o=r,a=t,l=e.ref(),i=e.ref(),m=()=>{l.value?.hidePopover()},c=()=>{l.value?.showPopover()},d=()=>{const u=l.value;if(!o.anchor||!u)return;const y={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight},_=ee(o.anchor.getBoundingClientRect(),u.getBoundingClientRect(),y,{placement:o.placement,offset:o.arrow?Q+ct:Q,margin:ut,arrowMargin:dt});i.value=_.side,u.style.top=`${_.top}px`,u.style.left=`${_.left}px`,u.style.setProperty("--dwui-offset-arrow",`${_.arrow}px`),u.style.visibility="visible"},v=u=>{l.value?.contains(u.target)||d()},p=u=>{u.newState==="open"?(d(),window.addEventListener("scroll",v,!0),window.addEventListener("resize",d),a("emit:open")):(l.value&&(l.value.style.visibility=""),window.removeEventListener("scroll",v,!0),window.removeEventListener("resize",d),a("emit:close"))};return e.onBeforeUnmount(()=>{window.removeEventListener("scroll",v,!0),window.removeEventListener("resize",d)}),n({element:l,show:c,hide:m}),(u,y)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"refPanel",ref:l,class:e.normalizeClass(["dwui-anchored-popover",{"dwui-arrow":o.arrow}]),popover:o.mode,"data-side":i.value,onToggle:p},[e.createElementVNode("div",st,[e.renderSlot(u.$slots,"default")])],42,it))}}),mt=["aria-label"],pt=e.defineComponent({inheritAttrs:!1,__name:"help-button",props:{placement:{default:"bottom-start"},arrow:{type:Boolean,default:!1},label:{default:"Help"}},emits:["emit:open","emit:close"],setup(r,{emit:n}){const t=r,o=n,a=e.useAttrs(),l=e.ref(),i=e.ref();return e.onMounted(()=>{const m=i.value?.element;l.value&&m&&(l.value.popoverTargetElement=m)}),(m,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("button",e.mergeProps({ref_key:"refButton",ref:l,type:"button",class:"dwui-help-button","aria-label":t.label},e.unref(a)),[e.renderSlot(m.$slots,"icon",{},()=>[e.createVNode(e.unref(C.SvgQuestion))])],16,mt),e.createVNode(te,{ref_key:"refPopover",ref:i,class:"dwui-help-button-popover",mode:"auto",anchor:l.value,placement:t.placement,arrow:t.arrow,"onEmit:open":c[0]||(c[0]=d=>o("emit:open")),"onEmit:close":c[1]||(c[1]=d=>o("emit:close"))},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default")]),_:3},8,["anchor","placement","arrow"])],64))}}),ft=["aria-label","aria-describedby"],gt=150,oe=e.defineComponent({inheritAttrs:!1,__name:"icon-popper",props:{placement:{},arrow:{type:Boolean},popoverClass:{},label:{}},emits:["emit:open","emit:close"],setup(r,{emit:n}){const t=r,o=n,a=e.useAttrs(),l=e.ref(),i=e.ref(),m=e.ref(!1),c=e.useId();let d;const v=()=>{d!==void 0&&(clearTimeout(d),d=void 0)},p=()=>{v(),i.value?.show()},u=()=>{v(),i.value?.hide()},y=()=>{v(),d=setTimeout(()=>{d=void 0,i.value?.hide()},gt)},_=P=>{const L=P.target;!l.value?.contains(L)&&!i.value?.element?.contains(L)&&u()},w=P=>{P.pointerType!=="touch"&&p()},h=P=>{P.pointerType!=="touch"&&y()},k=P=>{P.pointerType!=="touch"&&v()},g=P=>{P.pointerType==="touch"&&(m.value?u():p())},S=()=>{p()},B=()=>{u()},N=()=>{u()},E=()=>{m.value=!0,document.addEventListener("pointerdown",_,!0),o("emit:open")},V=()=>{m.value=!1,document.removeEventListener("pointerdown",_,!0),o("emit:close")};return e.onBeforeUnmount(()=>{v(),document.removeEventListener("pointerdown",_,!0)}),(P,L)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("span",e.mergeProps({ref_key:"refTrigger",ref:l,class:"dwui-icon-popper",tabindex:"0","aria-label":t.label,"aria-describedby":e.unref(c)},e.unref(a),{onPointerenter:w,onPointerleave:h,onPointerdown:g,onFocus:S,onBlur:B,onKeydown:e.withKeys(N,["esc"])}),[e.renderSlot(P.$slots,"icon")],16,ft),e.createVNode(te,{ref_key:"refPopover",ref:i,id:e.unref(c),class:e.normalizeClass(["dwui-icon-popper-popover",t.popoverClass]),role:"tooltip",mode:"manual",anchor:l.value,placement:t.placement,arrow:t.arrow,onPointerenter:k,onPointerleave:h,"onEmit:open":E,"onEmit:close":V},{default:e.withCtx(()=>[e.renderSlot(P.$slots,"default")]),_:3},8,["id","class","anchor","placement","arrow"])],64))}}),vt=e.defineComponent({__name:"help-popper",props:{placement:{default:"right"},arrow:{type:Boolean,default:!0},label:{default:"Help"}},emits:["emit:open","emit:close"],setup(r,{emit:n}){const t=r,o=n;return(a,l)=>(e.openBlock(),e.createBlock(oe,{class:"dwui-help-popper","popover-class":"dwui-help-popper-popover",placement:t.placement,arrow:t.arrow,label:t.label,"onEmit:open":l[0]||(l[0]=i=>o("emit:open")),"onEmit:close":l[1]||(l[1]=i=>o("emit:close"))},{icon:e.withCtx(()=>[e.renderSlot(a.$slots,"icon",{},()=>[e.createVNode(e.unref(C.SvgQuestion))])]),default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},8,["placement","arrow","label"]))}}),ht=e.defineComponent({__name:"hourglass-loading",props:{loading:{type:Boolean},duration:{},size:{default:"1.2em"}},setup(r){const n=r;return(t,o)=>n.loading?(e.openBlock(),e.createBlock(e.unref(C.SvgHourglass),{key:0,duration:n.duration,size:n.size,class:"dwui-hourglass-loading"},null,8,["duration","size"])):e.renderSlot(t.$slots,"default",{},void 0,void 0,1)}}),bt=e.defineComponent({__name:"intersection-lazy-component",props:{root:{},rootMargin:{},threshold:{}},emits:["emit:visible"],setup(r,{emit:n}){const t=r,o=n,a=e.ref(),l=e.ref(!1);let i;const m=()=>{i?.disconnect(),i=void 0,!(!a.value||l.value)&&(i=new IntersectionObserver(c=>{c.some(d=>d.isIntersecting)&&(l.value=!0,i?.disconnect(),i=void 0,o("emit:visible"))},{root:t.root,rootMargin:t.rootMargin,threshold:t.threshold}),i.observe(a.value))};return e.onMounted(()=>{m()}),e.onBeforeUnmount(()=>{i?.disconnect()}),e.watch(()=>[t.root,t.rootMargin,t.threshold],()=>{m()},{flush:"post"}),(c,d)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"refTarget",ref:a,class:"dwui-intersection-lazy-component"},[l.value?e.renderSlot(c.$slots,"default",{},void 0,void 0,0):e.renderSlot(c.$slots,"placeholder",{},void 0,void 0,1)],512))}}),wt={type:"button",class:"dwui-label-button"},yt=e.defineComponent({__name:"label-button",props:{preset:{},gap:{},iconClass:{type:[Boolean,null,String,Object,Array]},iconStyle:{type:[Boolean,null,String,Object,Array]},labelClass:{type:[Boolean,null,String,Object,Array]},labelStyle:{type:[Boolean,null,String,Object,Array]}},setup(r){const n=r,t=e.useSlots();return(o,a)=>(e.openBlock(),e.createElementBlock("button",wt,[e.createVNode(M,{preset:n.preset,gap:n.gap,"icon-class":n.iconClass,"icon-style":n.iconStyle,"label-class":n.labelClass,"label-style":n.labelStyle},e.createSlots({_:2},[t.icon!=null?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"icon")]),key:"0"}:void 0,t.default!=null?{name:"default",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),key:"1"}:void 0]),1032,["preset","gap","icon-class","icon-style","label-class","label-style"])]))}}),kt=["aria-labelledby","aria-describedby"],Bt={class:"dwui-modal-dialog-header"},_t={class:"dwui-modal-dialog-icon"},St=["id","innerHTML"],Ct=["id"],$t=["id"],Et=["innerHTML"],Nt={key:1},xt={key:0,class:"dwui-modal-dialog-images"},Pt=["src","alt"],Vt=["onClick"],Lt=e.defineComponent({__name:"modal-dialog",props:e.mergeModels({type:{default:"info"},title:{default:void 0},message:{default:void 0},html:{type:Boolean,default:!1},image:{default:void 0},buttons:{default:void 0},okLabel:{default:"OK"},yesLabel:{default:"Yes"},noLabel:{default:"No"},cancelLabel:{default:"Cancel"}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["emit:close"],["update:open"]),setup(r,{emit:n}){const t=r,o=n,a=e.useModel(r,"open"),l=e.ref(),i=e.ref(),m=e.useId(),c=e.useId(),d={info:C.SvgInfo,confirm:C.SvgQuestion,warn:C.SvgWarningSign,error:C.SvgCritical},v=["cancel","no","yes","ok"],p=e.computed(()=>t.buttons??(t.type==="confirm"?["yes","no"]:["ok"])),u=e.computed(()=>({ok:t.okLabel,yes:t.yesLabel,no:t.noLabel,cancel:t.cancelLabel})),y=e.computed(()=>t.message==null?[]:[t.message].flat()),_=e.computed(()=>[t.image??[]].flat().map(B=>typeof B=="string"?{src:B,alt:""}:B)),w=B=>{S(B)},h=B=>{B.preventDefault(),S("cancel")},k=B=>{if(B.key!=="ArrowLeft"&&B.key!=="ArrowRight")return;const N=[...i.value?.children??[]],E=N.indexOf(document.activeElement);E<0||N[B.key==="ArrowRight"?E+1:E-1]?.focus()},g=()=>{l.value?.showModal();const B=v.find(E=>p.value.includes(E)),N=B?p.value.indexOf(B):-1;i.value?.children[N]?.focus()},S=B=>{l.value?.close(),a.value=!1,o("emit:close",B)};return e.onMounted(()=>{a.value&&g()}),e.watch(a,B=>{B?g():l.value?.close()},{flush:"post"}),(B,N)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"refDialog",ref:l,class:e.normalizeClass(["dwui-modal-dialog",`dwui-modal-dialog-${t.type}`]),"aria-labelledby":t.title?e.unref(m):void 0,"aria-describedby":e.unref(c),onCancel:h,onKeydown:k},[e.createElementVNode("div",Bt,[e.createElementVNode("span",_t,[e.renderSlot(B.$slots,"icon",{},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d[t.type])))])]),t.title?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.html?(e.openBlock(),e.createElementBlock("span",{key:0,id:e.unref(m),class:"dwui-modal-dialog-title",innerHTML:t.title},null,8,St)):(e.openBlock(),e.createElementBlock("span",{key:1,id:e.unref(m),class:"dwui-modal-dialog-title"},e.toDisplayString(t.title),9,Ct))],64)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{id:e.unref(c),class:"dwui-modal-dialog-body"},[e.renderSlot(B.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(E,V)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V},[t.html?(e.openBlock(),e.createElementBlock("p",{key:0,innerHTML:E},null,8,Et)):(e.openBlock(),e.createElementBlock("p",Nt,e.toDisplayString(E),1))],64))),128)),_.value.length?(e.openBlock(),e.createElementBlock("div",xt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(E,V)=>(e.openBlock(),e.createElementBlock("img",{key:V,src:E.src,alt:E.alt},null,8,Pt))),128))])):e.createCommentVNode("",!0)])],8,$t),e.createElementVNode("div",{ref_key:"refButtons",ref:i,class:"dwui-modal-dialog-buttons"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,E=>(e.openBlock(),e.createElementBlock("button",{key:E,type:"button",class:e.normalizeClass(["dwui-modal-dialog-button",`dwui-modal-dialog-button-${E}`]),onClick:V=>w(E)},e.toDisplayString(u.value[E]),11,Vt))),128))],512)],42,kt))}});function Mt(r){const n=r.minWidth??20,t=r.minHeight??20,o=e.ref(!1),a=e.ref(!1),l=e.reactive({x:0,y:0}),i=e.reactive({width:-1,height:-1});let m=null,c="bottom-right",d={x:0,y:0};const v=g=>{if(g.pointerId!==m)return;g.preventDefault();const S=g.clientX-d.x,B=g.clientY-d.y;if(d={x:g.clientX,y:g.clientY},o.value)l.x+=S,l.y+=B;else if(a.value){if(c.endsWith("left")){const N=Math.max(n,i.width-S);l.x+=i.width-N,i.width=N}else i.width=Math.max(n,i.width+S);if(c.startsWith("top")){const N=Math.max(t,i.height-B);l.y+=i.height-N,i.height=N}else i.height=Math.max(t,i.height+B)}},p=()=>{const g=r.target.value?.getBoundingClientRect().width||0;l.x<40-g&&(l.x=40-g),window.innerWidth-40<l.x&&(l.x=window.innerWidth-40),l.y<0&&(l.y=0),r.clampBottom&&window.innerHeight-20<l.y&&(l.y=window.innerHeight-20)},u=g=>{if(g.pointerId!==m)return;const S=o.value;y(),S&&p()},y=()=>{document.removeEventListener("pointermove",v,!0),document.removeEventListener("pointerup",u,!0),document.removeEventListener("pointercancel",u,!0),m=null,o.value=!1,a.value=!1},_=g=>{y(),m=g.pointerId,d={x:g.clientX,y:g.clientY},document.addEventListener("pointermove",v,!0),document.addEventListener("pointerup",u,!0),document.addEventListener("pointercancel",u,!0)},w=g=>{g.isPrimary&&r.dragMode()==="body"&&(_(g),o.value=!0)},h=g=>{g.isPrimary&&r.dragMode()==="header"&&(_(g),o.value=!0)},k=(g,S="bottom-right")=>{if(!g.isPrimary)return;c=S;const B=r.target.value?.getBoundingClientRect();B&&(i.width<0&&(i.width=B.width),i.height<0&&(i.height=B.height)),_(g),a.value=!0};return e.onBeforeUnmount(y),{moving:o,resizing:a,currentPosition:l,currentRect:i,onDragStart:w,onDragHeaderStart:h,onResizeStart:k,teardown:y}}const Tt=["aria-labelledby"],Dt=["id"],zt=["aria-label"],At=["onPointerdown"],ne=e.defineComponent({__name:"movable-window",props:{name:{},dragMode:{},loading:{type:Boolean},closeLabel:{},clampBottom:{type:Boolean},headerClass:{type:[Boolean,null,String,Object,Array]},headerStyle:{type:[Boolean,null,String,Object,Array]}},emits:["emit:close"],setup(r,{expose:n,emit:t}){const o=r,a=t,l=e.ref(),i=e.useId(),m=["top-left","top-right","bottom-left"],c=Mt({target:l,dragMode:()=>o.dragMode,clampBottom:o.clampBottom}),d=e.computed(()=>{const{currentPosition:v,currentRect:p}=c;return{top:`${v.y}px`,left:`${v.x}px`,width:0<=p.width?`${p.width}px`:void 0,height:0<=p.height?`${p.height}px`:void 0}});return n({element:l,position:c.currentPosition,size:c.currentRect,teardown:c.teardown}),(v,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"refWindow",ref:l,class:"dwui-movable-window",role:"dialog","aria-labelledby":e.unref(i),style:e.normalizeStyle(d.value)},[e.createElementVNode("div",{class:"dwui-movable-window-frame",onPointerdown:p[2]||(p[2]=(...u)=>e.unref(c).onDragStart&&e.unref(c).onDragStart(...u))},[e.createElementVNode("div",{class:e.normalizeClass(["dwui-movable-window-header",[`${o.name}-header`,o.headerClass,{"dwui-movable":o.dragMode}]]),style:e.normalizeStyle(o.headerStyle),onPointerdown:p[1]||(p[1]=(...u)=>e.unref(c).onDragHeaderStart&&e.unref(c).onDragHeaderStart(...u))},[e.createElementVNode("div",{id:e.unref(i),class:e.normalizeClass(["dwui-movable-window-title",`${o.name}-title`])},[e.renderSlot(v.$slots,"title")],10,Dt),e.renderSlot(v.$slots,"actions"),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["dwui-movable-window-close-button",`${o.name}-close-button`]),"aria-label":o.closeLabel,onClick:p[0]||(p[0]=u=>a("emit:close"))},[e.createVNode(e.unref(C.SvgNegativeSquaredCrossMark))],10,zt)],38),e.createElementVNode("div",{class:e.normalizeClass(["dwui-movable-window-body",[`${o.name}-body`,{"dwui-movable":o.dragMode==="body"}]])},[e.renderSlot(v.$slots,"default")],2)],32),o.loading?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["dwui-movable-window-loading",`${o.name}-loading`])},[e.createElementVNode("div",{class:e.normalizeClass(["dwui-movable-window-spinner",`${o.name}-spinner`])},null,2)],2)):e.createCommentVNode("",!0),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(m,u=>e.createElementVNode("div",{key:u,class:e.normalizeClass(["dwui-movable-window-corner",[`${o.name}-corner`,`dwui-${u}`]]),onPointerdown:e.withModifiers(y=>e.unref(c).onResizeStart(y,u),["prevent"])},null,42,At)),64)),e.createElementVNode("div",{class:e.normalizeClass(["dwui-movable-window-resizer",`${o.name}-resizer`]),onPointerdown:p[3]||(p[3]=e.withModifiers(u=>e.unref(c).onResizeStart(u,"bottom-right"),["prevent"]))},[e.createVNode(e.unref(C.SvgCornerDiagonal),{direction:"bottom-right"})],34)],12,Tt))}}),z=[];let J=0;const le=()=>(J+=1,J),It=e.defineComponent({__name:"overlay-box",props:e.mergeModels({title:{default:void 0},dragMode:{default:void 0},closeOnBackdrop:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},closeLabel:{default:"Close"}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["emit:close"],["update:open"]),setup(r,{emit:n}){const t=r,o=n,a=e.useModel(r,"open"),l=e.ref(),i=e.ref(0),m=Symbol("dwui-overlay-box");let c=null;const d=()=>{t.closeOnBackdrop&&(a.value=!1)},v=()=>{a.value=!1},p=h=>{h.key!=="Escape"||!h.isTrusted||h.isComposing||h.target instanceof Element&&h.target.closest("dialog")||z.at(-1)===m&&(a.value=!1)},u=()=>{o("emit:close")},y=()=>{const h=z.indexOf(m);0<=h&&z.splice(h,1)},_=()=>{i.value=le();const h=l.value,k=h?.element?.getBoundingClientRect();h&&(h.position.x=(window.innerWidth-(k?.width||0))/2,h.position.y=Math.max(0,(window.innerHeight-(k?.height||0))/2)),c=document.activeElement instanceof HTMLElement?document.activeElement:null,h?.element?.focus(),z.push(m)},w=()=>{l.value?.teardown(),y(),c?.isConnected&&c.focus(),c=null};return e.onMounted(()=>{a.value&&_()}),e.onBeforeUnmount(()=>{y()}),e.watch(a,h=>{h?_():w()},{flush:"post"}),(h,k)=>(e.openBlock(),e.createBlock(e.Transition,{name:"dwui-overlay-box-fade",onAfterLeave:u},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dwui-overlay-box",style:e.normalizeStyle({"--dwui-order-window":i.value})},[e.createElementVNode("div",{class:"dwui-overlay-box-backdrop",onClick:d}),e.createVNode(ne,{ref_key:"refWindow",ref:l,class:"dwui-overlay-box-container",name:"dwui-overlay-box",tabindex:"-1","drag-mode":t.dragMode,loading:t.loading,"close-label":t.closeLabel,"clamp-bottom":"",onKeydown:p,"onEmit:close":v},{title:e.withCtx(()=>[e.renderSlot(h.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),default:e.withCtx(()=>[e.renderSlot(h.$slots,"default")]),_:3},8,["drag-mode","loading","close-label"])],4)):e.createCommentVNode("",!0)]),_:3}))}}),Ot={class:"dwui-page-section"},Ht={class:"dwui-page-section-content"},Rt=e.defineComponent({__name:"page-section",props:{title:{},icon:{default:"diamond"},iconVariant:{},iconColor:{},titleClass:{type:[Boolean,null,String,Object,Array]},titleStyle:{type:[Boolean,null,String,Object,Array]}},setup(r){const n=r,t={diamond:{component:C.SvgDiamond,shape:!0,color:"#1a44b6"},circle:{component:C.SvgCircle,shape:!0,color:"#e78b2f"},square:{component:C.SvgSquare,shape:!0,color:"#d13a2b"},pushpin:{component:C.SvgPushpin,shape:!1},"round-pushpin":{component:C.SvgRoundPushpin,shape:!1}},o=e.computed(()=>{const a=t[n.icon];return{component:a.component,props:a.shape?{variant:n.iconVariant,color:n.iconColor??a.color}:{}}});return(a,l)=>(e.openBlock(),e.createElementBlock("section",Ot,[n.title!=null?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["dwui-page-section-title",n.titleClass]),style:e.normalizeStyle(n.titleStyle)},[e.createVNode(M,null,{icon:e.withCtx(()=>[e.renderSlot(a.$slots,"icon",{},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value.component),e.normalizeProps(e.guardReactiveProps(o.value.props)),null,16))])]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(n.title),1)]),_:3})],6)):e.createCommentVNode("",!0),e.createElementVNode("div",Ht,[e.renderSlot(a.$slots,"default")])]))}}),Ft={class:"dwui-page-title"},Wt={key:0,class:"dwui-page-title-actions"},jt=e.defineComponent({__name:"page-title",props:{title:{}},setup(r){const n=r,t=e.useSlots();return(o,a)=>(e.openBlock(),e.createElementBlock("section",Ft,[e.createVNode(M,{class:"dwui-page-title-label"},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(n.title),1)]),_:2},[t.icon!=null?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"icon")]),key:"0"}:void 0]),1024),t.default!=null?(e.openBlock(),e.createElementBlock("span",Wt,[e.renderSlot(o.$slots,"default")])):e.createCommentVNode("",!0)]))}}),Kt=e.defineComponent({__name:"screen-loading",props:{loading:{type:Boolean}},setup(r){const n=r,t=e.ref(null),o=()=>{const l=t.value;l&&!l.open&&l.showModal()},a=()=>{const l=t.value;l?.open&&l.close()};return e.onMounted(()=>{n.loading&&o()}),e.onBeforeUnmount(()=>{a()}),e.watch(()=>n.loading,l=>{l?o():a()},{flush:"post"}),(l,i)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"refDialog",ref:t,class:"dwui-screen-loading",closedby:"none",onCancel:i[0]||(i[0]=e.withModifiers(()=>{},["prevent"]))},[...i[1]||(i[1]=[e.createElementVNode("div",{class:"dwui-screen-loading-spinner"},null,-1)])],544))}}),ae=Symbol("dwui-tab-group"),Ut=["id","aria-labelledby","aria-busy","hidden"],Gt={key:0,class:"dwui-tab-loading"},Xt={key:1,class:"dwui-tab-loading-spinner"},re=e.defineComponent({__name:"tab-content",props:{tabId:{},label:{},disabled:{type:Boolean},status:{},headerClass:{type:[Boolean,null,String,Object,Array]},headerStyle:{type:[Boolean,null,String,Object,Array]}},setup(r){const n=r,t=e.inject(ae,void 0),o=e.ref(!1),a=()=>t?.loadingSlot(),l=e.computed(()=>t?.activeTabId.value===n.tabId),i=e.computed(()=>!!t?.mounted.value&&l.value),m=c=>{o.value=c};return(c,d)=>n.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(t)?`${e.unref(t).groupName}-${n.tabId}-panel`:void 0,class:"dwui-tab-content",role:"tabpanel","aria-labelledby":e.unref(t)?`${e.unref(t).groupName}-${n.tabId}`:void 0,"aria-busy":o.value?"true":void 0,hidden:!l.value},[e.renderSlot(c.$slots,"default",{activated:i.value,setLoading:m}),o.value?(e.openBlock(),e.createElementBlock("div",Gt,[a()!=null?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a()),{key:0})):(e.openBlock(),e.createElementBlock("span",Xt))])):e.createCommentVNode("",!0)],8,Ut))}}),qt={class:"dwui-tab-group"},Yt=["id","name","disabled","checked","aria-selected","aria-controls","onChange"],Qt=["for"],Jt={class:"dwui-tab-items"},Zt=e.defineComponent({__name:"tab-group",props:e.mergeModels({tabGroupName:{},selectFirstEnabled:{type:Boolean},headerClass:{type:[Boolean,null,String,Object,Array]},headerStyle:{type:[Boolean,null,String,Object,Array]},teleport:{}},{selectedTabId:{},selectedTabIdModifiers:{}}),emits:["update:selectedTabId"],setup(r){const n=r,t=e.useModel(r,"selectedTabId"),o=e.useSlots(),a=n.tabGroupName??e.useId(),l=v=>{if(v.type!==re)return;const p=v.props??{},u=p.disabled;return{tabId:String(p["tab-id"]??p.tabId),label:p.label,disabled:u===""||!!u,status:p.status,headerClass:p["header-class"]??p.headerClass,headerStyle:p["header-style"]??p.headerStyle,icon:v.children?.icon}},i=e.computed(()=>{const v=[];for(const p of o.default?.()??[]){const u=Array.isArray(p.children)?p.children:[p];for(const y of u){const _=l(y);_&&v.push(_)}}return v}),m=e.computed(()=>t.value!=null?t.value:(n.selectFirstEnabled?i.value.find(p=>!p.disabled):i.value[0])?.tabId),c=e.ref(!1);e.provide(ae,{groupName:a,activeTabId:m,mounted:c,loadingSlot:()=>o.loading}),e.onMounted(()=>{c.value=!0});const d=v=>{t.value=v};return(v,p)=>(e.openBlock(),e.createElementBlock("div",qt,[(e.openBlock(),e.createBlock(e.Teleport,{to:n.teleport??"body",disabled:n.teleport==null},[e.createElementVNode("div",{class:e.normalizeClass(["dwui-tab-headers",n.headerClass]),role:"tablist",style:e.normalizeStyle(n.headerStyle)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.tabId},[e.createElementVNode("input",{id:`${e.unref(a)}-${u.tabId}`,type:"radio",class:"dwui-tab-radio",role:"tab",name:e.unref(a),disabled:u.disabled,checked:u.tabId===m.value,"aria-selected":u.tabId===m.value?"true":"false","aria-controls":`${e.unref(a)}-${u.tabId}-panel`,onChange:y=>d(u.tabId)},null,40,Yt),e.createElementVNode("label",{for:`${e.unref(a)}-${u.tabId}`,class:e.normalizeClass(["dwui-tab-item",[u.status!=null?`dwui-tab-${u.status}`:void 0,u.headerClass]]),style:e.normalizeStyle(u.headerStyle)},[e.createVNode(M,null,e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(u.label),1)]),_:2},[u.icon!=null?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.icon)))]),key:"0"}:void 0]),1024)],14,Qt)],64))),128))],6)],8,["to","disabled"])),e.createElementVNode("div",Jt,[e.renderSlot(v.$slots,"default")])]))}}),eo=e.defineComponent({__name:"warning-popper",props:{placement:{default:"right"},arrow:{type:Boolean,default:!0},label:{default:"Warning"}},emits:["emit:open","emit:close"],setup(r,{emit:n}){const t=r,o=n;return(a,l)=>(e.openBlock(),e.createBlock(oe,{class:"dwui-warning-popper","popover-class":"dwui-warning-popper-popover",placement:t.placement,arrow:t.arrow,label:t.label,"onEmit:open":l[0]||(l[0]=i=>o("emit:open")),"onEmit:close":l[1]||(l[1]=i=>o("emit:close"))},{icon:e.withCtx(()=>[e.renderSlot(a.$slots,"icon",{},()=>[e.createVNode(e.unref(C.SvgWarningSign))])]),default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},8,["placement","arrow","label"]))}});exports._sfc_main=ne;exports._sfc_main$1=_e;exports._sfc_main$10=vt;exports._sfc_main$11=ht;exports._sfc_main$12=bt;exports._sfc_main$13=yt;exports._sfc_main$14=M;exports._sfc_main$15=Rt;exports._sfc_main$16=jt;exports._sfc_main$17=re;exports._sfc_main$18=Zt;exports._sfc_main$19=eo;exports._sfc_main$2=Lt;exports._sfc_main$3=It;exports._sfc_main$4=Kt;exports._sfc_main$5=he;exports._sfc_main$6=ke;exports._sfc_main$7=Ne;exports._sfc_main$8=rt;exports._sfc_main$9=pt;exports.computeAnchoredPosition=ee;exports.getValueByPath=R;exports.nextWindowOrder=le;exports.resolveLabel=F;