vx-vue 1.4.4 → 1.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/style.css +1 -1
- package/dist/vxvue.es.js +608 -615
- package/dist/vxvue.umd.js +1 -1
- package/package.json +18 -17
package/dist/vxvue.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(v,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(v=typeof globalThis<"u"?globalThis:v||self,e(v.vxVue={},v.Vue))})(this,function(v,e){"use strict";function te(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M6.75 2.25A.75.75 0 0 1 7.5 3v1.5h9V3A.75.75 0 0 1 18 3v1.5h.75a3 3 0 0 1 3 3v11.25a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3V7.5a3 3 0 0 1 3-3H6V3a.75.75 0 0 1 .75-.75Zm13.5 9a1.5 1.5 0 0 0-1.5-1.5H5.25a1.5 1.5 0 0 0-1.5 1.5v7.5a1.5 1.5 0 0 0 1.5 1.5h13.5a1.5 1.5 0 0 0 1.5-1.5v-7.5Z","clip-rule":"evenodd"})])}function le(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z","clip-rule":"evenodd"})])}function _(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M7.72 12.53a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 1 1 1.06 1.06L9.31 12l6.97 6.97a.75.75 0 1 1-1.06 1.06l-7.5-7.5Z","clip-rule":"evenodd"})])}function I(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z","clip-rule":"evenodd"})])}function ae(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M11.47 4.72a.75.75 0 0 1 1.06 0l3.75 3.75a.75.75 0 0 1-1.06 1.06L12 6.31 8.78 9.53a.75.75 0 0 1-1.06-1.06l3.75-3.75Zm-3.75 9.75a.75.75 0 0 1 1.06 0L12 17.69l3.22-3.22a.75.75 0 1 1 1.06 1.06l-3.75 3.75a.75.75 0 0 1-1.06 0l-3.75-3.75a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"})])}function oe(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z","clip-rule":"evenodd"})])}function ne(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4.25 12a.75.75 0 0 1 .75-.75h14a.75.75 0 0 1 0 1.5H5a.75.75 0 0 1-.75-.75Z","clip-rule":"evenodd"})])}function re(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z","clip-rule":"evenodd"})])}function R(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.47 5.47a.75.75 0 0 1 1.06 0L12 10.94l5.47-5.47a.75.75 0 1 1 1.06 1.06L13.06 12l5.47 5.47a.75.75 0 1 1-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 0 1-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"})])}const se=["id","disabled","aria-expanded","aria-controls"],ie=["id","aria-labelledby"],ce={class:"overflow-hidden rounded-b"},H=Object.assign({inheritAttrs:!1},{__name:"AccordionPanel",props:{show:Boolean,disabled:Boolean},emits:["select","keyup","keydown"],setup(t,{expose:d,emit:l}){const o=l,a=t,r=e.useAttrs(),u=e.ref(null),i=Math.random().toString(20).substring(2,8),c=n=>{if(!a.disabled){const p=new Map([[40,"keydown"],[38,"keyup"]]).get(n.keyCode);p&&(o(p),n.preventDefault())}};return d({focus:()=>u.value.focus(),disabled:a.disabled}),(n,p)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{id:"ap-control-"+e.unref(i),ref_key:"btn",ref:u,class:e.normalizeClass(["flex items-center w-full space-x-2 px-4 py-2 ring-vxvue",t.show?"rounded-t":"rounded-sm",t.disabled?"bg-slate-300 text-slate-700":"bg-vxvue hover:bg-vxvue-600 text-white",e.unref(r).class]),disabled:t.disabled,"aria-expanded":t.show,"aria-controls":"ap-"+e.unref(i),tabindex:"0",onClick:p[0]||(p[0]=h=>o("select")),onKeydown:c},[t.disabled?(e.openBlock(),e.createBlock(e.unref(R),{key:0,class:"size-5"})):(e.openBlock(),e.createBlock(e.unref(I),{key:1,class:e.normalizeClass(["size-5 transform-gpu transition-transform duration-300",{"rotate-90":t.show}])},null,8,["class"])),e.createElementVNode("span",null,[e.renderSlot(n.$slots,"header")])],42,se),e.createElementVNode("div",{id:"ap-"+e.unref(i),class:e.normalizeClass(["grid transition-[grid-template-rows] duration-300 ease-in-out",t.show&&!t.disabled?"grid-rows-1":"grid-rows-[repeat(1,minmax(0,0fr))]"]),"aria-labelledby":"ap-control-"+e.unref(i)},[e.createElementVNode("div",ce,[e.renderSlot(n.$slots,"default")])],10,ie)]))}}),de={__name:"Accordion",props:{activeIndex:{type:[Number,Array],default:null}},emits:["update:activeIndex"],setup(t,{emit:d}){const l=t,o=d,a=e.useSlots(),r=e.useTemplateRef("panels"),u=e.computed(()=>{const n=[];return a.default().forEach(p=>{p.type===H?n.push(p):typeof p.type=="symbol"&&Array.isArray(p.children)&&p.children.forEach(h=>{h.type===H&&n.push(h)})}),n}),i=n=>{if(Array.isArray(l.activeIndex)){let p=[].concat(l.activeIndex),h=p.findIndex(k=>k===n);h===-1?o("update:activeIndex",[...p,n]):(p.splice(h,1),o("update:activeIndex",p))}else o("update:activeIndex",n===l.activeIndex?-1:n)},c=n=>{if(n=++n%u.value.length,!r.value[n].disabled){i(n),r.value[n].focus();return}c(n)},s=n=>{if(n=(n||u.value.length)-1,!r.value[n].disabled){i(n),r.value[n].focus();return}s(n)};return e.onBeforeUpdate(()=>r.value=[]),(n,p)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(h,k)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(h),{ref_for:!0,ref:"panel",show:Array.isArray(t.activeIndex)?t.activeIndex?.includes(k):t.activeIndex===k,onSelect:g=>i(k),onKeydown:g=>c(k),onKeyup:g=>s(k)},null,40,["show","onSelect","onKeydown","onKeyup"]))),256))}},ue=["viewBox"],me=["cx","cy","r","stroke-width"],fe=["cx","cy","r","stroke-width","stroke-dasharray"],Z={__name:"Spinner",props:{radius:{type:Number,default:10},strokeWidth:{type:Number,default:4}},setup(t){const d=t,l=e.computed(()=>d.radius+d.strokeWidth/2),o=e.computed(()=>d.radius*2+d.strokeWidth),a=e.computed(()=>d.radius*Math.PI/1.5);return(r,u)=>(e.openBlock(),e.createElementBlock("svg",{class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 "+o.value+" "+o.value,role:"progressbar"},[e.createElementVNode("circle",{class:"opacity-35",cx:l.value,cy:l.value,r:t.radius,stroke:"currentColor","stroke-width":t.strokeWidth},null,8,me),e.createElementVNode("circle",{cx:l.value,cy:l.value,r:t.radius,stroke:"currentColor","stroke-width":t.strokeWidth,"stroke-dasharray":a.value+" "+t.radius*100,"stroke-linecap":"round"},null,8,fe)],8,ue))}},U=(t,d)=>{const l=t.__vccOpts||t;for(const[o,a]of d)l[o]=a;return l},O=U({__name:"VxVueTransition",props:{name:{type:String,required:!0,validator:t=>["appear","vert-fade","fade"].includes(t)}},setup(t){return(d,l)=>(e.openBlock(),e.createBlock(e.Transition,{name:t.name},{default:e.withCtx(()=>[e.renderSlot(d.$slots,"default",{},void 0,!0)]),_:3},8,["name"]))}},[["__scopeId","data-v-f6b1631e"]]);function pe(t,d){return e.getCurrentScope()?(e.onScopeDispose(t,d),!0):!1}const he=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const ge=Object.prototype.toString,be=t=>ge.call(t)==="[object Object]",Y=()=>{};function q(t){return Array.isArray(t)?t:[t]}const ke=/[YMDHhms]o|\[([^\]]+)\]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a{1,2}|A{1,2}|m{1,2}|s{1,2}|Z{1,2}|z{1,4}|SSS/g;function ye(t,d,l,o){let a=t<12?"AM":"PM";return o&&(a=a.split("").reduce((r,u)=>r+=`${u}.`,"")),l?a.toLowerCase():a}function P(t){const d=["th","st","nd","rd"],l=t%100;return t+(d[(l-20)%10]||d[l]||d[0])}function G(t,d,l={}){var o;const a=t.getFullYear(),r=t.getMonth(),u=t.getDate(),i=t.getHours(),c=t.getMinutes(),s=t.getSeconds(),n=t.getMilliseconds(),p=t.getDay(),h=(o=l.customMeridiem)!==null&&o!==void 0?o:ye,k=V=>{var b;return(b=V.split(" ")[1])!==null&&b!==void 0?b:""},g={Yo:()=>P(a),YY:()=>String(a).slice(-2),YYYY:()=>a,M:()=>r+1,Mo:()=>P(r+1),MM:()=>`${r+1}`.padStart(2,"0"),MMM:()=>t.toLocaleDateString(e.toValue(l.locales),{month:"short"}),MMMM:()=>t.toLocaleDateString(e.toValue(l.locales),{month:"long"}),D:()=>String(u),Do:()=>P(u),DD:()=>`${u}`.padStart(2,"0"),H:()=>String(i),Ho:()=>P(i),HH:()=>`${i}`.padStart(2,"0"),h:()=>`${i%12||12}`.padStart(1,"0"),ho:()=>P(i%12||12),hh:()=>`${i%12||12}`.padStart(2,"0"),m:()=>String(c),mo:()=>P(c),mm:()=>`${c}`.padStart(2,"0"),s:()=>String(s),so:()=>P(s),ss:()=>`${s}`.padStart(2,"0"),SSS:()=>`${n}`.padStart(3,"0"),d:()=>p,dd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"narrow"}),ddd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"short"}),dddd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"long"}),A:()=>h(i,c),AA:()=>h(i,c,!1,!0),a:()=>h(i,c,!0),aa:()=>h(i,c,!0,!0),z:()=>k(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zz:()=>k(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zzz:()=>k(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zzzz:()=>k(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"longOffset"}))};return d.replace(ke,(V,b)=>{var w,S;return(w=b??((S=g[V])===null||S===void 0?void 0:S.call(g)))!==null&&w!==void 0?w:V})}function xe(t,d,l){return e.watch(t,d,{...l,immediate:!0})}const J=he?window:void 0;function j(t){var d;const l=e.toValue(t);return(d=l?.$el)!==null&&d!==void 0?d:l}function W(...t){const d=[],l=()=>{d.forEach(i=>i()),d.length=0},o=(i,c,s,n)=>(i.addEventListener(c,s,n),()=>i.removeEventListener(c,s,n)),a=e.computed(()=>{const i=q(e.toValue(t[0])).filter(c=>c!=null);return i.every(c=>typeof c!="string")?i:void 0}),r=xe(()=>{var i,c;return[(i=(c=a.value)===null||c===void 0?void 0:c.map(s=>j(s)))!==null&&i!==void 0?i:[J].filter(s=>s!=null),q(e.toValue(a.value?t[1]:t[0])),q(e.unref(a.value?t[2]:t[1])),e.toValue(a.value?t[3]:t[2])]},([i,c,s,n])=>{if(l(),!i?.length||!c?.length||!s?.length)return;const p=be(n)?{...n}:n;d.push(...i.flatMap(h=>c.flatMap(k=>s.map(g=>o(h,k,g,p)))))},{flush:"post"}),u=()=>{r(),l()};return pe(l),u}function K(t,d,l={}){const{window:o=J,ignore:a=[],capture:r=!0,detectIframe:u=!1,controls:i=!1}=l;if(!o)return i?{stop:Y,cancel:Y,trigger:Y}:Y;let c=!0;const s=b=>e.toValue(a).some(w=>{if(typeof w=="string")return Array.from(o.document.querySelectorAll(w)).some(S=>S===b.target||b.composedPath().includes(S));{const S=j(w);return S&&(b.target===S||b.composedPath().includes(S))}});function n(b){const w=e.toValue(b);return w&&w.$.subTree.shapeFlag===16}function p(b,w){const S=e.toValue(b),D=S.$.subTree&&S.$.subTree.children;return D==null||!Array.isArray(D)?!1:D.some(z=>z.el===w.target||w.composedPath().includes(z.el))}const h=b=>{const w=j(t);if(b.target!=null&&!(!(w instanceof Element)&&n(t)&&p(t,b))&&!(!w||w===b.target||b.composedPath().includes(w))){if("detail"in b&&b.detail===0&&(c=!s(b)),!c){c=!0;return}d(b)}};let k=!1;const g=[W(o,"click",b=>{k||(k=!0,setTimeout(()=>{k=!1},0),h(b))},{passive:!0,capture:r}),W(o,"pointerdown",b=>{const w=j(t);c=!s(b)&&!!(w&&!b.composedPath().includes(w))},{passive:!0}),u&&W(o,"blur",b=>{setTimeout(()=>{var w;const S=j(t);((w=o.document.activeElement)===null||w===void 0?void 0:w.tagName)==="IFRAME"&&!S?.contains(o.document.activeElement)&&d(b)},0)},{passive:!0})].filter(Boolean),V=()=>g.forEach(b=>b());return i?{stop:V,cancel:()=>{c=!1},trigger:b=>{c=!0,h(b),c=!1}}:V}const we=["value","onKeydown"],Be={class:"flex absolute inset-y-0 right-0 items-center pr-3 text-vxvue-700"},Ve=["data-result-index"],Ee=Object.assign({inheritAttrs:!1},{__name:"Autocomplete",props:e.mergeModels({search:{type:Function,required:!0},resultListClass:{type:String,default:"result-list"},resultItemClass:{type:String,default:"result-list-item"},getResultValue:{type:Function,default:t=>t},autoSelect:Boolean},{modelValue:{type:String,default:""},modelModifiers:{}}),emits:e.mergeModels(["blur-sm","submit"],["update:modelValue"]),setup(t,{emit:d}){const l=d,o=t,a=e.useModel(t,"modelValue"),r=e.useAttrs(),i=(()=>{let E=0;return C=>(C||"")+ ++E})()((r.id||"autocomplete")+"-"),c=e.ref([]),s=e.ref(-1),n=e.ref(0),p=e.ref(!1),h=e.ref(!1),k=e.ref("top-0 translate-y-12"),g=e.ref(!0),V=e.ref(null),b=e.ref(null),w=e.ref(null),S=e.computed(()=>c.value.map((E,C)=>({id:(r.id||"autocomplete")+"-item-"+C,class:[o.resultItemClass,{"bg-vxvue-700 text-white":s.value===C}],role:"option",...s.value===C?{"aria-selected":"true"}:{}}))),D=e.computed(()=>({role:"combobox",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false","aria-autocomplete":"list","aria-haspopup":"listbox","aria-owns":i,"aria-expanded":p.value?"true":"false","aria-activedescendant":s.value>-1?S.value[s.value].id:"",...r})),z=e.computed(()=>({id:i,class:["absolute min-w-full transform z-[var(--zIndex-dropdown)]",o.resultListClass,k.value],role:"listbox"})),M=()=>{s.value=-1,c.value=[],p.value=!1,g.value=!0},$=E=>{const C=o.search(E);if(C instanceof Promise){const A=++n.value;h.value=!0,C.then(T=>{A===n.value&&(c.value=T,h.value=!1,c.value.length?(s.value=o.autoSelect?0:-1,p.value=!0):M())})}else c.value=C,c.value.length===0?M():(s.value=o.autoSelect?0:-1,p.value=!0)},L=()=>{const E=c.value[s.value];return E&&(a.value=o.getResultValue(E)),M(),E},y=E=>{a.value=E,$(E)},m=E=>$(E.target.value),f=()=>{M(),l("blur-sm")},x=()=>{const E=c.value.length;s.value=((s.value-1)%E+E)%E},B=E=>{p.value||m(E);const C=c.value.length;s.value=((s.value+1)%C+C)%C},N=()=>{M(),a.value=""},F=()=>l("submit",L()),X=E=>{const C=E.target.closest("[data-result-index]");C&&(s.value=parseInt(C.dataset.resultIndex,10),l("submit",L()))};return K(w,M),e.onUpdated(()=>{if(V.value){const E=b.value.getBoundingClientRect(),C=V.value.getBoundingClientRect();g.value&&c.value.length&&(g.value=!1,k.value=E.bottom+C.height>window.innerHeight&&window.innerHeight-E.bottom<E.top&&window.pageYOffset+E.top-C.height>0?"bottom-0 -translate-y-12":"top-0 translate-y-12");const A=V.value.querySelector('[data-result-index="'+s.value+'"]');if(A){let T=A.getBoundingClientRect();T.top<C.top?V.value.scrollTop-=C.top-T.top:T.bottom>C.bottom&&(V.value.scrollTop+=T.bottom-C.bottom)}}}),(E,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:w,class:e.normalizeClass(["inline-block relative",E.$attrs.class])},[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:b,class:"block pr-10 w-full form-input focus:border-vxvue",value:a.value},D.value,{onInput:C[0]||(C[0]=A=>y(A.target.value)),onKeydown:[e.withKeys(F,["enter"]),e.withKeys(N,["esc"]),e.withKeys(L,["tab"]),e.withKeys(e.withModifiers(x,["prevent"]),["up"]),e.withKeys(e.withModifiers(B,["prevent"]),["down"])],onFocus:m,onBlur:f}),null,16,we),e.createElementVNode("span",Be,[h.value?(e.openBlock(),e.createBlock(Z,{key:0,class:"size-5"})):e.createCommentVNode("",!0)]),e.createVNode(O,{name:"fade"},{default:e.withCtx(()=>[c.value.length?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,ref_key:"resultList",ref:V},z.value,{onClick:X,onMousedown:C[1]||(C[1]=e.withModifiers(()=>{},["prevent"]))}),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(A,T)=>(e.openBlock(),e.createElementBlock("div",{"data-result-index":T},[e.renderSlot(E.$slots,"result",{result:A,props:S.value[T]},()=>[(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:S.value[T].id},{ref_for:!0},S.value[T]),e.toDisplayString(t.getResultValue(A)),17))])],8,Ve))),256))],16)):e.createCommentVNode("",!0)]),_:3})],2))}}),ve={key:0,class:"fixed inset-0 z-[calc(var(--zIndex-confirm)-1)] bg-black/50 backdrop-blur-xs","aria-hidden":"true"},Se={key:0,class:"overflow-y-auto fixed inset-0 z-[var(--zIndex-confirm)]"},Ce={class:"flex justify-center items-center min-h-screen text-center sm:block sm:p-0"},Ne={key:0},$e={class:"inline-block text-left align-bottom bg-white rounded-sm shadow-xl transition-all transform sm:my-8 sm:w-full sm:max-w-sm sm:align-middle lg:max-w-lg"},Me={class:"px-4 pb-4 mt-4 sm:px-6 sm:pb-6 sm:mt-5"},De={class:"flex flex-row items-center"},ze={class:"shrink-0"},Te={class:"text-center grow"},Ae=["onClick"],Le={__name:"Confirm",props:{buttons:{type:[Object,Array],default:()=>({label:"Ok"}),validator:t=>Array.isArray(t)&&t.length<=2&&t.filter(d=>d.label!=="undefined"&&d.value!=="undefined").length===t.length||t.label!==void 0&&t.value!==void 0},headerClass:{type:String,default:"text-vxvue-alt-900 bg-vxvue-alt-300"},buttonClass:{type:String,default:"button"}},setup(t,{expose:d}){const l=t,o=e.ref(""),a=e.ref(""),r=e.ref(!1);let u=null,i=null;const c=e.computed(()=>Array.isArray(l.buttons)?l.buttons:[l.buttons]),s=e.ref(null),n=(h,k)=>{r.value=!1,h.value!==void 0?h.value?u():i():k?i():u()};return d({open:(h,k)=>(o.value=h,a.value=k,r.value=!0,e.nextTick(()=>s.value.firstElementChild.focus()),new Promise((g,V)=>{u=g,i=V}))}),(h,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r.value?(e.openBlock(),e.createElementBlock("div",ve)):e.createCommentVNode("",!0),e.createVNode(O,{name:"appear"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",Se,[e.createElementVNode("div",Ce,[r.value?(e.openBlock(),e.createElementBlock("div",Ne,[k[0]||(k[0]=e.createElementVNode("span",{class:"hidden sm:inline-block sm:h-screen sm:align-middle","aria-hidden":"true"},"",-1)),e.createElementVNode("div",$e,[o.value||h.$slots.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(["py-4 pt-4 text-lg font-medium text-center rounded-t-sm sm:py-6",t.headerClass])},[e.renderSlot(h.$slots,"title",{title:o.value},()=>[e.createTextVNode(e.toDisplayString(o.value),1)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",Me,[e.createElementVNode("div",De,[e.createElementVNode("div",ze,[e.renderSlot(h.$slots,"icon")]),e.createElementVNode("p",Te,[e.renderSlot(h.$slots,"default",{message:a.value},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])])]),e.createElementVNode("div",{ref_key:"buttonsContainer",ref:s,class:"flex justify-center mt-5 space-x-2 sm:mt-6"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(g,V)=>(e.openBlock(),e.createElementBlock("button",{key:g.label,class:e.normalizeClass([t.buttonClass,g.class]),onClick:e.withModifiers(b=>n(g,V),["prevent"])},e.toDisplayString(g.label),11,Ae))),128))],512)])])])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:3})],64))}};function Pe(t,d){const l=e.ref(!1),o=e.toValue(d);let a,r=o.toLowerCase().replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),u=[];if((a=o.match(/\bd\b/gi))&&a.length===1)r=r.replace("d","(\\d{1,2})");else if((a=o.match(/\bdd\b/gi))&&a.length===1)r=r.replace("dd","(\\d{2})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("d"),destPos:2}),(a=o.match(/\bm\b/gi))&&a.length===1)r=r.replace("m","(\\d{1,2})");else if((a=o.match(/\bmm\b/gi))&&a.length===1)r=r.replace("mm","(\\d{2})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("m"),destPos:1}),(a=o.match(/\byyyy\b/gi))&&a.length===1)r=r.replace("yyyy","(\\d{4})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("y"),destPos:0}),!(a=e.toValue(t).match(r)))return{date:l};a.shift(),u.sort((n,p)=>n.srcPos<p.srcPos?-1:1);let i=[],c,s;for(;c=a.shift();)s=u.shift(),i[s.destPos]=c;return i=Date.parse(i.join("-")),i&&(i=new Date(i),l.value=new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0)),{date:l}}const Fe={class:"text-vxvue-700"},Ie=["disabled"],Q=Object.assign({inheritAttrs:!1},{__name:"DateInput",props:e.mergeModels({outputFormat:{type:String,default:"YYYY-MM-DD"},inputFormat:{type:String,default:"YYYY-MM-DD"},showToggle:{type:Boolean,default:!1}},{modelValue:{type:Date,default:null},modelModifiers:{}}),emits:e.mergeModels(["toggle-datepicker"],["update:modelValue"]),setup(t,{emit:d}){const l=d,o=t,a=e.useModel(t,"modelValue"),r=e.ref(""),u=e.computed(()=>a.value?G(a.value,o.outputFormat):""),i=e.computed(()=>{let c=Object.assign({},e.useAttrs());return delete c.class,c});return e.watch(a,c=>r.value===c?G(c,o.outputFormat):""),(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",c.$attrs.class])},[e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(["block flex items-center w-full form-input bg-vxvue-50",{"pr-10":t.showToggle}])},[e.createElementVNode("span",Fe,e.toDisplayString(u.value),1),i.value.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"inline-flex justify-center items-center ml-2 rounded-full focus:text-white shrink-0 size-4 text-vxvue hover:bg-vxvue-100 hover:text-vue-700 focus:outline-hidden focus:bg-vxvue-700",onClick:s[0]||(s[0]=n=>a.value=null)},[e.createVNode(e.unref(R),{class:"size-4"})]))],2)],512),[[e.vShow,u.value]]),e.withDirectives(e.createElementVNode("div",null,[e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":s[1]||(s[1]=n=>r.value=n),type:"text",class:["block w-full form-input peer focus:border-vxvue",{"pr-10":t.showToggle}]},i.value,{onBlur:s[2]||(s[2]=n=>a.value=e.unref(Pe)(r.value,o.inputFormat).date?.value||null),onInput:s[3]||(s[3]=e.withModifiers(()=>{},["prevent"]))}),null,16),[[e.vModelText,r.value]])],512),[[e.vShow,!u.value]]),t.showToggle?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"toggleButton",class:e.normalizeClass(["flex absolute inset-y-0 right-0 items-center px-2 text-vxvue-700",i.value.disabled?"cursor-not-allowed":"hover:text-vxvue"]),disabled:i.value.disabled,"aria-label":"datepicker-toggle",onClick:s[4]||(s[4]=e.withModifiers(n=>l("toggle-datepicker"),["stop"]))},[e.createVNode(e.unref(te),{class:"size-6"})],10,Ie)):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}),Oe={class:"flex items-center py-2 px-3 text-white bg-vxvue-700"},je={class:"flex justify-between w-1/2"},_e={class:"flex justify-between w-1/2"},Ye={class:"grid grid-cols-7 gap-0.5 p-0.5"},Re=["disabled","onClick"],He={class:"flex justify-between items-center py-2 px-3 text-white bg-vxvue-700"},Ze={class:"grid grid-cols-2 gap-0.5 p-0.5"},Ue=["onClick"],qe=Object.assign({inheritAttrs:!1},{__name:"Datepicker",props:e.mergeModels({shownMonth:Date,maxNumberOfValues:{type:Number,default:1},validFrom:Date,validUntil:Date,dayNames:{type:Array,default:()=>"S M T W T F S".split(" ")},highlightRange:Boolean,locale:{type:String,default:"default"},startOfWeekIndex:{type:Number,default:0,validator:t=>t===0||t===1},hasInput:{type:Boolean,default:!0}},{modelValue:{type:[Date,Array],default:null,validator:(t,d)=>t instanceof Date&&d.maxNumberOfValues===1||t.every(l=>l instanceof Date||l===null)&&t.length<=d.maxNumberOfValues},modelModifiers:{}}),emits:e.mergeModels(["month-change","year-change"],["update:modelValue"]),setup(t,{emit:d}){const l=t,o=e.useModel(t,"modelValue"),a=d,r=(()=>{const y=new Date;return new Date(y.getFullYear(),y.getMonth(),y.getDate())})(),u=e.ref(null),i=e.ref([]),c=e.ref(!1),s=e.ref("days"),n=e.ref(0),p=e.ref({horiz:"left-0",vert:"top-0"}),h=e.ref(null),k=e.ref(null),g=e.ref(null),V=e.computed(()=>l.hasInput&&l.maxNumberOfValues===1),b=e.computed(()=>{const y=[],m=u.value.getFullYear(),f=u.value.getMonth(),x=new Date(m,f+1,0),B=new Date(m,f,0).getDay()+1-l.startOfWeekIndex,N=(6+l.startOfWeekIndex-x.getDay())%7;for(let F=-B,X=x.getDate()+N;F<X;++F)y.push(new Date(m,f,F+1));return y}),w=e.computed(()=>l.startOfWeekIndex?l.dayNames.slice(1).concat(l.dayNames[0]):l.dayNames),S=y=>{u.value=new Date(u.value.getFullYear(),y,1),a("month-change",u.value)},D=y=>{u.value=new Date(y,u.value.getMonth(),1),a("year-change",u.value)},z=y=>o.value=y,M=y=>{if(c.value=!1,l.maxNumberOfValues===1)o.value=y;else{const m=i.value;let f=m.findIndex(x=>x.getTime()===y.getTime());f!==-1?m.splice(f,1):m.length<l.maxNumberOfValues&&m.push(y),o.value=m}},$=y=>i.value.find(m=>m?.getTime()===y.getTime()),L=y=>{const m=y.getMonth()!==u.value.getMonth(),f=$(y),x=y.getTime()===r.getTime(),B=l.validFrom&&l.validFrom>y||l.validUntil&&l.validUntil<y,N=!f&&l.maxNumberOfValues>1&&i.value.length===l.maxNumberOfValues,F=l.highlightRange&&y>Math.min(...i.value)&&y<Math.max(...i.value);return{"cursor-not-allowed":B||N,"text-vxvue-700":!B&&!m&&!x&&!f,"text-error":B&&!m,"text-gray-400":m&&!x&&!f,"bg-vxvue-alt-300 font-bold":x&&!f,"bg-vxvue-700 text-white":f,"hover:ring-2 hover:ring-vxvue":!B,"bg-vxvue-100/50":F&&!x&&!f}};return K(k,()=>{c.value=!1,s.value="days"},{ignore:[g]}),e.onMounted(()=>g.value=h.value?.$refs.toggleButton),e.watch(c,y=>{y&&V.value&&e.nextTick(()=>{const m=h.value.$el.getBoundingClientRect(),f=k.value.getBoundingClientRect();p.value.horiz=m.right-f.width<0?"left-0":"right-0",p.value.vert=m.bottom+f.height>window.innerHeight?"bottom-0 -translate-y-12":"top-0 translate-y-12"})}),e.watch(o,y=>{if(y)if(Array.isArray(y)){const m=[],f=i.value;y.forEach(x=>{x&&m.push(new Date(x.getFullYear(),x.getMonth(),x.getDate()))}),(m.length!==f.length||![...new Set([...m,...f])].every(x=>m.filter(B=>B.getTime()===x.getTime()).length===f.filter(B=>B.getTime()===x.getTime()).length))&&(i.value=m,u.value=new Date((m[0]||r).getTime()),u.value.setDate(1))}else i.value=[new Date(y.getFullYear(),y.getMonth(),y.getDate())],u.value=new Date(y.getFullYear(),y.getMonth(),1);else i.value=[],u.value=new Date(r.getFullYear(),r.getMonth(),1)},{immediate:!0}),e.watch(()=>l.shownMonth,y=>{u.value=new Date((y||r).getTime()),u.value.setDate(1)},{immediate:!0}),(y,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative",y.$attrs.class])},[V.value?(e.openBlock(),e.createBlock(Q,e.mergeProps({key:0},y.$attrs,{ref_key:"input",ref:h,"model-value":i.value[0],"show-toggle":!0,class:"w-full",onToggleDatepicker:m[0]||(m[0]=f=>c.value=!c.value),"onUpdate:modelValue":z}),{default:e.withCtx(()=>[e.renderSlot(y.$slots,"default")]),_:3},16,["model-value"])):e.createCommentVNode("",!0),e.createVNode(O,{name:"fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"calendar",ref:k,class:e.normalizeClass(["overflow-hidden z-[var(--zIndex-dropdown)] bg-white rounded-sm shadow-md min-w-72 sm:min-w-80",p.value.horiz,p.value.vert,{absolute:V.value}])},[s.value==="days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Oe,[e.createElementVNode("div",je,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[1]||(m[1]=e.withModifiers(f=>S(u.value.getMonth()-1),["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("span",null,e.toDisplayString(u.value.toLocaleString(t.locale,{month:"long"})),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[2]||(m[2]=e.withModifiers(f=>S(u.value.getMonth()+1),["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])]),e.createElementVNode("div",_e,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[3]||(m[3]=e.withModifiers(f=>D(u.value.getFullYear()-1),["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("button",{class:"text-vxvue-100 hover:text-vxvue-50",onClick:m[4]||(m[4]=f=>{s.value="years",n.value=u.value.getFullYear()})},e.toDisplayString(u.value.getFullYear()),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[5]||(m[5]=e.withModifiers(f=>D(u.value.getFullYear()+1),["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])])]),e.createElementVNode("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,(f,x)=>(e.openBlock(),e.createElementBlock("div",{key:x,class:"py-2 text-center bg-gray-200"},e.toDisplayString(f),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,f=>(e.openBlock(),e.createElementBlock("button",{key:f,class:e.normalizeClass(["py-2 rounded-xs block text-center",L(f)]),disabled:t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f||t.maxNumberOfValues>1&&i.value.length===t.maxNumberOfValues&&!$(f),onClick:e.withModifiers(x=>M(f),["stop"])},e.toDisplayString(f.getDate()),11,Re))),128))])],64)):e.createCommentVNode("",!0),s.value==="years"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",He,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[6]||(m[6]=e.withModifiers(f=>n.value-=10,["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("span",null,e.toDisplayString(n.value)+" - "+e.toDisplayString(n.value+9),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[7]||(m[7]=e.withModifiers(f=>n.value+=10,["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])]),e.createElementVNode("div",Ze,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(10,f=>e.createElementVNode("div",{key:f,class:"text-center hover:ring-2 text-vxvue-700 hover:ring-vxvue"},[e.createElementVNode("button",{class:"py-2 px-3",onClick:e.withModifiers(x=>{D(n.value+f-1),s.value="days"},["stop"])},e.toDisplayString(n.value+f-1),9,Ue)])),64))])],64)):e.createCommentVNode("",!0)],2),[[e.vShow,c.value]])]),_:1})],2))}}),We=["for"],Ke=["id","multiple","accept"],Xe={__name:"FormFileButton",props:e.mergeModels({accept:{type:String,default:"*"},multiple:{type:Boolean,default:!1},name:{type:String,default:"file"},id:{type:String,default:"form-file-button-"+Math.ceil(Math.random()*1e3)}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:e.mergeModels(["form-data"],["update:modelValue"]),setup(t,{emit:d}){const l=d,o=t,a=e.useModel(t,"modelValue"),r=i=>{const c=new FormData;for(let s of i)c.append(o.name,s,s.name);return c},u=i=>{const c=i.target.files||i.dataTransfer.files;if(c){const s=Array.from(c);a.value=s,l("form-data",r(s))}};return(i,c)=>(e.openBlock(),e.createElementBlock("label",{for:t.id},[e.renderSlot(i.$slots,"default",{},()=>[c[0]||(c[0]=e.createTextVNode("Upload",-1))]),e.createElementVNode("input",{id:t.id,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:u},null,40,Ke)],8,We))}},Ge={key:0,value:null,disabled:"",hidden:""},Je=["selected","value"],ee={__name:"FormSelect",props:e.mergeModels({options:{type:Array,default:()=>[]},placeholder:{type:String,default:null}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const d=e.useModel(t,"modelValue");return(l,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("select",e.mergeProps(l.$attrs,{"onUpdate:modelValue":o[0]||(o[0]=a=>d.value=a),class:"form-select"}),[t.placeholder?(e.openBlock(),e.createElementBlock("option",Ge,e.toDisplayString(t.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,a=>(e.openBlock(),e.createElementBlock("option",{key:a.key!==void 0?a.key:a.label||a,selected:(a.key!==void 0?a.key:a.label||a)===d.value,value:a.key!==void 0?a.key:a.label||a},e.toDisplayString(a.label||a),9,Je))),128))],16)),[[e.vModelSelect,d.value]])}},Qe=["aria-checked","aria-label"],et=["d"],tt={__name:"FormSwitch",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const d=e.useModel(t,"modelValue"),l=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a}),o=e.computed(()=>e.useAttrs().disabled||e.useAttrs().disabled==="");return(a,r)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.$attrs.class),tabindex:"0"},[e.createElementVNode("span",{role:"switch",class:e.normalizeClass(["inline-flex relative shrink-0 w-11 p-[2px] rounded-full transition-colors duration-200 ease-in-out cursor-pointer focus:ring-2 focus:ring-offset-2 focus:outline-hidden focus:ring-vxvue",o.value?"bg-slate-200":d.value?"bg-vxvue":"bg-slate-300"]),"aria-checked":d.value,"aria-label":a.$attrs["aria-label"]},[e.createElementVNode("span",{"aria-hidden":"true",class:e.normalizeClass(["block relative size-5 rounded-full transition duration-200 ease-in-out transform pointer-events-none",d.value?"translate-x-5":"translate-x-0",o.value?"bg-slate-100":"bg-white"])},[e.renderSlot(a.$slots,"handle",{},()=>[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"6",stroke:"currentColor",class:e.normalizeClass(["absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-3",d.value&&!o.value?"text-vxvue":"text-slate-300"])},[e.createElementVNode("path",{"stroke-linecap":"round",d:d.value?"M12 18 V6":"m18.5 12 c0 3.5 -3 6.5 -6.5 6.5 -3.5 0 -6.5 -3 -6.5 -6.5 0 -3.5 3 -6.5 6.5 -6.5 3.5 0 6.5 3 6.5 6.5z"},null,8,et)],2))])],2),e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":r[0]||(r[0]=u=>d.value=u)},l.value,{class:"hidden",value:"1",type:"checkbox"}),null,16),[[e.vModelCheckbox,d.value]])],10,Qe),e.renderSlot(a.$slots,"default")],2))}},lt={"aria-live":"assertive",class:"flex fixed inset-0 items-start py-6 px-4 pointer-events-none sm:p-6 z-[var(--zIndex-toast)]"},at={class:"flex flex-col items-center space-y-4 w-full"},ot={class:"p-4"},nt={class:"flex items-start"},rt={class:"shrink-0"},st={class:"flex-1 pt-0.5 ml-3 w-0"},it={class:"font-bold"},ct={class:"mt-1"},dt={class:"flex ml-4 shrink-0"},ut=Object.assign({inheritAttrs:!1},{__name:"MessageToast",props:{title:{type:String,default:""},message:{type:[String,Array],default:null},timeout:{type:Number,default:5e3},active:{type:Boolean,default:!1},showTimeoutProgress:{type:Boolean,default:!1}},emits:["timeout","close"],setup(t,{emit:d}){const l=t,o=d,a=e.computed(()=>typeof l.message=="string"?[l.message]:l.message),r=e.ref(0);let u=null;const i=()=>{window.clearTimeout(u),r.value=100,l.active&&l.timeout&&(u=window.setTimeout(()=>{o("timeout")},l.timeout),window.setTimeout(()=>r.value=0,0))};return e.watch(()=>l.active,i),e.onMounted(i),(c,s)=>(e.openBlock(),e.createElementBlock("div",lt,[e.createElementVNode("div",at,[e.createVNode(O,{name:"vert-fade"},{default:e.withCtx(()=>[t.active?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["overflow-hidden w-full max-w-sm rounded-md ring-1 shadow-lg pointer-events-auto ring-black/5",c.$attrs.class])},[e.createElementVNode("div",ot,[e.createElementVNode("div",nt,[e.createElementVNode("div",rt,[e.renderSlot(c.$slots,"icon")]),e.createElementVNode("div",st,[e.renderSlot(c.$slots,"title",{},()=>[e.createElementVNode("div",it,e.toDisplayString(t.title),1)]),e.renderSlot(c.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,n=>(e.openBlock(),e.createElementBlock("p",ct,e.toDisplayString(n),1))),256))])]),e.createElementVNode("div",dt,[e.createElementVNode("button",{class:"inline-flex text-white focus:ring-2 bg-black/20 rounded-xs hover:text-stone-200 focus:outline-hidden focus:ring-stone-200",onClick:s[0]||(s[0]=n=>o("close"))},[s[1]||(s[1]=e.createElementVNode("span",{class:"sr-only"},"Close",-1)),e.createVNode(e.unref(R),{class:"size-5"})])])])]),t.showTimeoutProgress&&t.timeout?(e.openBlock(),e.createElementBlock("div",{key:0,class:"h-1 transition-all ease-linear bg-vxvue-alt",style:e.normalizeStyle({width:r.value+"%","transition-duration":t.timeout+"ms"}),role:"progressbar","aria-hidden":"false","aria-label":"notification timer"},null,4)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})])]))}}),mt={key:0,class:"fixed inset-0 z-[calc(var(--zIndex-modal)-1)] bg-white/50 backdrop-blur-xs","aria-hidden":"true"},ft={key:0,class:"fixed inset-0 z-[var(--zIndex-modal)]"},pt={class:"flex justify-center items-center h-screen"},ht={__name:"Modal",props:{show:Boolean,containerClass:{type:String,default:"mx-4 w-full lg:w-1/2 xl:w-1/4 max-h-[90vh]"},headerClass:{type:String,default:""},contentClass:{type:String,default:""}},emits:["clicked-outside"],setup(t,{emit:d}){const l=d,o=e.ref(null);return K(o,()=>l("clicked-outside")),(a,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.show?(e.openBlock(),e.createElementBlock("div",mt)):e.createCommentVNode("",!0),e.createVNode(O,{name:"appear"},{default:e.withCtx(()=>[t.show?(e.openBlock(),e.createElementBlock("div",ft,[e.createElementVNode("div",pt,[e.createElementVNode("div",{ref_key:"container",ref:o,class:e.normalizeClass(["flex flex-col overflow-hidden max-w-full bg-white rounded-sm ring-1 ring-black/10 shadow-xl transition-all transform xl:max-w-(--breakpoint-xl)",t.containerClass])},[e.createElementVNode("div",{class:e.normalizeClass(["grow-0",t.headerClass])},[e.renderSlot(a.$slots,"title")],2),e.createElementVNode("div",{class:e.normalizeClass(["overflow-y-auto h-full",t.contentClass])},[e.renderSlot(a.$slots,"default")],2)],2)])])):e.createCommentVNode("",!0)]),_:3})],64))}},gt={class:"flex justify-between items-center px-4 sm:px-0"},bt={class:"flex flex-1 -mt-px w-0"},kt=["disabled"],yt={class:"hidden md:flex md:-mt-px"},xt={class:"flex flex-1 justify-end -mt-px w-0"},wt=["disabled"],Bt={__name:"Pagination",props:{page:{type:Number,default:1},total:{type:Number,default:1},perPage:{type:Number,default:20,validator:t=>t>=1},showNavButtons:{type:Boolean,default:!0},prevText:{type:String,default:"Previous"},nextText:{type:String,default:"Next"},showAllPages:{type:Boolean,default:!1},markerPosition:{type:String,default:"above",validator:t=>["above","below"].includes(t)}},emits:["update:page"],setup(t,{emit:d}){const l=d,o=t,a=e.ref(Math.ceil(o.total/o.perPage)),r=e.ref(null),u=e.computed(()=>(o.markerPosition==="above"?"border-t-4 -mt-[4px]":"border-b-4 -mb-[4px]")+" py-4"),i=e.computed(()=>{let n=[1];if(o.showAllPages||a.value<=7){for(let p=2;p<=a.value;++p)n.push(p);return n}return r.value>=a.value?n.push("dots",r.value-2,r.value-1):r.value-1&&r.value-1>1&&(r.value>1&&n.push("dots"),n.push(r.value-1)),r.value>1&&n.push(r.value),r.value+1<a.value&&(n.push(r.value+1),r.value<=1&&n.push(r.value+2),r.value+2<a.value&&n.push("dots")),r.value<a.value&&n.push(a.value),n}),c=()=>{r.value>1&&l("update:page",r.value-1)},s=()=>{r.value<a.value&&l("update:page",r.value+1)};return e.watch(()=>o.page,n=>r.value=Math.min(Math.max(n,1),a.value),{immediate:!0}),e.watch(()=>o.perPage,n=>{a.value=Math.ceil(o.total/o.perPage),l("update:page",1)}),e.watch(()=>o.total,n=>{a.value=Math.ceil(o.total/o.perPage),r.value>a.value&&l("update:page",a.value)}),(n,p)=>(e.openBlock(),e.createElementBlock("nav",gt,[e.createElementVNode("div",bt,[t.showNavButtons?(e.openBlock(),e.createElementBlock("button",{key:0,disabled:r.value<=1,class:e.normalizeClass([r.value<=1?"pointer-events-none text-gray-500":"text-vxvue-700","inline-flex items-center pr-1 text-sm border-transparent hover:text-vxvue"]),onClick:c},[e.createVNode(e.unref(_),{class:"size-5"}),e.createTextVNode(" "+e.toDisplayString(t.prevText),1)],10,kt)):e.createCommentVNode("",!0)]),e.createElementVNode("div",yt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(h,k)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.page!=="dots"?"button":"span"),{key:k,class:e.normalizeClass([{"pointer-events-none":h==="dots"},h===r.value?"border-vxvue text-vxvue font-bold":"border-transparent text-gray-500 hover:border-gray-300",u.value,"inline-flex items-center px-4 text-sm"]),onClick:g=>h!=="dots"?l("update:page",h):null},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(h!=="dots"?h:"…"),1)]),_:2},1032,["class","onClick"]))),128))]),e.createElementVNode("div",xt,[t.showNavButtons?(e.openBlock(),e.createElementBlock("button",{key:0,disabled:r.value>=a.value,class:e.normalizeClass([r.value>=a.value?"pointer-events-none text-gray-500":"text-vxvue-700","inline-flex items-center pr-1 text-sm border-transparent hover:text-vxvue"]),onClick:s},[e.createTextVNode(e.toDisplayString(t.nextText)+" ",1),e.createVNode(e.unref(I),{class:"size-5"})],10,wt)):e.createCommentVNode("",!0)])]))}};function Vt(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.98 8.223A10.477 10.477 0 0 0 1.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.451 10.451 0 0 1 12 4.5c4.756 0 8.773 3.162 10.065 7.498a10.522 10.522 0 0 1-4.293 5.774M6.228 6.228 3 3m3.228 3.228 3.65 3.65m7.894 7.894L21 21m-3.228-3.228-3.65-3.65m0 0a3 3 0 1 0-4.243-4.243m4.242 4.242L9.88 9.88"})])}function Et(t,d){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.036 12.322a1.012 1.012 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178Z"}),e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"})])}const vt=["type"],St=["disabled"],Ct=Object.assign({inheritAttrs:!1},{__name:"PasswordInput",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const d=e.useModel(t,"modelValue"),l=e.ref(!1),o=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a});return(a,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("inline-block relative "+e.useAttrs().class)},[e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":r[0]||(r[0]=u=>d.value=u),type:l.value?"text":"password"},o.value,{class:"block pr-12 w-full form-input peer"}),null,16,vt),[[e.vModelDynamic,d.value]]),e.createElementVNode("button",{class:"flex absolute inset-y-0 right-0 items-center px-3 text-brand-700 hover:text-brand","aria-label":"show-password-toggle",disabled:e.useAttrs().disabled??!1,onClick:r[1]||(r[1]=e.withModifiers(u=>l.value=!l.value,["stop"]))},[l.value?(e.openBlock(),e.createBlock(e.unref(Vt),{key:0,class:"size-5"})):(e.openBlock(),e.createBlock(e.unref(Et),{key:1,class:"size-5"}))],8,St)],2))}}),Nt={class:"flex items-center pb-1"},$t={key:0,class:"ml-6"},Mt=Object.assign({inheritAttrs:!1},{__name:"SimpleTree",props:e.mergeModels({branch:{type:Object,default:()=>({})}},{modelValue:{type:Object,default:null},modelModifiers:{}}),emits:e.mergeModels(["expand"],["update:modelValue"]),setup(t,{emit:d}){const l=t,o=d,a=e.useModel(t,"modelValue"),r=e.ref(!1);return e.onMounted(()=>{l.branch===a.value&&o("expand",!0)}),(u,i)=>{const c=e.resolveComponent("simple-tree",!0);return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([!t.branch.branches||!t.branch.branches.length?"terminates":"",u.$attrs.class])},[e.createElementVNode("div",Nt,[t.branch.branches&&t.branch.branches.length?(e.openBlock(),e.createElementBlock("button",{key:0,class:"mr-2",onClick:i[0]||(i[0]=s=>r.value=!r.value)},[e.renderSlot(u.$slots,"toggle",{branch:t.branch,expanded:r.value},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value?e.unref(ne):e.unref(re)),{class:"p-0.5 text-white rounded size-5 bg-vxvue-700 hover:bg-vxvue"}))])])):e.createCommentVNode("",!0),t.branch===a.value?e.renderSlot(u.$slots,"label-selected",{key:1,branch:t.branch},()=>[e.createElementVNode("strong",null,e.toDisplayString(t.branch.label),1)]):(e.openBlock(),e.createElementBlock("button",{key:2,onClick:i[1]||(i[1]=s=>a.value=t.branch)},[e.renderSlot(u.$slots,"label",{branch:t.branch},()=>[e.createTextVNode(e.toDisplayString(t.branch.label),1)])]))]),t.branch.branches&&t.branch.branches.length?e.withDirectives((e.openBlock(),e.createElementBlock("div",$t,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.branch.branches,s=>(e.openBlock(),e.createBlock(c,{key:s.id||s.key||null,branch:s,modelValue:a.value,"onUpdate:modelValue":i[2]||(i[2]=n=>a.value=n),onExpand:i[3]||(i[3]=n=>{r.value=n,o("expand",n)})},e.createSlots({_:2},[e.renderList(u.$slots,(n,p)=>({name:p,fn:e.withCtx(h=>[e.renderSlot(u.$slots,p,e.mergeProps({ref_for:!0},h))])}))]),1032,["branch","modelValue"]))),128))],512)),[[e.vShow,r.value]]):e.createCommentVNode("",!0)],2)}}}),Dt={__name:"Sizable",props:{vertical:Boolean},emits:["dragStart","dragStop"],setup(t,{emit:d}){const l=t,o=d,a=e.ref(null),r=e.ref(null);let u=!1,i={},c=null,s=null,n=null;const p=g=>{if(u){g.preventDefault();const{pageX:V,pageY:b}=g.touches?.[0]??g;l.vertical?a.value.style.height=Math.min(s.height-n.height-(c.y-s.y),Math.max(0,c.height+b-i.y))+"px":a.value.style.width=Math.min(s.width-n.width-(c.x-s.x),Math.max(0,c.width+V-i.x))+"px"}},h=g=>{g.preventDefault(),g.currentTarget.focus(),u=!0;const{pageX:V,pageY:b}=g.touches?.[0]??g;i={x:V,y:b},n=r.value.getBoundingClientRect(),c=a.value.getBoundingClientRect(),s=a.value.parentElement.getBoundingClientRect(),g.type==="mousedown"?(document.addEventListener("mousemove",p),document.addEventListener("mouseup",k)):(document.addEventListener("touchmove",p),document.addEventListener("touchend",k)),o("dragStart")},k=g=>{u&&(u=!1,g.type==="mouseup"?(document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",k)):(document.removeEventListener("touchmove",p),document.removeEventListener("touchend",k)),setTimeout(()=>o("dragStop"),0))};return(g,V)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"box",ref:a,class:"relative"},[e.renderSlot(g.$slots,"default"),e.createElementVNode("div",e.mergeProps({ref_key:"handle",ref:r,class:["absolute flex",l.vertical?"inset-x-0 top-full justify-center py-1 cursor-ns-resize":"inset-y-0 left-full items-center px-1 cursor-ew-resize"]},e.toHandlers({touchstart:h,mousedown:h,touchend:k,mouseup:k},!0)),[e.renderSlot(g.$slots,"handle",{},()=>[e.createElementVNode("div",{class:e.normalizeClass(["rounded-full bg-vxvue",l.vertical?"h-1.5 w-8":"h-8 w-1.5"])},null,2)])],16)],512))}},zt=["aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext"],Tt=["id"],At=["id","aria-label"],Lt=U(Object.assign({inheritAttrs:!1},{__name:"Slider",props:e.mergeModels({min:{type:Number,default:0},max:{type:Number,default:100},vertical:Boolean,disabled:Boolean,showTooltip:{type:String,default:"never",validator:t=>["always","focus","never"].includes(t)},formatTooltip:{type:Function,default:t=>String(t)}},{modelValue:{type:[Number,Array],default:null,validator(t){return typeof t=="number"||t.every(d=>typeof d=="number")}},modelModifiers:{}}),emits:e.mergeModels(["dragStart","dragStop"],["update:modelValue"]),setup(t,{emit:d}){const l=t,o=e.useModel(t,"modelValue"),a=d,r=e.useAttrs(),u={x:null,y:null},i={w:null,h:null};let c=!1;const s=e.ref(null),n=e.ref(0),p=e.ref({class:(l.vertical?"left-0 -translate-x-1.5 translate-y-2.5":"top-0 -translate-x-2.5 -translate-y-1.5")+" group touch-none absolute size-5 rounded-full border-2 bg-white transition-colors duration-200 "+(l.disabled?"":" focus:ring-4 focus:outline-hidden border-vxvue cursor-grab hover:bg-vxvue focus:ring-vxvue/50"),tabindex:0}),h=e.ref(null),k=e.ref(null),g=e.computed(()=>{const m=l.max,f=l.min;return o.value instanceof Array?o.value.map(x=>(Math.max(Math.min(x,m),f)-f)*100/(m-f)):(Math.max(Math.min(o.value,m),f)-f)*100/(m-f)}),V=e.computed(()=>{if(o.value instanceof Array){const m=Math.min(...g.value)+"%",f=Math.max(...g.value)-Math.min(...g.value)+"%";return l.vertical?{bottom:m,height:f}:{left:m,width:f}}return l.vertical?{bottom:0,height:g.value+"%"}:{width:g.value+"%"}}),b=m=>{if(l.showTooltip!=="never"&&h.value){let f=(k.value.length?k.value[0]:k.value).getBoundingClientRect()[l.vertical?"left":"top"],x=0;h.value.length?h.value.forEach(N=>x=Math.max(N.getBoundingClientRect()[l.vertical?"width":"height"],x)):x=h.value.getBoundingClientRect()[l.vertical?"height":"width"];let B="tooltip "+(l.showTooltip==="focus"?"tooltip-focused ":"");l.vertical?B+=f<x+10?"tooltip-right":"tooltip-left":B+=f<x+10?"tooltip-bottom":"tooltip-top",o.value.length?h.value.forEach(N=>N.className=B):h.value.className=B}},w=m=>{let f=parseFloat(m.toFixed(10));f=Math.min(l.max,Math.max(l.min,f)),o.value instanceof Array?o.value[n.value]=f:o.value=f},S=m=>{const{pageX:f,pageY:x}=m.touches?m.touches[0]:m,B=l.vertical?(-x+u.y)/i.h:(f-u.x)/i.w;w(Math.floor((l.max-l.min)*B+l.min))},D=()=>{const{clientLeft:m,clientTop:f,scrollLeft:x,scrollTop:B}=document.documentElement,N=s.value.getBoundingClientRect();u.x=N.left+x-m,u.y=N.bottom+B-f,i.w=s.value.offsetWidth,i.h=s.value.offsetHeight},z=m=>{c&&(m.preventDefault(),S(m))},M=m=>{m.preventDefault(),m.currentTarget.focus(),D(),c=!0,m.type==="mousedown"?(document.addEventListener("mousemove",z),document.addEventListener("mouseup",$)):(document.addEventListener("touchmove",z),document.addEventListener("touchend",$)),a("dragStart")},$=m=>{c&&(c=!1,m.type==="mouseup"?(document.removeEventListener("mousemove",z),document.removeEventListener("mouseup",$)):(document.removeEventListener("touchmove",z),document.removeEventListener("touchend",$)),setTimeout(()=>a("dragStop"),0))},L=m=>{m.keyCode>=33&&m.keyCode<=40&&m.preventDefault();const f=o.value[n.value]??o.value;switch(m.keyCode){case 37:case 40:w(f-1);break;case 39:case 38:w(f+1);break;case 33:w(f+(l.max-l.min)/10);break;case 34:w(f-(l.max-l.min)/10);break;case 36:w(l.min);break;case 35:w(l.max)}},y=m=>{D(),S(m)};return e.onUpdated(b),e.onMounted(b),(m,f)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({ref_key:"track",ref:s,class:["relative bg-slate-300",t.vertical?"h-full w-2 rounded-t-full rounded-b-full":"w-full h-2 rounded-r-full rounded-l-full"],role:"slider","aria-label":"slider-thumb","aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":o.value[0]??o.value,"aria-valuetext":o.value},e.toHandlers(t.disabled?{}:{click:y},!0)),[t.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute bg-vxvue",t.vertical?"w-full rounded-t-full rounded-b-full":"h-full rounded-r-full rounded-l-full"]),style:e.normalizeStyle(V.value)},null,6)),o.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(o.value,(x,B)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({id:B?null:e.unref(r).id,style:t.vertical?{bottom:g.value[B]+"%"}:{left:g.value[B]+"%"},"aria-label":"slider-thumb-"+(B+1)},{ref_for:!0},p.value,e.toHandlers(t.disabled?{}:{focus:()=>n.value=B,keydown:L,touchstart:N=>{n.value=B,M(N)},mousedown:N=>{n.value=B,M(N)},touchend:$,mouseup:$},!0),{ref_for:!0,ref_key:"handle",ref:k}),[t.showTooltip!=="never"?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-focused":t.showTooltip==="focus"},t.vertical?"tooltip-left":"tooltip-top"]),ref_for:!0,ref_key:"tooltip",ref:h},[e.renderSlot(m.$slots,"tooltip",{value:x,ndx:B},()=>[e.createTextVNode(e.toDisplayString(t.formatTooltip(x)),1)],!0)],2)):e.createCommentVNode("",!0)],16,At))),256)):(e.openBlock(),e.createElementBlock("button",e.mergeProps({key:1,id:e.unref(r).id,style:t.vertical?{bottom:g.value+"%"}:{left:g.value+"%"},"aria-label":"slider-thumb"},p.value,e.toHandlers(t.disabled?{}:{focus:()=>n.value=0,keydown:L,touchstart:x=>{n.value=0,M(x)},mousedown:x=>{n.value=0,M(x)},touchend:$,mouseup:$},!0),{ref_key:"handle",ref:k}),[t.showTooltip!=="never"?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-focused":t.showTooltip==="focus"},t.vertical?"tooltip-left":"tooltip-top"]),ref_key:"tooltip",ref:h},[e.renderSlot(m.$slots,"tooltip",{value:o.value},()=>[e.createTextVNode(e.toDisplayString(t.formatTooltip(o.value)),1)],!0)],2)):e.createCommentVNode("",!0)],16,Tt))],16,zt))}}),[["__scopeId","data-v-995282a3"]]),Pt=["data-active","onClick"],Ft={class:"flex items-center space-x-1"},It=["data-active"],Ot={__name:"Sortable",props:{columns:{type:Array,required:!0,validator:t=>{for(const d of t)if(d.label===void 0||d.prop===void 0)return!1;return!0}},rows:{type:Array,required:!0},offset:{type:Number,default:null},count:{type:Number,default:null},sortProp:{type:String,default:null},sortDirection:{type:String,default:null,validator:t=>!t||["asc","desc"].includes(t)},keyProperty:{type:String,default:"key"},headerClass:{type:String,default:"text-white bg-vxvue-700 [&_*[data-active]]:bg-vxvue-alt-800"},bodyClass:{type:String,default:"[&>*:nth-child(even)]:bg-vxvue-50 [&>*:nth-child(even)_*[data-active]]:bg-vxvue-alt-100 [&>*:nth-child(odd)_*[data-active]]:bg-vxvue-alt-50"}},emits:["before-sort","after-sort"],setup(t,{emit:d}){const l=t,o=d,a=e.ref(l.sortProp),r=e.ref(l.sortDirection),u=e.computed(()=>{let c=l.rows.slice();const s=l.columns.find(({prop:n})=>n===a.value);return s&&(r.value==="asc"&&s.sortAscFunction?c.sort(s.sortAscFunction):r.value==="desc"&&s.sortDescFunction?c.sort(s.sortDescFunction):c.sort((n,p)=>n[a.value]<p[a.value]?r.value==="asc"?-1:1:n[a.value]>p[a.value]?r.value==="asc"?1:-1:0)),c.slice(l.offset||0,(l.offset||0)+(l.count||c.length))}),i=c=>{o("before-sort",{prop:a.value,dir:r.value}),a.value===c?r.value=r.value==="asc"?"desc":"asc":(a.value=c,r.value=r.value||"asc"),e.nextTick(()=>o("after-sort",{prop:a.value,dir:r.value}))};return(c,s)=>(e.openBlock(),e.createElementBlock("table",{class:e.normalizeClass(c.$attrs.class||"w-full divide-y divide-y-slate-900 table-fixed")},[e.createElementVNode("thead",{class:e.normalizeClass(t.headerClass)},[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,n=>(e.openBlock(),e.createElementBlock("th",{key:n.prop,scope:"col","data-active":a.value===n.prop?"active":null,class:e.normalizeClass(["py-3 px-6 text-left",{"cursor-pointer":n.sortable},n.cssClass]),onClick:p=>n.sortable?i(n.prop):null},[e.renderSlot(c.$slots,n.prop+"-header",{column:n,sortDir:r.value,sortProp:a.value},()=>[e.createElementVNode("div",Ft,[e.createElementVNode("span",null,e.toDisplayString(n.label),1),n.sortable?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value!==n.prop?e.unref(ae):r.value==="asc"?e.unref(le):e.unref(oe)),{key:0,class:"size-4"})):e.createCommentVNode("",!0)])])],10,Pt))),128))])],2),e.createElementVNode("tbody",{class:e.normalizeClass(t.bodyClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,n=>(e.openBlock(),e.createElementBlock("tr",{key:n[t.keyProperty],class:e.normalizeClass(n.cssClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,p=>(e.openBlock(),e.createElementBlock("td",{key:p.prop,"data-active":a.value===p.prop?"active":null,class:"overflow-hidden py-3 px-6 whitespace-nowrap text-ellipsis"},[e.renderSlot(c.$slots,p.prop,{row:n},()=>[e.createTextVNode(e.toDisplayString(n[p.prop]),1)])],8,It))),128))],2))),128))],2)],2))}},jt={class:"flex items-center space-x-2"},_t=["disabled"],Yt=U(Object.assign({inheritAttrs:!1},{__name:"SubmitButton",props:{busy:Boolean,spinnerClass:{type:String,default:null},theme:{type:String,default:null}},emits:["submit"],setup(t,{emit:d}){const l=d;return(o,a)=>(e.openBlock(),e.createElementBlock("div",jt,[e.createElementVNode("button",{class:e.normalizeClass([o.$attrs.class,t.theme]),disabled:o.$attrs.disabled||t.busy,type:"button",onClick:a[0]||(a[0]=r=>l("submit"))},[e.renderSlot(o.$slots,"default",{},void 0,!0)],10,_t),t.busy?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(t.spinnerClass||["size-5",{error:"text-error",success:"text-success",default:"text-vxvue"}[t.theme||"default"]])},null,8,["class"])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-e81b6076"]]),Rt={class:"sm:hidden"},Ht={class:"hidden sm:block"},Zt={class:"border-b border-gray-200"},Ut={class:"flex -mb-px space-x-8","aria-label":"Tabs"},qt=["aria-current","onClick"],Wt={__name:"Tabs",props:{items:{type:Array,default:()=>[]},activeIndex:{type:Number,default:0}},emits:["update:activeIndex"],setup(t,{emit:d}){const l=t,o=d,a=e.ref(l.items[l.activeIndex]||{}),r=e.computed(()=>{let i=[];return l.items.forEach((c,s)=>{c.disabled||i.push({label:c.name,key:s})}),i});e.watch(()=>l.activeIndex,i=>{a.value=l.items[i]||{}});const u=i=>{i.disabled||(a.value=i,o("update:activeIndex",l.items.indexOf(i)))};return(i,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Rt,[e.createVNode(ee,{options:r.value,"model-value":t.activeIndex,class:"w-full","onUpdate:modelValue":c[0]||(c[0]=s=>o("update:activeIndex",s))},null,8,["options","model-value"])]),e.createElementVNode("div",Ht,[e.createElementVNode("div",Zt,[e.createElementVNode("nav",Ut,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,s=>(e.openBlock(),e.createElementBlock("a",{key:s.name,href:"#",class:e.normalizeClass(["group inline-flex items-center py-4 px-1 border-b-4 font-medium no-underline! border-transparent",{"border-vxvue text-vxvue":a.value===s,"cursor-not-allowed text-gray-400":s.disabled,"text-gray-900 hover:text-vxvue-600 hover:border-vxvue-600":a.value!==s&&!s.disabled}]),"aria-current":a.value===s?"page":void 0,onClick:e.withModifiers(n=>u(s),["prevent"])},[e.renderSlot(i.$slots,"icon",{tab:s}),e.createElementVNode("span",null,[e.renderSlot(i.$slots,"default",{tab:s},()=>[e.createTextVNode(e.toDisplayString(s.name),1)])]),e.renderSlot(i.$slots,"badge",{tab:s},()=>[s.badge?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["hidden ml-3 py-0.5 px-2.5 rounded-full text-xs font-medium md:inline-block text-current",{"bg-gray-100":s.disabled,"bg-vxvue-50":a.value===s,"bg-gray-200":a.value!==s&&!s.disabled}])},e.toDisplayString(s.badge),3)):e.createCommentVNode("",!0)])],10,qt))),128))])])])],64))}},Kt={mounted:t=>t.focus()},Xt={mounted:(t,d)=>{if(!["INPUT","TEXTAREA"].includes(t.nodeName)){let l=t.querySelector('input:not([type]),input[type="text"],input[type="search"],input[type="email"],input[type="password"],input[type="url"],input[type="tel"]');l||(l=t.querySelector("textarea")),t=l}if(t){if(t.querySelector("label"))throw new Error("VFloatingLabel directive: LABEL element found.");const l=Math.random().toString(36).substring(2),o=document.createElement("div");o.classList.add("relative","isolate");const a=document.createElement("label");a.classList.add(..."absolute px-2 left-1 top-2 scale-90 text-sm z-[var(--zIndex-label)] origin-[0] bg-white -translate-y-4 transform-gpu duration-200".split(" "),..."peer-focus:top-2 peer-focus:scale-90 peer-focus:-translate-y-full".split(" "),..."peer-placeholder-shown:scale-100 peer-placeholder-shown:-translate-y-1/2".split(" "),t.nodeName==="TEXTAREA"?"peer-placeholder-shown:top-4":"peer-placeholder-shown:top-1/2"),d.value?.invalid?a.classList.add("text-error","peer-focus:text-error"):a.classList.add("peer-focus:text-blue-600"),t.getAttribute("required")!==null&&a.classList.add("required"),a.setAttribute("for",t.getAttribute("id")||l+"-element"),a.innerHTML=d.value?.label||t.getAttribute("placeholder")||l+"-label",t.classList.add("peer"),t.setAttribute("placeholder"," "),t.setAttribute("id",t.getAttribute("id")||l+"-element"),t.parentElement.replaceChild(o,t),o.appendChild(t),o.appendChild(a)}},updated:(t,d)=>{const l=t.parentNode.querySelector("label");if(!l)return;const o=t.getAttribute("placeholder")?.trim();l.innerHTML=d.value?.label||o||l.innerHTML,o&&t.setAttribute("placeholder"," "),d.value?.invalid?(l.classList.add("text-error","peer-focus:text-error"),l.classList.remove("peer-focus:text-blue-600")):(l.classList.remove("text-error","peer-focus:text-error"),l.classList.add("peer-focus:text-blue-600")),l.classList[t.getAttribute("required")!==null?"add":"remove"]("required")}};v.Accordion=de,v.AccordionPanel=H,v.Autocomplete=Ee,v.Confirm=Le,v.DateInput=Q,v.Datepicker=qe,v.FormFileButton=Xe,v.FormSelect=ee,v.FormSwitch=tt,v.MessageToast=ut,v.Modal=ht,v.Pagination=Bt,v.PasswordInput=Ct,v.SimpleTree=Mt,v.Sizable=Dt,v.Slider=Lt,v.Sortable=Ot,v.Spinner=Z,v.SubmitButton=Yt,v.Tabs=Wt,v.VFloatingLabel=Xt,v.VFocus=Kt,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(v,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(v=typeof globalThis<"u"?globalThis:v||self,e(v.vxVue={},v.Vue))})(this,(function(v,e){"use strict";function te(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M6.75 2.25A.75.75 0 0 1 7.5 3v1.5h9V3A.75.75 0 0 1 18 3v1.5h.75a3 3 0 0 1 3 3v11.25a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3V7.5a3 3 0 0 1 3-3H6V3a.75.75 0 0 1 .75-.75Zm13.5 9a1.5 1.5 0 0 0-1.5-1.5H5.25a1.5 1.5 0 0 0-1.5 1.5v7.5a1.5 1.5 0 0 0 1.5 1.5h13.5a1.5 1.5 0 0 0 1.5-1.5v-7.5Z","clip-rule":"evenodd"})])}function le(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z","clip-rule":"evenodd"})])}function _(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M7.72 12.53a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 1 1 1.06 1.06L9.31 12l6.97 6.97a.75.75 0 1 1-1.06 1.06l-7.5-7.5Z","clip-rule":"evenodd"})])}function I(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z","clip-rule":"evenodd"})])}function ae(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M11.47 4.72a.75.75 0 0 1 1.06 0l3.75 3.75a.75.75 0 0 1-1.06 1.06L12 6.31 8.78 9.53a.75.75 0 0 1-1.06-1.06l3.75-3.75Zm-3.75 9.75a.75.75 0 0 1 1.06 0L12 17.69l3.22-3.22a.75.75 0 1 1 1.06 1.06l-3.75 3.75a.75.75 0 0 1-1.06 0l-3.75-3.75a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"})])}function oe(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z","clip-rule":"evenodd"})])}function ne(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4.25 12a.75.75 0 0 1 .75-.75h14a.75.75 0 0 1 0 1.5H5a.75.75 0 0 1-.75-.75Z","clip-rule":"evenodd"})])}function re(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z","clip-rule":"evenodd"})])}function R(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.47 5.47a.75.75 0 0 1 1.06 0L12 10.94l5.47-5.47a.75.75 0 1 1 1.06 1.06L13.06 12l5.47 5.47a.75.75 0 1 1-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 0 1-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"})])}const se=["id","disabled","aria-expanded","aria-controls"],ie={class:"flex items-center space-x-2"},ce=["id","aria-labelledby"],de={class:"overflow-hidden rounded-b"},H=Object.assign({inheritAttrs:!1},{__name:"AccordionPanel",props:{show:Boolean,disabled:Boolean},emits:["select","keyup","keydown"],setup(t,{expose:i,emit:l}){const o=l,a=t,n=e.useAttrs(),u=e.ref(null),d=Math.random().toString(20).substring(2,8),c=r=>{if(!a.disabled){const p=new Map([[40,"keydown"],[38,"keyup"]]).get(r.keyCode);p&&(o(p),r.preventDefault())}};return i({focus:()=>u.value.focus(),disabled:a.disabled}),(r,p)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{id:"ap-control-"+e.unref(d),ref_key:"btn",ref:u,class:e.normalizeClass(["flex justify-between items-center w-full px-4 py-2",t.show?"rounded-t":"rounded-sm",t.disabled?"bg-slate-300 text-slate-700":"bg-vxvue hover:bg-vxvue-600 text-white",e.unref(n).class]),disabled:t.disabled,"aria-expanded":t.show,"aria-controls":"ap-"+e.unref(d),tabindex:"0",onClick:p[0]||(p[0]=h=>o("select")),onKeydown:c},[e.createElementVNode("span",ie,[t.disabled?(e.openBlock(),e.createBlock(e.unref(R),{key:0,class:"size-5"})):(e.openBlock(),e.createBlock(e.unref(I),{key:1,class:e.normalizeClass(["size-5 transform-gpu transition-transform duration-300",{"rotate-90":t.show}])},null,8,["class"])),e.createElementVNode("span",null,[e.renderSlot(r.$slots,"header")])]),e.renderSlot(r.$slots,"actions")],42,se),e.createElementVNode("div",{id:"ap-"+e.unref(d),class:e.normalizeClass(["grid transition-[grid-template-rows] duration-300 ease-in-out",t.show&&!t.disabled?"grid-rows-1":"grid-rows-[repeat(1,minmax(0,0fr))]"]),"aria-labelledby":"ap-control-"+e.unref(d)},[e.createElementVNode("div",de,[e.renderSlot(r.$slots,"default")])],10,ce)]))}}),ue={__name:"Accordion",props:{activeIndex:{type:[Number,Array],default:null}},emits:["update:activeIndex"],setup(t,{emit:i}){const l=t,o=i,a=e.useSlots(),n=e.useTemplateRef("panels"),u=e.computed(()=>{const r=[];return a.default().forEach(p=>{p.type===H?r.push(p):typeof p.type=="symbol"&&Array.isArray(p.children)&&p.children.forEach(h=>{h.type===H&&r.push(h)})}),r}),d=r=>{if(Array.isArray(l.activeIndex)){let p=[].concat(l.activeIndex),h=p.findIndex(b=>b===r);h===-1?o("update:activeIndex",[...p,r]):(p.splice(h,1),o("update:activeIndex",p))}else o("update:activeIndex",r===l.activeIndex?-1:r)},c=r=>{if(r=++r%u.value.length,!n.value[r].disabled){d(r),n.value[r].focus();return}c(r)},s=r=>{if(r=(r||u.value.length)-1,!n.value[r].disabled){d(r),n.value[r].focus();return}s(r)};return e.onBeforeUpdate(()=>n.value=[]),(r,p)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(h,b)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(h),{ref_for:!0,ref:"panel",show:Array.isArray(t.activeIndex)?t.activeIndex?.includes(b):t.activeIndex===b,onSelect:k=>d(b),onKeydown:k=>c(b),onKeyup:k=>s(b)},null,40,["show","onSelect","onKeydown","onKeyup"]))),256))}},me=["viewBox"],fe=["cx","cy","r","stroke-width"],pe=["cx","cy","r","stroke-width","stroke-dasharray"],Z={__name:"Spinner",props:{radius:{type:Number,default:10},strokeWidth:{type:Number,default:4}},setup(t){const i=t,l=e.computed(()=>i.radius+i.strokeWidth/2),o=e.computed(()=>i.radius*2+i.strokeWidth),a=e.computed(()=>i.radius*Math.PI/1.5);return(n,u)=>(e.openBlock(),e.createElementBlock("svg",{class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 "+o.value+" "+o.value,role:"progressbar"},[e.createElementVNode("circle",{class:"opacity-35",cx:l.value,cy:l.value,r:t.radius,stroke:"currentColor","stroke-width":t.strokeWidth},null,8,fe),e.createElementVNode("circle",{cx:l.value,cy:l.value,r:t.radius,stroke:"currentColor","stroke-width":t.strokeWidth,"stroke-dasharray":a.value+" "+t.radius*100,"stroke-linecap":"round"},null,8,pe)],8,me))}},U=(t,i)=>{const l=t.__vccOpts||t;for(const[o,a]of i)l[o]=a;return l},O=U({__name:"VxVueTransition",props:{name:{type:String,required:!0,validator:t=>["appear","vert-fade","fade"].includes(t)}},setup(t){return(i,l)=>(e.openBlock(),e.createBlock(e.Transition,{name:t.name},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default",{},void 0,!0)]),_:3},8,["name"]))}},[["__scopeId","data-v-f6b1631e"]]),he=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const ge=Object.prototype.toString,be=t=>ge.call(t)==="[object Object]",Y=()=>{};function q(t){return Array.isArray(t)?t:[t]}const ke=/[YMDHhms]o|\[([^\]]+)\]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a{1,2}|A{1,2}|m{1,2}|s{1,2}|Z{1,2}|z{1,4}|SSS/g;function ye(t,i,l,o){let a=t<12?"AM":"PM";return o&&(a=a.split("").reduce((n,u)=>n+=`${u}.`,"")),l?a.toLowerCase():a}function P(t){const i=["th","st","nd","rd"],l=t%100;return t+(i[(l-20)%10]||i[l]||i[0])}function G(t,i,l={}){var o;const a=t.getFullYear(),n=t.getMonth(),u=t.getDate(),d=t.getHours(),c=t.getMinutes(),s=t.getSeconds(),r=t.getMilliseconds(),p=t.getDay(),h=(o=l.customMeridiem)!==null&&o!==void 0?o:ye,b=V=>{var g;return(g=V.split(" ")[1])!==null&&g!==void 0?g:""},k={Yo:()=>P(a),YY:()=>String(a).slice(-2),YYYY:()=>a,M:()=>n+1,Mo:()=>P(n+1),MM:()=>`${n+1}`.padStart(2,"0"),MMM:()=>t.toLocaleDateString(e.toValue(l.locales),{month:"short"}),MMMM:()=>t.toLocaleDateString(e.toValue(l.locales),{month:"long"}),D:()=>String(u),Do:()=>P(u),DD:()=>`${u}`.padStart(2,"0"),H:()=>String(d),Ho:()=>P(d),HH:()=>`${d}`.padStart(2,"0"),h:()=>`${d%12||12}`.padStart(1,"0"),ho:()=>P(d%12||12),hh:()=>`${d%12||12}`.padStart(2,"0"),m:()=>String(c),mo:()=>P(c),mm:()=>`${c}`.padStart(2,"0"),s:()=>String(s),so:()=>P(s),ss:()=>`${s}`.padStart(2,"0"),SSS:()=>`${r}`.padStart(3,"0"),d:()=>p,dd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"narrow"}),ddd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"short"}),dddd:()=>t.toLocaleDateString(e.toValue(l.locales),{weekday:"long"}),A:()=>h(d,c),AA:()=>h(d,c,!1,!0),a:()=>h(d,c,!0),aa:()=>h(d,c,!0,!0),z:()=>b(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zz:()=>b(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zzz:()=>b(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"shortOffset"})),zzzz:()=>b(t.toLocaleDateString(e.toValue(l.locales),{timeZoneName:"longOffset"}))};return i.replace(ke,(V,g)=>{var w,S;return(w=g??((S=k[V])===null||S===void 0?void 0:S.call(k)))!==null&&w!==void 0?w:V})}function xe(t,i,l){return e.watch(t,i,{...l,immediate:!0})}const J=he?window:void 0;function j(t){var i;const l=e.toValue(t);return(i=l?.$el)!==null&&i!==void 0?i:l}function W(...t){const i=(o,a,n,u)=>(o.addEventListener(a,n,u),()=>o.removeEventListener(a,n,u)),l=e.computed(()=>{const o=q(e.toValue(t[0])).filter(a=>a!=null);return o.every(a=>typeof a!="string")?o:void 0});return xe(()=>{var o,a;return[(o=(a=l.value)===null||a===void 0?void 0:a.map(n=>j(n)))!==null&&o!==void 0?o:[J].filter(n=>n!=null),q(e.toValue(l.value?t[1]:t[0])),q(e.unref(l.value?t[2]:t[1])),e.toValue(l.value?t[3]:t[2])]},([o,a,n,u],d,c)=>{if(!o?.length||!a?.length||!n?.length)return;const s=be(u)?{...u}:u,r=o.flatMap(p=>a.flatMap(h=>n.map(b=>i(p,h,b,s))));c(()=>{r.forEach(p=>p())})},{flush:"post"})}function K(t,i,l={}){const{window:o=J,ignore:a=[],capture:n=!0,detectIframe:u=!1,controls:d=!1}=l;if(!o)return d?{stop:Y,cancel:Y,trigger:Y}:Y;let c=!0;const s=g=>e.toValue(a).some(w=>{if(typeof w=="string")return Array.from(o.document.querySelectorAll(w)).some(S=>S===g.target||g.composedPath().includes(S));{const S=j(w);return S&&(g.target===S||g.composedPath().includes(S))}});function r(g){const w=e.toValue(g);return w&&w.$.subTree.shapeFlag===16}function p(g,w){const S=e.toValue(g),D=S.$.subTree&&S.$.subTree.children;return D==null||!Array.isArray(D)?!1:D.some(z=>z.el===w.target||w.composedPath().includes(z.el))}const h=g=>{const w=j(t);if(g.target!=null&&!(!(w instanceof Element)&&r(t)&&p(t,g))&&!(!w||w===g.target||g.composedPath().includes(w))){if("detail"in g&&g.detail===0&&(c=!s(g)),!c){c=!0;return}i(g)}};let b=!1;const k=[W(o,"click",g=>{b||(b=!0,setTimeout(()=>{b=!1},0),h(g))},{passive:!0,capture:n}),W(o,"pointerdown",g=>{const w=j(t);c=!s(g)&&!!(w&&!g.composedPath().includes(w))},{passive:!0}),u&&W(o,"blur",g=>{setTimeout(()=>{var w;const S=j(t);((w=o.document.activeElement)===null||w===void 0?void 0:w.tagName)==="IFRAME"&&!S?.contains(o.document.activeElement)&&i(g)},0)},{passive:!0})].filter(Boolean),V=()=>k.forEach(g=>g());return d?{stop:V,cancel:()=>{c=!1},trigger:g=>{c=!0,h(g),c=!1}}:V}const we=["value","onKeydown"],Be={class:"flex absolute inset-y-0 right-0 items-center pr-3 text-vxvue-700"},Ve=["data-result-index"],Ee=Object.assign({inheritAttrs:!1},{__name:"Autocomplete",props:e.mergeModels({search:{type:Function,required:!0},resultListClass:{type:String,default:"result-list"},resultItemClass:{type:String,default:"result-list-item"},getResultValue:{type:Function,default:t=>t},autoSelect:Boolean},{modelValue:{type:String,default:""},modelModifiers:{}}),emits:e.mergeModels(["blur-sm","submit"],["update:modelValue"]),setup(t,{emit:i}){const l=i,o=t,a=e.useModel(t,"modelValue"),n=e.useAttrs(),d=(()=>{let E=0;return N=>(N||"")+ ++E})()((n.id||"autocomplete")+"-"),c=e.ref([]),s=e.ref(-1),r=e.ref(0),p=e.ref(!1),h=e.ref(!1),b=e.ref("top-0 translate-y-12"),k=e.ref(!0),V=e.ref(null),g=e.ref(null),w=e.ref(null),S=e.computed(()=>c.value.map((E,N)=>({id:(n.id||"autocomplete")+"-item-"+N,class:[o.resultItemClass,{"bg-vxvue-700 text-white":s.value===N}],role:"option",...s.value===N?{"aria-selected":"true"}:{}}))),D=e.computed(()=>({role:"combobox",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false","aria-autocomplete":"list","aria-haspopup":"listbox","aria-owns":d,"aria-expanded":p.value?"true":"false","aria-activedescendant":s.value>-1?S.value[s.value].id:"",...n})),z=e.computed(()=>({id:d,class:["absolute min-w-full transform z-[var(--zIndex-dropdown)]",o.resultListClass,b.value],role:"listbox"})),M=()=>{s.value=-1,c.value=[],p.value=!1,k.value=!0},$=E=>{const N=o.search(E);if(N instanceof Promise){const A=++r.value;h.value=!0,N.then(T=>{A===r.value&&(c.value=T,h.value=!1,c.value.length?(s.value=o.autoSelect?0:-1,p.value=!0):M())})}else c.value=N,c.value.length===0?M():(s.value=o.autoSelect?0:-1,p.value=!0)},L=()=>{const E=c.value[s.value];return E&&(a.value=o.getResultValue(E)),M(),E},y=E=>{a.value=E,$(E)},m=E=>$(E.target.value),f=()=>{M(),l("blur-sm")},x=()=>{const E=c.value.length;s.value=((s.value-1)%E+E)%E},B=E=>{p.value||m(E);const N=c.value.length;s.value=((s.value+1)%N+N)%N},C=()=>{M(),a.value=""},F=()=>l("submit",L()),X=E=>{const N=E.target.closest("[data-result-index]");N&&(s.value=parseInt(N.dataset.resultIndex,10),l("submit",L()))};return K(w,M),e.onUpdated(()=>{if(V.value){const E=g.value.getBoundingClientRect(),N=V.value.getBoundingClientRect();k.value&&c.value.length&&(k.value=!1,b.value=E.bottom+N.height>window.innerHeight&&window.innerHeight-E.bottom<E.top&&window.pageYOffset+E.top-N.height>0?"bottom-0 -translate-y-12":"top-0 translate-y-12");const A=V.value.querySelector('[data-result-index="'+s.value+'"]');if(A){let T=A.getBoundingClientRect();T.top<N.top?V.value.scrollTop-=N.top-T.top:T.bottom>N.bottom&&(V.value.scrollTop+=T.bottom-N.bottom)}}}),(E,N)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:w,class:e.normalizeClass(["inline-block relative",E.$attrs.class])},[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:g,class:"block pr-10 w-full form-input focus:border-vxvue",value:a.value},D.value,{onInput:N[0]||(N[0]=A=>y(A.target.value)),onKeydown:[e.withKeys(F,["enter"]),e.withKeys(C,["esc"]),e.withKeys(L,["tab"]),e.withKeys(e.withModifiers(x,["prevent"]),["up"]),e.withKeys(e.withModifiers(B,["prevent"]),["down"])],onFocus:m,onBlur:f}),null,16,we),e.createElementVNode("span",Be,[h.value?(e.openBlock(),e.createBlock(Z,{key:0,class:"size-5"})):e.createCommentVNode("",!0)]),e.createVNode(O,{name:"fade"},{default:e.withCtx(()=>[c.value.length?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,ref_key:"resultList",ref:V},z.value,{onClick:X,onMousedown:N[1]||(N[1]=e.withModifiers(()=>{},["prevent"]))}),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(A,T)=>(e.openBlock(),e.createElementBlock("div",{"data-result-index":T},[e.renderSlot(E.$slots,"result",{result:A,props:S.value[T]},()=>[(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:S.value[T].id},{ref_for:!0},S.value[T]),e.toDisplayString(t.getResultValue(A)),17))])],8,Ve))),256))],16)):e.createCommentVNode("",!0)]),_:3})],2))}}),ve={key:0,class:"fixed inset-0 z-[calc(var(--zIndex-confirm)-1)] bg-black/50 backdrop-blur-xs","aria-hidden":"true"},Se={key:0,class:"overflow-y-auto fixed inset-0 z-[var(--zIndex-confirm)]"},Ne={class:"flex justify-center items-center min-h-screen text-center sm:block sm:p-0"},Ce={key:0},$e={class:"inline-block text-left align-bottom bg-white rounded-sm shadow-xl transition-all transform sm:my-8 sm:w-full sm:max-w-sm sm:align-middle lg:max-w-lg"},Me={class:"px-4 pb-4 mt-4 sm:px-6 sm:pb-6 sm:mt-5"},De={class:"flex flex-row items-center"},ze={class:"shrink-0"},Te={class:"text-center grow"},Ae=["onClick"],Le={__name:"Confirm",props:{buttons:{type:[Object,Array],default:()=>({label:"Ok"}),validator:t=>Array.isArray(t)&&t.length<=2&&t.filter(i=>i.label!=="undefined"&&i.value!=="undefined").length===t.length||t.label!==void 0&&t.value!==void 0},headerClass:{type:String,default:"text-vxvue-alt-900 bg-vxvue-alt-300"},buttonClass:{type:String,default:"button"}},setup(t,{expose:i}){const l=t,o=e.ref(""),a=e.ref(""),n=e.ref(!1);let u=null,d=null;const c=e.computed(()=>Array.isArray(l.buttons)?l.buttons:[l.buttons]),s=e.ref(null),r=(h,b)=>{n.value=!1,h.value!==void 0?h.value?u():d():b?d():u()};return i({open:(h,b)=>(o.value=h,a.value=b,n.value=!0,e.nextTick(()=>s.value.firstElementChild.focus()),new Promise((k,V)=>{u=k,d=V}))}),(h,b)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n.value?(e.openBlock(),e.createElementBlock("div",ve)):e.createCommentVNode("",!0),e.createVNode(O,{name:"appear"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",Se,[e.createElementVNode("div",Ne,[n.value?(e.openBlock(),e.createElementBlock("div",Ce,[b[0]||(b[0]=e.createElementVNode("span",{class:"hidden sm:inline-block sm:h-screen sm:align-middle","aria-hidden":"true"},"",-1)),e.createElementVNode("div",$e,[o.value||h.$slots.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(["py-4 pt-4 text-lg font-medium text-center rounded-t-sm sm:py-6",t.headerClass])},[e.renderSlot(h.$slots,"title",{title:o.value},()=>[e.createTextVNode(e.toDisplayString(o.value),1)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",Me,[e.createElementVNode("div",De,[e.createElementVNode("div",ze,[e.renderSlot(h.$slots,"icon")]),e.createElementVNode("p",Te,[e.renderSlot(h.$slots,"default",{message:a.value},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])])]),e.createElementVNode("div",{ref_key:"buttonsContainer",ref:s,class:"flex justify-center mt-5 space-x-2 sm:mt-6"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(k,V)=>(e.openBlock(),e.createElementBlock("button",{key:k.label,class:e.normalizeClass([t.buttonClass,k.class]),onClick:e.withModifiers(g=>r(k,V),["prevent"])},e.toDisplayString(k.label),11,Ae))),128))],512)])])])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:3})],64))}};function Pe(t,i){const l=e.ref(!1),o=e.toValue(i);let a,n=o.toLowerCase().replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),u=[];if((a=o.match(/\bd\b/gi))&&a.length===1)n=n.replace("d","(\\d{1,2})");else if((a=o.match(/\bdd\b/gi))&&a.length===1)n=n.replace("dd","(\\d{2})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("d"),destPos:2}),(a=o.match(/\bm\b/gi))&&a.length===1)n=n.replace("m","(\\d{1,2})");else if((a=o.match(/\bmm\b/gi))&&a.length===1)n=n.replace("mm","(\\d{2})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("m"),destPos:1}),(a=o.match(/\byyyy\b/gi))&&a.length===1)n=n.replace("yyyy","(\\d{4})");else return{date:l};if(u.push({srcPos:o.toLowerCase().indexOf("y"),destPos:0}),!(a=e.toValue(t).match(n)))return{date:l};a.shift(),u.sort((r,p)=>r.srcPos<p.srcPos?-1:1);let d=[],c,s;for(;c=a.shift();)s=u.shift(),d[s.destPos]=c;return d=Date.parse(d.join("-")),d&&(d=new Date(d),l.value=new Date(d.getFullYear(),d.getMonth(),d.getDate(),0,0,0)),{date:l}}const Fe={class:"text-vxvue-700"},Ie=["disabled"],Q=Object.assign({inheritAttrs:!1},{__name:"DateInput",props:e.mergeModels({outputFormat:{type:String,default:"YYYY-MM-DD"},inputFormat:{type:String,default:"YYYY-MM-DD"},showToggle:{type:Boolean,default:!1}},{modelValue:{type:Date,default:null},modelModifiers:{}}),emits:e.mergeModels(["toggle-datepicker"],["update:modelValue"]),setup(t,{emit:i}){const l=i,o=t,a=e.useModel(t,"modelValue"),n=e.ref(""),u=e.computed(()=>a.value?G(a.value,o.outputFormat):""),d=e.computed(()=>{let c=Object.assign({},e.useAttrs());return delete c.class,c});return e.watch(a,c=>n.value===c?G(c,o.outputFormat):""),(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",c.$attrs.class])},[e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(["block flex items-center w-full form-input bg-vxvue-50",{"pr-10":t.showToggle}])},[e.createElementVNode("span",Fe,e.toDisplayString(u.value),1),d.value.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"inline-flex justify-center items-center ml-2 rounded-full focus:text-white shrink-0 size-4 text-vxvue hover:bg-vxvue-100 hover:text-vue-700 focus:outline-hidden focus:bg-vxvue-700",onClick:s[0]||(s[0]=r=>a.value=null)},[e.createVNode(e.unref(R),{class:"size-4"})]))],2)],512),[[e.vShow,u.value]]),e.withDirectives(e.createElementVNode("div",null,[e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":s[1]||(s[1]=r=>n.value=r),type:"text",class:["block w-full form-input peer focus:border-vxvue",{"pr-10":t.showToggle}]},d.value,{onBlur:s[2]||(s[2]=r=>a.value=e.unref(Pe)(n.value,o.inputFormat).date?.value||null),onInput:s[3]||(s[3]=e.withModifiers(()=>{},["prevent"]))}),null,16),[[e.vModelText,n.value]])],512),[[e.vShow,!u.value]]),t.showToggle?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"toggleButton",class:e.normalizeClass(["flex absolute inset-y-0 right-0 items-center px-2 text-vxvue-700",d.value.disabled?"cursor-not-allowed":"hover:text-vxvue"]),disabled:d.value.disabled,"aria-label":"datepicker-toggle",onClick:s[4]||(s[4]=e.withModifiers(r=>l("toggle-datepicker"),["stop"]))},[e.createVNode(e.unref(te),{class:"size-6"})],10,Ie)):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}),Oe={class:"flex items-center py-2 px-3 text-white bg-vxvue-700"},je={class:"flex justify-between w-1/2"},_e={class:"flex justify-between w-1/2"},Ye={class:"grid grid-cols-7 gap-0.5 p-0.5"},Re=["disabled","onClick"],He={class:"flex justify-between items-center py-2 px-3 text-white bg-vxvue-700"},Ze={class:"grid grid-cols-2 gap-0.5 p-0.5"},Ue=["onClick"],qe=Object.assign({inheritAttrs:!1},{__name:"Datepicker",props:e.mergeModels({shownMonth:Date,maxNumberOfValues:{type:Number,default:1},validFrom:Date,validUntil:Date,dayNames:{type:Array,default:(()=>"S M T W T F S".split(" "))},highlightRange:Boolean,locale:{type:String,default:"default"},startOfWeekIndex:{type:Number,default:0,validator:t=>t===0||t===1},hasInput:{type:Boolean,default:!0}},{modelValue:{type:[Date,Array],default:null,validator:((t,i)=>t instanceof Date&&i.maxNumberOfValues===1||t.every(l=>l instanceof Date||l===null)&&t.length<=i.maxNumberOfValues)},modelModifiers:{}}),emits:e.mergeModels(["month-change","year-change"],["update:modelValue"]),setup(t,{emit:i}){const l=t,o=e.useModel(t,"modelValue"),a=i,n=(()=>{const y=new Date;return new Date(y.getFullYear(),y.getMonth(),y.getDate())})(),u=e.ref(null),d=e.ref([]),c=e.ref(!1),s=e.ref("days"),r=e.ref(0),p=e.ref({horiz:"left-0",vert:"top-0"}),h=e.ref(null),b=e.ref(null),k=e.ref(null),V=e.computed(()=>l.hasInput&&l.maxNumberOfValues===1),g=e.computed(()=>{const y=[],m=u.value.getFullYear(),f=u.value.getMonth(),x=new Date(m,f+1,0),B=new Date(m,f,0).getDay()+1-l.startOfWeekIndex,C=(6+l.startOfWeekIndex-x.getDay())%7;for(let F=-B,X=x.getDate()+C;F<X;++F)y.push(new Date(m,f,F+1));return y}),w=e.computed(()=>l.startOfWeekIndex?l.dayNames.slice(1).concat(l.dayNames[0]):l.dayNames),S=y=>{u.value=new Date(u.value.getFullYear(),y,1),a("month-change",u.value)},D=y=>{u.value=new Date(y,u.value.getMonth(),1),a("year-change",u.value)},z=y=>o.value=y,M=y=>{if(c.value=!1,l.maxNumberOfValues===1)o.value=y;else{const m=d.value;let f=m.findIndex(x=>x.getTime()===y.getTime());f!==-1?m.splice(f,1):m.length<l.maxNumberOfValues&&m.push(y),o.value=m}},$=y=>d.value.find(m=>m?.getTime()===y.getTime()),L=y=>{const m=y.getMonth()!==u.value.getMonth(),f=$(y),x=y.getTime()===n.getTime(),B=l.validFrom&&l.validFrom>y||l.validUntil&&l.validUntil<y,C=!f&&l.maxNumberOfValues>1&&d.value.length===l.maxNumberOfValues,F=l.highlightRange&&y>Math.min(...d.value)&&y<Math.max(...d.value);return{"cursor-not-allowed":B||C,"text-vxvue-700":!B&&!m&&!x&&!f,"text-error":B&&!m,"text-gray-400":m&&!x&&!f,"bg-vxvue-alt-300 font-bold":x&&!f,"bg-vxvue-700 text-white":f,"hover:ring-2 hover:ring-vxvue":!B,"bg-vxvue-100/50":F&&!x&&!f}};return K(b,()=>{c.value=!1,s.value="days"},{ignore:[k]}),e.onMounted(()=>k.value=h.value?.$refs.toggleButton),e.watch(c,y=>{y&&V.value&&e.nextTick(()=>{const m=h.value.$el.getBoundingClientRect(),f=b.value.getBoundingClientRect();p.value.horiz=m.right-f.width<0?"left-0":"right-0",p.value.vert=m.bottom+f.height>window.innerHeight?"bottom-0 -translate-y-12":"top-0 translate-y-12"})}),e.watch(o,y=>{if(y)if(Array.isArray(y)){const m=[],f=d.value;y.forEach(x=>{x&&m.push(new Date(x.getFullYear(),x.getMonth(),x.getDate()))}),(m.length!==f.length||![...new Set([...m,...f])].every(x=>m.filter(B=>B.getTime()===x.getTime()).length===f.filter(B=>B.getTime()===x.getTime()).length))&&(d.value=m,u.value=new Date((m[0]||n).getTime()),u.value.setDate(1))}else d.value=[new Date(y.getFullYear(),y.getMonth(),y.getDate())],u.value=new Date(y.getFullYear(),y.getMonth(),1);else d.value=[],u.value=new Date(n.getFullYear(),n.getMonth(),1)},{immediate:!0}),e.watch(()=>l.shownMonth,y=>{u.value=new Date((y||n).getTime()),u.value.setDate(1)},{immediate:!0}),(y,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative",y.$attrs.class])},[V.value?(e.openBlock(),e.createBlock(Q,e.mergeProps({key:0},y.$attrs,{ref_key:"input",ref:h,"model-value":d.value[0],"show-toggle":!0,class:"w-full",onToggleDatepicker:m[0]||(m[0]=f=>c.value=!c.value),"onUpdate:modelValue":z}),{default:e.withCtx(()=>[e.renderSlot(y.$slots,"default")]),_:3},16,["model-value"])):e.createCommentVNode("",!0),e.createVNode(O,{name:"fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"calendar",ref:b,class:e.normalizeClass(["overflow-hidden z-[var(--zIndex-dropdown)] bg-white rounded-sm shadow-md min-w-72 sm:min-w-80",p.value.horiz,p.value.vert,{absolute:V.value}])},[s.value==="days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Oe,[e.createElementVNode("div",je,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[1]||(m[1]=e.withModifiers(f=>S(u.value.getMonth()-1),["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("span",null,e.toDisplayString(u.value.toLocaleString(t.locale,{month:"long"})),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[2]||(m[2]=e.withModifiers(f=>S(u.value.getMonth()+1),["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])]),e.createElementVNode("div",_e,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[3]||(m[3]=e.withModifiers(f=>D(u.value.getFullYear()-1),["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("button",{class:"text-vxvue-100 hover:text-vxvue-50",onClick:m[4]||(m[4]=f=>{s.value="years",r.value=u.value.getFullYear()})},e.toDisplayString(u.value.getFullYear()),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[5]||(m[5]=e.withModifiers(f=>D(u.value.getFullYear()+1),["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])])]),e.createElementVNode("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,(f,x)=>(e.openBlock(),e.createElementBlock("div",{key:x,class:"py-2 text-center bg-gray-200"},e.toDisplayString(f),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,f=>(e.openBlock(),e.createElementBlock("button",{key:f,class:e.normalizeClass(["py-2 rounded-xs block text-center",L(f)]),disabled:t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f||t.maxNumberOfValues>1&&d.value.length===t.maxNumberOfValues&&!$(f),onClick:e.withModifiers(x=>M(f),["stop"])},e.toDisplayString(f.getDate()),11,Re))),128))])],64)):e.createCommentVNode("",!0),s.value==="years"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",He,[e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[6]||(m[6]=e.withModifiers(f=>r.value-=10,["stop"]))},[e.createVNode(e.unref(_),{class:"size-6"})]),e.createElementVNode("span",null,e.toDisplayString(r.value)+" - "+e.toDisplayString(r.value+9),1),e.createElementVNode("button",{class:"shrink-0 text-vxvue-100 hover:text-vxvue-50",onClick:m[7]||(m[7]=e.withModifiers(f=>r.value+=10,["stop"]))},[e.createVNode(e.unref(I),{class:"size-6"})])]),e.createElementVNode("div",Ze,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(10,f=>e.createElementVNode("div",{key:f,class:"text-center hover:ring-2 text-vxvue-700 hover:ring-vxvue"},[e.createElementVNode("button",{class:"py-2 px-3",onClick:e.withModifiers(x=>{D(r.value+f-1),s.value="days"},["stop"])},e.toDisplayString(r.value+f-1),9,Ue)])),64))])],64)):e.createCommentVNode("",!0)],2),[[e.vShow,c.value]])]),_:1})],2))}}),We=["for"],Ke=["id","multiple","accept"],Xe={__name:"FormFileButton",props:e.mergeModels({accept:{type:String,default:"*"},multiple:{type:Boolean,default:!1},name:{type:String,default:"file"},id:{type:String,default:"form-file-button-"+Math.ceil(Math.random()*1e3)}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:e.mergeModels(["form-data"],["update:modelValue"]),setup(t,{emit:i}){const l=i,o=t,a=e.useModel(t,"modelValue"),n=d=>{const c=new FormData;for(let s of d)c.append(o.name,s,s.name);return c},u=d=>{const c=d.target.files||d.dataTransfer.files;if(c){const s=Array.from(c);a.value=s,l("form-data",n(s))}};return(d,c)=>(e.openBlock(),e.createElementBlock("label",{for:t.id},[e.renderSlot(d.$slots,"default",{},()=>[c[0]||(c[0]=e.createTextVNode("Upload",-1))]),e.createElementVNode("input",{id:t.id,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:u},null,40,Ke)],8,We))}},Ge={key:0,value:null,disabled:"",hidden:""},Je=["selected","value"],ee={__name:"FormSelect",props:e.mergeModels({options:{type:Array,default:()=>[]},placeholder:{type:String,default:null}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const i=e.useModel(t,"modelValue");return(l,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("select",e.mergeProps(l.$attrs,{"onUpdate:modelValue":o[0]||(o[0]=a=>i.value=a),class:"form-select"}),[t.placeholder?(e.openBlock(),e.createElementBlock("option",Ge,e.toDisplayString(t.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,a=>(e.openBlock(),e.createElementBlock("option",{key:a.key!==void 0?a.key:a.label||a,selected:(a.key!==void 0?a.key:a.label||a)===i.value,value:a.key!==void 0?a.key:a.label||a},e.toDisplayString(a.label||a),9,Je))),128))],16)),[[e.vModelSelect,i.value]])}},Qe=["aria-checked","aria-label"],et=["d"],tt={__name:"FormSwitch",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const i=e.useModel(t,"modelValue"),l=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a}),o=e.computed(()=>e.useAttrs().disabled||e.useAttrs().disabled==="");return(a,n)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.$attrs.class),tabindex:"0"},[e.createElementVNode("span",{role:"switch",class:e.normalizeClass(["inline-flex relative shrink-0 w-11 p-[2px] rounded-full transition-colors duration-200 ease-in-out cursor-pointer focus:ring-2 focus:ring-offset-2 focus:outline-hidden focus:ring-vxvue",o.value?"bg-slate-200":i.value?"bg-vxvue":"bg-slate-300"]),"aria-checked":i.value,"aria-label":a.$attrs["aria-label"]},[e.createElementVNode("span",{"aria-hidden":"true",class:e.normalizeClass(["block relative size-5 rounded-full transition duration-200 ease-in-out transform pointer-events-none",i.value?"translate-x-5":"translate-x-0",o.value?"bg-slate-100":"bg-white"])},[e.renderSlot(a.$slots,"handle",{},()=>[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"6",stroke:"currentColor",class:e.normalizeClass(["absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-3",i.value&&!o.value?"text-vxvue":"text-slate-300"])},[e.createElementVNode("path",{"stroke-linecap":"round",d:i.value?"M12 18 V6":"m18.5 12 c0 3.5 -3 6.5 -6.5 6.5 -3.5 0 -6.5 -3 -6.5 -6.5 0 -3.5 3 -6.5 6.5 -6.5 3.5 0 6.5 3 6.5 6.5z"},null,8,et)],2))])],2),e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":n[0]||(n[0]=u=>i.value=u)},l.value,{class:"hidden",value:"1",type:"checkbox"}),null,16),[[e.vModelCheckbox,i.value]])],10,Qe),e.renderSlot(a.$slots,"default")],2))}},lt={"aria-live":"assertive",class:"flex fixed inset-0 items-start py-6 px-4 pointer-events-none sm:p-6 z-[var(--zIndex-toast)]"},at={class:"flex flex-col items-center space-y-4 w-full"},ot={class:"p-4"},nt={class:"flex items-start"},rt={class:"shrink-0"},st={class:"flex-1 pt-0.5 ml-3 w-0"},it={class:"font-bold"},ct={class:"mt-1"},dt={class:"flex ml-4 shrink-0"},ut=Object.assign({inheritAttrs:!1},{__name:"MessageToast",props:{title:{type:String,default:""},message:{type:[String,Array],default:null},timeout:{type:Number,default:5e3},active:{type:Boolean,default:!1},showTimeoutProgress:{type:Boolean,default:!1}},emits:["timeout","close"],setup(t,{emit:i}){const l=t,o=i,a=e.computed(()=>typeof l.message=="string"?[l.message]:l.message),n=e.ref(0);let u=null;const d=()=>{window.clearTimeout(u),n.value=100,l.active&&l.timeout&&(u=window.setTimeout(()=>{o("timeout")},l.timeout),window.setTimeout(()=>n.value=0,0))};return e.watch(()=>l.active,d),e.onMounted(d),(c,s)=>(e.openBlock(),e.createElementBlock("div",lt,[e.createElementVNode("div",at,[e.createVNode(O,{name:"vert-fade"},{default:e.withCtx(()=>[t.active?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["overflow-hidden w-full max-w-sm rounded-md ring-1 shadow-lg pointer-events-auto ring-black/5",c.$attrs.class])},[e.createElementVNode("div",ot,[e.createElementVNode("div",nt,[e.createElementVNode("div",rt,[e.renderSlot(c.$slots,"icon")]),e.createElementVNode("div",st,[e.renderSlot(c.$slots,"title",{},()=>[e.createElementVNode("div",it,e.toDisplayString(t.title),1)]),e.renderSlot(c.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,r=>(e.openBlock(),e.createElementBlock("p",ct,e.toDisplayString(r),1))),256))])]),e.createElementVNode("div",dt,[e.createElementVNode("button",{class:"inline-flex text-white focus:ring-2 bg-black/20 rounded-xs hover:text-stone-200 focus:outline-hidden focus:ring-stone-200",onClick:s[0]||(s[0]=r=>o("close"))},[s[1]||(s[1]=e.createElementVNode("span",{class:"sr-only"},"Close",-1)),e.createVNode(e.unref(R),{class:"size-5"})])])])]),t.showTimeoutProgress&&t.timeout?(e.openBlock(),e.createElementBlock("div",{key:0,class:"h-1 transition-all ease-linear bg-vxvue-alt",style:e.normalizeStyle({width:n.value+"%","transition-duration":t.timeout+"ms"}),role:"progressbar","aria-hidden":"false","aria-label":"notification timer"},null,4)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})])]))}}),mt={key:0,class:"fixed inset-0 z-[calc(var(--zIndex-modal)-1)] bg-white/50 backdrop-blur-xs","aria-hidden":"true"},ft={key:0,class:"fixed inset-0 z-[var(--zIndex-modal)]"},pt={class:"flex justify-center items-center h-screen"},ht={__name:"Modal",props:{show:Boolean,containerClass:{type:String,default:"mx-4 w-full lg:w-1/2 xl:w-1/4 max-h-[90vh]"},headerClass:{type:String,default:""},contentClass:{type:String,default:""}},emits:["clicked-outside"],setup(t,{emit:i}){const l=i,o=e.ref(null);return K(o,()=>l("clicked-outside")),(a,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.show?(e.openBlock(),e.createElementBlock("div",mt)):e.createCommentVNode("",!0),e.createVNode(O,{name:"appear"},{default:e.withCtx(()=>[t.show?(e.openBlock(),e.createElementBlock("div",ft,[e.createElementVNode("div",pt,[e.createElementVNode("div",{ref_key:"container",ref:o,class:e.normalizeClass(["flex flex-col overflow-hidden max-w-full bg-white rounded-sm ring-1 ring-black/10 shadow-xl transition-all transform xl:max-w-(--breakpoint-xl)",t.containerClass])},[e.createElementVNode("div",{class:e.normalizeClass(["grow-0",t.headerClass])},[e.renderSlot(a.$slots,"title")],2),e.createElementVNode("div",{class:e.normalizeClass(["overflow-y-auto h-full",t.contentClass])},[e.renderSlot(a.$slots,"default")],2)],2)])])):e.createCommentVNode("",!0)]),_:3})],64))}},gt={class:"flex justify-between items-center px-4 sm:px-0"},bt={class:"flex flex-1 -mt-px w-0"},kt=["disabled"],yt={class:"hidden md:flex md:-mt-px"},xt={class:"flex flex-1 justify-end -mt-px w-0"},wt=["disabled"],Bt={__name:"Pagination",props:{page:{type:Number,default:1},total:{type:Number,default:1},perPage:{type:Number,default:20,validator:t=>t>=1},showNavButtons:{type:Boolean,default:!0},prevText:{type:String,default:"Previous"},nextText:{type:String,default:"Next"},showAllPages:{type:Boolean,default:!1},markerPosition:{type:String,default:"above",validator:t=>["above","below"].includes(t)}},emits:["update:page"],setup(t,{emit:i}){const l=i,o=t,a=e.ref(Math.ceil(o.total/o.perPage)),n=e.ref(null),u=e.computed(()=>(o.markerPosition==="above"?"border-t-4 -mt-[4px]":"border-b-4 -mb-[4px]")+" py-4"),d=e.computed(()=>{let r=[1];if(o.showAllPages||a.value<=7){for(let p=2;p<=a.value;++p)r.push(p);return r}return n.value>=a.value?r.push("dots",n.value-2,n.value-1):n.value-1&&n.value-1>1&&(n.value>1&&r.push("dots"),r.push(n.value-1)),n.value>1&&r.push(n.value),n.value+1<a.value&&(r.push(n.value+1),n.value<=1&&r.push(n.value+2),n.value+2<a.value&&r.push("dots")),n.value<a.value&&r.push(a.value),r}),c=()=>{n.value>1&&l("update:page",n.value-1)},s=()=>{n.value<a.value&&l("update:page",n.value+1)};return e.watch(()=>o.page,r=>n.value=Math.min(Math.max(r,1),a.value),{immediate:!0}),e.watch(()=>o.perPage,r=>{a.value=Math.ceil(o.total/o.perPage),l("update:page",1)}),e.watch(()=>o.total,r=>{a.value=Math.ceil(o.total/o.perPage),n.value>a.value&&l("update:page",a.value)}),(r,p)=>(e.openBlock(),e.createElementBlock("nav",gt,[e.createElementVNode("div",bt,[t.showNavButtons?(e.openBlock(),e.createElementBlock("button",{key:0,disabled:n.value<=1,class:e.normalizeClass([n.value<=1?"pointer-events-none text-gray-500":"text-vxvue-700","inline-flex items-center pr-1 text-sm border-transparent hover:text-vxvue"]),onClick:c},[e.createVNode(e.unref(_),{class:"size-5"}),e.createTextVNode(" "+e.toDisplayString(t.prevText),1)],10,kt)):e.createCommentVNode("",!0)]),e.createElementVNode("div",yt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(h,b)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.page!=="dots"?"button":"span"),{key:b,class:e.normalizeClass([{"pointer-events-none":h==="dots"},h===n.value?"border-vxvue text-vxvue font-bold":"border-transparent text-gray-500 hover:border-gray-300",u.value,"inline-flex items-center px-4 text-sm"]),onClick:k=>h!=="dots"?l("update:page",h):null},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(h!=="dots"?h:"…"),1)]),_:2},1032,["class","onClick"]))),128))]),e.createElementVNode("div",xt,[t.showNavButtons?(e.openBlock(),e.createElementBlock("button",{key:0,disabled:n.value>=a.value,class:e.normalizeClass([n.value>=a.value?"pointer-events-none text-gray-500":"text-vxvue-700","inline-flex items-center pr-1 text-sm border-transparent hover:text-vxvue"]),onClick:s},[e.createTextVNode(e.toDisplayString(t.nextText)+" ",1),e.createVNode(e.unref(I),{class:"size-5"})],10,wt)):e.createCommentVNode("",!0)])]))}};function Vt(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.98 8.223A10.477 10.477 0 0 0 1.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.451 10.451 0 0 1 12 4.5c4.756 0 8.773 3.162 10.065 7.498a10.522 10.522 0 0 1-4.293 5.774M6.228 6.228 3 3m3.228 3.228 3.65 3.65m7.894 7.894L21 21m-3.228-3.228-3.65-3.65m0 0a3 3 0 1 0-4.243-4.243m4.242 4.242L9.88 9.88"})])}function Et(t,i){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.036 12.322a1.012 1.012 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178Z"}),e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"})])}const vt=["type"],St=["disabled"],Nt=Object.assign({inheritAttrs:!1},{__name:"PasswordInput",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const i=e.useModel(t,"modelValue"),l=e.ref(!1),o=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a});return(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("inline-block relative "+e.useAttrs().class)},[e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":n[0]||(n[0]=u=>i.value=u),type:l.value?"text":"password"},o.value,{class:"block pr-12 w-full form-input peer"}),null,16,vt),[[e.vModelDynamic,i.value]]),e.createElementVNode("button",{class:"flex absolute inset-y-0 right-0 items-center px-3 text-brand-700 hover:text-brand","aria-label":"show-password-toggle",disabled:e.useAttrs().disabled??!1,onClick:n[1]||(n[1]=e.withModifiers(u=>l.value=!l.value,["stop"]))},[l.value?(e.openBlock(),e.createBlock(e.unref(Vt),{key:0,class:"size-5"})):(e.openBlock(),e.createBlock(e.unref(Et),{key:1,class:"size-5"}))],8,St)],2))}}),Ct={class:"flex items-center pb-1"},$t={key:0,class:"ml-6"},Mt=Object.assign({inheritAttrs:!1},{__name:"SimpleTree",props:e.mergeModels({branch:{type:Object,default:()=>({})}},{modelValue:{type:Object,default:null},modelModifiers:{}}),emits:e.mergeModels(["expand"],["update:modelValue"]),setup(t,{emit:i}){const l=t,o=i,a=e.useModel(t,"modelValue"),n=e.ref(!1);return e.onMounted(()=>{l.branch===a.value&&o("expand",!0)}),(u,d)=>{const c=e.resolveComponent("simple-tree",!0);return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([!t.branch.branches||!t.branch.branches.length?"terminates":"",u.$attrs.class])},[e.createElementVNode("div",Ct,[t.branch.branches&&t.branch.branches.length?(e.openBlock(),e.createElementBlock("button",{key:0,class:"mr-2",onClick:d[0]||(d[0]=s=>n.value=!n.value)},[e.renderSlot(u.$slots,"toggle",{branch:t.branch,expanded:n.value},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value?e.unref(ne):e.unref(re)),{class:"p-0.5 text-white rounded size-5 bg-vxvue-700 hover:bg-vxvue"}))])])):e.createCommentVNode("",!0),t.branch===a.value?e.renderSlot(u.$slots,"label-selected",{key:1,branch:t.branch},()=>[e.createElementVNode("strong",null,e.toDisplayString(t.branch.label),1)]):(e.openBlock(),e.createElementBlock("button",{key:2,onClick:d[1]||(d[1]=s=>a.value=t.branch)},[e.renderSlot(u.$slots,"label",{branch:t.branch},()=>[e.createTextVNode(e.toDisplayString(t.branch.label),1)])]))]),t.branch.branches&&t.branch.branches.length?e.withDirectives((e.openBlock(),e.createElementBlock("div",$t,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.branch.branches,s=>(e.openBlock(),e.createBlock(c,{key:s.id||s.key||null,branch:s,modelValue:a.value,"onUpdate:modelValue":d[2]||(d[2]=r=>a.value=r),onExpand:d[3]||(d[3]=r=>{n.value=r,o("expand",r)})},e.createSlots({_:2},[e.renderList(u.$slots,(r,p)=>({name:p,fn:e.withCtx(h=>[e.renderSlot(u.$slots,p,e.mergeProps({ref_for:!0},h))])}))]),1032,["branch","modelValue"]))),128))],512)),[[e.vShow,n.value]]):e.createCommentVNode("",!0)],2)}}}),Dt={__name:"Sizable",props:{vertical:Boolean},emits:["dragStart","dragStop"],setup(t,{emit:i}){const l=t,o=i,a=e.ref(null),n=e.ref(null);let u=!1,d={},c=null,s=null,r=null;const p=k=>{if(u){k.preventDefault();const{pageX:V,pageY:g}=k.touches?.[0]??k;l.vertical?a.value.style.height=Math.min(s.height-r.height-(c.y-s.y),Math.max(0,c.height+g-d.y))+"px":a.value.style.width=Math.min(s.width-r.width-(c.x-s.x),Math.max(0,c.width+V-d.x))+"px"}},h=k=>{k.preventDefault(),k.currentTarget.focus(),u=!0;const{pageX:V,pageY:g}=k.touches?.[0]??k;d={x:V,y:g},r=n.value.getBoundingClientRect(),c=a.value.getBoundingClientRect(),s=a.value.parentElement.getBoundingClientRect(),k.type==="mousedown"?(document.addEventListener("mousemove",p),document.addEventListener("mouseup",b)):(document.addEventListener("touchmove",p),document.addEventListener("touchend",b)),o("dragStart")},b=k=>{u&&(u=!1,k.type==="mouseup"?(document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",b)):(document.removeEventListener("touchmove",p),document.removeEventListener("touchend",b)),setTimeout(()=>o("dragStop"),0))};return(k,V)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"box",ref:a,class:"relative"},[e.renderSlot(k.$slots,"default"),e.createElementVNode("div",e.mergeProps({ref_key:"handle",ref:n,class:["absolute flex",l.vertical?"inset-x-0 top-full justify-center py-1 cursor-ns-resize":"inset-y-0 left-full items-center px-1 cursor-ew-resize"]},e.toHandlers({touchstart:h,mousedown:h,touchend:b,mouseup:b},!0)),[e.renderSlot(k.$slots,"handle",{},()=>[e.createElementVNode("div",{class:e.normalizeClass(["rounded-full bg-vxvue",l.vertical?"h-1.5 w-8":"h-8 w-1.5"])},null,2)])],16)],512))}},zt=["aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext"],Tt=["id"],At=["id","aria-label"],Lt=U(Object.assign({inheritAttrs:!1},{__name:"Slider",props:e.mergeModels({min:{type:Number,default:0},max:{type:Number,default:100},vertical:Boolean,disabled:Boolean,showTooltip:{type:String,default:"never",validator:t=>["always","focus","never"].includes(t)},formatTooltip:{type:Function,default:t=>String(t)}},{modelValue:{type:[Number,Array],default:null,validator(t){return typeof t=="number"||t.every(i=>typeof i=="number")}},modelModifiers:{}}),emits:e.mergeModels(["dragStart","dragStop"],["update:modelValue"]),setup(t,{emit:i}){const l=t,o=e.useModel(t,"modelValue"),a=i,n=e.useAttrs(),u={x:null,y:null},d={w:null,h:null};let c=!1;const s=e.ref(null),r=e.ref(0),p=e.ref({class:(l.vertical?"left-0 -translate-x-1.5 translate-y-2.5":"top-0 -translate-x-2.5 -translate-y-1.5")+" group touch-none absolute size-5 rounded-full border-2 bg-white transition-colors duration-200 "+(l.disabled?"":" focus:ring-4 focus:outline-hidden border-vxvue cursor-grab hover:bg-vxvue focus:ring-vxvue/50"),tabindex:0}),h=e.ref(null),b=e.ref(null),k=e.computed(()=>{const m=l.max,f=l.min;return o.value instanceof Array?o.value.map(x=>(Math.max(Math.min(x,m),f)-f)*100/(m-f)):(Math.max(Math.min(o.value,m),f)-f)*100/(m-f)}),V=e.computed(()=>{if(o.value instanceof Array){const m=Math.min(...k.value)+"%",f=Math.max(...k.value)-Math.min(...k.value)+"%";return l.vertical?{bottom:m,height:f}:{left:m,width:f}}return l.vertical?{bottom:0,height:k.value+"%"}:{width:k.value+"%"}}),g=m=>{if(l.showTooltip!=="never"&&h.value){let f=(b.value.length?b.value[0]:b.value).getBoundingClientRect()[l.vertical?"left":"top"],x=0;h.value.length?h.value.forEach(C=>x=Math.max(C.getBoundingClientRect()[l.vertical?"width":"height"],x)):x=h.value.getBoundingClientRect()[l.vertical?"height":"width"];let B="tooltip "+(l.showTooltip==="focus"?"tooltip-focused ":"");l.vertical?B+=f<x+10?"tooltip-right":"tooltip-left":B+=f<x+10?"tooltip-bottom":"tooltip-top",o.value.length?h.value.forEach(C=>C.className=B):h.value.className=B}},w=m=>{let f=parseFloat(m.toFixed(10));f=Math.min(l.max,Math.max(l.min,f)),o.value instanceof Array?o.value[r.value]=f:o.value=f},S=m=>{const{pageX:f,pageY:x}=m.touches?m.touches[0]:m,B=l.vertical?(-x+u.y)/d.h:(f-u.x)/d.w;w(Math.floor((l.max-l.min)*B+l.min))},D=()=>{const{clientLeft:m,clientTop:f,scrollLeft:x,scrollTop:B}=document.documentElement,C=s.value.getBoundingClientRect();u.x=C.left+x-m,u.y=C.bottom+B-f,d.w=s.value.offsetWidth,d.h=s.value.offsetHeight},z=m=>{c&&(m.preventDefault(),S(m))},M=m=>{m.preventDefault(),m.currentTarget.focus(),D(),c=!0,m.type==="mousedown"?(document.addEventListener("mousemove",z),document.addEventListener("mouseup",$)):(document.addEventListener("touchmove",z),document.addEventListener("touchend",$)),a("dragStart")},$=m=>{c&&(c=!1,m.type==="mouseup"?(document.removeEventListener("mousemove",z),document.removeEventListener("mouseup",$)):(document.removeEventListener("touchmove",z),document.removeEventListener("touchend",$)),setTimeout(()=>a("dragStop"),0))},L=m=>{m.keyCode>=33&&m.keyCode<=40&&m.preventDefault();const f=o.value[r.value]??o.value;switch(m.keyCode){case 37:case 40:w(f-1);break;case 39:case 38:w(f+1);break;case 33:w(f+(l.max-l.min)/10);break;case 34:w(f-(l.max-l.min)/10);break;case 36:w(l.min);break;case 35:w(l.max)}},y=m=>{D(),S(m)};return e.onUpdated(g),e.onMounted(g),(m,f)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({ref_key:"track",ref:s,class:["relative bg-slate-300",t.vertical?"h-full w-2 rounded-t-full rounded-b-full":"w-full h-2 rounded-r-full rounded-l-full"],role:"slider","aria-label":"slider-thumb","aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":o.value[0]??o.value,"aria-valuetext":o.value},e.toHandlers(t.disabled?{}:{click:y},!0)),[t.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute bg-vxvue",t.vertical?"w-full rounded-t-full rounded-b-full":"h-full rounded-r-full rounded-l-full"]),style:e.normalizeStyle(V.value)},null,6)),o.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(o.value,(x,B)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({id:B?null:e.unref(n).id,style:t.vertical?{bottom:k.value[B]+"%"}:{left:k.value[B]+"%"},"aria-label":"slider-thumb-"+(B+1)},{ref_for:!0},p.value,e.toHandlers(t.disabled?{}:{focus:()=>r.value=B,keydown:L,touchstart:C=>{r.value=B,M(C)},mousedown:C=>{r.value=B,M(C)},touchend:$,mouseup:$},!0),{ref_for:!0,ref_key:"handle",ref:b}),[t.showTooltip!=="never"?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-focused":t.showTooltip==="focus"},t.vertical?"tooltip-left":"tooltip-top"]),ref_for:!0,ref_key:"tooltip",ref:h},[e.renderSlot(m.$slots,"tooltip",{value:x,ndx:B},()=>[e.createTextVNode(e.toDisplayString(t.formatTooltip(x)),1)],!0)],2)):e.createCommentVNode("",!0)],16,At))),256)):(e.openBlock(),e.createElementBlock("button",e.mergeProps({key:1,id:e.unref(n).id,style:t.vertical?{bottom:k.value+"%"}:{left:k.value+"%"},"aria-label":"slider-thumb"},p.value,e.toHandlers(t.disabled?{}:{focus:()=>r.value=0,keydown:L,touchstart:x=>{r.value=0,M(x)},mousedown:x=>{r.value=0,M(x)},touchend:$,mouseup:$},!0),{ref_key:"handle",ref:b}),[t.showTooltip!=="never"?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-focused":t.showTooltip==="focus"},t.vertical?"tooltip-left":"tooltip-top"]),ref_key:"tooltip",ref:h},[e.renderSlot(m.$slots,"tooltip",{value:o.value},()=>[e.createTextVNode(e.toDisplayString(t.formatTooltip(o.value)),1)],!0)],2)):e.createCommentVNode("",!0)],16,Tt))],16,zt))}}),[["__scopeId","data-v-995282a3"]]),Pt=["data-active","onClick"],Ft={class:"flex justify-between items-center space-x-2"},It=["data-active"],Ot={__name:"Sortable",props:{columns:{type:Array,required:!0,validator:t=>{for(const i of t)if(i.label===void 0||i.prop===void 0)return!1;return!0}},rows:{type:Array,required:!0},offset:{type:Number,default:null},count:{type:Number,default:null},sortProp:{type:String,default:null},sortDirection:{type:String,default:null,validator:t=>!t||["asc","desc"].includes(t)},keyProperty:{type:String,default:"key"},headerClass:{type:String,default:"text-white bg-vxvue-700 [&_*[data-active]]:bg-vxvue-alt-800"},bodyClass:{type:String,default:"[&>*:nth-child(even)]:bg-vxvue-50 [&>*:nth-child(even)_*[data-active]]:bg-vxvue-alt-100 [&>*:nth-child(odd)_*[data-active]]:bg-vxvue-alt-50"}},emits:["before-sort","after-sort"],setup(t,{emit:i}){const l=t,o=i,a=e.ref(l.sortProp),n=e.ref(l.sortDirection),u=e.computed(()=>{let c=l.rows.slice();const s=l.columns.find(({prop:r})=>r===a.value);return s&&(n.value==="asc"&&s.sortAscFunction?c.sort(s.sortAscFunction):n.value==="desc"&&s.sortDescFunction?c.sort(s.sortDescFunction):c.sort((r,p)=>r[a.value]<p[a.value]?n.value==="asc"?-1:1:r[a.value]>p[a.value]?n.value==="asc"?1:-1:0)),c.slice(l.offset||0,(l.offset||0)+(l.count||c.length))}),d=c=>{o("before-sort",{prop:a.value,dir:n.value}),a.value===c?n.value=n.value==="asc"?"desc":"asc":(a.value=c,n.value=n.value||"asc"),e.nextTick(()=>o("after-sort",{prop:a.value,dir:n.value}))};return(c,s)=>(e.openBlock(),e.createElementBlock("table",{class:e.normalizeClass(c.$attrs.class||"w-full divide-y divide-y-slate-900 table-fixed")},[e.createElementVNode("thead",{class:e.normalizeClass(t.headerClass)},[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,r=>(e.openBlock(),e.createElementBlock("th",{key:r.prop,scope:"col","data-active":a.value===r.prop?"active":null,class:e.normalizeClass(["py-3 px-6",{"cursor-pointer":r.sortable},r.cssClass]),onClick:p=>r.sortable?d(r.prop):null},[e.renderSlot(c.$slots,r.prop+"-header",{column:r,sortDir:n.value,sortProp:a.value},()=>[e.createElementVNode("div",Ft,[e.createElementVNode("span",null,e.toDisplayString(r.label),1),r.sortable?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value!==r.prop?e.unref(ae):n.value==="asc"?e.unref(le):e.unref(oe)),{key:0,class:"size-4"})):e.createCommentVNode("",!0)])])],10,Pt))),128))])],2),e.createElementVNode("tbody",{class:e.normalizeClass(t.bodyClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,r=>(e.openBlock(),e.createElementBlock("tr",{key:r[t.keyProperty],class:e.normalizeClass(r.cssClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,p=>(e.openBlock(),e.createElementBlock("td",{key:p.prop,"data-active":a.value===p.prop?"active":null,class:"overflow-hidden py-3 px-6 whitespace-nowrap text-ellipsis"},[e.renderSlot(c.$slots,p.prop,{row:r},()=>[e.createTextVNode(e.toDisplayString(r[p.prop]),1)])],8,It))),128))],2))),128))],2)],2))}},jt={class:"flex items-center space-x-2"},_t=["disabled"],Yt=U(Object.assign({inheritAttrs:!1},{__name:"SubmitButton",props:{busy:Boolean,spinnerClass:{type:String,default:null},theme:{type:String,default:null}},emits:["submit"],setup(t,{emit:i}){const l=i;return(o,a)=>(e.openBlock(),e.createElementBlock("div",jt,[e.createElementVNode("button",{class:e.normalizeClass([o.$attrs.class,t.theme]),disabled:o.$attrs.disabled||t.busy,type:"button",onClick:a[0]||(a[0]=n=>l("submit"))},[e.renderSlot(o.$slots,"default",{},void 0,!0)],10,_t),t.busy?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(t.spinnerClass||["size-5",{error:"text-error",success:"text-success",default:"text-vxvue"}[t.theme||"default"]])},null,8,["class"])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-e81b6076"]]),Rt={class:"sm:hidden"},Ht={class:"hidden sm:block"},Zt={class:"border-b border-gray-200"},Ut={class:"flex -mb-px space-x-8","aria-label":"Tabs"},qt=["aria-current","onClick"],Wt={__name:"Tabs",props:{items:{type:Array,default:()=>[]},activeIndex:{type:Number,default:0}},emits:["update:activeIndex"],setup(t,{emit:i}){const l=t,o=i,a=e.ref(l.items[l.activeIndex]||{}),n=e.computed(()=>{let d=[];return l.items.forEach((c,s)=>{c.disabled||d.push({label:c.name,key:s})}),d});e.watch(()=>l.activeIndex,d=>{a.value=l.items[d]||{}});const u=d=>{d.disabled||(a.value=d,o("update:activeIndex",l.items.indexOf(d)))};return(d,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Rt,[e.createVNode(ee,{options:n.value,"model-value":t.activeIndex,class:"w-full","onUpdate:modelValue":c[0]||(c[0]=s=>o("update:activeIndex",s))},null,8,["options","model-value"])]),e.createElementVNode("div",Ht,[e.createElementVNode("div",Zt,[e.createElementVNode("nav",Ut,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,s=>(e.openBlock(),e.createElementBlock("a",{key:s.name,href:"#",class:e.normalizeClass(["group inline-flex items-center py-4 px-1 border-b-4 font-medium no-underline! border-transparent",{"border-vxvue text-vxvue":a.value===s,"cursor-not-allowed text-gray-400":s.disabled,"text-gray-900 hover:text-vxvue-600 hover:border-vxvue-600":a.value!==s&&!s.disabled}]),"aria-current":a.value===s?"page":void 0,onClick:e.withModifiers(r=>u(s),["prevent"])},[e.renderSlot(d.$slots,"icon",{tab:s}),e.createElementVNode("span",null,[e.renderSlot(d.$slots,"default",{tab:s},()=>[e.createTextVNode(e.toDisplayString(s.name),1)])]),e.renderSlot(d.$slots,"badge",{tab:s},()=>[s.badge?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["hidden ml-3 py-0.5 px-2.5 rounded-full text-xs font-medium md:inline-block text-current",{"bg-gray-100":s.disabled,"bg-vxvue-50":a.value===s,"bg-gray-200":a.value!==s&&!s.disabled}])},e.toDisplayString(s.badge),3)):e.createCommentVNode("",!0)])],10,qt))),128))])])])],64))}},Kt={mounted:t=>t.focus()},Xt={mounted:(t,i)=>{if(!["INPUT","TEXTAREA"].includes(t.nodeName)){let l=t.querySelector('input:not([type]),input[type="text"],input[type="search"],input[type="email"],input[type="password"],input[type="url"],input[type="tel"]');l||(l=t.querySelector("textarea")),t=l}if(t){if(t.querySelector("label"))throw new Error("VFloatingLabel directive: LABEL element found.");const l=Math.random().toString(36).substring(2),o=document.createElement("div");o.classList.add("relative","isolate");const a=document.createElement("label");a.classList.add(..."absolute px-2 left-1 top-2 scale-90 text-sm z-[var(--zIndex-label)] origin-[0] bg-white -translate-y-4 transform-gpu duration-200".split(" "),..."peer-focus:top-2 peer-focus:scale-90 peer-focus:-translate-y-full".split(" "),..."peer-placeholder-shown:scale-100 peer-placeholder-shown:-translate-y-1/2".split(" "),t.nodeName==="TEXTAREA"?"peer-placeholder-shown:top-4":"peer-placeholder-shown:top-1/2"),i.value?.invalid?a.classList.add("text-error","peer-focus:text-error"):a.classList.add("peer-focus:text-blue-600"),t.getAttribute("required")!==null&&a.classList.add("required"),a.setAttribute("for",t.getAttribute("id")||l+"-element"),a.innerHTML=i.value?.label||t.getAttribute("placeholder")||l+"-label",t.classList.add("peer"),t.setAttribute("placeholder"," "),t.setAttribute("id",t.getAttribute("id")||l+"-element"),t.parentElement.replaceChild(o,t),o.appendChild(t),o.appendChild(a)}},updated:(t,i)=>{const l=t.parentNode.querySelector("label");if(!l)return;const o=t.getAttribute("placeholder")?.trim();l.innerHTML=i.value?.label||o||l.innerHTML,o&&t.setAttribute("placeholder"," "),i.value?.invalid?(l.classList.add("text-error","peer-focus:text-error"),l.classList.remove("peer-focus:text-blue-600")):(l.classList.remove("text-error","peer-focus:text-error"),l.classList.add("peer-focus:text-blue-600")),l.classList[t.getAttribute("required")!==null?"add":"remove"]("required")}};v.Accordion=ue,v.AccordionPanel=H,v.Autocomplete=Ee,v.Confirm=Le,v.DateInput=Q,v.Datepicker=qe,v.FormFileButton=Xe,v.FormSelect=ee,v.FormSwitch=tt,v.MessageToast=ut,v.Modal=ht,v.Pagination=Bt,v.PasswordInput=Nt,v.SimpleTree=Mt,v.Sizable=Dt,v.Slider=Lt,v.Sortable=Ot,v.Spinner=Z,v.SubmitButton=Yt,v.Tabs=Wt,v.VFloatingLabel=Xt,v.VFocus=Kt,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})}));
|
package/package.json
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"./vx-vue.css": "./dist/style.css",
|
|
15
15
|
"./dist/*": "./dist/*"
|
|
16
16
|
},
|
|
17
|
-
"version": "1.4.
|
|
17
|
+
"version": "1.4.5",
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"homepage": "https://vectrex.github.io/vxVue",
|
|
20
20
|
"repository": {
|
|
@@ -28,32 +28,33 @@
|
|
|
28
28
|
"test": "vitest",
|
|
29
29
|
"test:ui": "vitest --ui",
|
|
30
30
|
"format": "prettier --write src/",
|
|
31
|
+
"format:css": "rustywind --write src",
|
|
31
32
|
"docs:dev": "vitepress dev docs",
|
|
32
33
|
"docs:build": "vitepress build docs",
|
|
33
34
|
"docs:preview": "vitepress preview docs"
|
|
34
35
|
},
|
|
35
36
|
"devDependencies": {
|
|
36
37
|
"@heroicons/vue": "^2.2.0",
|
|
37
|
-
"tailwindcss": "^4.1.
|
|
38
|
-
"@tailwindcss/forms": "^0.5.
|
|
39
|
-
"@tailwindcss/
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
38
|
+
"tailwindcss": "^4.1.18",
|
|
39
|
+
"@tailwindcss/forms": "^0.5.11",
|
|
40
|
+
"@tailwindcss/typography": "^0.5.19",
|
|
41
|
+
"@tailwindcss/vite": "^4.1.18",
|
|
42
|
+
"vue": "^3.5.27",
|
|
43
|
+
"@vueuse/core": "^14.1.0",
|
|
43
44
|
"@vue/test-utils": "^2.4.6",
|
|
44
|
-
"jsdom": "^27.
|
|
45
|
-
"vite": "^7.
|
|
46
|
-
"eslint": "^9.39.
|
|
45
|
+
"jsdom": "^27.4.0",
|
|
46
|
+
"vite": "^7.3.1",
|
|
47
|
+
"eslint": "^9.39.2",
|
|
47
48
|
"eslint-plugin-vue": "^9.33.0",
|
|
48
49
|
"@eslint/js": "^9.39.1",
|
|
49
|
-
"@stylistic/eslint-plugin": "^5.
|
|
50
|
-
"@vitest/eslint-plugin": "^1.
|
|
51
|
-
"@vitejs/plugin-vue": "^6.0.
|
|
52
|
-
"vite-plugin-vue-devtools": "^8.0.
|
|
50
|
+
"@stylistic/eslint-plugin": "^5.7.1",
|
|
51
|
+
"@vitest/eslint-plugin": "^1.6.6",
|
|
52
|
+
"@vitejs/plugin-vue": "^6.0.3",
|
|
53
|
+
"vite-plugin-vue-devtools": "^8.0.5",
|
|
53
54
|
"vitepress": "^1.6.4",
|
|
54
|
-
"vitest": "^4.0.
|
|
55
|
-
"@vitest/ui": "^4.0.
|
|
56
|
-
"prettier": "^3.
|
|
55
|
+
"vitest": "^4.0.18",
|
|
56
|
+
"@vitest/ui": "^4.0.18",
|
|
57
|
+
"prettier": "^3.8.1",
|
|
57
58
|
"rustywind": "^0.24.3"
|
|
58
59
|
}
|
|
59
60
|
}
|