vx-vue 0.7.5 → 0.7.6
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 +509 -469
- package/dist/vxvue.umd.js +1 -1
- package/package.json +17 -10
package/dist/vxvue.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(x,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(x=typeof globalThis<"u"?globalThis:x||self,e(x.vxVue={},x.Vue))})(this,function(x,e){"use strict";function G(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function j(t){return typeof t=="function"?t():e.unref(t)}const Y=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const X=Object.prototype.toString,Z=t=>X.call(t)==="[object Object]",A=()=>{},J=Q();function Q(){var t;return Y&&((t=window==null?void 0:window.navigator)==null?void 0:t.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent)}const ee=/[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}|SSS/g;function te(t,m,l,r){let n=t<12?"AM":"PM";return r&&(n=n.split("").reduce((o,i)=>o+=`${i}.`,"")),l?n.toLowerCase():n}function _(t){const m=["th","st","nd","rd"],l=t%100;return t+(m[(l-20)%10]||m[l]||m[0])}function H(t,m,l={}){var r;const n=t.getFullYear(),o=t.getMonth(),i=t.getDate(),a=t.getHours(),s=t.getMinutes(),d=t.getSeconds(),c=t.getMilliseconds(),k=t.getDay(),u=(r=l.customMeridiem)!=null?r:te,h={Yo:()=>_(n),YY:()=>String(n).slice(-2),YYYY:()=>n,M:()=>o+1,Mo:()=>_(o+1),MM:()=>`${o+1}`.padStart(2,"0"),MMM:()=>t.toLocaleDateString(l.locales,{month:"short"}),MMMM:()=>t.toLocaleDateString(l.locales,{month:"long"}),D:()=>String(i),Do:()=>_(i),DD:()=>`${i}`.padStart(2,"0"),H:()=>String(a),Ho:()=>_(a),HH:()=>`${a}`.padStart(2,"0"),h:()=>`${a%12||12}`.padStart(1,"0"),ho:()=>_(a%12||12),hh:()=>`${a%12||12}`.padStart(2,"0"),m:()=>String(s),mo:()=>_(s),mm:()=>`${s}`.padStart(2,"0"),s:()=>String(d),so:()=>_(d),ss:()=>`${d}`.padStart(2,"0"),SSS:()=>`${c}`.padStart(3,"0"),d:()=>k,dd:()=>t.toLocaleDateString(l.locales,{weekday:"narrow"}),ddd:()=>t.toLocaleDateString(l.locales,{weekday:"short"}),dddd:()=>t.toLocaleDateString(l.locales,{weekday:"long"}),A:()=>u(a,s),AA:()=>u(a,s,!1,!0),a:()=>u(a,s,!0),aa:()=>u(a,s,!0,!0)};return m.replace(ee,(b,C)=>{var $,E;return(E=C??(($=h[b])==null?void 0:$.call(h)))!=null?E:b})}function P(t){var m;const l=j(t);return(m=l==null?void 0:l.$el)!=null?m:l}const R=Y?window:void 0;function L(...t){let m,l,r,n;if(typeof t[0]=="string"||Array.isArray(t[0])?([l,r,n]=t,m=R):[m,l,r,n]=t,!m)return A;Array.isArray(l)||(l=[l]),Array.isArray(r)||(r=[r]);const o=[],i=()=>{o.forEach(c=>c()),o.length=0},a=(c,k,u,h)=>(c.addEventListener(k,u,h),()=>c.removeEventListener(k,u,h)),s=e.watch(()=>[P(m),j(n)],([c,k])=>{if(i(),!c)return;const u=Z(k)?{...k}:k;o.push(...l.flatMap(h=>r.map(b=>a(c,h,b,u))))},{immediate:!0,flush:"post"}),d=()=>{s(),i()};return G(d),d}let U=!1;function T(t,m,l={}){const{window:r=R,ignore:n=[],capture:o=!0,detectIframe:i=!1}=l;if(!r)return;J&&!U&&(U=!0,Array.from(r.document.body.children).forEach(u=>u.addEventListener("click",A)),r.document.documentElement.addEventListener("click",A));let a=!0;const s=u=>n.some(h=>{if(typeof h=="string")return Array.from(r.document.querySelectorAll(h)).some(b=>b===u.target||u.composedPath().includes(b));{const b=P(h);return b&&(u.target===b||u.composedPath().includes(b))}}),c=[L(r,"click",u=>{const h=P(t);if(!(!h||h===u.target||u.composedPath().includes(h))){if(u.detail===0&&(a=!s(u)),!a){a=!0;return}m(u)}},{passive:!0,capture:o}),L(r,"pointerdown",u=>{const h=P(t);a=!s(u)&&!!(h&&!u.composedPath().includes(h))},{passive:!0}),i&&L(r,"blur",u=>{setTimeout(()=>{var h;const b=P(t);((h=r.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(b!=null&&b.contains(r.document.activeElement))&&m(u)},0)})].filter(Boolean);return()=>c.forEach(u=>u())}const le=["value","onKeydown"],oe={class:"flex absolute inset-y-0 right-0 items-center pr-3 text-vxvue-700"},ne={key:0,class:"w-5 h-5 animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},ae=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)],re=Object.assign({inheritAttrs:!1},{__name:"autocomplete",props:{modelValue:{type:String,default:""},search:{type:Function,required:!0},baseClass:{type:String,default:"vxvue-autocomplete"},resultListClass:{type:String,default:"result-list"},resultItemClass:{type:String,default:"result-list-item"},inputClass:{type:String,default:"autocomplete-input"},getResultValue:{type:Function,default:t=>t},autoSelect:Boolean},emits:["update:modelValue","blur","submit"],setup(t,{emit:m}){const l=m,r=t,n=e.useAttrs(),i=(()=>{let y=0;return w=>(w||"")+ ++y})()((n.id||"autocomplete")+"-"),a=e.ref([]),s=e.ref(-1),d=e.ref(0),c=e.ref(!1),k=e.ref(!1),u=e.ref("top-0 translate-y-12"),h=e.ref(!0),b=e.ref(null),C=e.ref(null),$=e.ref(null),E=e.computed(()=>a.value.map((y,w)=>({id:(n.id||"autocomplete")+"-item-"+w,class:["autocomplete-item",r.resultItemClass,{"bg-vxvue-700 text-white":s.value===w}],"data-result-index":w,role:"option",...s.value===w?{"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":c.value?"true":"false","aria-activedescendant":s.value>-1?E.value[s.value].id:"",...n})),v=e.computed(()=>({id:i,class:["autocomplete-list absolute min-w-full transform z-10",r.resultListClass,u.value],role:"listbox"})),g=()=>{s.value=-1,a.value=[],c.value=!1,h.value=!0},p=y=>{const w=r.search(y);if(w instanceof Promise){const M=++d.value;k.value=!0,w.then(S=>{M===d.value&&(a.value=S,k.value=!1,a.value.length?(s.value=r.autoSelect?0:-1,c.value=!0):g())})}else a.value=w,a.value.length===0?g():(s.value=r.autoSelect?0:-1,c.value=!0)},f=()=>{const y=a.value[s.value];return y&&l("update:modelValue",r.getResultValue(y)),g(),y},B=y=>{l("update:modelValue",y),p(y)},V=y=>p(y.target.value),N=()=>{g(),l("blur")},F=()=>{const y=a.value.length;s.value=((s.value-1)%y+y)%y},O=y=>{c.value||V(y);const w=a.value.length;s.value=((s.value+1)%w+w)%w},zt=()=>{g(),l("update:modelValue","")},It=()=>l("submit",f()),Ot=y=>{const w=y.target.closest("[data-result-index]");w&&(s.value=parseInt(w.dataset.resultIndex,10),l("submit",f()))};return T($,g),e.onUpdated(()=>{if(b.value){const y=C.value.getBoundingClientRect(),w=b.value.getBoundingClientRect();h.value&&a.value.length&&(h.value=!1,u.value=y.bottom+w.height>window.innerHeight&&window.innerHeight-y.bottom<y.top&&window.pageYOffset+y.top-w.height>0?"bottom-0 -translate-y-12":"top-0 translate-y-12");const M=b.value.querySelector('[data-result-index="'+s.value+'"]');if(M){let S=M.getBoundingClientRect();S.top<w.top?b.value.scrollTop-=w.top-S.top:S.bottom>w.bottom&&(b.value.scrollTop+=S.bottom-w.bottom)}}}),(y,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",y.$attrs.class]),ref_key:"container",ref:$},[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:C,class:"block pr-10 w-full form-input focus:border-vxvue",value:t.modelValue},D.value,{onInput:w[0]||(w[0]=M=>B(M.target.value)),onKeydown:[e.withKeys(It,["enter"]),e.withKeys(zt,["esc"]),e.withKeys(f,["tab"]),e.withKeys(e.withModifiers(F,["prevent"]),["up"]),e.withKeys(e.withModifiers(O,["prevent"]),["down"])],onFocus:V,onBlur:N}),null,16,le),e.createElementVNode("span",oe,[k.value?(e.openBlock(),e.createElementBlock("svg",ne,ae)):e.createCommentVNode("",!0)]),a.value.length?(e.openBlock(),e.createElementBlock("ul",e.mergeProps({key:0,ref_key:"resultList",ref:b},v.value,{onClick:Ot,onMousedown:w[1]||(w[1]=e.withModifiers(()=>{},["prevent"]))}),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(M,S)=>e.renderSlot(y.$slots,"result",{result:M,props:E.value[S]},()=>[(e.openBlock(),e.createElementBlock("li",e.mergeProps({key:E.value[S].id},E.value[S]),e.toDisplayString(t.getResultValue(M)),17))])),256))],16)):e.createCommentVNode("",!0)],2))}}),se={key:0,class:"fixed inset-0 z-50 bg-black bg-opacity-50 backdrop-blur-sm","aria-hidden":"true"},ce={key:0,class:"overflow-y-auto fixed inset-0 z-50"},ie={class:"flex justify-center items-center min-h-screen text-center sm:block sm:p-0"},de={key:0},me=e.createElementVNode("span",{class:"hidden sm:inline-block sm:h-screen sm:align-middle","aria-hidden":"true"},"",-1),ue={class:"inline-block overflow-hidden text-left align-bottom bg-white rounded shadow-xl transition-all transform sm:my-8 sm:w-full sm:max-w-sm sm:align-middle lg:max-w-lg"},fe={class:"px-4 pb-4 mt-4 sm:px-6 sm:pb-6 sm:mt-5"},pe={class:"flex flex-row items-center"},he={class:"flex-shrink-0"},ge={class:"flex-grow text-center"},ke=["onClick"],be={__name:"confirm",props:{buttons:{type:[Object,Array],default:{label:"Ok"},validator:t=>Array.isArray(t)&&t.length<=2&&t.filter(m=>m.label!=="undefined"&&m.value!=="undefined").length===t.length||t.label!==void 0&&t.value!==void 0},headerClass:{type:String,default:"text-vxvue-alt-900 bg-vxvue-alt-400"},buttonClass:{type:String,default:"button"}},setup(t,{expose:m}){const l=t,r=e.ref(""),n=e.ref(""),o=e.ref(!1);let i=null,a=null;const s=e.computed(()=>Array.isArray(l.buttons)?l.buttons:[l.buttons]),d=e.ref(null),c=(u,h)=>{o.value=!1,u.value!==void 0?u.value?i():a():h?a():i()};return m({open:(u,h)=>(r.value=u,n.value=h,o.value=!0,e.nextTick(()=>d.value.firstElementChild.focus()),new Promise((b,C)=>{i=b,a=C}))}),(u,h)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o.value?(e.openBlock(),e.createElementBlock("div",se)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"appear"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",ie,[o.value?(e.openBlock(),e.createElementBlock("div",de,[me,e.createElementVNode("div",ue,[r.value?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(["py-4 pt-4 text-lg font-medium text-center sm:py-6",t.headerClass])},[e.renderSlot(u.$slots,"title",{title:r.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",fe,[e.createElementVNode("div",pe,[e.createElementVNode("div",he,[e.renderSlot(u.$slots,"icon")]),e.createElementVNode("p",ge,[e.renderSlot(u.$slots,"default",{message:n.value},()=>[e.createTextVNode(e.toDisplayString(n.value),1)])])]),e.createElementVNode("div",{class:"flex justify-center mt-5 space-x-2 sm:mt-6",ref_key:"buttonsContainer",ref:d},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(b,C)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass([t.buttonClass,b.class]),onClick:e.withModifiers($=>c(b,C),["prevent"])},e.toDisplayString(b.label),11,ke))),256))],512)])])])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:3})],64))}};function ye(t,m){const l=e.ref(!1),r=e.toValue(m);let n,o=r.toLowerCase().replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=[];if((n=r.match(/\bd\b/gi))&&n.length===1)o=o.replace("d","(\\d{1,2})");else if((n=r.match(/\bdd\b/gi))&&n.length===1)o=o.replace("dd","(\\d{2})");else return{date:l};if(i.push({srcPos:r.toLowerCase().indexOf("d"),destPos:2}),(n=r.match(/\bm\b/gi))&&n.length===1)o=o.replace("m","(\\d{1,2})");else if((n=r.match(/\bmm\b/gi))&&n.length===1)o=o.replace("mm","(\\d{2})");else return{date:l};if(i.push({srcPos:r.toLowerCase().indexOf("m"),destPos:1}),(n=r.match(/\byyyy\b/gi))&&n.length===1)o=o.replace("yyyy","(\\d{4})");else return{date:l};if(i.push({srcPos:r.toLowerCase().indexOf("y"),destPos:0}),!(n=e.toValue(t).match(o)))return{date:l};n.shift(),i.sort((c,k)=>c.srcPos<k.srcPos?-1:1);let a=[],s,d;for(;s=n.shift();)d=i.shift(),a[d.destPos]=s;return a=Date.parse(a.join("-")),a&&(a=new Date(a),l.value=new Date(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0)),{date:l}}const we={key:0},xe={class:"text-vxvue-700"},Be=[e.createElementVNode("svg",{class:"w-2 h-2",stroke:"currentColor",fill:"none",viewBox:"0 0 8 8"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-width":"1.5",d:"M1 1l6 6m0-6L1 7"})],-1)],Ve=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-6 h-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})],-1)],W={__name:"date-input",props:{outputFormat:{type:String,default:"YYYY-MM-DD"},inputFormat:{type:String,default:"YYYY-MM-DD"},showButton:{type:Boolean,default:!0},locale:{type:String,default:"default"},modelValue:Date},emits:["update:modelValue","toggle-datepicker"],setup(t,{emit:m}){const l=m,r=t,n=e.ref(""),o=e.computed(()=>r.modelValue?H(r.modelValue,r.outputFormat):""),i=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a});return e.watch(()=>r.modelValue,a=>n.value=a?H(a,r.outputFormat):""),(a,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",a.$attrs.class])},[o.value?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",{class:e.normalizeClass(["block flex items-center w-full form-input bg-vxvue-50",{"pr-10":t.showButton}])},[e.createElementVNode("span",xe,e.toDisplayString(o.value),1),e.createElementVNode("button",{onClick:s[0]||(s[0]=d=>l("update:modelValue",null)),class:"inline-flex flex-shrink-0 justify-center items-center ml-2 w-4 h-4 rounded-full focus:text-white focus:outline-none text-vxvue hover:bg-vxvue-100 hover:text-vue-700 focus:bg-vxvue-700"},Be)],2)])):e.withDirectives((e.openBlock(),e.createElementBlock("input",e.mergeProps({key:1,type:"text",class:["block w-full form-input peer focus:border-vxvue",{"pr-10":t.showButton}],"onUpdate:modelValue":s[1]||(s[1]=d=>n.value=d),onBlur:s[2]||(s[2]=d=>{var c;return l("update:modelValue",((c=e.unref(ye)(n.value,r.inputFormat).date)==null?void 0:c.value)||null)}),onInput:s[3]||(s[3]=e.withModifiers(()=>{},["prevent"]))},i.value),null,16)),[[e.vModelText,n.value]]),t.showButton?(e.openBlock(),e.createElementBlock("button",{key:2,class:"flex absolute inset-y-0 right-0 items-center px-2 text-vxvue-700 hover:text-vxvue",onClick:s[4]||(s[4]=e.withModifiers(d=>l("toggle-datepicker"),["stop"])),ref:"toggleButton"},Ve,512)):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default")],2))}};function z(t,m){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M7.72 12.53a.75.75 0 010-1.06l7.5-7.5a.75.75 0 111.06 1.06L9.31 12l6.97 6.97a.75.75 0 11-1.06 1.06l-7.5-7.5z","clip-rule":"evenodd"})])}function I(t,m){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.28 11.47a.75.75 0 010 1.06l-7.5 7.5a.75.75 0 01-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 011.06-1.06l7.5 7.5z","clip-rule":"evenodd"})])}function Ee(t,m){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M3.75 12a.75.75 0 01.75-.75h15a.75.75 0 010 1.5h-15a.75.75 0 01-.75-.75z","clip-rule":"evenodd"})])}function Ce(t,m){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M12 3.75a.75.75 0 01.75.75v6.75h6.75a.75.75 0 010 1.5h-6.75v6.75a.75.75 0 01-1.5 0v-6.75H4.5a.75.75 0 010-1.5h6.75V4.5a.75.75 0 01.75-.75z","clip-rule":"evenodd"})])}function $e(t,m){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.47 5.47a.75.75 0 011.06 0L12 10.94l5.47-5.47a.75.75 0 111.06 1.06L13.06 12l5.47 5.47a.75.75 0 11-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 01-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 010-1.06z","clip-rule":"evenodd"})])}const Ne={class:"flex items-center py-2 px-3 text-white bg-vxvue-700"},Se={class:"flex w-1/2 justify-between"},Me={class:"flex w-1/2 justify-between"},De={class:"grid grid-cols-7 gap-0.5 p-0.5"},_e=["disabled","onClick"],ve={__name:"datepicker",props:{modelValue:[Date,Boolean],validFrom:Date,validUntil:Date,dayNames:{type:Array,default:()=>"S M T W T F S".split(" ")},locale:{type:String,default:"default"},startOfWeekIndex:{type:Number,default:0,validator:t=>t===0||t===1},hasInput:{type:Boolean,default:!0}},emits:["update:modelValue","month-change","year-change"],setup(t,{emit:m}){const l=t,r=m,n=(()=>{let g=new Date;return new Date(g.getFullYear(),g.getMonth(),g.getDate())})(),o=e.ref(new Date(n.getFullYear(),n.getMonth(),1)),i=e.ref(null),a=e.ref(!l.hasInput),s=e.ref("left-0"),d=e.ref("top-0"),c=e.ref(null),k=e.ref(null),u=e.ref(null),h=e.computed(()=>l.hasInput?{class:["absolute",a.value?"block":"hidden"]}:{}),b=e.computed(()=>{const g=[],p=o.value.getFullYear(),f=o.value.getMonth(),B=new Date(p,f+1,0),V=new Date(p,f,0).getDay()+1-l.startOfWeekIndex,N=(6+l.startOfWeekIndex-B.getDay())%7;for(let F=-V,O=B.getDate()+N;F<O;++F)g.push(new Date(p,f,F+1));return g}),C=e.computed(()=>l.startOfWeekIndex?l.dayNames.slice(1).concat(l.dayNames[0]):l.dayNames.slice());e.watch(()=>l.modelValue,g=>{g?(i.value=new Date(g.getFullYear(),g.getMonth(),g.getDate()),o.value=new Date(i.value.getTime())):(i.value=null,o.value=new Date(n.getTime())),o.value.setDate(1)},{immediate:!0}),e.watch(a,g=>{g&&l.hasInput&&e.nextTick(()=>{const p=c.value.$el.getBoundingClientRect(),f=k.value.getBoundingClientRect();s.value=p.left+f.width>window.innerWidth?"right-0":"left-0",d.value=p.bottom+f.height>window.innerHeight?"bottom-0 -translate-y-12":"top-0 translate-y-12"})}),T(k,()=>a.value=!1,{ignore:[u]});const $=g=>{o.value=new Date(o.value.getFullYear(),g,1),r("month-change",o.value)},E=g=>{o.value=new Date(g,o.value.getMonth(),1),r("year-change",o.value)},D=g=>{i.value=g,r("update:modelValue",g),a.value=!l.hasInput},v=g=>{i.value=g,r("update:modelValue",g)};return e.onMounted(()=>{var g;return u.value=(g=c.value)==null?void 0:g.$refs.toggleButton}),(g,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative",g.$attrs.class])},[t.hasInput?(e.openBlock(),e.createBlock(W,e.mergeProps({key:0,modelValue:i.value,onToggleDatepicker:p[0]||(p[0]=f=>a.value=!a.value),"onUpdate:modelValue":v},g.$attrs,{ref_key:"input",ref:c,class:"w-full",locale:t.locale}),{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default")]),_:3},16,["modelValue","locale"])):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({class:"z-10 bg-white shadow-md"},h.value,{ref_key:"calendar",ref:k,class:[s.value,d.value]}),[e.createElementVNode("div",Ne,[e.createElementVNode("div",Se,[e.createElementVNode("button",{onClick:p[1]||(p[1]=e.withModifiers(f=>$(o.value.getMonth()-1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(z),{class:"w-6 h-6"})]),e.createElementVNode("span",null,e.toDisplayString(o.value.toLocaleString(t.locale,{month:"long"})),1),e.createElementVNode("button",{onClick:p[2]||(p[2]=e.withModifiers(f=>$(o.value.getMonth()+1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(I),{class:"w-6 h-6"})])]),e.createElementVNode("div",Me,[e.createElementVNode("button",{onClick:p[3]||(p[3]=e.withModifiers(f=>E(o.value.getFullYear()-1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(z),{class:"w-6 h-6"})]),e.createElementVNode("div",null,e.toDisplayString(o.value.getFullYear()),1),e.createElementVNode("button",{onClick:p[4]||(p[4]=e.withModifiers(f=>E(o.value.getFullYear()+1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(I),{class:"w-6 h-6"})])])]),e.createElementVNode("div",De,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(f,B)=>(e.openBlock(),e.createElementBlock("div",{class:"py-2 text-center bg-gray-200",key:B},e.toDisplayString(f),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,f=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["text-center",f.getMonth()-o.value.getMonth()===0?"text-vxvue-700":"text-gray-400"])},[e.createElementVNode("button",{class:e.normalizeClass([{"bg-vxvue-700 text-white":i.value&&f.getTime()===i.value.getTime(),"bg-gray-200":f.getTime()===e.unref(n).getTime(),"text-red-400":t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f},"py-2 px-3 rounded-sm"]),disabled:t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f,onClick:e.withModifiers(B=>t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f?null:D(f),["stop"])},e.toDisplayString(f.getDate()),11,_e)],2))),256))])],16)],2))}},Pe=["for"],Fe=["id","multiple","accept"],Ae={__name:"form-file-button",props:{modelValue:{type:Array},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)}},emits:["update:modelValue","form-data"],setup(t,{emit:m}){const l=m,r=t,n=i=>{const a=new FormData;for(let s of i)a.append(r.name,s,s.name);return a},o=i=>{const a=i.target.files||i.dataTransfer.files;if(a){const s=[...a];l("update:modelValue",s),l("form-data",n(s))}};return(i,a)=>(e.openBlock(),e.createElementBlock("label",{for:t.id},[e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode("Upload")]),e.createElementVNode("input",{type:"file",id:t.id,multiple:t.multiple,accept:t.accept,onChange:o,class:"hidden"},null,40,Fe)],8,Pe))}},Le=["value"],Te={key:0,disabled:"",value:""},ze=["value","selected"],q={__name:"form-select",props:{options:Array,modelValue:[String,Number],disabledLabel:String},emits:["update:modelValue"],setup(t,{emit:m}){const l=m;return(r,n)=>(e.openBlock(),e.createElementBlock("select",e.mergeProps(r.$attrs,{value:t.modelValue,class:"form-select",onChange:n[0]||(n[0]=o=>l("update:modelValue",o.target.value))}),[t.disabledLabel?(e.openBlock(),e.createElementBlock("option",Te,e.toDisplayString(t.disabledLabel),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,o=>(e.openBlock(),e.createElementBlock("option",{value:o.key!==void 0?o.key:o.label||o,selected:(o.key!==void 0?o.key:o.label||o)===t.modelValue},e.toDisplayString(o.label||o),9,ze))),256))],16,Le))}},Ie=["aria-checked"],Oe=["checked"],je={__name:"form-switch",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:m}){const l=t,r=m,n=e.computed(()=>l.modelValue?"bg-vxvue":"bg-slate-200"),o=e.computed(()=>l.modelValue?"translate-x-5":"translate-x-0"),i=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a});return(a,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("label",{class:e.normalizeClass(a.$attrs.class)},[e.createElementVNode("span",{class:e.normalizeClass([n.value,"inline-flex relative flex-shrink-0 w-11 h-6 rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out cursor-pointer focus:ring-2 focus:ring-offset-2 focus:outline-none focus:ring-vxvue"]),role:"switch","aria-checked":!!t.modelValue},[e.createElementVNode("span",{"aria-hidden":"true",class:e.normalizeClass([o.value,"inline-block w-5 h-5 bg-white rounded-full ring-0 shadow transition duration-200 ease-in-out transform pointer-events-none"])},null,2),e.createElementVNode("input",e.mergeProps({class:"hidden",value:"1",type:"checkbox",onChange:s[0]||(s[0]=d=>r("update:modelValue",d.target.checked))},i.value,{checked:t.modelValue}),null,16,Oe)],10,Ie)],2),e.renderSlot(a.$slots,"default")],64))}},K=(t,m)=>{const l=t.__vccOpts||t;for(const[r,n]of m)l[r]=n;return l},Ye=t=>(e.pushScopeId("data-v-1be10676"),t=t(),e.popScopeId(),t),He={"aria-live":"assertive",class:"flex fixed inset-0 z-50 items-start py-6 px-4 pointer-events-none sm:p-6"},Re={class:"flex flex-col items-center space-y-4 w-full"},Ue={class:"p-4"},We={class:"flex items-start"},qe={class:"flex-shrink-0"},Ke={class:"flex-1 pt-0.5 ml-3 w-0"},Ge={class:"font-bold"},Xe={class:"mt-1"},Ze={class:"flex flex-shrink-0 ml-4"},Je=Ye(()=>e.createElementVNode("span",{class:"sr-only"},"Close",-1)),Qe=K(Object.assign({inheritAttrs:!1},{__name:"message-toast",props:{title:String,message:[String,Array],timeout:{type:Number,default:5e3},active:{type:Boolean,default:!1}},emits:["timeout","close"],setup(t,{emit:m}){const l=t,r=m,n=e.ref(null),o=e.computed(()=>typeof l.message=="string"?[l.message]:l.message),i=()=>{window.clearTimeout(n.value),l.active&&l.timeout&&(n.value=window.setTimeout(()=>{r("timeout")},l.timeout))};return e.watch(()=>l.active,i),e.onMounted(i),(a,s)=>(e.openBlock(),e.createElementBlock("div",He,[e.createElementVNode("div",Re,[e.createVNode(e.Transition,{name:"messagetoast-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 ring-black ring-opacity-5 shadow-lg pointer-events-auto",a.$attrs.class])},[e.createElementVNode("div",Ue,[e.createElementVNode("div",We,[e.createElementVNode("div",qe,[e.renderSlot(a.$slots,"icon",{},void 0,!0)]),e.createElementVNode("div",Ke,[e.createElementVNode("p",Ge,[e.renderSlot(a.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)],!0)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,d=>(e.openBlock(),e.createElementBlock("p",Xe,[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(d),1)],!0)]))),256))]),e.createElementVNode("div",Ze,[e.createElementVNode("button",{onClick:s[0]||(s[0]=d=>r("close")),class:"inline-flex text-white bg-black bg-opacity-20 rounded-sm focus:ring-2 focus:outline-none hover:text-stone-200 focus:ring-stone-200"},[Je,e.createVNode(e.unref($e),{class:"w-5 h-5"})])])])])],2)):e.createCommentVNode("",!0)]),_:3})])]))}}),[["__scopeId","data-v-1be10676"]]),et={key:0,class:"fixed inset-0 z-[9998] bg-white/50 backdrop-blur-sm","aria-hidden":"true"},tt={key:0,class:"fixed inset-0 z-[9999]"},lt={class:"flex justify-center items-center h-screen"},ot={__name:"modal",props:{show:Boolean,containerClass:{type:String,default:"w-3/4 h-[90vh]"},headerClass:{type:String,default:""},contentClass:{type:String,default:""}},emits:["clicked-outside"],setup(t,{emit:m}){const l=m,r=e.ref(null);return T(r,()=>l("clicked-outside")),(n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.show?(e.openBlock(),e.createElementBlock("div",et)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"appear"},{default:e.withCtx(()=>[t.show?(e.openBlock(),e.createElementBlock("div",tt,[e.createElementVNode("div",lt,[e.createElementVNode("div",{class:e.normalizeClass(["overflow-hidden relative max-w-full bg-white rounded ring-1 ring-black ring-opacity-10 shadow-xl transition-all transform xl:max-w-screen-xl",t.containerClass]),ref_key:"container",ref:r},[e.createElementVNode("div",{class:e.normalizeClass(t.headerClass)},[e.renderSlot(n.$slots,"title")],2),e.createElementVNode("div",{class:e.normalizeClass(["overflow-y-auto h-full pb-4 mt-16",t.contentClass])},[e.renderSlot(n.$slots,"default")],2)],2)])])):e.createCommentVNode("",!0)]),_:3})],64))}},nt={class:"flex justify-between items-center px-4 sm:px-0"},at={class:"flex flex-1 -mt-px w-0"},rt=["onClick"],st={class:"hidden md:flex md:-mt-px"},ct={class:"flex flex-1 justify-end -mt-px w-0"},it=["onClick"],dt={__name:"pagination",props:{page:{type:Number,default:1},total:{type:Number,default:1},perPage:{type:Number,default:20,validator(t){return 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){return["above","below"].indexOf(t)!==-1}}},emits:["update:page"],setup(t,{emit:m}){const l=m,r=t,n=e.ref(Math.ceil(r.total/r.perPage)),o=e.ref(null),i=e.computed(()=>r.markerPosition==="above"?"border-t-2 pt-4":"border-b-2 pb-4"),a=e.computed(()=>{let c=[1];if(r.showAllPages||n.value<=7){for(let k=2;k<=n.value;++k)c.push(k);return c}return o.value>=n.value?c.push("dots",o.value-2,o.value-1):o.value-1&&o.value-1>1&&(o.value>1&&c.push("dots"),c.push(o.value-1)),o.value>1&&c.push(o.value),o.value+1<n.value&&(c.push(o.value+1),o.value<=1&&c.push(o.value+2),o.value+2<n.value&&c.push("dots")),o.value<n.value&&c.push(n.value),c}),s=()=>{o.value>1&&l("update:page",o.value-1)},d=()=>{o.value<n.value&&l("update:page",o.value+1)};return e.watch(()=>r.page,c=>o.value=Math.min(Math.max(c,1),n.value),{immediate:!0}),e.watch(()=>r.perPage,c=>{n.value=Math.ceil(r.total/r.perPage),l("update:page",1)}),e.watch(()=>r.total,c=>{n.value=Math.ceil(r.total/r.perPage),o.value>n.value&&l("update:page",1)}),(c,k)=>(e.openBlock(),e.createElementBlock("nav",nt,[e.createElementVNode("div",at,[t.showNavButtons?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:e.withModifiers(s,["prevent"]),href:"#",class:e.normalizeClass(["inline-flex items-center pr-1 text-sm font-medium text-gray-500 border-transparent hover:text-gray-700 hover:border-gray-300",[{"cursor-default pointer-events-none":o.value<=1},i.value]])},[e.createVNode(e.unref(z),{class:"w-5 h-5"}),e.createTextVNode(" "+e.toDisplayString(t.prevText),1)],10,rt)):e.createCommentVNode("",!0)]),e.createElementVNode("div",st,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(u,h)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u!=="dots"?"a":"span"),{onClick:e.withModifiers(b=>u!=="dots"?l("update:page",u):null,["prevent"]),key:h,href:u!=="dots"?"#":null,class:e.normalizeClass(["inline-flex items-center px-4 text-sm font-medium",[{"border-vxvue-500 text-vxvue-700":u===o.value,"border-transparent text-gray-500":u!==o.value,"hover:text-gray-700 hover:border-gray-300":u!=="dots"},i.value]])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u!=="dots"?u:"..."),1)]),_:2},1032,["onClick","href","class"]))),128))]),e.createElementVNode("div",ct,[t.showNavButtons?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:e.withModifiers(d,["prevent"]),href:"#",class:e.normalizeClass(["inline-flex items-center pl-1 text-sm font-medium text-gray-500 border-transparent hover:text-gray-700 hover:border-gray-300",[i.value,{"cursor-default pointer-events-none":o.value>=n.value}]])},[e.createTextVNode(e.toDisplayString(t.nextText)+" ",1),e.createVNode(e.unref(I),{class:"w-5 h-5"})],10,it)):e.createCommentVNode("",!0)])]))}};function mt(t,m){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"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.98 8.223A10.477 10.477 0 001.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.45 10.45 0 0112 4.5c4.756 0 8.773 3.162 10.065 7.498a10.523 10.523 0 01-4.293 5.774M6.228 6.228L3 3m3.228 3.228l3.65 3.65m7.894 7.894L21 21m-3.228-3.228l-3.65-3.65m0 0a3 3 0 10-4.243-4.243m4.242 4.242L9.88 9.88"})])}function ut(t,m){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"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.036 12.322a1.012 1.012 0 010-.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 11-6 0 3 3 0 016 0z"})])}const ft=["value","type"],pt=Object.assign({inheritAttrs:!1},{__name:"password-input",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:m}){const l=m,r=e.ref(!1),n=e.computed(()=>{let o=Object.assign({},e.useAttrs());return delete o.class,o});return(o,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("inline-block relative "+e.useAttrs().class)},[e.createElementVNode("input",e.mergeProps({value:t.modelValue,type:r.value?"text":"password",onInput:i[0]||(i[0]=a=>l("update:modelValue",a.target.value))},n.value,{class:"block pr-10 w-full form-input peer"}),null,16,ft),e.createElementVNode("button",{onClick:i[1]||(i[1]=e.withModifiers(a=>r.value=!r.value,["stop"])),class:"flex absolute inset-y-0 right-0 items-center pr-3 text-brand-700 hover:text-brand"},[r.value?(e.openBlock(),e.createBlock(e.unref(mt),{key:0,class:"w-5 h-5"})):(e.openBlock(),e.createBlock(e.unref(ut),{key:1,class:"w-5 h-5"}))]),e.renderSlot(o.$slots,"default")],2))}}),ht={class:"flex items-center pb-1"},gt=["id","checked"],kt=["for"],bt={key:1},yt=["href"],wt={key:0,class:"ml-6"},xt=Object.assign({inheritAttrs:!1},{__name:"simple-tree",props:{branch:{type:Object,default:{}}},emits:["branch-selected","expand"],setup(t,{emit:m}){const l=t,r=m,n=e.ref(!1);return e.onMounted(()=>{l.branch.current&&r("expand",!0)}),(o,i)=>{const a=e.resolveComponent("simple-tree",!0);return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([!t.branch.branches||!t.branch.branches.length?"terminates":"",o.$attrs.class])},[e.createElementVNode("div",ht,[t.branch.branches&&t.branch.branches.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("input",{type:"checkbox",id:"branch-"+t.branch.id,onClick:i[0]||(i[0]=s=>n.value=!n.value),checked:n.value,class:"hidden"},null,8,gt),e.createElementVNode("label",{for:"branch-"+t.branch.id,class:"mr-2"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value?e.unref(Ee):e.unref(Ce)),{class:"w-4 h-4 border"}))],8,kt)],64)):e.createCommentVNode("",!0),t.branch.current?(e.openBlock(),e.createElementBlock("strong",bt,e.toDisplayString(t.branch.label),1)):(e.openBlock(),e.createElementBlock("a",{key:2,href:t.branch.path,onClick:i[1]||(i[1]=e.withModifiers(s=>r("branch-selected",t.branch),["prevent"]))},e.toDisplayString(t.branch.label),9,yt))]),t.branch.branches&&t.branch.branches.length?e.withDirectives((e.openBlock(),e.createElementBlock("ul",wt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.branch.branches,s=>(e.openBlock(),e.createBlock(a,{branch:s,key:s.id,onBranchSelected:i[2]||(i[2]=d=>r("branch-selected",d)),onExpand:i[3]||(i[3]=d=>{n.value=d,r("expand",d)})},null,8,["branch"]))),128))],512)),[[e.vShow,n.value]]):e.createCommentVNode("",!0)],2)}}}),Bt=["id","aria-valuenow"],Vt=["id","aria-valuenow"],Et=Object.assign({inheritAttrs:!1},{__name:"slider",props:{min:{type:Number,default:0},max:{type:Number,default:100},vertical:Boolean,disabled:Boolean,modelValue:{type:[Number,Array],validator(t){return typeof t=="number"||t.every(m=>typeof m=="number")}}},emits:["update:modelValue"],setup(t,{emit:m}){const l=t,r=m,n=e.useAttrs(),o={x:null,y:null},i={w:null,h:null};let a=!1;const s=e.ref(null),d=e.ref(0),c=e.computed(()=>{const p=l.max,f=l.min;return l.modelValue instanceof Array?l.modelValue.map(B=>Math.max(Math.min(B,p),f)*100/(p-f)):Math.max(Math.min(l.modelValue,p),f)*100/(p-f)}),k=e.computed(()=>{if(l.modelValue instanceof Array){const p=Math.min(...c.value)+"%",f=Math.max(...c.value)-Math.min(...c.value)+"%";return l.vertical?{bottom:p,height:f}:{left:p,width:f}}return l.vertical?{bottom:0,height:c.value+"%"}:{width:c.value+"%"}}),u=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")+" touch-none absolute w-5 h-5 rounded-full border-2 bg-white transition-colors duration-200 "+(l.disabled?"":" focus:ring-4 focus:outline-none border-vxvue cursor-grab hover:bg-vxvue focus:ring-vxvue/50"),tabindex:0,role:"slider","aria-valuemin":l.min,"aria-valuemax":l.max}),h=p=>{let f=parseFloat(p.toFixed(10));if(f=Math.min(l.max,Math.max(l.min,f)),l.modelValue instanceof Array){let B=[...l.modelValue];B[d.value]=f,r("update:modelValue",B)}else r("update:modelValue",f)},b=p=>{const{pageX:f,pageY:B}=p.touches?p.touches[0]:p,V=l.vertical?(-B+o.y)/i.h:(f-o.x)/i.w;h(Math.floor((l.max-l.min)*V+l.min))},C=()=>{const{clientLeft:p,clientTop:f,scrollLeft:B,scrollTop:V}=document.documentElement,N=s.value.getBoundingClientRect();o.x=N.left+B-p,o.y=N.bottom+V-f,i.w=s.value.offsetWidth,i.h=s.value.offsetHeight},$=p=>{a&&(p.preventDefault(),b(p))},E=p=>{p.preventDefault(),p.currentTarget.focus(),C(),a=!0,document.addEventListener("mousemove",$),document.addEventListener("mouseup",D)},D=()=>{a&&(a=!1,document.removeEventListener("mousemove",$),document.removeEventListener("mouseup",D))},v=p=>{p.keyCode>=33&&p.keyCode<=40&&p.preventDefault();const f=l.modelValue[d.value]??l.modelValue;switch(p.keyCode){case 37:case 40:h(f-1);break;case 39:case 38:h(f+1);break;case 33:h(f+(l.max-l.min)/10);break;case 34:h(f-(l.max-l.min)/10);break;case 36:h(l.min);break;case 35:h(l.max)}},g=p=>{C(),b(p)};return(p,f)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({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"],ref_key:"track",ref:s},e.toHandlers(t.disabled?{}:{click:g},!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(k.value)},null,6)),t.modelValue.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(t.modelValue,(B,V)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({id:V?null:e.unref(n).id,style:t.vertical?{bottom:c.value[V]+"%"}:{left:c.value[V]+"%"},"aria-valuenow":t.modelValue[V]},e.toHandlers(t.disabled?{}:{focus:()=>d.value=V,keydown:v,mousedown:N=>{d.value=V,E(N)},touchstart:N=>{d.value=V,E(N)},touchmove:$,touchend:D},!0),u.value),null,16,Vt))),256)):(e.openBlock(),e.createElementBlock("button",e.mergeProps({key:1,id:e.unref(n).id,style:t.vertical?{bottom:c.value+"%"}:{left:c.value+"%"},"aria-valuenow":t.modelValue},e.toHandlers(t.disabled?{}:{focus:()=>d.value=0,keydown:v,mousedown:B=>{d.value=0,E(B)},touchstart:B=>{d.value=0,E(B)},touchmove:$,touchend:D},!0),u.value),null,16,Bt))],16))}}),Ct={class:"text-white bg-slate-700"},$t=["onClick"],Nt={class:"flex items-center"},St={key:0,xmlns:"http://www.w3.org/2000/svg",class:"flex-shrink-0 ml-2 w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},Mt=["d"],Dt={key:1,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 9l4-4 4 4m0 6l-4 4-4-4"},_t=K({__name:"sortable",props:{columns:{type:Array,required:!0,validator:t=>{for(const m of t)if(m.label===void 0||m.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},sortDirection:{type:String,validator:t=>!t||["asc","desc"].indexOf(t)!==-1},keyProperty:{type:String,default:"key"}},emits:["before-sort","after-sort"],setup(t,{emit:m}){const l=t,r=m,n=e.ref(l.sortProp),o=e.ref(l.sortDirection),i=e.computed(()=>{let s=l.rows.slice();const d=l.columns.find(({prop:c})=>c===n.value);return d&&(o.value==="asc"&&d.sortAscFunction?s.sort(d.sortAscFunction):o.value==="desc"&&d.sortDescFunction?s.sort(d.sortDescFunction):s.sort((c,k)=>c[n.value]<k[n.value]?o.value==="asc"?-1:1:c[n.value]>k[n.value]?o.value==="asc"?1:-1:0)),s.slice(l.offset||0,(l.offset||0)+(l.count||s.length))}),a=s=>{r("before-sort",{prop:n.value,dir:o.value}),n.value===s?o.value=o.value==="asc"?"desc":"asc":(n.value=s,o.value=o.value||"asc"),e.nextTick(()=>r("after-sort",{prop:n.value,dir:o.value}))};return(s,d)=>(e.openBlock(),e.createElementBlock("table",{class:e.normalizeClass(s.$attrs.class||"w-full divide-y divide-y-slate-900 table-fixed")},[e.createElementVNode("thead",Ct,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,c=>(e.openBlock(),e.createElementBlock("th",{scope:"col",class:e.normalizeClass(["py-3 px-6 text-left",[{"cursor-pointer":c.sortable,active:n.value===c.prop},c.cssClass]]),onClick:k=>c.sortable?a(c.prop):null},[e.renderSlot(s.$slots,c.prop+"-header",{column:c,sortDir:o.value,sortProp:n.value},()=>[e.createElementVNode("div",Nt,[e.createElementVNode("span",null,e.toDisplayString(c.label),1),c.sortable?(e.openBlock(),e.createElementBlock("svg",St,[n.value===c.prop?(e.openBlock(),e.createElementBlock("path",{key:0,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:o.value==="asc"?"M19 9l-7 7-7-7":"M5 15l7-7 7 7"},null,8,Mt)):(e.openBlock(),e.createElementBlock("path",Dt))])):e.createCommentVNode("",!0)])],!0)],10,$t))),256))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,c=>(e.openBlock(),e.createElementBlock("tr",{key:c[t.keyProperty],class:e.normalizeClass(c.cssClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,k=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(["py-3 px-6 whitespace-nowrap text-ellipsis overflow-hidden",{active:n.value===k.prop}])},[e.renderSlot(s.$slots,k.prop,{row:c},()=>[e.createTextVNode(e.toDisplayString(c[k.prop]),1)],!0)],2))),256))],2))),128))])],2))}},[["__scopeId","data-v-b7864909"]]),vt={class:"sm:hidden"},Pt={class:"hidden sm:block"},Ft={class:"border-b border-gray-200"},At={class:"flex -mb-px space-x-8","aria-label":"Tabs"},Lt=["onClick","aria-current"],Tt={__name:"tabs",props:{items:{type:Array,default:[]},activeIndex:{type:Number,default:0}},emits:["update:active-index"],setup(t,{emit:m}){const l=t,r=m,n=e.ref(l.items[l.activeIndex]||{}),o=e.computed(()=>{let a=[];return l.items.forEach((s,d)=>{s.disabled||a.push({label:s.name,key:d})}),a});e.watch(()=>l.activeIndex,a=>{n.value=l.items[a]||{}});const i=a=>{a.disabled||(n.value=a,r("update:active-index",l.items.indexOf(a)))};return(a,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",vt,[e.createVNode(q,{options:o.value,"model-value":t.activeIndex,"onUpdate:modelValue":s[0]||(s[0]=d=>r("update:activeIndex",d)),class:"w-full"},null,8,["options","model-value"])]),e.createElementVNode("div",Pt,[e.createElementVNode("div",Ft,[e.createElementVNode("nav",At,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,d=>(e.openBlock(),e.createElementBlock("a",{key:d.name,href:"#",onClick:e.withModifiers(c=>i(d),["prevent"]),class:e.normalizeClass([n.value===d?"border-vxvue-500 text-vxvue-600":"border-transparent text-gray-900 hover:text-gray-700 hover:border-gray-300",d.disabled?"cursor-not-allowed text-gray-400 hover:border-transparent":"","group inline-flex items-center py-4 px-1 border-b-4 font-medium"]),"aria-current":n.value===d?"page":void 0},[e.renderSlot(a.$slots,"icon",{tab:d}),e.createElementVNode("span",null,[e.renderSlot(a.$slots,"default",{tab:d},()=>[e.createTextVNode(e.toDisplayString(d.name),1)])]),d.badge?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass([n.value===d?"bg-vxvue-50 text-vxvue-700":"bg-gray-200 text-gray-900",d.disabled?"bg-gray-100 text-gray-400":"","hidden ml-3 py-0.5 px-2.5 rounded-full text-xs font-medium md:inline-block"])},e.toDisplayString(d.badge),3)):e.createCommentVNode("",!0)],10,Lt))),128))])])])],64))}};x.Autocomplete=re,x.Confirm=be,x.DateInput=W,x.Datepicker=ve,x.FormFileButton=Ae,x.FormSelect=q,x.FormSwitch=je,x.MessageToast=Qe,x.Modal=ot,x.Pagination=dt,x.PasswordInput=pt,x.SimpleTree=xt,x.Slider=Et,x.Sortable=_t,x.Tabs=Tt,Object.defineProperty(x,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(x,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(x=typeof globalThis<"u"?globalThis:x||self,e(x.vxVue={},x.Vue))})(this,function(x,e){"use strict";function K(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function j(t){return typeof t=="function"?t():e.unref(t)}const Y=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const G=Object.prototype.toString,X=t=>G.call(t)==="[object Object]",F=()=>{},J=Q();function Q(){var t,d;return Y&&((t=window==null?void 0:window.navigator)==null?void 0:t.userAgent)&&(/iP(ad|hone|od)/.test(window.navigator.userAgent)||((d=window==null?void 0:window.navigator)==null?void 0:d.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}const ee=/[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}|SSS/g;function te(t,d,l,r){let n=t<12?"AM":"PM";return r&&(n=n.split("").reduce((a,c)=>a+=`${c}.`,"")),l?n.toLowerCase():n}function v(t){const d=["th","st","nd","rd"],l=t%100;return t+(d[(l-20)%10]||d[l]||d[0])}function H(t,d,l={}){var r;const n=t.getFullYear(),a=t.getMonth(),c=t.getDate(),o=t.getHours(),s=t.getMinutes(),m=t.getSeconds(),i=t.getMilliseconds(),k=t.getDay(),u=(r=l.customMeridiem)!=null?r:te,h={Yo:()=>v(n),YY:()=>String(n).slice(-2),YYYY:()=>n,M:()=>a+1,Mo:()=>v(a+1),MM:()=>`${a+1}`.padStart(2,"0"),MMM:()=>t.toLocaleDateString(l.locales,{month:"short"}),MMMM:()=>t.toLocaleDateString(l.locales,{month:"long"}),D:()=>String(c),Do:()=>v(c),DD:()=>`${c}`.padStart(2,"0"),H:()=>String(o),Ho:()=>v(o),HH:()=>`${o}`.padStart(2,"0"),h:()=>`${o%12||12}`.padStart(1,"0"),ho:()=>v(o%12||12),hh:()=>`${o%12||12}`.padStart(2,"0"),m:()=>String(s),mo:()=>v(s),mm:()=>`${s}`.padStart(2,"0"),s:()=>String(m),so:()=>v(m),ss:()=>`${m}`.padStart(2,"0"),SSS:()=>`${i}`.padStart(3,"0"),d:()=>k,dd:()=>t.toLocaleDateString(l.locales,{weekday:"narrow"}),ddd:()=>t.toLocaleDateString(l.locales,{weekday:"short"}),dddd:()=>t.toLocaleDateString(l.locales,{weekday:"long"}),A:()=>u(o,s),AA:()=>u(o,s,!1,!0),a:()=>u(o,s,!0),aa:()=>u(o,s,!0,!0)};return d.replace(ee,(b,C)=>{var $,E;return(E=C??(($=h[b])==null?void 0:$.call(h)))!=null?E:b})}function P(t){var d;const l=j(t);return(d=l==null?void 0:l.$el)!=null?d:l}const R=Y?window:void 0;function L(...t){let d,l,r,n;if(typeof t[0]=="string"||Array.isArray(t[0])?([l,r,n]=t,d=R):[d,l,r,n]=t,!d)return F;Array.isArray(l)||(l=[l]),Array.isArray(r)||(r=[r]);const a=[],c=()=>{a.forEach(i=>i()),a.length=0},o=(i,k,u,h)=>(i.addEventListener(k,u,h),()=>i.removeEventListener(k,u,h)),s=e.watch(()=>[P(d),j(n)],([i,k])=>{if(c(),!i)return;const u=X(k)?{...k}:k;a.push(...l.flatMap(h=>r.map(b=>o(i,h,b,u))))},{immediate:!0,flush:"post"}),m=()=>{s(),c()};return K(m),m}let U=!1;function T(t,d,l={}){const{window:r=R,ignore:n=[],capture:a=!0,detectIframe:c=!1}=l;if(!r)return F;J&&!U&&(U=!0,Array.from(r.document.body.children).forEach(u=>u.addEventListener("click",F)),r.document.documentElement.addEventListener("click",F));let o=!0;const s=u=>n.some(h=>{if(typeof h=="string")return Array.from(r.document.querySelectorAll(h)).some(b=>b===u.target||u.composedPath().includes(b));{const b=P(h);return b&&(u.target===b||u.composedPath().includes(b))}}),i=[L(r,"click",u=>{const h=P(t);if(!(!h||h===u.target||u.composedPath().includes(h))){if(u.detail===0&&(o=!s(u)),!o){o=!0;return}d(u)}},{passive:!0,capture:a}),L(r,"pointerdown",u=>{const h=P(t);o=!s(u)&&!!(h&&!u.composedPath().includes(h))},{passive:!0}),c&&L(r,"blur",u=>{setTimeout(()=>{var h;const b=P(t);((h=r.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(b!=null&&b.contains(r.document.activeElement))&&d(u)},0)})].filter(Boolean);return()=>i.forEach(u=>u())}const le=["value","onKeydown"],ae={class:"flex absolute inset-y-0 right-0 items-center pr-3 text-vxvue-700"},ne={key:0,class:"size-5 animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},oe=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)],re=Object.assign({inheritAttrs:!1},{__name:"autocomplete",props:{modelValue:{type:String,default:""},search:{type:Function,required:!0},baseClass:{type:String,default:"vxvue-autocomplete"},resultListClass:{type:String,default:"result-list"},resultItemClass:{type:String,default:"result-list-item"},inputClass:{type:String,default:"autocomplete-input"},getResultValue:{type:Function,default:t=>t},autoSelect:Boolean},emits:["update:modelValue","blur","submit"],setup(t,{emit:d}){const l=d,r=t,n=e.useAttrs(),c=(()=>{let y=0;return w=>(w||"")+ ++y})()((n.id||"autocomplete")+"-"),o=e.ref([]),s=e.ref(-1),m=e.ref(0),i=e.ref(!1),k=e.ref(!1),u=e.ref("top-0 translate-y-12"),h=e.ref(!0),b=e.ref(null),C=e.ref(null),$=e.ref(null),E=e.computed(()=>o.value.map((y,w)=>({id:(n.id||"autocomplete")+"-item-"+w,class:["autocomplete-item",r.resultItemClass,{"bg-vxvue-700 text-white":s.value===w}],"data-result-index":w,role:"option",...s.value===w?{"aria-selected":"true"}:{}}))),D=e.computed(()=>({role:"combobox",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false","aria-autocomplete":"list","aria-haspopup":"listbox","aria-owns":c,"aria-expanded":i.value?"true":"false","aria-activedescendant":s.value>-1?E.value[s.value].id:"",...n})),_=e.computed(()=>({id:c,class:["autocomplete-list absolute min-w-full transform z-10",r.resultListClass,u.value],role:"listbox"})),g=()=>{s.value=-1,o.value=[],i.value=!1,h.value=!0},p=y=>{const w=r.search(y);if(w instanceof Promise){const M=++m.value;k.value=!0,w.then(S=>{M===m.value&&(o.value=S,k.value=!1,o.value.length?(s.value=r.autoSelect?0:-1,i.value=!0):g())})}else o.value=w,o.value.length===0?g():(s.value=r.autoSelect?0:-1,i.value=!0)},f=()=>{const y=o.value[s.value];return y&&l("update:modelValue",r.getResultValue(y)),g(),y},B=y=>{l("update:modelValue",y),p(y)},V=y=>p(y.target.value),N=()=>{g(),l("blur")},A=()=>{const y=o.value.length;s.value=((s.value-1)%y+y)%y},O=y=>{i.value||V(y);const w=o.value.length;s.value=((s.value+1)%w+w)%w},Tt=()=>{g(),l("update:modelValue","")},zt=()=>l("submit",f()),It=y=>{const w=y.target.closest("[data-result-index]");w&&(s.value=parseInt(w.dataset.resultIndex,10),l("submit",f()))};return T($,g),e.onUpdated(()=>{if(b.value){const y=C.value.getBoundingClientRect(),w=b.value.getBoundingClientRect();h.value&&o.value.length&&(h.value=!1,u.value=y.bottom+w.height>window.innerHeight&&window.innerHeight-y.bottom<y.top&&window.pageYOffset+y.top-w.height>0?"bottom-0 -translate-y-12":"top-0 translate-y-12");const M=b.value.querySelector('[data-result-index="'+s.value+'"]');if(M){let S=M.getBoundingClientRect();S.top<w.top?b.value.scrollTop-=w.top-S.top:S.bottom>w.bottom&&(b.value.scrollTop+=S.bottom-w.bottom)}}}),(y,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",y.$attrs.class]),ref_key:"container",ref:$},[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:C,class:"block pr-10 w-full form-input focus:border-vxvue",value:t.modelValue},D.value,{onInput:w[0]||(w[0]=M=>B(M.target.value)),onKeydown:[e.withKeys(zt,["enter"]),e.withKeys(Tt,["esc"]),e.withKeys(f,["tab"]),e.withKeys(e.withModifiers(A,["prevent"]),["up"]),e.withKeys(e.withModifiers(O,["prevent"]),["down"])],onFocus:V,onBlur:N}),null,16,le),e.createElementVNode("span",ae,[k.value?(e.openBlock(),e.createElementBlock("svg",ne,oe)):e.createCommentVNode("",!0)]),o.value.length?(e.openBlock(),e.createElementBlock("ul",e.mergeProps({key:0,ref_key:"resultList",ref:b},_.value,{onClick:It,onMousedown:w[1]||(w[1]=e.withModifiers(()=>{},["prevent"]))}),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(M,S)=>e.renderSlot(y.$slots,"result",{result:M,props:E.value[S]},()=>[(e.openBlock(),e.createElementBlock("li",e.mergeProps({key:E.value[S].id},E.value[S]),e.toDisplayString(t.getResultValue(M)),17))])),256))],16)):e.createCommentVNode("",!0)],2))}}),se={key:0,class:"fixed inset-0 z-50 bg-black bg-opacity-50 backdrop-blur-sm","aria-hidden":"true"},ie={key:0,class:"overflow-y-auto fixed inset-0 z-50"},ce={class:"flex justify-center items-center min-h-screen text-center sm:block sm:p-0"},de={key:0},me=e.createElementVNode("span",{class:"hidden sm:inline-block sm:h-screen sm:align-middle","aria-hidden":"true"},"",-1),ue={class:"inline-block overflow-hidden text-left align-bottom bg-white rounded shadow-xl transition-all transform sm:my-8 sm:w-full sm:max-w-sm sm:align-middle lg:max-w-lg"},fe={class:"px-4 pb-4 mt-4 sm:px-6 sm:pb-6 sm:mt-5"},pe={class:"flex flex-row items-center"},he={class:"flex-shrink-0"},ge={class:"flex-grow text-center"},ke=["onClick"],be={__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-400"},buttonClass:{type:String,default:"button"}},setup(t,{expose:d}){const l=t,r=e.ref(""),n=e.ref(""),a=e.ref(!1);let c=null,o=null;const s=e.computed(()=>Array.isArray(l.buttons)?l.buttons:[l.buttons]),m=e.ref(null),i=(u,h)=>{a.value=!1,u.value!==void 0?u.value?c():o():h?o():c()};return d({open:(u,h)=>(r.value=u,n.value=h,a.value=!0,e.nextTick(()=>m.value.firstElementChild.focus()),new Promise((b,C)=>{c=b,o=C}))}),(u,h)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.value?(e.openBlock(),e.createElementBlock("div",se)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"appear"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",ie,[e.createElementVNode("div",ce,[a.value?(e.openBlock(),e.createElementBlock("div",de,[me,e.createElementVNode("div",ue,[r.value?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(["py-4 pt-4 text-lg font-medium text-center sm:py-6",t.headerClass])},[e.renderSlot(u.$slots,"title",{title:r.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",fe,[e.createElementVNode("div",pe,[e.createElementVNode("div",he,[e.renderSlot(u.$slots,"icon")]),e.createElementVNode("p",ge,[e.renderSlot(u.$slots,"default",{message:n.value},()=>[e.createTextVNode(e.toDisplayString(n.value),1)])])]),e.createElementVNode("div",{class:"flex justify-center mt-5 space-x-2 sm:mt-6",ref_key:"buttonsContainer",ref:m},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(b,C)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass([t.buttonClass,b.class]),onClick:e.withModifiers($=>i(b,C),["prevent"])},e.toDisplayString(b.label),11,ke))),256))],512)])])])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:3})],64))}};function ye(t,d){const l=e.ref(!1),r=e.toValue(d);let n,a=r.toLowerCase().replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),c=[];if((n=r.match(/\bd\b/gi))&&n.length===1)a=a.replace("d","(\\d{1,2})");else if((n=r.match(/\bdd\b/gi))&&n.length===1)a=a.replace("dd","(\\d{2})");else return{date:l};if(c.push({srcPos:r.toLowerCase().indexOf("d"),destPos:2}),(n=r.match(/\bm\b/gi))&&n.length===1)a=a.replace("m","(\\d{1,2})");else if((n=r.match(/\bmm\b/gi))&&n.length===1)a=a.replace("mm","(\\d{2})");else return{date:l};if(c.push({srcPos:r.toLowerCase().indexOf("m"),destPos:1}),(n=r.match(/\byyyy\b/gi))&&n.length===1)a=a.replace("yyyy","(\\d{4})");else return{date:l};if(c.push({srcPos:r.toLowerCase().indexOf("y"),destPos:0}),!(n=e.toValue(t).match(a)))return{date:l};n.shift(),c.sort((i,k)=>i.srcPos<k.srcPos?-1:1);let o=[],s,m;for(;s=n.shift();)m=c.shift(),o[m.destPos]=s;return o=Date.parse(o.join("-")),o&&(o=new Date(o),l.value=new Date(o.getFullYear(),o.getMonth(),o.getDate(),0,0,0)),{date:l}}const we={key:0},xe={class:"text-vxvue-700"},Be=[e.createElementVNode("svg",{class:"w-2 h-2",stroke:"currentColor",fill:"none",viewBox:"0 0 8 8"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-width":"1.5",d:"M1 1l6 6m0-6L1 7"})],-1)],Ve=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-6 h-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})],-1)],W=Object.assign({inheritAttrs:!1},{__name:"date-input",props:{outputFormat:{type:String,default:"YYYY-MM-DD"},inputFormat:{type:String,default:"YYYY-MM-DD"},showButton:{type:Boolean,default:!0},locale:{type:String,default:"default"},modelValue:Date},emits:["update:modelValue","toggle-datepicker"],setup(t,{emit:d}){const l=d,r=t,n=e.ref(""),a=e.computed(()=>r.modelValue?H(r.modelValue,r.outputFormat):""),c=e.computed(()=>{let o=Object.assign({},e.useAttrs());return delete o.class,o});return e.watch(()=>r.modelValue,o=>n.value=o?H(o,r.outputFormat):""),(o,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-block relative",o.$attrs.class])},[a.value?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",{class:e.normalizeClass(["block flex items-center w-full form-input bg-vxvue-50",{"pr-10":t.showButton}])},[e.createElementVNode("span",xe,e.toDisplayString(a.value),1),e.createElementVNode("button",{onClick:s[0]||(s[0]=m=>l("update:modelValue",null)),class:"inline-flex flex-shrink-0 justify-center items-center ml-2 w-4 h-4 rounded-full focus:text-white focus:outline-none text-vxvue hover:bg-vxvue-100 hover:text-vue-700 focus:bg-vxvue-700"},Be)],2)])):e.withDirectives((e.openBlock(),e.createElementBlock("input",e.mergeProps({key:1,type:"text",class:["block w-full form-input peer focus:border-vxvue",{"pr-10":t.showButton}],"onUpdate:modelValue":s[1]||(s[1]=m=>n.value=m),onBlur:s[2]||(s[2]=m=>{var i;return l("update:modelValue",((i=e.unref(ye)(n.value,r.inputFormat).date)==null?void 0:i.value)||null)}),onInput:s[3]||(s[3]=e.withModifiers(()=>{},["prevent"]))},c.value),null,16)),[[e.vModelText,n.value]]),t.showButton?(e.openBlock(),e.createElementBlock("button",{key:2,class:"flex absolute inset-y-0 right-0 items-center px-2 text-vxvue-700 hover:text-vxvue","aria-label":"datepicker-toggle",onClick:s[4]||(s[4]=e.withModifiers(m=>l("toggle-datepicker"),["stop"])),ref:"toggleButton"},Ve,512)):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default")],2))}});function Ee(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 z(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 Ce(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 $e(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 Se(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 Me(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 De={class:"flex items-center py-2 px-3 text-white bg-vxvue-700"},ve={class:"flex w-1/2 justify-between"},_e={class:"flex w-1/2 justify-between"},Pe={class:"grid grid-cols-7 gap-0.5 p-0.5"},Ae=["disabled","onClick"],Fe=Object.assign({inheritAttrs:!1},{__name:"datepicker",props:{modelValue:[Date,Boolean],validFrom:Date,validUntil:Date,dayNames:{type:Array,default:()=>"S M T W T F S".split(" ")},locale:{type:String,default:"default"},startOfWeekIndex:{type:Number,default:0,validator:t=>t===0||t===1},hasInput:{type:Boolean,default:!0}},emits:["update:modelValue","month-change","year-change"],setup(t,{emit:d}){const l=t,r=d,n=(()=>{let g=new Date;return new Date(g.getFullYear(),g.getMonth(),g.getDate())})(),a=e.ref(new Date(n.getFullYear(),n.getMonth(),1)),c=e.ref(null),o=e.ref(!l.hasInput),s=e.ref("left-0"),m=e.ref("top-0"),i=e.ref(null),k=e.ref(null),u=e.ref(null),h=e.computed(()=>l.hasInput?{class:["absolute",o.value?"block":"hidden"]}:{}),b=e.computed(()=>{const g=[],p=a.value.getFullYear(),f=a.value.getMonth(),B=new Date(p,f+1,0),V=new Date(p,f,0).getDay()+1-l.startOfWeekIndex,N=(6+l.startOfWeekIndex-B.getDay())%7;for(let A=-V,O=B.getDate()+N;A<O;++A)g.push(new Date(p,f,A+1));return g}),C=e.computed(()=>l.startOfWeekIndex?l.dayNames.slice(1).concat(l.dayNames[0]):l.dayNames.slice());e.watch(()=>l.modelValue,g=>{g?(c.value=new Date(g.getFullYear(),g.getMonth(),g.getDate()),a.value=new Date(c.value.getTime())):(c.value=null,a.value=new Date(n.getTime())),a.value.setDate(1)},{immediate:!0}),e.watch(o,g=>{g&&l.hasInput&&e.nextTick(()=>{const p=i.value.$el.getBoundingClientRect(),f=k.value.getBoundingClientRect();s.value=p.left+f.width>window.innerWidth?"right-0":"left-0",m.value=p.bottom+f.height>window.innerHeight?"bottom-0 -translate-y-12":"top-0 translate-y-12"})}),T(k,()=>o.value=!1,{ignore:[u]});const $=g=>{a.value=new Date(a.value.getFullYear(),g,1),r("month-change",a.value)},E=g=>{a.value=new Date(g,a.value.getMonth(),1),r("year-change",a.value)},D=g=>{c.value=g,r("update:modelValue",g),o.value=!l.hasInput},_=g=>{c.value=g,r("update:modelValue",g)};return e.onMounted(()=>{var g;return u.value=(g=i.value)==null?void 0:g.$refs.toggleButton}),(g,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative",g.$attrs.class])},[t.hasInput?(e.openBlock(),e.createBlock(W,e.mergeProps({key:0,modelValue:c.value,onToggleDatepicker:p[0]||(p[0]=f=>o.value=!o.value),"onUpdate:modelValue":_},g.$attrs,{ref_key:"input",ref:i,class:"w-full",locale:t.locale}),{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default")]),_:3},16,["modelValue","locale"])):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({class:"z-10 bg-white shadow-md"},h.value,{ref_key:"calendar",ref:k,class:[s.value,m.value]}),[e.createElementVNode("div",De,[e.createElementVNode("div",ve,[e.createElementVNode("button",{onClick:p[1]||(p[1]=e.withModifiers(f=>$(a.value.getMonth()-1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(z),{class:"w-6 h-6"})]),e.createElementVNode("span",null,e.toDisplayString(a.value.toLocaleString(t.locale,{month:"long"})),1),e.createElementVNode("button",{onClick:p[2]||(p[2]=e.withModifiers(f=>$(a.value.getMonth()+1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(I),{class:"w-6 h-6"})])]),e.createElementVNode("div",_e,[e.createElementVNode("button",{onClick:p[3]||(p[3]=e.withModifiers(f=>E(a.value.getFullYear()-1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(z),{class:"w-6 h-6"})]),e.createElementVNode("div",null,e.toDisplayString(a.value.getFullYear()),1),e.createElementVNode("button",{onClick:p[4]||(p[4]=e.withModifiers(f=>E(a.value.getFullYear()+1),["stop"])),class:"flex-shrink-0 text-vxvue-100 hover:text-vxvue-50"},[e.createVNode(e.unref(I),{class:"w-6 h-6"})])])]),e.createElementVNode("div",Pe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(f,B)=>(e.openBlock(),e.createElementBlock("div",{class:"py-2 text-center bg-gray-200",key:B},e.toDisplayString(f),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,f=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["text-center",f.getMonth()-a.value.getMonth()===0?"text-vxvue-700":"text-gray-400"])},[e.createElementVNode("button",{class:e.normalizeClass([{"bg-vxvue-700 text-white":c.value&&f.getTime()===c.value.getTime(),"bg-gray-200":f.getTime()===e.unref(n).getTime(),"text-red-400":t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f},"py-2 px-3 rounded-sm"]),disabled:t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f,onClick:e.withModifiers(B=>t.validFrom&&t.validFrom>f||t.validUntil&&t.validUntil<f?null:D(f),["stop"])},e.toDisplayString(f.getDate()),11,Ae)],2))),256))])],16)],2))}}),Le=["for"],Te=["id","multiple","accept"],ze={__name:"form-file-button",props:{modelValue:{type:Array},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)}},emits:["update:modelValue","form-data"],setup(t,{emit:d}){const l=d,r=t,n=c=>{const o=new FormData;for(let s of c)o.append(r.name,s,s.name);return o},a=c=>{const o=c.target.files||c.dataTransfer.files;if(o){const s=[...o];l("update:modelValue",s),l("form-data",n(s))}};return(c,o)=>(e.openBlock(),e.createElementBlock("label",{for:t.id},[e.renderSlot(c.$slots,"default",{},()=>[e.createTextVNode("Upload")]),e.createElementVNode("input",{type:"file",id:t.id,multiple:t.multiple,accept:t.accept,onChange:a,class:"hidden"},null,40,Te)],8,Le))}},Ie=["value"],Oe={key:0,disabled:"",value:""},je=["value","selected"],Z={__name:"form-select",props:{options:Array,modelValue:[String,Number],disabledLabel:String},emits:["update:modelValue"],setup(t,{emit:d}){const l=d;return(r,n)=>(e.openBlock(),e.createElementBlock("select",e.mergeProps(r.$attrs,{value:t.modelValue,class:"form-select",onChange:n[0]||(n[0]=a=>l("update:modelValue",a.target.value))}),[t.disabledLabel?(e.openBlock(),e.createElementBlock("option",Oe,e.toDisplayString(t.disabledLabel),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,a=>(e.openBlock(),e.createElementBlock("option",{value:a.key!==void 0?a.key:a.label||a,selected:(a.key!==void 0?a.key:a.label||a)===t.modelValue},e.toDisplayString(a.label||a),9,je))),256))],16,Ie))}},Ye=["aria-checked","aria-label"],He=["checked"],Re={__name:"form-switch",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:d}){const l=t,r=d,n=e.computed(()=>l.modelValue?"bg-vxvue":"bg-slate-200"),a=e.computed(()=>l.modelValue?"translate-x-5":"translate-x-0"),c=e.computed(()=>{let o=Object.assign({},e.useAttrs());return delete o.class,o});return(o,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("label",{class:e.normalizeClass(o.$attrs.class)},[e.createElementVNode("span",{class:e.normalizeClass([n.value,"inline-flex relative flex-shrink-0 w-11 h-6 rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out cursor-pointer focus:ring-2 focus:ring-offset-2 focus:outline-none focus:ring-vxvue"]),role:"switch","aria-checked":!!t.modelValue,"aria-label":o.$attrs["aria-label"]},[e.createElementVNode("span",{"aria-hidden":"true",class:e.normalizeClass([a.value,"inline-block size-5 bg-white rounded-full ring-0 shadow transition duration-200 ease-in-out transform pointer-events-none"])},null,2),e.createElementVNode("input",e.mergeProps({class:"hidden",value:"1",type:"checkbox",onChange:s[0]||(s[0]=m=>r("update:modelValue",m.target.checked))},c.value,{checked:t.modelValue}),null,16,He)],10,Ye)],2),e.renderSlot(o.$slots,"default")],64))}},q=(t,d)=>{const l=t.__vccOpts||t;for(const[r,n]of d)l[r]=n;return l},Ue=t=>(e.pushScopeId("data-v-62f8007a"),t=t(),e.popScopeId(),t),We={"aria-live":"assertive",class:"flex fixed inset-0 z-50 items-start py-6 px-4 pointer-events-none sm:p-6"},Ze={class:"flex flex-col items-center space-y-4 w-full"},qe={class:"p-4"},Ke={class:"flex items-start"},Ge={class:"flex-shrink-0"},Xe={class:"flex-1 pt-0.5 ml-3 w-0"},Je={class:"font-bold"},Qe={class:"mt-1"},et={class:"flex flex-shrink-0 ml-4"},tt=Ue(()=>e.createElementVNode("span",{class:"sr-only"},"Close",-1)),lt=q(Object.assign({inheritAttrs:!1},{__name:"message-toast",props:{title:String,message:[String,Array],timeout:{type:Number,default:5e3},active:{type:Boolean,default:!1}},emits:["timeout","close"],setup(t,{emit:d}){const l=t,r=d,n=e.ref(null),a=e.computed(()=>typeof l.message=="string"?[l.message]:l.message),c=()=>{window.clearTimeout(n.value),l.active&&l.timeout&&(n.value=window.setTimeout(()=>{r("timeout")},l.timeout))};return e.watch(()=>l.active,c),e.onMounted(c),(o,s)=>(e.openBlock(),e.createElementBlock("div",We,[e.createElementVNode("div",Ze,[e.createVNode(e.Transition,{name:"messagetoast-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 ring-black ring-opacity-5 shadow-lg pointer-events-auto",o.$attrs.class])},[e.createElementVNode("div",qe,[e.createElementVNode("div",Ke,[e.createElementVNode("div",Ge,[e.renderSlot(o.$slots,"icon",{},void 0,!0)]),e.createElementVNode("div",Xe,[e.createElementVNode("p",Je,[e.renderSlot(o.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)],!0)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,m=>(e.openBlock(),e.createElementBlock("p",Qe,[e.renderSlot(o.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(m),1)],!0)]))),256))]),e.createElementVNode("div",et,[e.createElementVNode("button",{onClick:s[0]||(s[0]=m=>r("close")),class:"inline-flex text-white bg-black bg-opacity-20 rounded-sm focus:ring-2 focus:outline-none hover:text-stone-200 focus:ring-stone-200"},[tt,e.createVNode(e.unref(Me),{class:"size-5"})])])])])],2)):e.createCommentVNode("",!0)]),_:3})])]))}}),[["__scopeId","data-v-62f8007a"]]),at={key:0,class:"fixed inset-0 z-[9998] bg-white/50 backdrop-blur-sm","aria-hidden":"true"},nt={key:0,class:"fixed inset-0 z-[9999]"},ot={class:"flex justify-center items-center h-screen"},rt={__name:"modal",props:{show:Boolean,containerClass:{type:String,default:"w-3/4 h-[90vh]"},headerClass:{type:String,default:""},contentClass:{type:String,default:""}},emits:["clicked-outside"],setup(t,{emit:d}){const l=d,r=e.ref(null);return T(r,()=>l("clicked-outside")),(n,a)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.show?(e.openBlock(),e.createElementBlock("div",at)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"appear"},{default:e.withCtx(()=>[t.show?(e.openBlock(),e.createElementBlock("div",nt,[e.createElementVNode("div",ot,[e.createElementVNode("div",{class:e.normalizeClass(["overflow-hidden relative max-w-full bg-white rounded ring-1 ring-black ring-opacity-10 shadow-xl transition-all transform xl:max-w-screen-xl",t.containerClass]),ref_key:"container",ref:r},[e.createElementVNode("div",{class:e.normalizeClass(t.headerClass)},[e.renderSlot(n.$slots,"title")],2),e.createElementVNode("div",{class:e.normalizeClass(["overflow-y-auto h-full pb-4 mt-16",t.contentClass])},[e.renderSlot(n.$slots,"default")],2)],2)])])):e.createCommentVNode("",!0)]),_:3})],64))}},st={class:"flex justify-between items-center px-4 sm:px-0"},it={class:"flex flex-1 -mt-px w-0"},ct={class:"hidden md:flex md:-mt-px"},dt={class:"flex flex-1 justify-end -mt-px w-0"},mt={__name:"pagination",props:{page:{type:Number,default:1},total:{type:Number,default:1},perPage:{type:Number,default:20,validator(t){return 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){return["above","below"].indexOf(t)!==-1}}},emits:["update:page"],setup(t,{emit:d}){const l=d,r=t,n=e.ref(Math.ceil(r.total/r.perPage)),a=e.ref(null),c=e.computed(()=>r.markerPosition==="above"?"border-t-2 pt-4":"border-b-2 pb-4"),o=e.computed(()=>{let i=[1];if(r.showAllPages||n.value<=7){for(let k=2;k<=n.value;++k)i.push(k);return i}return a.value>=n.value?i.push("dots",a.value-2,a.value-1):a.value-1&&a.value-1>1&&(a.value>1&&i.push("dots"),i.push(a.value-1)),a.value>1&&i.push(a.value),a.value+1<n.value&&(i.push(a.value+1),a.value<=1&&i.push(a.value+2),a.value+2<n.value&&i.push("dots")),a.value<n.value&&i.push(n.value),i}),s=()=>{a.value>1&&l("update:page",a.value-1)},m=()=>{a.value<n.value&&l("update:page",a.value+1)};return e.watch(()=>r.page,i=>a.value=Math.min(Math.max(i,1),n.value),{immediate:!0}),e.watch(()=>r.perPage,i=>{n.value=Math.ceil(r.total/r.perPage),l("update:page",1)}),e.watch(()=>r.total,i=>{n.value=Math.ceil(r.total/r.perPage),a.value>n.value&&l("update:page",1)}),(i,k)=>(e.openBlock(),e.createElementBlock("nav",st,[e.createElementVNode("div",it,[t.showNavButtons?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:e.withModifiers(s,["prevent"]),href:"#",class:e.normalizeClass(["inline-flex items-center pr-1 text-sm font-medium text-gray-500 border-transparent hover:text-gray-700 hover:border-gray-300",[{"cursor-default pointer-events-none":a.value<=1},c.value]])},[e.createVNode(e.unref(z),{class:"size-5"}),e.createTextVNode(" "+e.toDisplayString(t.prevText),1)],2)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ct,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(u,h)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u!=="dots"?"a":"span"),{onClick:e.withModifiers(b=>u!=="dots"?l("update:page",u):null,["prevent"]),key:h,href:u!=="dots"?"#":null,class:e.normalizeClass(["inline-flex items-center px-4 text-sm font-medium",[{"border-vxvue-500 text-vxvue-700":u===a.value,"border-transparent text-gray-500":u!==a.value,"hover:text-gray-700 hover:border-gray-300":u!=="dots"},c.value]])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u!=="dots"?u:"..."),1)]),_:2},1032,["onClick","href","class"]))),128))]),e.createElementVNode("div",dt,[t.showNavButtons?(e.openBlock(),e.createElementBlock("a",{key:0,onClick:e.withModifiers(m,["prevent"]),href:"#",class:e.normalizeClass(["inline-flex items-center pl-1 text-sm font-medium text-gray-500 border-transparent hover:text-gray-700 hover:border-gray-300",[c.value,{"cursor-default pointer-events-none":a.value>=n.value}]])},[e.createTextVNode(e.toDisplayString(t.nextText)+" ",1),e.createVNode(e.unref(I),{class:"size-5"})],2)):e.createCommentVNode("",!0)])]))}};function ut(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 ft(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 pt=["value","type"],ht=Object.assign({inheritAttrs:!1},{__name:"password-input",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:d}){const l=d,r=e.ref(!1),n=e.computed(()=>{let a=Object.assign({},e.useAttrs());return delete a.class,a});return(a,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("inline-block relative "+e.useAttrs().class)},[e.createElementVNode("input",e.mergeProps({value:t.modelValue,type:r.value?"text":"password",onInput:c[0]||(c[0]=o=>l("update:modelValue",o.target.value))},n.value,{class:"block pr-10 w-full form-input peer"}),null,16,pt),e.createElementVNode("button",{class:"flex absolute inset-y-0 right-0 items-center pr-3 text-brand-700 hover:text-brand","aria-label":"show-password-toggle",onClick:c[1]||(c[1]=e.withModifiers(o=>r.value=!r.value,["stop"]))},[r.value?(e.openBlock(),e.createBlock(e.unref(ut),{key:0,class:"size-5"})):(e.openBlock(),e.createBlock(e.unref(ft),{key:1,class:"size-5"}))]),e.renderSlot(a.$slots,"default")],2))}}),gt={class:"flex items-center pb-1"},kt=["id","checked"],bt=["for"],yt={key:1},wt=["href"],xt={key:0,class:"ml-6"},Bt=Object.assign({inheritAttrs:!1},{__name:"simple-tree",props:{branch:{type:Object,default:{}}},emits:["branch-selected","expand"],setup(t,{emit:d}){const l=t,r=d,n=e.ref(!1);return e.onMounted(()=>{l.branch.current&&r("expand",!0)}),(a,c)=>{const o=e.resolveComponent("simple-tree",!0);return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([!t.branch.branches||!t.branch.branches.length?"terminates":"",a.$attrs.class])},[e.createElementVNode("div",gt,[t.branch.branches&&t.branch.branches.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("input",{type:"checkbox",id:"branch-"+t.branch.id,onClick:c[0]||(c[0]=s=>n.value=!n.value),checked:n.value,class:"hidden"},null,8,kt),e.createElementVNode("label",{for:"branch-"+t.branch.id,class:"mr-2"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value?e.unref(Ne):e.unref(Se)),{class:"w-4 h-4 border"}))],8,bt)],64)):e.createCommentVNode("",!0),t.branch.current?(e.openBlock(),e.createElementBlock("strong",yt,e.toDisplayString(t.branch.label),1)):(e.openBlock(),e.createElementBlock("a",{key:2,href:t.branch.path,onClick:c[1]||(c[1]=e.withModifiers(s=>r("branch-selected",t.branch),["prevent"]))},e.toDisplayString(t.branch.label),9,wt))]),t.branch.branches&&t.branch.branches.length?e.withDirectives((e.openBlock(),e.createElementBlock("ul",xt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.branch.branches,s=>(e.openBlock(),e.createBlock(o,{branch:s,key:s.id,onBranchSelected:c[2]||(c[2]=m=>r("branch-selected",m)),onExpand:c[3]||(c[3]=m=>{n.value=m,r("expand",m)})},null,8,["branch"]))),128))],512)),[[e.vShow,n.value]]):e.createCommentVNode("",!0)],2)}}}),Vt=["aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext"],Et=["id"],Ct=["id","aria-label"],$t=Object.assign({inheritAttrs:!1},{__name:"slider",props:{min:{type:Number,default:0},max:{type:Number,default:100},vertical:Boolean,disabled:Boolean,modelValue:{type:[Number,Array],validator(t){return typeof t=="number"||t.every(d=>typeof d=="number")}}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,r=d,n=e.useAttrs(),a={x:null,y:null},c={w:null,h:null};let o=!1;const s=e.ref(null),m=e.ref(0),i=e.computed(()=>{const p=l.max,f=l.min;return l.modelValue instanceof Array?l.modelValue.map(B=>(Math.max(Math.min(B,p),f)-f)*100/(p-f)):(Math.max(Math.min(l.modelValue,p),f)-f)*100/(p-f)}),k=e.computed(()=>{if(l.modelValue instanceof Array){const p=Math.min(...i.value)+"%",f=Math.max(...i.value)-Math.min(...i.value)+"%";return l.vertical?{bottom:p,height:f}:{left:p,width:f}}return l.vertical?{bottom:0,height:i.value+"%"}:{width:i.value+"%"}}),u=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")+" touch-none absolute size-5 rounded-full border-2 bg-white transition-colors duration-200 "+(l.disabled?"":" focus:ring-4 focus:outline-none border-vxvue cursor-grab hover:bg-vxvue focus:ring-vxvue/50"),tabindex:0}),h=p=>{let f=parseFloat(p.toFixed(10));if(f=Math.min(l.max,Math.max(l.min,f)),l.modelValue instanceof Array){let B=[...l.modelValue];B[m.value]=f,r("update:modelValue",B)}else r("update:modelValue",f)},b=p=>{const{pageX:f,pageY:B}=p.touches?p.touches[0]:p,V=l.vertical?(-B+a.y)/c.h:(f-a.x)/c.w;h(Math.floor((l.max-l.min)*V+l.min))},C=()=>{const{clientLeft:p,clientTop:f,scrollLeft:B,scrollTop:V}=document.documentElement,N=s.value.getBoundingClientRect();a.x=N.left+B-p,a.y=N.bottom+V-f,c.w=s.value.offsetWidth,c.h=s.value.offsetHeight},$=p=>{o&&(p.preventDefault(),b(p))},E=p=>{p.preventDefault(),p.currentTarget.focus(),C(),o=!0,document.addEventListener("mousemove",$),document.addEventListener("mouseup",D)},D=()=>{o&&(o=!1,document.removeEventListener("mousemove",$),document.removeEventListener("mouseup",D))},_=p=>{p.keyCode>=33&&p.keyCode<=40&&p.preventDefault();const f=l.modelValue[m.value]??l.modelValue;switch(p.keyCode){case 37:case 40:h(f-1);break;case 39:case 38:h(f+1);break;case 33:h(f+(l.max-l.min)/10);break;case 34:h(f-(l.max-l.min)/10);break;case 36:h(l.min);break;case 35:h(l.max)}},g=p=>{C(),b(p)};return(p,f)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({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"],ref_key:"track",ref:s,role:"slider","aria-label":"slider-thumb","aria-valuemin":t.min,"aria-valuemax":l.max,"aria-valuenow":t.modelValue[0]??t.modelValue,"aria-valuetext":t.modelValue},e.toHandlers(t.disabled?{}:{click:g},!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(k.value)},null,6)),t.modelValue.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(t.modelValue,(B,V)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({id:V?null:e.unref(n).id,style:t.vertical?{bottom:i.value[V]+"%"}:{left:i.value[V]+"%"},"aria-label":"slider-thumb-"+(V+1)},e.toHandlers(t.disabled?{}:{focus:()=>m.value=V,keydown:_,mousedown:N=>{m.value=V,E(N)},touchstart:N=>{m.value=V,E(N)},touchmove:$,touchend:D},!0),u.value),null,16,Ct))),256)):(e.openBlock(),e.createElementBlock("button",e.mergeProps({key:1,id:e.unref(n).id,style:t.vertical?{bottom:i.value+"%"}:{left:i.value+"%"},"aria-label":"slider-thumb"},e.toHandlers(t.disabled?{}:{focus:()=>m.value=0,keydown:_,mousedown:B=>{m.value=0,E(B)},touchstart:B=>{m.value=0,E(B)},touchmove:$,touchend:D},!0),u.value),null,16,Et))],16,Vt))}}),Nt={class:"text-white bg-slate-700"},St=["onClick"],Mt={class:"flex items-center space-x-1"},Dt=q({__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},sortDirection:{type:String,validator:t=>!t||["asc","desc"].indexOf(t)!==-1},keyProperty:{type:String,default:"key"}},emits:["before-sort","after-sort"],setup(t,{emit:d}){const l=t,r=d,n=e.ref(l.sortProp),a=e.ref(l.sortDirection),c=e.computed(()=>{let s=l.rows.slice();const m=l.columns.find(({prop:i})=>i===n.value);return m&&(a.value==="asc"&&m.sortAscFunction?s.sort(m.sortAscFunction):a.value==="desc"&&m.sortDescFunction?s.sort(m.sortDescFunction):s.sort((i,k)=>i[n.value]<k[n.value]?a.value==="asc"?-1:1:i[n.value]>k[n.value]?a.value==="asc"?1:-1:0)),s.slice(l.offset||0,(l.offset||0)+(l.count||s.length))}),o=s=>{r("before-sort",{prop:n.value,dir:a.value}),n.value===s?a.value=a.value==="asc"?"desc":"asc":(n.value=s,a.value=a.value||"asc"),e.nextTick(()=>r("after-sort",{prop:n.value,dir:a.value}))};return(s,m)=>(e.openBlock(),e.createElementBlock("table",{class:e.normalizeClass(s.$attrs.class||"w-full divide-y divide-y-slate-900 table-fixed")},[e.createElementVNode("thead",Nt,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,i=>(e.openBlock(),e.createElementBlock("th",{scope:"col",class:e.normalizeClass(["py-3 px-6 text-left",[{"cursor-pointer":i.sortable,active:n.value===i.prop},i.cssClass]]),onClick:k=>i.sortable?o(i.prop):null},[e.renderSlot(s.$slots,i.prop+"-header",{column:i,sortDir:a.value,sortProp:n.value},()=>[e.createElementVNode("div",Mt,[e.createElementVNode("span",null,e.toDisplayString(i.label),1),i.sortable?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value!==i.prop?e.unref(Ce):a.value==="asc"?e.unref(Ee):e.unref($e)),{key:0,class:"h-4 w-4"})):e.createCommentVNode("",!0)])],!0)],10,St))),256))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,i=>(e.openBlock(),e.createElementBlock("tr",{key:i[t.keyProperty],class:e.normalizeClass(i.cssClass)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,k=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(["py-3 px-6 whitespace-nowrap text-ellipsis overflow-hidden",{active:n.value===k.prop}])},[e.renderSlot(s.$slots,k.prop,{row:i},()=>[e.createTextVNode(e.toDisplayString(i[k.prop]),1)],!0)],2))),256))],2))),128))])],2))}},[["__scopeId","data-v-f823032d"]]),vt={class:"sm:hidden"},_t={class:"hidden sm:block"},Pt={class:"border-b border-gray-200"},At={class:"flex -mb-px space-x-8","aria-label":"Tabs"},Ft=["onClick","aria-current"],Lt={__name:"tabs",props:{items:{type:Array,default:[]},activeIndex:{type:Number,default:0}},emits:["update:active-index"],setup(t,{emit:d}){const l=t,r=d,n=e.ref(l.items[l.activeIndex]||{}),a=e.computed(()=>{let o=[];return l.items.forEach((s,m)=>{s.disabled||o.push({label:s.name,key:m})}),o});e.watch(()=>l.activeIndex,o=>{n.value=l.items[o]||{}});const c=o=>{o.disabled||(n.value=o,r("update:active-index",l.items.indexOf(o)))};return(o,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",vt,[e.createVNode(Z,{options:a.value,"model-value":t.activeIndex,"onUpdate:modelValue":s[0]||(s[0]=m=>r("update:activeIndex",m)),class:"w-full"},null,8,["options","model-value"])]),e.createElementVNode("div",_t,[e.createElementVNode("div",Pt,[e.createElementVNode("nav",At,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,m=>(e.openBlock(),e.createElementBlock("a",{key:m.name,href:"#",onClick:e.withModifiers(i=>c(m),["prevent"]),class:e.normalizeClass([n.value===m?"border-vxvue-500 text-vxvue-600":"border-transparent text-gray-900 hover:text-gray-700 hover:border-gray-300",m.disabled?"cursor-not-allowed text-gray-400 hover:border-transparent":"","group inline-flex items-center py-4 px-1 border-b-4 font-medium"]),"aria-current":n.value===m?"page":void 0},[e.renderSlot(o.$slots,"icon",{tab:m}),e.createElementVNode("span",null,[e.renderSlot(o.$slots,"default",{tab:m},()=>[e.createTextVNode(e.toDisplayString(m.name),1)])]),m.badge?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass([n.value===m?"bg-vxvue-50 text-vxvue-700":"bg-gray-200 text-gray-900",m.disabled?"bg-gray-100 text-gray-400":"","hidden ml-3 py-0.5 px-2.5 rounded-full text-xs font-medium md:inline-block"])},e.toDisplayString(m.badge),3)):e.createCommentVNode("",!0)],10,Ft))),128))])])])],64))}};x.Autocomplete=re,x.Confirm=be,x.DateInput=W,x.Datepicker=Fe,x.FormFileButton=ze,x.FormSelect=Z,x.FormSwitch=Re,x.MessageToast=lt,x.Modal=rt,x.Pagination=mt,x.PasswordInput=ht,x.SimpleTree=Bt,x.Slider=$t,x.Sortable=Dt,x.Tabs=Lt,Object.defineProperty(x,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vx-vue",
|
|
3
|
-
"files": [
|
|
3
|
+
"files": [
|
|
4
|
+
"dist"
|
|
5
|
+
],
|
|
6
|
+
"type": "module",
|
|
4
7
|
"main": "./dist/vxvue.umd.js",
|
|
5
8
|
"module": "./dist/vxvue.es.js",
|
|
6
9
|
"exports": {
|
|
@@ -11,23 +14,27 @@
|
|
|
11
14
|
"./vx-vue.css": "./dist/style.css",
|
|
12
15
|
"./dist/*": "./dist/*"
|
|
13
16
|
},
|
|
14
|
-
"version": "0.7.
|
|
17
|
+
"version": "0.7.6",
|
|
15
18
|
"license": "MIT",
|
|
16
19
|
"homepage": "https://vxweb.net/vxvue/index.html",
|
|
17
20
|
"repository": "https://github.com/Vectrex/vxVue",
|
|
18
21
|
"scripts": {
|
|
19
22
|
"dev": "vite",
|
|
20
23
|
"build": "vite build",
|
|
21
|
-
"preview": "vite preview"
|
|
24
|
+
"preview": "vite preview",
|
|
25
|
+
"test": "vitest --dom"
|
|
22
26
|
},
|
|
23
27
|
"devDependencies": {
|
|
24
|
-
"vue": "^
|
|
25
|
-
"tailwindcss": "^3.3.5",
|
|
28
|
+
"@heroicons/vue": "^2.1.1",
|
|
26
29
|
"@tailwindcss/forms": "^0.5.7",
|
|
27
|
-
"@
|
|
28
|
-
"@
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"rustywind": "^0.
|
|
30
|
+
"@vitejs/plugin-vue": "^4.6.1",
|
|
31
|
+
"@vue/test-utils": "^2.4.3",
|
|
32
|
+
"@vueuse/core": "^10.7.1",
|
|
33
|
+
"happy-dom": "^12.10.3",
|
|
34
|
+
"rustywind": "^0.21.0",
|
|
35
|
+
"tailwindcss": "^3.4.0",
|
|
36
|
+
"vite": "^5.0.10",
|
|
37
|
+
"vitest": "^1.1.0",
|
|
38
|
+
"vue": "^3.4.0"
|
|
32
39
|
}
|
|
33
40
|
}
|