@vanjana/vue-ui 0.1.97 → 0.1.99

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- (function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k.VanjanaVueUi={},k.Vue,k.VueRouter))})(this,(function(k,e,nt){"use strict";const v=(t,o)=>{const n=t.__vccOpts||t;for(const[l,a]of o)n[l]=a;return n},mn={},pn={class:"button-bar"},hn={class:"left"},gn={class:"right"};function bn(t,o){return e.openBlock(),e.createElementBlock("div",pn,[e.createElementVNode("div",hn,[e.renderSlot(t.$slots,"left",{},void 0,!0)]),e.createElementVNode("div",gn,[e.renderSlot(t.$slots,"default",{},void 0,!0)])])}const ot=v(mn,[["render",bn],["__scopeId","data-v-45a6ed1a"]]);var $=(t=>(t.HOME="fa-regular fa-house",t.DASHBOARD="fa-solid fa-gauge",t.MENU="fa-solid fa-bars",t.DOT_MENU="fa-solid fa-ellipsis-vertical",t.BACK="fa-regular fa-hand-point-left",t.LOGOUT="fa-solid fa-right-from-bracket",t.CHEVRON_LEFT="fa-solid fa-chevron-left",t.CHEVRON_RIGHT="fa-solid fa-chevron-right",t.CHEVRON_UP="fa-solid fa-chevron-up",t.CHEVRON_DOWN="fa-solid fa-chevron-down",t.PREVIOUS="fa-solid fa-angle-left",t.FIRST="fa-solid fa-angles-left",t.NEXT="fa-solid fa-angle-right",t.LAST="fa-solid fa-angles-right",t.USER="fa-regular fa-user-circle",t.CHARACTER="fa-solid fa-person",t.SETTINGS="fa-solid fa-gear",t.ADD="fa-regular fa-plus",t.EDIT="fa-solid fa-pen",t.REMOVE="fa-regular fa-trash-can",t.DELETE="fa-regular fa-trash-can",t.SHARE="fa-solid fa-share-nodes",t.SORT="fa-regular fa-arrow-up-arrow-down",t.CLOSE="fa-regular fa-circle-xmark",t.SAVE="fa-regular fa-floppy-disk",t.COPY="fa-regular fa-copy",t.DUPLICATE="fa-regular fa-clone",t.CUT="fa-solid fa-scissors",t.PASTE="fa-regular fa-clipboard",t.REFRESH="fa-solid fa-rotate-right",t.RELOAD="fa-solid fa-arrows-rotate",t.PRINT="fa-solid fa-print",t.FILTER="fa-solid fa-filter",t.UNDO="fa-solid fa-rotate-left",t.REDO="fa-solid fa-rotate-right",t.PIN="fa-solid fa-thumbtack",t.EXPAND="fa-solid fa-expand",t.COLLAPSE="fa-solid fa-compress",t.EXTERNAL_LINK="fa-solid fa-arrow-up-right-from-square",t.INFO="fa-solid fa-circle-info",t.WARNING="fa-solid fa-triangle-exclamation",t.ERROR="fa-regular fa-circle-xmark",t.CHECK="fa-regular fa-circle-check",t.LOVE="fa-regular fa-heart",t.STAR="fa-regular fa-star",t.STAR_FILLED="fa-solid fa-star",t.HELP="fa-regular fa-circle-question",t.QUESTION="fa-solid fa-question",t.PROJECT="fa-regular fa-folder-open",t.FOLDER="fa-regular fa-folder",t.FILE_TEXT="fa-regular fa-file-lines",t.UPLOAD="fa-solid fa-cloud-arrow-up",t.DOWNLOAD="fa-solid fa-cloud-arrow-down",t.ATTACHMENT="fa-solid fa-paperclip",t.LINK="fa-solid fa-link",t.TAG="fa-solid fa-tag",t.TAGS="fa-solid fa-tags",t.SEARCH="fa-solid fa-magnifying-glass",t.MESSAGE_SQUARE="fa-regular fa-message",t.MAIL="fa-regular fa-envelope",t.SHOPPING_BAG="fa-regular fa-bag-shopping",t.COMMENT="fa-regular fa-comment",t.COMMENTS="fa-regular fa-comments",t.CALENDAR="fa-regular fa-calendar",t.CALENDAR_DAY="fa-solid fa-calendar-day",t.CLOCK="fa-regular fa-clock",t.HISTORY="fa-solid fa-clock-rotate-left",t.LOCK="fa-solid fa-lock",t.UNLOCK="fa-solid fa-lock-open",t.EYE="fa-regular fa-eye",t.EYE_SLASH="fa-regular fa-eye-slash",t.SHIELD="fa-solid fa-shield",t.LIST="fa-solid fa-list",t.GRID="fa-solid fa-grid",t.TABLE="fa-solid fa-table",t.COLUMNS="fa-solid fa-columns",t.BELL="fa-regular fa-bell",t.IMAGE="fa-regular fa-image",t))($||{}),N=(t=>(t.S="icon-size-s",t.M="icon-size-m",t.L="icon-size-l",t))(N||{});const W=e.defineComponent({__name:"icon",props:{icon:{},size:{}},setup(t){const o=t,n=N.M,l=e.computed(()=>`${o.icon} ${o.size??n}`);return(a,i)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(l.value)},null,2))}}),yn=["disabled"],he=v(e.defineComponent({__name:"button",props:{label:{},icon:{},primary:{type:Boolean},secondary:{type:Boolean},tertiary:{type:Boolean},disabled:{type:Boolean}},setup(t){const o=t,n=N.S,l=e.computed(()=>o.primary?"primary":o.secondary?"secondary":o.tertiary?"tertiary":"primary"),a=e.computed(()=>!o.label&&!!o.icon);return(i,r)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["button",l.value,{"icon-only":a.value}]),disabled:t.disabled},[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(n)},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.label),1)],10,yn))}}),[["__scopeId","data-v-f31c33cf"]]),wn={key:0,class:"header-actions"},kn={key:0},ge=v(e.defineComponent({__name:"card",props:{header:{},scrollable:{type:Boolean}},setup(t){const o=e.useSlots();return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["card",{scrollable:t.scrollable}])},[e.createElementVNode("header",null,[e.createElementVNode("h3",null,e.toDisplayString(t.header),1),e.unref(o).headerActions?(e.openBlock(),e.createElementBlock("span",wn,[e.renderSlot(n.$slots,"headerActions",{},void 0,!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("main",null,[e.renderSlot(n.$slots,"default",{},void 0,!0)]),e.unref(o).footer?(e.openBlock(),e.createElementBlock("footer",kn,[e.renderSlot(n.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-ec6ab562"]]),_n=["aria-label"],Vn={key:0,class:"carousel-indicators"},Cn=v(e.defineComponent({__name:"carousel",props:{autoplay:{type:Boolean},interval:{},loop:{type:Boolean},pauseOnHover:{type:Boolean},startIndex:{},ariaLabel:{}},setup(t){const o=t,n=o.autoplay??!1,l=o.interval??4e3,a=o.loop??!0,i=o.pauseOnHover??!0,r=o.startIndex??0,c=o.ariaLabel??"Carousel",d=e.ref(Math.max(0,r)),s=e.ref(null),f=e.ref(null),u=e.ref(0),m=e.ref(0);let p=!1;const h=e.ref(0),_=e.ref(!1);let g=null,y=null;const w=e.ref(null),b=e.ref(null),E=()=>{h.value=s.value?s.value.children.length:0,h.value===0?d.value=0:d.value>=h.value&&(d.value=a?0:h.value-1),L()},x=e.computed(()=>u.value>0?{transform:`translateX(${-d.value*u.value+m.value}px)`}:{transform:`translateX(-${d.value*100}%)`}),L=()=>{s.value&&Array.from(s.value.children).forEach((B,ee)=>{try{ee===d.value?B.removeAttribute("aria-hidden"):B.setAttribute("aria-hidden","true")}catch{}})},V=()=>{C(),!(!n||h.value<=1)&&(i&&_.value||(g=setTimeout(()=>{T(),V()},l)))},C=()=>{g&&(clearTimeout(g),g=null)},S=()=>{h.value!==0&&(d.value<=0?d.value=a?h.value-1:0:d.value--)},T=()=>{h.value!==0&&(d.value>=h.value-1?d.value=a?0:h.value-1:d.value++)},R=B=>{B<0||B>=h.value||(d.value=B)},X=()=>{_.value=!0,i&&C()},q=()=>{_.value=!1,V()},G=B=>{B.key==="ArrowLeft"?S():B.key==="ArrowRight"&&T()};let se=0,j=0;const U=B=>{se=B.touches[0].clientX,j=0},D=B=>{j=B.touches[0].clientX-se},z=()=>{j>50?S():j<-50&&T(),j=0};let Re=0;const sn=B=>{if(B.isPrimary!==!1&&!(B.pointerType==="mouse"&&B.button!==0)){p=!0,Re=B.clientX,m.value=0,C();try{B.target?.setPointerCapture?.(B.pointerId)}catch{}}},cn=B=>{p&&(m.value=B.clientX-Re,B.preventDefault())},dn=()=>{if(!p)return;p=!1;const B=Math.max(50,u.value*.15);m.value>B?S():m.value<-B&&T(),m.value=0,V()},fn=B=>{try{B.target?.releasePointerCapture?.(B.pointerId)}catch{}dn()},un=()=>dn();return e.onMounted(()=>{e.nextTick(()=>{if(E(),s.value&&(y=new MutationObserver(E),y.observe(s.value,{childList:!0}),s.value.addEventListener("touchstart",U,{passive:!0}),s.value.addEventListener("touchmove",D,{passive:!0}),s.value.addEventListener("touchend",z)),f.value){const B=()=>{u.value=f.value?f.value.clientWidth:0};B();const ee=window.ResizeObserver;if(ee&&f.value){const te=new ee(()=>B());te.observe(f.value),w.value=te}else window.addEventListener("resize",B),b.value=B;f.value&&(f.value.addEventListener("pointerdown",sn),f.value.addEventListener("pointermove",cn),f.value.addEventListener("pointerup",fn),f.value.addEventListener("pointercancel",un))}L(),V()})}),e.onBeforeUnmount(()=>{C(),y&&s.value&&y.disconnect(),s.value&&(s.value.removeEventListener("touchstart",U),s.value.removeEventListener("touchmove",D),s.value.removeEventListener("touchend",z)),f.value&&(w.value&&w.value.disconnect&&w.value.disconnect(),b.value&&window.removeEventListener("resize",b.value),f.value.removeEventListener("pointerdown",sn),f.value.removeEventListener("pointermove",cn),f.value.removeEventListener("pointerup",fn),f.value.removeEventListener("pointercancel",un))}),e.watch([d,()=>h.value],()=>{L()}),e.watch([()=>_.value,d],()=>{V()}),(B,ee)=>{const te=e.resolveComponent("VjButton");return e.openBlock(),e.createElementBlock("div",{class:"carousel",role:"region","aria-roledescription":"carousel","aria-label":e.unref(c),tabindex:"0",onKeydown:G,onMouseenter:X,onMouseleave:q},[e.createElementVNode("div",{class:"carousel-window",ref_key:"windowRef",ref:f},[e.createElementVNode("div",{class:"carousel-track",ref_key:"track",ref:s,style:e.normalizeStyle(x.value)},[e.renderSlot(B.$slots,"default",{},void 0,!0)],4)],512),e.createVNode(te,{class:"carousel-btn prev",icon:e.unref($).PREVIOUS,onClick:S,type:"button","aria-label":"Previous slide"},null,8,["icon"]),e.createVNode(te,{class:"carousel-btn next",icon:e.unref($).NEXT,onClick:T,type:"button","aria-label":"Next slide"},null,8,["icon"]),h.value>1?(e.openBlock(),e.createElementBlock("div",Vn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,pe=>(e.openBlock(),e.createBlock(te,{key:pe-1,class:e.normalizeClass(["indicator",{active:pe-1===d.value}]),onClick:Wa=>R(pe-1),"aria-current":pe-1===d.value,"aria-label":`Go to slide ${pe}`,type:"button"},null,8,["class","onClick","aria-current","aria-label"]))),128))])):e.createCommentVNode("",!0)],40,_n)}}}),[["__scopeId","data-v-232abca2"]]),En={class:"checkbox"},Bn=["checked","disabled"],Sn={key:0,class:"checkbox-label"},lt=v(e.defineComponent({__name:"checkbox",props:e.mergeModels({label:{},disabled:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=l=>{const a=l.target;o.value=a.checked};return(l,a)=>(e.openBlock(),e.createElementBlock("label",En,[e.createElementVNode("input",{type:"checkbox",checked:o.value,onChange:n,disabled:t.disabled,class:"checkbox-input"},null,40,Bn),a[0]||(a[0]=e.createElementVNode("span",{class:"checkbox-box"},[e.createElementVNode("svg",{class:"checkbox-icon",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{class:"checkbox-check",d:"M5 12L10 17L20 7",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),t.label?(e.openBlock(),e.createElementBlock("span",Sn,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-d44b45ff"]]),vn={class:"radio"},xn=["checked","disabled"],$n={key:0,class:"radio-label"},Ln=v(e.defineComponent({__name:"radio",props:e.mergeModels({label:{},disabled:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=l=>{const a=l.target;o.value=a.checked};return(l,a)=>(e.openBlock(),e.createElementBlock("label",vn,[e.createElementVNode("input",{type:"checkbox",checked:o.value,onChange:n,disabled:t.disabled,class:"radio-input"},null,40,xn),a[0]||(a[0]=e.createElementVNode("span",{class:"radio-box"},[e.createElementVNode("span",{class:"radio-dot","aria-hidden":"true"})],-1)),t.label?(e.openBlock(),e.createElementBlock("span",$n,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-f9e4bb65"]]),Tn={class:"chip__label"},Ne=v(e.defineComponent({__name:"chip",props:e.mergeModels({label:{},dismissable:{type:Boolean},color:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue","dismiss","click"],["update:modelValue"]),setup(t,{emit:o}){const n=t,l=e.useModel(t,"modelValue"),a=o,i=n.dismissable??!1,r=e.computed(()=>{const d={};return n.color&&(d.color=`var(--on-surface-${n.color})`,d.background=`var(--surface-${n.color})`),d}),c=()=>{a("dismiss",l.value)};return(d,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["chip",{"chip--dismissable":e.unref(i)}]),style:e.normalizeStyle(r.value),onClick:s[0]||(s[0]=f=>d.$emit("click"))},[e.createElementVNode("span",Tn,e.toDisplayString(t.label),1),e.unref(i)?(e.openBlock(),e.createElementBlock("button",{key:0,class:"chip__close",type:"button",onClick:e.withModifiers(c,["stop"]),"aria-label":"Dismiss"},[e.createVNode(W,{icon:e.unref($).CLOSE,size:e.unref(N).S},null,8,["icon","size"])])):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-c2014a3b"]]),Rn={class:"chip-group"},Nn={key:0,class:"chip-group__label"},Dn={class:"chip-group__container"},An=["onDragover","onDrop"],Mn=["onDragstart","onDragover","onDragenter","onDrop"],On=["onDragover","onDrop"],Pn={key:1,class:"chip-group__hint"},De=v(e.defineComponent({__name:"chip-group",props:{items:{default:()=>[]},label:{},hint:{},dismissable:{type:Boolean,default:!0},color:{},itemKey:{default:"value"},itemLabel:{default:"label"}},emits:["update:items","reorder","dismiss","chip-click"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(null),i=e.ref(null);function r(g,y){return typeof g=="string"?`${g}-${y}`:g[n.itemKey]!==void 0?String(g[n.itemKey]):`item-${y}`}function c(g){return typeof g=="string"?g:g[n.itemLabel]!==void 0?String(g[n.itemLabel]):String(g.value||"")}function d(g,y){a.value=g,y.dataTransfer&&(y.dataTransfer.effectAllowed="move",y.dataTransfer.setData("text/plain",String(g)))}function s(g,y){a.value===null||a.value===g||(y.preventDefault(),y.dataTransfer&&(y.dataTransfer.dropEffect="move"))}function f(g){a.value===null||a.value===g||(i.value=g)}function u(){}function m(g,y){return a.value===null||i.value===null||a.value===g?!1:y==="before"&&i.value===g&&a.value>g||y==="after"&&i.value===g&&a.value<g}function p(g,y){if(y.preventDefault(),a.value===null||a.value===g)return;const w=[...n.items],b=w[a.value];w.splice(a.value,1),w.splice(g,0,b),l("update:items",w),l("reorder",w)}function h(){a.value=null,i.value=null}function _(g){const y=n.items[g],w=n.items.filter((b,E)=>E!==g);l("update:items",w),l("dismiss",y,g)}return(g,y)=>(e.openBlock(),e.createElementBlock("div",Rn,[t.label?(e.openBlock(),e.createElementBlock("label",Nn,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Dn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(w,b)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r(w,b)},[m(b,"before")?(e.openBlock(),e.createElementBlock("div",{key:0,class:"chip-group__drop-indicator",onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDrop:E=>p(b,E)},null,40,An)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["chip-group__item",{"chip-group__item--dragging":a.value===b}]),draggable:"true",onDragstart:E=>d(b,E),onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDragenter:e.withModifiers(E=>f(b),["prevent"]),onDragleave:u,onDrop:E=>p(b,E),onDragend:h},[e.createVNode(Ne,{label:c(w),dismissable:typeof w=="string"?t.dismissable:w.dismissable??t.dismissable,color:typeof w=="string"?t.color:w.color??t.color,onDismiss:E=>_(b),onClick:E=>g.$emit("chip-click",w,b)},null,8,["label","dismissable","color","onDismiss","onClick"])],42,Mn),m(b,"after")?(e.openBlock(),e.createElementBlock("div",{key:1,class:"chip-group__drop-indicator",onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDrop:E=>p(b,E)},null,40,On)):e.createCommentVNode("",!0)],64))),128))]),t.hint?(e.openBlock(),e.createElementBlock("div",Pn,e.toDisplayString(t.hint),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-66199d19"]]),jn={class:"dialog-content"},zn={key:1},Fn={class:"dialog-footer"},be=v(e.defineComponent({__name:"dialog",props:{modelValue:{type:Boolean,default:!1},title:{},message:{},component:{},componentProps:{},showFooter:{type:Boolean,default:!1},showCancel:{type:Boolean,default:!0},confirmText:{default:"OK"},cancelText:{default:"Abbrechen"},closeOnBackdrop:{type:Boolean,default:!1},closeOnEscape:{type:Boolean,default:!0}},emits:["update:modelValue","confirm","cancel","close"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue);e.watch(()=>n.modelValue,f=>a.value=f);const i=()=>{a.value=!1,l("update:modelValue",!1),l("close")},r=()=>{l("confirm"),i()},c=()=>{l("cancel"),i()},d=()=>{n.closeOnBackdrop&&i()},s=f=>{f.key==="Escape"&&n.closeOnEscape&&a.value&&i()};return e.onMounted(()=>{document.addEventListener("keydown",s)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",s)}),(f,u)=>{const m=e.resolveComponent("VjIcon"),p=e.resolveComponent("VjButton"),h=e.resolveComponent("VjCard");return e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"dialog-fade"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dialog-backdrop",onClick:d},[e.createVNode(e.Transition,{name:"dialog-scale"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dialog-wrapper",onClick:u[0]||(u[0]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(h,{class:"dialog-card",header:t.title||""},e.createSlots({headerActions:e.withCtx(()=>[e.createVNode(m,{icon:e.unref($).CLOSE,size:e.unref(N).S,class:"dialog-close",onClick:i},null,8,["icon","size"])]),default:e.withCtx(()=>[e.createElementVNode("div",jn,[t.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.component),e.mergeProps({key:0},t.componentProps,{onClose:i}),null,16)):t.message?(e.openBlock(),e.createElementBlock("div",zn,e.toDisplayString(t.message),1)):e.renderSlot(f.$slots,"default",{key:2},void 0,!0)])]),_:2},[t.showFooter?{name:"footer",fn:e.withCtx(()=>[e.createElementVNode("div",Fn,[e.renderSlot(f.$slots,"footer",{},()=>[t.showCancel?(e.openBlock(),e.createBlock(p,{key:0,secondary:"",onClick:c,label:t.cancelText},null,8,["label"])):e.createCommentVNode("",!0),e.createVNode(p,{primary:"",onClick:r,label:t.confirmText},null,8,["label"])],!0)])]),key:"0"}:void 0]),1032,["header"])])):e.createCommentVNode("",!0)]),_:3})])):e.createCommentVNode("",!0)]),_:3})])}}}),[["__scopeId","data-v-6af510b3"]]),In={class:"vj-chip-selector"},Hn={class:"options-grid"},Un=["onClick"],Wn={key:0,class:"no-options"},at=v(e.defineComponent({__name:"chip-selector",props:{items:{default:()=>[]},label:{default:""},hint:{default:""},options:{},dialogTitle:{},addButtonText:{default:"+ Add..."}},emits:["update:items"],setup(t,{emit:o}){const n=t,l=o,a=e.ref([...n.items]),i=e.ref(!1),r=e.computed(()=>n.options.filter(s=>!a.value.includes(s.value)));function c(s){const f=s;a.value=f,l("update:items",f)}function d(s){if(!a.value.includes(s)){const f=[...a.value,s];a.value=f,l("update:items",f)}}return e.watch(()=>n.items,s=>{JSON.stringify(s)!==JSON.stringify(a.value)&&(a.value=[...s])},{deep:!0}),(s,f)=>(e.openBlock(),e.createElementBlock("div",In,[e.createVNode(De,{items:a.value,"onUpdate:items":[f[0]||(f[0]=u=>a.value=u),c],label:t.label,hint:t.hint},null,8,["items","label","hint"]),e.createElementVNode("button",{type:"button",class:"add-button",onClick:f[1]||(f[1]=u=>i.value=!0)},e.toDisplayString(t.addButtonText),1),e.createVNode(be,{modelValue:i.value,"onUpdate:modelValue":f[2]||(f[2]=u=>i.value=u),title:t.dialogTitle||`Add ${t.label}`,"close-on-backdrop":""},{default:e.withCtx(()=>[e.createElementVNode("div",Hn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,u=>(e.openBlock(),e.createElementBlock("button",{key:u.value,type:"button",class:"option-btn",onClick:m=>d(u.value)},"+ "+e.toDisplayString(u.label),9,Un))),128))]),r.value.length===0?(e.openBlock(),e.createElementBlock("div",Wn,"All options already selected")):e.createCommentVNode("",!0)]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-f2e1b880"]]),ne=Math.min,A=Math.max,ye=Math.round,we=Math.floor,F=t=>({x:t,y:t}),Kn={left:"right",right:"left",bottom:"top",top:"bottom"},Xn={start:"end",end:"start"};function it(t,o,n){return A(t,ne(o,n))}function ce(t,o){return typeof t=="function"?t(o):t}function Y(t){return t.split("-")[0]}function de(t){return t.split("-")[1]}function rt(t){return t==="x"?"y":"x"}function st(t){return t==="y"?"height":"width"}const qn=new Set(["top","bottom"]);function K(t){return qn.has(Y(t))?"y":"x"}function ct(t){return rt(K(t))}function Gn(t,o,n){n===void 0&&(n=!1);const l=de(t),a=ct(t),i=st(a);let r=a==="x"?l===(n?"end":"start")?"right":"left":l==="start"?"bottom":"top";return o.reference[i]>o.floating[i]&&(r=ke(r)),[r,ke(r)]}function Yn(t){const o=ke(t);return[Ae(t),o,Ae(o)]}function Ae(t){return t.replace(/start|end/g,o=>Xn[o])}const dt=["left","right"],ft=["right","left"],Jn=["top","bottom"],Qn=["bottom","top"];function Zn(t,o,n){switch(t){case"top":case"bottom":return n?o?ft:dt:o?dt:ft;case"left":case"right":return o?Jn:Qn;default:return[]}}function eo(t,o,n,l){const a=de(t);let i=Zn(Y(t),n==="start",l);return a&&(i=i.map(r=>r+"-"+a),o&&(i=i.concat(i.map(Ae)))),i}function ke(t){return t.replace(/left|right|bottom|top/g,o=>Kn[o])}function to(t){return{top:0,right:0,bottom:0,left:0,...t}}function no(t){return typeof t!="number"?to(t):{top:t,right:t,bottom:t,left:t}}function _e(t){const{x:o,y:n,width:l,height:a}=t;return{width:l,height:a,top:n,left:o,right:o+l,bottom:n+a,x:o,y:n}}function ut(t,o,n){let{reference:l,floating:a}=t;const i=K(o),r=ct(o),c=st(r),d=Y(o),s=i==="y",f=l.x+l.width/2-a.width/2,u=l.y+l.height/2-a.height/2,m=l[c]/2-a[c]/2;let p;switch(d){case"top":p={x:f,y:l.y-a.height};break;case"bottom":p={x:f,y:l.y+l.height};break;case"right":p={x:l.x+l.width,y:u};break;case"left":p={x:l.x-a.width,y:u};break;default:p={x:l.x,y:l.y}}switch(de(o)){case"start":p[r]-=m*(n&&s?-1:1);break;case"end":p[r]+=m*(n&&s?-1:1);break}return p}const oo=async(t,o,n)=>{const{placement:l="bottom",strategy:a="absolute",middleware:i=[],platform:r}=n,c=i.filter(Boolean),d=await(r.isRTL==null?void 0:r.isRTL(o));let s=await r.getElementRects({reference:t,floating:o,strategy:a}),{x:f,y:u}=ut(s,l,d),m=l,p={},h=0;for(let _=0;_<c.length;_++){const{name:g,fn:y}=c[_],{x:w,y:b,data:E,reset:x}=await y({x:f,y:u,initialPlacement:l,placement:m,strategy:a,middlewareData:p,rects:s,platform:r,elements:{reference:t,floating:o}});f=w??f,u=b??u,p={...p,[g]:{...p[g],...E}},x&&h<=50&&(h++,typeof x=="object"&&(x.placement&&(m=x.placement),x.rects&&(s=x.rects===!0?await r.getElementRects({reference:t,floating:o,strategy:a}):x.rects),{x:f,y:u}=ut(s,m,d)),_=-1)}return{x:f,y:u,placement:m,strategy:a,middlewareData:p}};async function Me(t,o){var n;o===void 0&&(o={});const{x:l,y:a,platform:i,rects:r,elements:c,strategy:d}=t,{boundary:s="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:m=!1,padding:p=0}=ce(o,t),h=no(p),g=c[m?u==="floating"?"reference":"floating":u],y=_e(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(g)))==null||n?g:g.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:s,rootBoundary:f,strategy:d})),w=u==="floating"?{x:l,y:a,width:r.floating.width,height:r.floating.height}:r.reference,b=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating)),E=await(i.isElement==null?void 0:i.isElement(b))?await(i.getScale==null?void 0:i.getScale(b))||{x:1,y:1}:{x:1,y:1},x=_e(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:w,offsetParent:b,strategy:d}):w);return{top:(y.top-x.top+h.top)/E.y,bottom:(x.bottom-y.bottom+h.bottom)/E.y,left:(y.left-x.left+h.left)/E.x,right:(x.right-y.right+h.right)/E.x}}const lo=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(o){var n,l;const{placement:a,middlewareData:i,rects:r,initialPlacement:c,platform:d,elements:s}=o,{mainAxis:f=!0,crossAxis:u=!0,fallbackPlacements:m,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:_=!0,...g}=ce(t,o);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const y=Y(a),w=K(c),b=Y(c)===c,E=await(d.isRTL==null?void 0:d.isRTL(s.floating)),x=m||(b||!_?[ke(c)]:Yn(c)),L=h!=="none";!m&&L&&x.push(...eo(c,_,h,E));const V=[c,...x],C=await Me(o,g),S=[];let T=((l=i.flip)==null?void 0:l.overflows)||[];if(f&&S.push(C[y]),u){const G=Gn(a,r,E);S.push(C[G[0]],C[G[1]])}if(T=[...T,{placement:a,overflows:S}],!S.every(G=>G<=0)){var R,X;const G=(((R=i.flip)==null?void 0:R.index)||0)+1,se=V[G];if(se&&(!(u==="alignment"?w!==K(se):!1)||T.every(D=>K(D.placement)===w?D.overflows[0]>0:!0)))return{data:{index:G,overflows:T},reset:{placement:se}};let j=(X=T.filter(U=>U.overflows[0]<=0).sort((U,D)=>U.overflows[1]-D.overflows[1])[0])==null?void 0:X.placement;if(!j)switch(p){case"bestFit":{var q;const U=(q=T.filter(D=>{if(L){const z=K(D.placement);return z===w||z==="y"}return!0}).map(D=>[D.placement,D.overflows.filter(z=>z>0).reduce((z,Re)=>z+Re,0)]).sort((D,z)=>D[1]-z[1])[0])==null?void 0:q[0];U&&(j=U);break}case"initialPlacement":j=c;break}if(a!==j)return{reset:{placement:j}}}return{}}}},ao=new Set(["left","top"]);async function io(t,o){const{placement:n,platform:l,elements:a}=t,i=await(l.isRTL==null?void 0:l.isRTL(a.floating)),r=Y(n),c=de(n),d=K(n)==="y",s=ao.has(r)?-1:1,f=i&&d?-1:1,u=ce(o,t);let{mainAxis:m,crossAxis:p,alignmentAxis:h}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return c&&typeof h=="number"&&(p=c==="end"?h*-1:h),d?{x:p*f,y:m*s}:{x:m*s,y:p*f}}const ro=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(o){var n,l;const{x:a,y:i,placement:r,middlewareData:c}=o,d=await io(o,t);return r===((n=c.offset)==null?void 0:n.placement)&&(l=c.arrow)!=null&&l.alignmentOffset?{}:{x:a+d.x,y:i+d.y,data:{...d,placement:r}}}}},so=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(o){const{x:n,y:l,placement:a}=o,{mainAxis:i=!0,crossAxis:r=!1,limiter:c={fn:g=>{let{x:y,y:w}=g;return{x:y,y:w}}},...d}=ce(t,o),s={x:n,y:l},f=await Me(o,d),u=K(Y(a)),m=rt(u);let p=s[m],h=s[u];if(i){const g=m==="y"?"top":"left",y=m==="y"?"bottom":"right",w=p+f[g],b=p-f[y];p=it(w,p,b)}if(r){const g=u==="y"?"top":"left",y=u==="y"?"bottom":"right",w=h+f[g],b=h-f[y];h=it(w,h,b)}const _=c.fn({...o,[m]:p,[u]:h});return{..._,data:{x:_.x-n,y:_.y-l,enabled:{[m]:i,[u]:r}}}}}},co=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(o){var n,l;const{placement:a,rects:i,platform:r,elements:c}=o,{apply:d=()=>{},...s}=ce(t,o),f=await Me(o,s),u=Y(a),m=de(a),p=K(a)==="y",{width:h,height:_}=i.floating;let g,y;u==="top"||u==="bottom"?(g=u,y=m===(await(r.isRTL==null?void 0:r.isRTL(c.floating))?"start":"end")?"left":"right"):(y=u,g=m==="end"?"top":"bottom");const w=_-f.top-f.bottom,b=h-f.left-f.right,E=ne(_-f[g],w),x=ne(h-f[y],b),L=!o.middlewareData.shift;let V=E,C=x;if((n=o.middlewareData.shift)!=null&&n.enabled.x&&(C=b),(l=o.middlewareData.shift)!=null&&l.enabled.y&&(V=w),L&&!m){const T=A(f.left,0),R=A(f.right,0),X=A(f.top,0),q=A(f.bottom,0);p?C=h-2*(T!==0||R!==0?T+R:A(f.left,f.right)):V=_-2*(X!==0||q!==0?X+q:A(f.top,f.bottom))}await d({...o,availableWidth:C,availableHeight:V});const S=await r.getDimensions(c.floating);return h!==S.width||_!==S.height?{reset:{rects:!0}}:{}}}};function Ve(){return typeof window<"u"}function Q(t){return Oe(t)?(t.nodeName||"").toLowerCase():"#document"}function M(t){var o;return(t==null||(o=t.ownerDocument)==null?void 0:o.defaultView)||window}function I(t){var o;return(o=(Oe(t)?t.ownerDocument:t.document)||window.document)==null?void 0:o.documentElement}function Oe(t){return Ve()?t instanceof Node||t instanceof M(t).Node:!1}function O(t){return Ve()?t instanceof Element||t instanceof M(t).Element:!1}function H(t){return Ve()?t instanceof HTMLElement||t instanceof M(t).HTMLElement:!1}function mt(t){return!Ve()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof M(t).ShadowRoot}const fo=new Set(["inline","contents"]);function fe(t){const{overflow:o,overflowX:n,overflowY:l,display:a}=P(t);return/auto|scroll|overlay|hidden|clip/.test(o+l+n)&&!fo.has(a)}const uo=new Set(["table","td","th"]);function mo(t){return uo.has(Q(t))}const po=[":popover-open",":modal"];function Ce(t){return po.some(o=>{try{return t.matches(o)}catch{return!1}})}const ho=["transform","translate","scale","rotate","perspective"],go=["transform","translate","scale","rotate","perspective","filter"],bo=["paint","layout","strict","content"];function Pe(t){const o=je(),n=O(t)?P(t):t;return ho.some(l=>n[l]?n[l]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!o&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!o&&(n.filter?n.filter!=="none":!1)||go.some(l=>(n.willChange||"").includes(l))||bo.some(l=>(n.contain||"").includes(l))}function yo(t){let o=J(t);for(;H(o)&&!oe(o);){if(Pe(o))return o;if(Ce(o))return null;o=J(o)}return null}function je(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const wo=new Set(["html","body","#document"]);function oe(t){return wo.has(Q(t))}function P(t){return M(t).getComputedStyle(t)}function Ee(t){return O(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function J(t){if(Q(t)==="html")return t;const o=t.assignedSlot||t.parentNode||mt(t)&&t.host||I(t);return mt(o)?o.host:o}function pt(t){const o=J(t);return oe(o)?t.ownerDocument?t.ownerDocument.body:t.body:H(o)&&fe(o)?o:pt(o)}function ue(t,o,n){var l;o===void 0&&(o=[]),n===void 0&&(n=!0);const a=pt(t),i=a===((l=t.ownerDocument)==null?void 0:l.body),r=M(a);if(i){const c=ze(r);return o.concat(r,r.visualViewport||[],fe(a)?a:[],c&&n?ue(c):[])}return o.concat(a,ue(a,[],n))}function ze(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function ht(t){const o=P(t);let n=parseFloat(o.width)||0,l=parseFloat(o.height)||0;const a=H(t),i=a?t.offsetWidth:n,r=a?t.offsetHeight:l,c=ye(n)!==i||ye(l)!==r;return c&&(n=i,l=r),{width:n,height:l,$:c}}function Fe(t){return O(t)?t:t.contextElement}function le(t){const o=Fe(t);if(!H(o))return F(1);const n=o.getBoundingClientRect(),{width:l,height:a,$:i}=ht(o);let r=(i?ye(n.width):n.width)/l,c=(i?ye(n.height):n.height)/a;return(!r||!Number.isFinite(r))&&(r=1),(!c||!Number.isFinite(c))&&(c=1),{x:r,y:c}}const ko=F(0);function gt(t){const o=M(t);return!je()||!o.visualViewport?ko:{x:o.visualViewport.offsetLeft,y:o.visualViewport.offsetTop}}function _o(t,o,n){return o===void 0&&(o=!1),!n||o&&n!==M(t)?!1:o}function Z(t,o,n,l){o===void 0&&(o=!1),n===void 0&&(n=!1);const a=t.getBoundingClientRect(),i=Fe(t);let r=F(1);o&&(l?O(l)&&(r=le(l)):r=le(t));const c=_o(i,n,l)?gt(i):F(0);let d=(a.left+c.x)/r.x,s=(a.top+c.y)/r.y,f=a.width/r.x,u=a.height/r.y;if(i){const m=M(i),p=l&&O(l)?M(l):l;let h=m,_=ze(h);for(;_&&l&&p!==h;){const g=le(_),y=_.getBoundingClientRect(),w=P(_),b=y.left+(_.clientLeft+parseFloat(w.paddingLeft))*g.x,E=y.top+(_.clientTop+parseFloat(w.paddingTop))*g.y;d*=g.x,s*=g.y,f*=g.x,u*=g.y,d+=b,s+=E,h=M(_),_=ze(h)}}return _e({width:f,height:u,x:d,y:s})}function Be(t,o){const n=Ee(t).scrollLeft;return o?o.left+n:Z(I(t)).left+n}function bt(t,o){const n=t.getBoundingClientRect(),l=n.left+o.scrollLeft-Be(t,n),a=n.top+o.scrollTop;return{x:l,y:a}}function Vo(t){let{elements:o,rect:n,offsetParent:l,strategy:a}=t;const i=a==="fixed",r=I(l),c=o?Ce(o.floating):!1;if(l===r||c&&i)return n;let d={scrollLeft:0,scrollTop:0},s=F(1);const f=F(0),u=H(l);if((u||!u&&!i)&&((Q(l)!=="body"||fe(r))&&(d=Ee(l)),H(l))){const p=Z(l);s=le(l),f.x=p.x+l.clientLeft,f.y=p.y+l.clientTop}const m=r&&!u&&!i?bt(r,d):F(0);return{width:n.width*s.x,height:n.height*s.y,x:n.x*s.x-d.scrollLeft*s.x+f.x+m.x,y:n.y*s.y-d.scrollTop*s.y+f.y+m.y}}function Co(t){return Array.from(t.getClientRects())}function Eo(t){const o=I(t),n=Ee(t),l=t.ownerDocument.body,a=A(o.scrollWidth,o.clientWidth,l.scrollWidth,l.clientWidth),i=A(o.scrollHeight,o.clientHeight,l.scrollHeight,l.clientHeight);let r=-n.scrollLeft+Be(t);const c=-n.scrollTop;return P(l).direction==="rtl"&&(r+=A(o.clientWidth,l.clientWidth)-a),{width:a,height:i,x:r,y:c}}const yt=25;function Bo(t,o){const n=M(t),l=I(t),a=n.visualViewport;let i=l.clientWidth,r=l.clientHeight,c=0,d=0;if(a){i=a.width,r=a.height;const f=je();(!f||f&&o==="fixed")&&(c=a.offsetLeft,d=a.offsetTop)}const s=Be(l);if(s<=0){const f=l.ownerDocument,u=f.body,m=getComputedStyle(u),p=f.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,h=Math.abs(l.clientWidth-u.clientWidth-p);h<=yt&&(i-=h)}else s<=yt&&(i+=s);return{width:i,height:r,x:c,y:d}}const So=new Set(["absolute","fixed"]);function vo(t,o){const n=Z(t,!0,o==="fixed"),l=n.top+t.clientTop,a=n.left+t.clientLeft,i=H(t)?le(t):F(1),r=t.clientWidth*i.x,c=t.clientHeight*i.y,d=a*i.x,s=l*i.y;return{width:r,height:c,x:d,y:s}}function wt(t,o,n){let l;if(o==="viewport")l=Bo(t,n);else if(o==="document")l=Eo(I(t));else if(O(o))l=vo(o,n);else{const a=gt(t);l={x:o.x-a.x,y:o.y-a.y,width:o.width,height:o.height}}return _e(l)}function kt(t,o){const n=J(t);return n===o||!O(n)||oe(n)?!1:P(n).position==="fixed"||kt(n,o)}function xo(t,o){const n=o.get(t);if(n)return n;let l=ue(t,[],!1).filter(c=>O(c)&&Q(c)!=="body"),a=null;const i=P(t).position==="fixed";let r=i?J(t):t;for(;O(r)&&!oe(r);){const c=P(r),d=Pe(r);!d&&c.position==="fixed"&&(a=null),(i?!d&&!a:!d&&c.position==="static"&&!!a&&So.has(a.position)||fe(r)&&!d&&kt(t,r))?l=l.filter(f=>f!==r):a=c,r=J(r)}return o.set(t,l),l}function $o(t){let{element:o,boundary:n,rootBoundary:l,strategy:a}=t;const r=[...n==="clippingAncestors"?Ce(o)?[]:xo(o,this._c):[].concat(n),l],c=r[0],d=r.reduce((s,f)=>{const u=wt(o,f,a);return s.top=A(u.top,s.top),s.right=ne(u.right,s.right),s.bottom=ne(u.bottom,s.bottom),s.left=A(u.left,s.left),s},wt(o,c,a));return{width:d.right-d.left,height:d.bottom-d.top,x:d.left,y:d.top}}function Lo(t){const{width:o,height:n}=ht(t);return{width:o,height:n}}function To(t,o,n){const l=H(o),a=I(o),i=n==="fixed",r=Z(t,!0,i,o);let c={scrollLeft:0,scrollTop:0};const d=F(0);function s(){d.x=Be(a)}if(l||!l&&!i)if((Q(o)!=="body"||fe(a))&&(c=Ee(o)),l){const p=Z(o,!0,i,o);d.x=p.x+o.clientLeft,d.y=p.y+o.clientTop}else a&&s();i&&!l&&a&&s();const f=a&&!l&&!i?bt(a,c):F(0),u=r.left+c.scrollLeft-d.x-f.x,m=r.top+c.scrollTop-d.y-f.y;return{x:u,y:m,width:r.width,height:r.height}}function Ie(t){return P(t).position==="static"}function _t(t,o){if(!H(t)||P(t).position==="fixed")return null;if(o)return o(t);let n=t.offsetParent;return I(t)===n&&(n=n.ownerDocument.body),n}function Vt(t,o){const n=M(t);if(Ce(t))return n;if(!H(t)){let a=J(t);for(;a&&!oe(a);){if(O(a)&&!Ie(a))return a;a=J(a)}return n}let l=_t(t,o);for(;l&&mo(l)&&Ie(l);)l=_t(l,o);return l&&oe(l)&&Ie(l)&&!Pe(l)?n:l||yo(t)||n}const Ro=async function(t){const o=this.getOffsetParent||Vt,n=this.getDimensions,l=await n(t.floating);return{reference:To(t.reference,await o(t.floating),t.strategy),floating:{x:0,y:0,width:l.width,height:l.height}}};function No(t){return P(t).direction==="rtl"}const Do={convertOffsetParentRelativeRectToViewportRelativeRect:Vo,getDocumentElement:I,getClippingRect:$o,getOffsetParent:Vt,getElementRects:Ro,getClientRects:Co,getDimensions:Lo,getScale:le,isElement:O,isRTL:No};function Ct(t,o){return t.x===o.x&&t.y===o.y&&t.width===o.width&&t.height===o.height}function Ao(t,o){let n=null,l;const a=I(t);function i(){var c;clearTimeout(l),(c=n)==null||c.disconnect(),n=null}function r(c,d){c===void 0&&(c=!1),d===void 0&&(d=1),i();const s=t.getBoundingClientRect(),{left:f,top:u,width:m,height:p}=s;if(c||o(),!m||!p)return;const h=we(u),_=we(a.clientWidth-(f+m)),g=we(a.clientHeight-(u+p)),y=we(f),b={rootMargin:-h+"px "+-_+"px "+-g+"px "+-y+"px",threshold:A(0,ne(1,d))||1};let E=!0;function x(L){const V=L[0].intersectionRatio;if(V!==d){if(!E)return r();V?r(!1,V):l=setTimeout(()=>{r(!1,1e-7)},1e3)}V===1&&!Ct(s,t.getBoundingClientRect())&&r(),E=!1}try{n=new IntersectionObserver(x,{...b,root:a.ownerDocument})}catch{n=new IntersectionObserver(x,b)}n.observe(t)}return r(!0),i}function Se(t,o,n,l){l===void 0&&(l={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:d=!1}=l,s=Fe(t),f=a||i?[...s?ue(s):[],...ue(o)]:[];f.forEach(y=>{a&&y.addEventListener("scroll",n,{passive:!0}),i&&y.addEventListener("resize",n)});const u=s&&c?Ao(s,n):null;let m=-1,p=null;r&&(p=new ResizeObserver(y=>{let[w]=y;w&&w.target===s&&p&&(p.unobserve(o),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var b;(b=p)==null||b.observe(o)})),n()}),s&&!d&&p.observe(s),p.observe(o));let h,_=d?Z(t):null;d&&g();function g(){const y=Z(t);_&&!Ct(_,y)&&n(),_=y,h=requestAnimationFrame(g)}return n(),()=>{var y;f.forEach(w=>{a&&w.removeEventListener("scroll",n),i&&w.removeEventListener("resize",n)}),u?.(),(y=p)==null||y.disconnect(),p=null,d&&cancelAnimationFrame(h)}}const ve=ro,xe=so,$e=lo,Mo=co,Et=(t,o,n)=>{const l=new Map,a={platform:Do,...n},i={...a.platform,_c:l};return oo(t,o,{...a,platform:i})};function Oo(t){return t!=null&&typeof t=="object"&&"$el"in t}function Bt(t){if(Oo(t)){const o=t.$el;return Oe(o)&&Q(o)==="#comment"?null:o}return t}function me(t){return typeof t=="function"?t():e.unref(t)}function St(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function vt(t,o){const n=St(t);return Math.round(o*n)/n}function He(t,o,n){n===void 0&&(n={});const l=n.whileElementsMounted,a=e.computed(()=>{var V;return(V=me(n.open))!=null?V:!0}),i=e.computed(()=>me(n.middleware)),r=e.computed(()=>{var V;return(V=me(n.placement))!=null?V:"bottom"}),c=e.computed(()=>{var V;return(V=me(n.strategy))!=null?V:"absolute"}),d=e.computed(()=>{var V;return(V=me(n.transform))!=null?V:!0}),s=e.computed(()=>Bt(t.value)),f=e.computed(()=>Bt(o.value)),u=e.ref(0),m=e.ref(0),p=e.ref(c.value),h=e.ref(r.value),_=e.shallowRef({}),g=e.ref(!1),y=e.computed(()=>{const V={position:p.value,left:"0",top:"0"};if(!f.value)return V;const C=vt(f.value,u.value),S=vt(f.value,m.value);return d.value?{...V,transform:"translate("+C+"px, "+S+"px)",...St(f.value)>=1.5&&{willChange:"transform"}}:{position:p.value,left:C+"px",top:S+"px"}});let w;function b(){if(s.value==null||f.value==null)return;const V=a.value;Et(s.value,f.value,{middleware:i.value,placement:r.value,strategy:c.value}).then(C=>{u.value=C.x,m.value=C.y,p.value=C.strategy,h.value=C.placement,_.value=C.middlewareData,g.value=V!==!1})}function E(){typeof w=="function"&&(w(),w=void 0)}function x(){if(E(),l===void 0){b();return}if(s.value!=null&&f.value!=null){w=l(s.value,f.value,b);return}}function L(){a.value||(g.value=!1)}return e.watch([i,r,c,a],b,{flush:"sync"}),e.watch([s,f],x,{flush:"sync"}),e.watch(a,L,{flush:"sync"}),e.getCurrentScope()&&e.onScopeDispose(E),{x:e.shallowReadonly(u),y:e.shallowReadonly(m),strategy:e.shallowReadonly(p),placement:e.shallowReadonly(h),middlewareData:e.shallowReadonly(_),isPositioned:e.shallowReadonly(g),floatingStyles:y,update:b}}const xt=v(e.defineComponent({inheritAttrs:!1,__name:"dot-menu",props:{icon:{}},setup(t){const o=t,n=e.ref(!1),l=e.ref(null),a=e.ref(null),i=e.computed(()=>o.icon??$.DOT_MENU),{floatingStyles:r}=He(l,a,{placement:"bottom-end",middleware:[ve(8),$e(),xe({padding:8})],whileElementsMounted:Se}),c=()=>{n.value=!n.value},d=()=>{n.value=!1},s=f=>{const u=f.target;u&&(u.closest(".menu-action")||u.closest('[role="menuitem"]')||u.closest("a"))&&d()};return(f,u)=>{const m=e.resolveComponent("VjButton"),p=e.resolveComponent("VjMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["dot-menu-container",f.$attrs.class])},[e.createVNode(m,{ref_key:"buttonRef",ref:l,class:"dot-menu",tertiary:"",icon:i.value,onClick:c},null,8,["icon"]),e.createVNode(e.Transition,{name:"menu"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createBlock(p,{key:0,ref_key:"floatingRef",ref:a,style:e.normalizeStyle(e.unref(r)),class:"menu-dropdown",onClose:d,onClick:s},{default:e.withCtx(()=>[e.renderSlot(f.$slots,"default",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:3})],2),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"menu-backdrop",onClick:d})):e.createCommentVNode("",!0)]))],64)}}}),[["__scopeId","data-v-67bd71e4"]]),$t=v(e.defineComponent({__name:"link-button",props:{label:{},icon:{},to:{},primary:{type:Boolean},secondary:{type:Boolean},tertiary:{type:Boolean},disabled:{type:Boolean}},setup(t){const o=t,n=N.S,l=e.computed(()=>o.primary?"primary":o.secondary?"secondary":o.tertiary?"tertiary":"primary");return(a,i)=>{const r=e.resolveComponent("router-link");return e.openBlock(),e.createBlock(r,{to:t.to,class:e.normalizeClass(["button",l.value]),disabled:t.disabled},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(n)},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.label),1)]),_:1},8,["to","class","disabled"])}}}),[["__scopeId","data-v-bd3cf2f5"]]),Po=["disabled"],jo={class:"menu-action--icon"},Lt=v(e.defineComponent({__name:"menu-action",props:{label:{},icon:{},disabled:{type:Boolean}},setup(t){const o=N.S;return(n,l)=>(e.openBlock(),e.createElementBlock("button",{class:"menu-action button tertiary",disabled:t.disabled},[e.createElementVNode("span",jo,[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(o)},null,8,["icon","size"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",null,e.toDisplayString(t.label),1)],8,Po))}}),[["__scopeId","data-v-07850995"]]),zo={},Fo={class:"menu"};function Io(t,o){return e.openBlock(),e.createElementBlock("div",Fo,[e.renderSlot(t.$slots,"default",{},void 0,!0)])}const Tt=v(zo,[["render",Io],["__scopeId","data-v-259fec08"]]),Rt={mounted(t){t.classList.add("compact")},unmounted(t){t.classList.remove("compact")}},Nt=['input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]",'[tabindex]:not([tabindex="-1"])','[contenteditable="true"]'].join(", ");function Ho(t){const o=t.querySelectorAll(Nt);for(const n of Array.from(o))if(n.offsetParent!==null||n.getClientRects().length>0)return n;return null}const Dt={mounted(t,o){const n=typeof o.value=="number"?o.value:0,l=()=>{if(t.matches(Nt)){t.focus();return}const a=Ho(t);a&&a.focus()};n>0?setTimeout(l,n):requestAnimationFrame(l)}};class Ue{static _instance=null;observer=null;targets=new Map;constructor(){this.init()}static get instance(){return this._instance||(this._instance=new Ue),this._instance}init(){typeof window<"u"&&"ResizeObserver"in window?this.observer=new ResizeObserver(o=>{for(const n of o)this.handleEntry(n)}):typeof window<"u"&&globalThis.addEventListener("resize",this.handleWindowResize)}handleWindowResize=()=>{for(const o of this.targets.keys()){const n=o.getBoundingClientRect(),l={target:o,contentRect:n};this.handleEntry(l)}};handleEntry(o){const n=this.targets.get(o.target);if(!n)return;const l=o.contentRect.width,a=o.contentRect.height,i=o.target;for(const r of n.callbacks)try{r(l,a,i)}catch(c){console.error("resize callback error",c)}if(n.breakpoints){const r=Object.keys(n.breakpoints).map(d=>Number(d)).filter(d=>!Number.isNaN(d)).sort((d,s)=>d-s);let c;for(const d of r)l>=d&&(c=n.breakpoints[d]);c!==n.currentClass&&(n.currentClass&&o.target.classList.remove(n.currentClass),c&&o.target.classList.add(c),n.currentClass=c)}}observe(o,n,l){const a=this.targets.get(o);if(a)n&&a.callbacks.add(n),l?.breakpoints&&(a.breakpoints=l.breakpoints);else{const i=new Set;n&&i.add(n),this.targets.set(o,{callbacks:i,breakpoints:l?.breakpoints}),this.observer&&this.observer.observe(o)}if(l?.immediate){const i=o.getBoundingClientRect(),r={target:o,contentRect:i};if(this.handleEntry(r),n){const c=i.width,d=i.height;n(c,d,o)}}}unobserve(o,n){const l=this.targets.get(o);l&&(n&&l.callbacks.delete(n),(!n||l.callbacks.size===0)&&(this.targets.delete(o),this.observer&&this.observer.unobserve(o),l.currentClass&&o.classList&&o.classList.remove(l.currentClass)))}}const ae=Ue.instance,At={mounted(t,o){const n=o.value,l=typeof n=="function"?n:n?.onResize,a=typeof n=="object"&&n?.breakpoints?n.breakpoints:void 0,i=typeof n=="object"&&!!n?.immediate,r=t;r.__resize_cb=l,r.__resize_breakpoints=a,l&&ae.observe(t,l,{breakpoints:a,immediate:i})},updated(t,o){const n=t,l=n.__resize_cb,a=n.__resize_breakpoints,i=o.value,r=typeof i=="function"?i:i?.onResize,c=typeof i=="object"&&i?.breakpoints?i.breakpoints:void 0;if(l!==r){l&&ae.unobserve(t,l),r&&ae.observe(t,r,{breakpoints:c,immediate:!!(i&&typeof i=="object"&&i.immediate)}),n.__resize_cb=r,n.__resize_breakpoints=c;return}JSON.stringify(a||{})!==JSON.stringify(c||{})&&(l&&ae.unobserve(t,l),r&&ae.observe(t,r,{breakpoints:c,immediate:!0}),n.__resize_breakpoints=c)},unmounted(t){const o=t,n=o.__resize_cb;n&&ae.unobserve(t,n),delete o.__resize_cb,delete o.__resize_breakpoints}},Uo={},Wo={class:"spinner"};function Ko(t,o){return e.openBlock(),e.createElementBlock("div",Wo)}const We=v(Uo,[["render",Ko],["__scopeId","data-v-b957fb82"]]),Xo=200,qo=120;function Mt(t,o){const n=o.querySelector(".vj-loading-inner");if(!n)return;const l=t.clientHeight||t.getBoundingClientRect().height;n.classList.remove("vj-loading-inner--small","vj-loading-inner--minimal");const a=n.querySelector(".vj-loading-text");a&&a.classList.remove("vj-loading-text--hidden"),l<=qo?(n.classList.add("vj-loading-inner--minimal"),a&&a.classList.add("vj-loading-text--hidden")):l<=Xo&&n.classList.add("vj-loading-inner--small")}const Ot={mounted(t,o){let n,l;if(typeof o.value=="object"&&o.value!==null){const m=o.value;n=!!(m.active??!0),l=m.text}else n=!!o.value,l=void 0;const a=getComputedStyle(t),i={overlay:document.createElement("div")};(a.position==="static"||!a.position)&&(i.originalPosition=t.style.position,t.style.position="relative");const r=i.overlay;r.className="vj-loading-overlay",n||r.classList.add("vj-loading-overlay--hidden");const c=document.createElement("div"),d=document.createElement("div");d.className="vj-loading-inner",d.appendChild(c);let s;l&&(s=document.createElement("div"),s.className="vj-loading-text",s.textContent=l,d.appendChild(s)),r.appendChild(d),Mt(t,r);const f=e.createVNode(We);e.render(f,c),i.spinnerVnode=f,i.spinnerContainer=c,n&&(t.setAttribute("aria-busy","true"),t.style.pointerEvents="none"),t.appendChild(r);const u=t;u.__vjLoading=i},updated(t,o){const l=t.__vjLoading;if(!l)return;const{overlay:a}=l;let i,r;if(typeof o.value=="object"&&o.value!==null){const d=o.value;i=!!(d.active??!0),r=d.text}else i=!!o.value,r=void 0;i?(a.classList.remove("vj-loading-overlay--hidden"),t.setAttribute("aria-busy","true"),t.style.pointerEvents="none"):(a.classList.add("vj-loading-overlay--hidden"),t.removeAttribute("aria-busy"),t.style.pointerEvents="");const c=a.querySelector(".vj-loading-inner");if(c){const d=c.querySelector(".vj-loading-text");if(d)r?d.textContent=r:d.remove();else if(r){const s=document.createElement("div");s.className="vj-loading-text",s.textContent=r,c.appendChild(s)}}Mt(t,a)},unmounted(t){const o=t,n=o.__vjLoading;if(!n)return;const{overlay:l,originalPosition:a}=n;try{n.spinnerContainer&&e.render(null,n.spinnerContainer)}catch{}l&&l.parentElement===t&&t.removeChild(l),a!==void 0&&(t.style.position=a),o.__vjLoading=void 0}},Go=t=>{const o=document.createElement("div");return o.className="vj-tooltip",o.setAttribute("role","tooltip"),o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.pointerEvents="none",o.style.zIndex="10000",o.textContent=t,o};function Pt(t){if(!t)return{content:"",placement:"top",delay:200};if(typeof t.value=="string")return{content:t.value,placement:"top",delay:200};const n=t.value||{},l=n.placement??"top";return{content:n.content??"",placement:l,delay:n.delay??200}}const Ke={mounted(t,o){const n=Pt(o),l=Go(n.content);document.body.appendChild(l);const a={tooltip:l,cleanup:void 0,showTimer:null,hideTimer:null},i=async()=>{const p=await Et(t,l,{placement:n.placement,middleware:[ve(6),$e(),xe({padding:8})]}),{x:h,y:_}=p;Object.assign(l.style,{left:`${h}px`,top:`${_}px`})},r=()=>{a.hideTimer&&window.clearTimeout(a.hideTimer),a.showTimer=window.setTimeout(()=>{l.classList.add("vj-tooltip--visible"),i(),a.cleanup=Se(t,l,i)},n.delay)},c=()=>{a.showTimer&&window.clearTimeout(a.showTimer),a.hideTimer=window.setTimeout(()=>{if(l.classList.remove("vj-tooltip--visible"),a.cleanup){try{a.cleanup()}catch{}a.cleanup=void 0}},50)},d=p=>{r()},s=p=>{c()},f=()=>r(),u=()=>c(),m=p=>{p.pointerType==="touch"&&(r(),a.docHandler=h=>{!l.contains(h.target)&&!t.contains(h.target)&&(c(),document.removeEventListener("pointerdown",a.docHandler),a.docHandler=void 0)},document.addEventListener("pointerdown",a.docHandler))};t.addEventListener("pointerenter",d),t.addEventListener("pointerleave",s),t.addEventListener("focus",f),t.addEventListener("blur",u),t.addEventListener("pointerdown",m),a.onPointerEnter=d,a.onPointerLeave=s,a.onFocus=f,a.onBlur=u,a.onPointerDown=m,t.__vjTooltip=a},updated(t,o){const n=t.__vjTooltip;if(!n)return;const l=Pt(o);n.tooltip.textContent=l.content},unmounted(t){const o=t.__vjTooltip;if(o){try{o.cleanup&&o.cleanup()}catch{}o.tooltip&&o.tooltip.parentElement&&o.tooltip.parentElement.removeChild(o.tooltip),o.onPointerEnter&&t.removeEventListener("pointerenter",o.onPointerEnter),o.onPointerLeave&&t.removeEventListener("pointerleave",o.onPointerLeave),o.onFocus&&t.removeEventListener("focus",o.onFocus),o.onBlur&&t.removeEventListener("blur",o.onBlur),o.onPointerDown&&t.removeEventListener("pointerdown",o.onPointerDown),o.docHandler&&document.removeEventListener("pointerdown",o.docHandler),t.__vjTooltip=void 0}}},Yo={class:"notification__icon"},Jo={class:"notification__message"},Qo={class:"notification__title"},Zo={class:"notification__text"},Le=v(e.defineComponent({__name:"notification",props:{type:{},title:{},message:{}},emits:["close"],setup(t,{emit:o}){const n=t,l=o,a=e.computed(()=>{switch(n.type){case"success":return $.CHECK;case"warning":return $.WARNING;case"error":return $.ERROR;default:return $.INFO}}),i=()=>{l("close")};return(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["notification",`notification--${t.type}`]),onClick:i},[e.createElementVNode("div",Yo,[e.createVNode(W,{icon:a.value},null,8,["icon"])]),e.createElementVNode("div",Jo,[e.createElementVNode("div",Qo,e.toDisplayString(t.title),1),e.createElementVNode("div",Zo,e.toDisplayString(t.message),1)]),e.createVNode(he,{class:"notification__close compact",icon:e.unref($).CLOSE,onClick:e.withModifiers(i,["stop"]),tertiary:""},null,8,["icon"])],2))}}),[["__scopeId","data-v-ca4451c0"]]),el={class:"page"},tl={class:"header-left"},nl={class:"header-titles"},ol={key:0},ll={class:"header-actions"},al={key:0,class:"page-error"},il={key:1,class:"contents"},rl={key:2,class:"actions"},sl={key:3},cl={key:0},jt=v(e.defineComponent({directives:{loading:Ot},__name:"page",props:{title:{},subTitle:{},backLabel:{},scrollable:{type:Boolean},errorMessage:{},flow:{},loadingMessage:{}},emits:["back"],setup(t,{emit:o}){const n=t,l=e.computed(()=>n.flow?.running?.value??!1),a=e.computed(()=>n.flow?.error?.value??null),i=e.computed(()=>n.errorMessage??(a.value?String(a.value):null));return(r,c)=>{const d=e.resolveComponent("VjButton"),s=e.resolveDirective("loading");return e.withDirectives((e.openBlock(),e.createElementBlock("div",el,[e.createElementVNode("header",null,[e.createElementVNode("div",tl,[t.backLabel?(e.openBlock(),e.createBlock(d,{key:0,tertiary:"",icon:e.unref($).BACK,onClick:c[0]||(c[0]=f=>r.$emit("back")),size:"small"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("div",nl,[e.createElementVNode("h1",null,e.toDisplayString(t.title),1),t.subTitle?(e.openBlock(),e.createElementBlock("h2",ol,e.toDisplayString(t.subTitle),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",ll,[e.renderSlot(r.$slots,"headerActions",{},void 0,!0)])]),e.createElementVNode("main",{class:e.normalizeClass({scrollable:t.scrollable})},[i.value?(e.openBlock(),e.createElementBlock("div",al,[e.renderSlot(r.$slots,"error",{},()=>[e.createVNode(Le,{type:"error",title:i.value,message:i.value},null,8,["title","message"])],!0)])):e.createCommentVNode("",!0),i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",il,[e.renderSlot(r.$slots,"default",{},void 0,!0)])),i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",rl,[e.renderSlot(r.$slots,"actions",{},void 0,!0)])),r.$slots.flexFooter?(e.openBlock(),e.createElementBlock("footer",sl,[e.renderSlot(r.$slots,"flexFooter",{},void 0,!0)])):e.createCommentVNode("",!0)],2),r.$slots.footer?(e.openBlock(),e.createElementBlock("footer",cl,[e.renderSlot(r.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)])),[[s,{active:l.value,text:n.loadingMessage}]])}}}),[["__scopeId","data-v-3e724555"]]),dl={class:"paginator-info","aria-live":"polite"},zt=v(e.defineComponent({__name:"paginator",props:e.mergeModels({totalItems:{},pageSize:{},labels:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:o}){const n=t,l=e.useModel(t,"modelValue"),a=o,i=e.computed(()=>Math.max(1,Math.ceil((n.totalItems??0)/n.pageSize))),r=e.computed(()=>Math.min(Math.max(1,l.value??1),i.value)),c=e.computed(()=>r.value),d=e.computed(()=>r.value<=1),s=e.computed(()=>r.value>=i.value),f=e.computed(()=>n.labels?.item??"Eintrag"),u=e.computed(()=>n.labels?.of??"von"),m=y=>{const w=Math.min(Math.max(1,Math.floor(y)),i.value);w!==l.value&&(l.value=w,a("change",w))},p=()=>m(1),h=()=>m(r.value-1),_=()=>m(r.value+1),g=()=>m(i.value);return e.watch([()=>n.totalItems,()=>n.pageSize],()=>{l.value>i.value&&m(i.value)}),(y,w)=>{const b=e.resolveComponent("VjButton");return e.openBlock(),e.createElementBlock("nav",{class:"paginator","aria-label":"Pagination",onKeydown:w[0]||(w[0]=e.withKeys(e.withModifiers(()=>{},["prevent"]),["enter"]))},[e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).FIRST,disabled:d.value,onClick:p,"aria-label":"First page"},null,8,["icon","disabled"]),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).PREVIOUS,disabled:d.value,onClick:h,"aria-label":"Previous page"},null,8,["icon","disabled"]),e.renderSlot(y.$slots,"info",{current:r.value,totalPages:i.value,goTo:m},()=>[e.createElementVNode("div",dl,e.toDisplayString(f.value)+" "+e.toDisplayString(c.value)+" "+e.toDisplayString(u.value)+" "+e.toDisplayString(i.value),1)],!0),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).NEXT,disabled:s.value,onClick:_,"aria-label":"Next page"},null,8,["icon","disabled"]),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).LAST,disabled:s.value,onClick:g,"aria-label":"Last page"},null,8,["icon","disabled"])],32)}}}),[["__scopeId","data-v-b6fa8efe"]]),fl={class:"search-field"},ul=["value","placeholder"],Ft=v(e.defineComponent({__name:"search-field",props:e.mergeModels({placeholder:{default:"Search..."}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=i=>{o.value=i.target.value},l=()=>{o.value=""},a=e.computed(()=>!o.value);return(i,r)=>{const c=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",fl,[e.createVNode(c,{icon:e.unref($).SEARCH,size:e.unref(N).S},null,8,["icon","size"]),e.createElementVNode("input",{value:o.value,onInput:n,type:"text",placeholder:t.placeholder},null,40,ul),e.createVNode(c,{class:e.normalizeClass(["reset",{invisible:a.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:l},null,8,["class","icon","size"])])}}}),[["__scopeId","data-v-2771c8ed"]]),It=v(e.defineComponent({__name:"separator",props:{vertical:{type:Boolean}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["separator",{vertical:t.vertical}])},null,2))}}),[["__scopeId","data-v-e354bb4e"]]),ml={class:"tab-view"},pl={ref:"headerRef",class:"tab-view-header"},hl=["onClick"],gl={class:"tab-view-content"},Ht=v(e.defineComponent({__name:"tab-view",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=e.ref([]),l=e.ref([]),a=e.ref({width:"0px",transform:"translateX(0px)"}),i=(s,f)=>{s&&(l.value[f]=s)},r=()=>{const s=n.value.findIndex(f=>f.name===o.value);if(s>=0&&l.value[s]){const f=l.value[s],u=f.offsetWidth,m=f.offsetLeft;a.value={width:`${u}px`,transform:`translateX(${m}px)`}}},c=(s,f)=>{n.value.find(u=>u.name===s)||(n.value.push({name:s,label:f}),e.nextTick(()=>{!o.value&&n.value.length===1&&(o.value=s),r()}))},d=s=>{o.value=s};return e.watch(o,()=>{e.nextTick(()=>{r()})}),e.provide("tabView",{activeTab:()=>o.value,registerTab:c}),(s,f)=>(e.openBlock(),e.createElementBlock("div",ml,[e.createElementVNode("div",pl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(u,m)=>(e.openBlock(),e.createElementBlock("div",{key:u.name,ref_for:!0,ref:p=>i(p,m),class:e.normalizeClass(["tab-button",{active:o.value===u.name}]),onClick:p=>d(u.name)},e.toDisplayString(u.label),11,hl))),128)),f[0]||(f[0]=e.createElementVNode("div",{class:"tab-line"},null,-1)),e.createElementVNode("div",{class:"tab-indicator",style:e.normalizeStyle(a.value)},null,4)],512),e.createElementVNode("div",gl,[e.renderSlot(s.$slots,"default",{},void 0,!0)])]))}}),[["__scopeId","data-v-3d4ee454"]]),bl={key:0,class:"tab"},Ut=e.defineComponent({__name:"tab",props:{name:{},label:{}},setup(t){const o=t,n=e.inject("tabView"),l=e.computed(()=>n?.activeTab()===o.name);return e.onMounted(()=>{n?.registerTab(o.name,o.label)}),(a,i)=>l.value?(e.openBlock(),e.createElementBlock("div",bl,[e.renderSlot(a.$slots,"default")])):e.createCommentVNode("",!0)}}),yl=["onKeydown"],wl=v(e.defineComponent({__name:"editable-label",props:{modelValue:{},showIcon:{type:Boolean}},emits:["update:modelValue","edit"],setup(t,{emit:o}){const n=t,l=o,a=e.computed(()=>n.modelValue??""),i=e.ref(a.value),r=e.ref(!1),c=e.ref(!1),d=e.ref(null),s=e.computed(()=>!!n.showIcon);e.watch(a,p=>{i.value=p});function f(){r.value=!0,e.nextTick(()=>d.value?.focus())}function u(){r.value=!1,i.value!==a.value&&(l("update:modelValue",i.value),l("edit",i.value))}function m(){i.value=a.value,r.value=!1}return(p,h)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["vj-editable-label",{editing:r.value}]),onMouseenter:h[1]||(h[1]=_=>c.value=!0),onMouseleave:h[2]||(h[2]=_=>c.value=!1)},[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:d,class:"edit-input","onUpdate:modelValue":h[0]||(h[0]=_=>i.value=_),onKeydown:[e.withKeys(e.withModifiers(u,["prevent"]),["enter"]),e.withKeys(e.withModifiers(m,["prevent"]),["esc"])],onBlur:u},null,40,yl)),[[e.vModelText,i.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:"label-text",onClick:f,title:"Click to edit"},e.toDisplayString(a.value),1),c.value||s.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"edit-icon",onClick:e.withModifiers(f,["stop"])},[e.createVNode(W,{icon:e.unref($).EDIT},null,8,["icon"])])):e.createCommentVNode("",!0)],64))],34))}}),[["__scopeId","data-v-cdc52c5b"]]),kl="200% 200%",Wt=v(e.defineComponent({__name:"skeleton",props:{width:{},height:{},borderRadius:{}},setup(t){const o=t,n=e.computed(()=>o.width??"100%"),l=e.computed(()=>o.height??"16px"),a=e.computed(()=>o.borderRadius??"4px");return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:"vj-skeleton",style:e.normalizeStyle({width:n.value,height:l.value,borderRadius:a.value,backgroundSize:kl}),"aria-hidden":"true"},null,4))}}),[["__scopeId","data-v-ac05e016"]]),Kt={form:{labelPosition:"inline",appearance:"bordered"}};let Te={};function _l(t){Te={...Te,...t,form:{...Kt.form,...t.form}}}function Xe(){return{form:{...Kt.form,...Te.form}}}function Vl(){Te={}}const Cl=["data-colspan","data-newline"],El=["for"],Bl={class:"form-field__wrapper"},Sl=["for"],vl={key:1,class:"form-field__error"},xl={key:2,class:"form-field__help",type:"button","aria-label":"Hilfe"},ie=v(e.defineComponent({directives:{tooltip:Ke},__name:"form-field",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{}},emits:["update:modelValue","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue),i=e.ref(!1),r=e.computed(()=>`form-field-${n.id??Math.random().toString(36).slice(2)}`),c=e.computed(()=>n.labelPosition??Xe().form.labelPosition),d=e.computed(()=>n.appearance??Xe().form.appearance);e.watch(()=>n.modelValue,h=>a.value=h);const s=e.computed(()=>{if(c.value==="outline")return!0;const h=a.value!==""&&a.value!==null&&a.value!==void 0;return i.value||h}),f=e.computed(()=>c.value==="outline"||s.value?n.placeholder:"");function u(h){const g=h.target.value;a.value=g,l("update:modelValue",g)}function m(h){i.value=!0,l("focus",h)}function p(h){i.value=!1,l("blur",h)}return(h,_)=>{const g=e.resolveComponent("VjIcon"),y=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-field",`form-field--${c.value}`,`form-field--${d.value}`,{disabled:t.disabled},{labelless:!t.label},{error:!!t.error}]),"data-colspan":n.spanRow?void 0:n.colspan,"data-newline":n.spanRow||n.newLine?"true":void 0,style:e.normalizeStyle(n.spanRow?{gridColumn:"1 / -1"}:void 0)},[t.label&&c.value==="outline"?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:"form-field__label-outline"},e.toDisplayString(t.label),9,El)):e.createCommentVNode("",!0),e.createElementVNode("div",Bl,[e.renderSlot(h.$slots,"control",{id:r.value,value:a.value,onInput:u,onFocus:m,onBlur:p,disabled:t.disabled,placeholder:f.value},void 0,!0),t.label&&c.value==="inline"?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(["form-field__label",{"form-field__label--float":s.value}])},e.toDisplayString(t.label),11,Sl)):e.createCommentVNode("",!0)]),t.error?(e.openBlock(),e.createElementBlock("div",vl,e.toDisplayString(t.error),1)):e.createCommentVNode("",!0),n.helpText?e.withDirectives((e.openBlock(),e.createElementBlock("button",xl,[e.createVNode(g,{icon:e.unref($).HELP},null,8,["icon"])])),[[y,n.helpText]]):e.createCommentVNode("",!0)],14,Cl)}}}),[["__scopeId","data-v-19959d5e"]]),Xt=v(e.defineComponent({__name:"form-layout",props:{columns:{type:Number,default:4},gap:{type:String,default:"0.75rem"}},setup(t){const o=t,n=e.ref(null);let l=null;function a(){if(!n.value)return;Array.from(n.value.children).forEach(r=>{const c=r.getAttribute("data-colspan"),d=c?Math.max(1,Number(c)||1):1,s=r.getAttribute("data-newline");s!==null&&s!=="false"?r.style.gridColumn="1 / -1":r.style.gridColumn=`span ${d}`})}return e.onMounted(()=>{e.nextTick(()=>{a(),n.value&&(l=new MutationObserver(()=>a()),l.observe(n.value,{childList:!0,subtree:!1,attributes:!0,attributeFilter:["data-colspan","data-newline"]}))})}),e.onBeforeUnmount(()=>{l?.disconnect()}),e.watch(()=>o.columns,()=>e.nextTick(a)),e.watch(()=>o.gap,()=>e.nextTick(a)),(i,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:n,class:"form-layout",style:e.normalizeStyle({gridTemplateColumns:`repeat(${t.columns}, minmax(0, 1fr))`,gap:t.gap})},[e.renderSlot(i.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-96f62ab7"]]),$l={key:0,class:"form-section__title","data-newline":""},qt=v(e.defineComponent({__name:"form-section",props:{title:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.title?(e.openBlock(),e.createElementBlock("h3",$l,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},void 0,!0)],64))}}),[["__scopeId","data-v-69cff1d0"]]),Ll=["id","disabled"],Tl={class:"select-value"},Rl={key:1,class:"select-placeholder"},Nl={class:"select-options"},Dl=["onClick","onMouseenter"],qe=v(e.defineComponent({inheritAttrs:!1,__name:"select",props:e.mergeModels({options:{},placeholder:{},disabled:{type:Boolean},optionLabel:{type:Function},id:{},optionValue:{type:Function},icon:{},clearable:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t,{expose:o}){const n=t,l=e.useModel(t,"modelValue"),a=e.ref(!1),i=e.ref(-1),r=e.ref(null),c=e.ref(null),d=e.ref(null),{floatingStyles:s}=He(c,d,{placement:"bottom-start",middleware:[ve(4),$e(),xe({padding:8}),Mo({apply({rects:b,elements:E}){Object.assign(E.floating.style,{minWidth:`${b.reference.width}px`})}})],whileElementsMounted:Se}),f=b=>n.optionLabel?typeof n.optionLabel=="function"?n.optionLabel(b):String(b[n.optionLabel]):String(b),u=b=>n.optionValue?typeof n.optionValue=="function"?n.optionValue(b):b[n.optionValue]:b,m=e.computed(()=>n.options.find(b=>u(b)===l.value)),p=b=>u(b)===l.value,h=()=>{n.disabled||(a.value=!a.value)},_=()=>{a.value=!1,i.value=-1},g=b=>{l.value=u(b),_()},y=()=>{l.value=void 0},w=b=>{a.value&&r.value&&!r.value.contains(b.target)&&_()};return e.onMounted(()=>{document.addEventListener("click",w)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",w)}),e.watch(a,b=>{b&&m.value&&(i.value=n.options.findIndex(E=>p(E)))}),o({focus:()=>c.value?.focus(),blur:()=>c.value?.blur()}),(b,E)=>{const x=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{ref_key:"selectRef",ref:r,class:e.normalizeClass(["select",b.$attrs.class])},[e.createElementVNode("button",{ref_key:"buttonRef",ref:c,type:"button",class:"select-trigger",id:n.id,onClick:h,disabled:t.disabled},[n.icon?(e.openBlock(),e.createBlock(x,{key:0,icon:n.icon,size:e.unref(N).S,class:"select-icon-left"},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("span",Tl,[m.value?e.renderSlot(b.$slots,"selected",{key:0,option:m.value},()=>[e.createTextVNode(e.toDisplayString(f(m.value)),1)],!0):(e.openBlock(),e.createElementBlock("span",Rl,e.toDisplayString(t.placeholder),1))]),n.clearable&&m.value&&!t.disabled?(e.openBlock(),e.createBlock(x,{key:1,icon:e.unref($).CLOSE,size:e.unref(N).S,class:"select-clear-icon",onClick:e.withModifiers(y,["stop"])},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createVNode(x,{icon:e.unref($).CHEVRON_DOWN,size:e.unref(N).S,class:e.normalizeClass(["select-icon-right",{open:a.value}])},null,8,["icon","size","class"])],8,Ll),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"floatingRef",ref:d,style:e.normalizeStyle(e.unref(s)),class:"select-dropdown"},[e.createElementVNode("div",Nl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(L,V)=>(e.openBlock(),e.createElementBlock("div",{key:String(u(L)),class:e.normalizeClass(["select-option",{selected:p(L),highlighted:i.value===V}]),onClick:C=>g(L),onMouseenter:C=>i.value=V},[e.renderSlot(b.$slots,"option",{option:L,selected:p(L)},()=>[e.createTextVNode(e.toDisplayString(f(L)),1)],!0)],42,Dl))),128))])],4)):e.createCommentVNode("",!0)]),_:3})],2),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"select-backdrop",onClick:_})):e.createCommentVNode("",!0)]))],64)}}}),[["__scopeId","data-v-fc22f0e9"]]),Gt=e.defineComponent({__name:"input-select",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},options:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue);e.watch(()=>n.modelValue,r=>{a.value=r});const i=r=>{a.value=r,l("update:modelValue",r)};return(r,c)=>(e.openBlock(),e.createBlock(ie,{modelValue:a.value,"onUpdate:modelValue":i,label:n.label,id:n.id,placeholder:n.placeholder,disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,error:n.error,helpText:n.helpText,labelPosition:n.labelPosition,appearance:n.appearance},{control:e.withCtx(({id:d,disabled:s,placeholder:f})=>[e.createVNode(qe,{id:d,modelValue:a.value,"onUpdate:modelValue":[c[0]||(c[0]=u=>a.value=u),i],options:n.options,placeholder:f,disabled:s,"option-label":u=>u.label,"option-value":u=>u.value,clearable:""},e.createSlots({_:2},[r.$slots.selected?{name:"selected",fn:e.withCtx(({option:u})=>[e.renderSlot(r.$slots,"selected",{option:u})]),key:"0"}:void 0,r.$slots.option?{name:"option",fn:e.withCtx(({option:u})=>[e.renderSlot(r.$slots,"option",{option:u})]),key:"1"}:void 0]),1032,["id","modelValue","options","placeholder","disabled","option-label","option-value"])]),_:3},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","error","helpText","labelPosition","appearance"]))}}),Al=["aria-valuemin","aria-valuemax","aria-valuenow","aria-label"],Ml=["aria-valuemin","aria-valuemax","aria-valuenow"],Ol=v(e.defineComponent({__name:"slider",props:{modelValue:{default:void 0},min:{default:0},max:{default:100},step:{default:1},range:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(null),i=e.ref(!1),r=e.ref(!1),c=(V,C,S)=>Math.min(Math.max(V,C),S),d=e.ref(n.range?Array.isArray(n.modelValue)?n.modelValue[0]:n.min:typeof n.modelValue=="number"?n.modelValue:n.min),s=e.ref(n.range&&Array.isArray(n.modelValue)?n.modelValue[1]:n.max);e.watch(()=>n.modelValue,V=>{n.range?Array.isArray(V)&&(d.value=c(V[0],n.min,n.max),s.value=c(V[1],n.min,n.max)):typeof V=="number"&&(d.value=c(V,n.min,n.max))},{immediate:!0});const f=V=>(V-n.min)/(n.max-n.min)*100,u=e.computed(()=>({left:`${f(d.value)}%`})),m=e.computed(()=>({left:`${f(s.value)}%`})),p=e.computed(()=>{if(!n.range)return{width:`${f(d.value)}%`,left:"0%"};const V=f(d.value),C=f(s.value);return{left:`${V}%`,width:`${Math.max(0,C-V)}%`}});let h=null,_=null;const g=async(V,C)=>{h=V,_=C.pointerId,V==="low"?i.value=!0:r.value=!0;try{C.target.setPointerCapture(C.pointerId)}catch{}window.addEventListener("pointermove",w),window.addEventListener("pointerup",y)},y=V=>{if(_!=null&&V)try{V.target.releasePointerCapture(V.pointerId)}catch{}h=null,_=null,i.value=!1,r.value=!1,window.removeEventListener("pointermove",w),window.removeEventListener("pointerup",y),x()},w=V=>{if(!h||!a.value)return;const C=a.value.getBoundingClientRect(),S=c(V.clientX-C.left,0,C.width),T=n.min+S/C.width*(n.max-n.min),R=Math.round(T/n.step)*n.step;h==="low"?n.range?d.value=Math.min(R,s.value):d.value=c(R,n.min,n.max):h==="high"&&(s.value=Math.max(R,d.value))},b=V=>{if(!a.value)return;const C=a.value.getBoundingClientRect(),S=c(V.clientX-C.left,0,C.width),T=n.min+S/C.width*(n.max-n.min),R=Math.round(T/n.step)*n.step;if(n.range){const X=Math.abs(R-d.value),q=Math.abs(R-s.value);X<=q?d.value=Math.min(R,s.value):s.value=Math.max(R,d.value)}else d.value=c(R,n.min,n.max);x()},E=(V,C)=>{const S=n.step,T=C.key==="ArrowLeft"||C.key==="ArrowDown"?-1:C.key==="ArrowRight"||C.key==="ArrowUp"?1:0;if(T){if(V==="low"){const R=c(d.value+T*S,n.min,n.range?s.value:n.max);d.value=R,i.value=!0,setTimeout(()=>i.value=!1,800)}else{const R=c(s.value+T*S,n.range?d.value:n.max,n.max);s.value=R,r.value=!0,setTimeout(()=>r.value=!1,800)}x()}},x=()=>{n.range?(l("update:modelValue",[d.value,s.value]),l("change",[d.value,s.value])):(l("update:modelValue",d.value),l("change",d.value))};e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",w),window.removeEventListener("pointerup",y)}),e.watch([()=>n.min,()=>n.max],()=>{d.value=c(d.value,n.min,n.max),s.value=c(s.value,n.min,n.max)});const L=e.computed(()=>n.range);return e.nextTick(()=>{n.modelValue===void 0&&(n.range?l("update:modelValue",[d.value,s.value]):l("update:modelValue",d.value))}),(V,C)=>(e.openBlock(),e.createElementBlock("div",{class:"vj-slider",onPointerdown:C[8]||(C[8]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",{class:"track",ref_key:"track",ref:a,onClick:b},[e.createElementVNode("div",{class:"range",style:e.normalizeStyle(p.value)},null,4),i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"tooltip",style:e.normalizeStyle({left:u.value.left})},e.toDisplayString(d.value),5)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"handle low",style:e.normalizeStyle(u.value),"aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":d.value,"aria-label":L.value?"Lower value":"Value",onPointerdown:C[0]||(C[0]=e.withModifiers(S=>g("low",S),["prevent"])),onFocus:C[1]||(C[1]=S=>i.value=!0),onBlur:C[2]||(C[2]=S=>i.value=!1),onKeydown:C[3]||(C[3]=e.withModifiers(S=>E("low",S),["stop","prevent"])),role:"slider",tabindex:"0"},null,44,Al),L.value&&r.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"tooltip",style:e.normalizeStyle({left:m.value.left})},e.toDisplayString(s.value),5)):e.createCommentVNode("",!0),L.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"handle high",style:e.normalizeStyle(m.value),"aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":s.value,"aria-label":"Upper value",onPointerdown:C[4]||(C[4]=e.withModifiers(S=>g("high",S),["prevent"])),onFocus:C[5]||(C[5]=S=>r.value=!0),onBlur:C[6]||(C[6]=S=>r.value=!1),onKeydown:C[7]||(C[7]=e.withModifiers(S=>E("high",S),["stop","prevent"])),role:"slider",tabindex:"0"},null,44,Ml)):e.createCommentVNode("",!0)],512)],32))}}),[["__scopeId","data-v-d47c7475"]]),Pl=["onFocusin","onFocusout"],Yt=v(e.defineComponent({__name:"input-slider",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},min:{},max:{},step:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=n.modelValue===void 0?0:Number(n.modelValue),i=e.ref(Number.isNaN(a)?0:a),r=c=>{const d=typeof c=="number"?c:Number(c??0);i.value=Number.isNaN(d)?0:d,l("update:modelValue",i.value),l("input",i.value)};return(c,d)=>(e.openBlock(),e.createBlock(ie,{modelValue:i.value,"onUpdate:modelValue":r,label:n.label,id:n.id,placeholder:" ",disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,error:n.error},{control:e.withCtx(({id:s,disabled:f,placeholder:u,onFocus:m,onBlur:p})=>[e.createElementVNode("div",{class:"input-slider__control",onFocusin:m,onFocusout:p},[e.createVNode(Ol,{id:s,modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=h=>i.value=h),min:n.min,max:n.max,step:n.step,range:!1,disabled:f},null,8,["id","modelValue","min","max","step","disabled"])],40,Pl)]),_:1},8,["modelValue","label","id","disabled","colspan","newLine","spanRow","error"]))}}),[["__scopeId","data-v-051e6d17"]]),jl={class:"textarea"},zl=["value","placeholder","disabled","rows"],Ge=v(e.defineComponent({__name:"textarea",props:e.mergeModels({icon:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean},rows:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["focus","blur"],["update:modelValue"]),setup(t,{emit:o}){const n=o,l=e.useModel(t,"modelValue"),a=s=>{l.value=s.target.value},i=()=>{l.value=""},r=s=>{n("focus",s)},c=s=>{n("blur",s)},d=e.computed(()=>!l.value);return(s,f)=>{const u=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",jl,[t.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:t.icon,size:e.unref(N).S,class:"textarea-icon"},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("textarea",{value:l.value,onInput:a,onFocus:r,onBlur:c,placeholder:t.placeholder,disabled:t.disabled,rows:t.rows},null,40,zl),t.clearable&&!t.disabled?(e.openBlock(),e.createBlock(u,{key:1,class:e.normalizeClass(["clear-icon",{invisible:d.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:i},null,8,["class","icon","size"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-2ea43716"]]),Jt=e.defineComponent({__name:"input-text-area",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},rows:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=f=>l("update:modelValue",f),i=f=>l("input",f),r=f=>l("focus",f),c=f=>l("blur",f),d=f=>{a(f??"")},s=e.computed(()=>{const f=n.modelValue;return f==null?"":String(f)});return(f,u)=>(e.openBlock(),e.createBlock(ie,{modelValue:n.modelValue,"onUpdate:modelValue":a,onInput:i,onFocus:r,onBlur:c,label:n.label,id:n.id,placeholder:n.placeholder,disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,labelPosition:n.labelPosition,error:n.error,helpText:n.helpText,appearance:n.appearance},{control:e.withCtx(({id:m,disabled:p,placeholder:h,onFocus:_,onBlur:g})=>[e.createVNode(Ge,{id:m,modelValue:s.value,"onUpdate:modelValue":d,onFocus:y=>{_(y),r(y)},onBlur:y=>{g(y),c(y)},placeholder:h,disabled:p,rows:n.rows,clearable:""},null,8,["id","modelValue","onFocus","onBlur","placeholder","disabled","rows"])]),_:1},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","labelPosition","error","helpText","appearance"]))}}),Fl={class:"input"},Il=["value","type","placeholder","disabled"],Ye=v(e.defineComponent({__name:"input",props:e.mergeModels({icon:{},type:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["focus","blur"],["update:modelValue"]),setup(t,{emit:o}){const n=o,l=e.useModel(t,"modelValue"),a=s=>{l.value=s.target.value},i=()=>{l.value=""},r=s=>{n("focus",s)},c=s=>{n("blur",s)},d=e.computed(()=>!l.value);return(s,f)=>{const u=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",Fl,[t.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:t.icon,size:e.unref(N).S},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("input",{value:l.value,onInput:a,onFocus:r,onBlur:c,type:t.type,placeholder:t.placeholder,disabled:t.disabled},null,40,Il),t.clearable&&!t.disabled?(e.openBlock(),e.createBlock(u,{key:1,class:e.normalizeClass(["clear-icon",{invisible:d.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:i},null,8,["class","icon","size"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-3187d49c"]]),Qt=e.defineComponent({__name:"input-text",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},type:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=s=>l("update:modelValue",s),i=s=>l("input",s),r=s=>l("focus",s),c=s=>l("blur",s),d=s=>{a(s??"")};return(s,f)=>(e.openBlock(),e.createBlock(ie,{modelValue:t.modelValue,"onUpdate:modelValue":a,onInput:i,onFocus:r,onBlur:c,label:t.label,id:t.id,placeholder:t.placeholder,disabled:t.disabled,colspan:t.colspan,newLine:t.newLine,spanRow:t.spanRow,error:t.error,helpText:n.helpText,labelPosition:t.labelPosition,appearance:t.appearance},{control:e.withCtx(({id:u,disabled:m,placeholder:p,onFocus:h,onBlur:_})=>[e.createVNode(Ye,{id:u,modelValue:t.modelValue,type:t.type,"onUpdate:modelValue":d,onFocus:g=>{h(g),r(g)},onBlur:g=>{_(g),c(g)},placeholder:p,disabled:m,clearable:""},null,8,["id","modelValue","type","onFocus","onBlur","placeholder","disabled"])]),_:1},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","error","helpText","labelPosition","appearance"]))}}),Hl={class:"shell-navigation-item"},Ul={class:"shell-navigation-item-label"},Wl={key:1,class:"shell-navigation-item-link"},Kl=["aria-expanded"],Xl={class:"shell-navigation-item-label"},Zt=v(e.defineComponent({__name:"shell-navigation-item",props:{label:{},icon:{},to:{}},setup(t){const o=e.useSlots(),n=e.computed(()=>!!o.default),l=e.ref(!1),a=e.ref(null),i=e.ref(null),{floatingStyles:r}=He(a,i,{placement:"right-start",middleware:[ve(8),$e(),xe({padding:8})],whileElementsMounted:Se}),c=m=>{n.value&&(l.value=!l.value)},d=()=>{l.value=!1},s=m=>{d()},f=m=>{(m.key==="Escape"||m.key==="Esc")&&d()},u=m=>{const p=m.target;p&&(a.value&&a.value.contains(p)||i.value&&i.value.contains(p)||d())};return e.watch(l,m=>{m?(window.addEventListener("keydown",f),window.addEventListener("pointerdown",u)):(window.removeEventListener("keydown",f),window.removeEventListener("pointerdown",u))}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",f),window.removeEventListener("pointerdown",u)}),(m,p)=>{const h=e.resolveComponent("VjIcon"),_=e.resolveComponent("RouterLink"),g=e.resolveComponent("VjMenu");return e.openBlock(),e.createElementBlock("li",Hl,[t.to?(e.openBlock(),e.createBlock(_,{key:0,to:t.to,class:"shell-navigation-item-link"},{default:e.withCtx(()=>[e.createVNode(h,{icon:t.icon,class:"shell-navigation-item-icon"},null,8,["icon"]),e.createElementVNode("label",Ul,e.toDisplayString(t.label),1)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("div",Wl,[e.createElementVNode("button",{ref_key:"buttonRef",ref:a,class:"shell-navigation-item-button",onClick:e.withModifiers(c,["stop"]),"aria-expanded":l.value,type:"button"},[e.createVNode(h,{icon:t.icon,class:"shell-navigation-item-icon"},null,8,["icon"]),e.createElementVNode("label",Xl,e.toDisplayString(t.label),1)],8,Kl),e.createVNode(e.Transition,{name:"menu"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createBlock(g,{key:0,ref_key:"floatingRef",ref:i,style:e.normalizeStyle(e.unref(r)),class:"shell-navigation-item-menu",onClose:d,onClick:e.withModifiers(s,["stop"])},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:3}),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"menu-backdrop",onClick:d})):e.createCommentVNode("",!0)]))]))])}}}),[["__scopeId","data-v-3a50d1c2"]]),ql={class:"navigation-top"},Gl={key:0,class:"navigation-bottom"},Je=v(e.defineComponent({__name:"shell-navigation",setup(t){const o=e.inject(nn,on()),n=e.computed(()=>o.showLabels);return(l,a)=>{const i=e.resolveComponent("VjShellNavigationItem");return e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(["shell-navigation",{"with-labels":n.value}])},[e.createElementVNode("ul",ql,[e.unref(o).hasParent&&e.unref(o).backRoute.value?(e.openBlock(),e.createBlock(i,{key:0,to:e.unref(o).backRoute.value,label:"BACK",icon:e.unref($).HOME},null,8,["to","icon"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o).childRoutes.value,r=>(e.openBlock(),e.createBlock(i,{key:r.name,to:{name:r.name},label:r.meta.label,icon:r.meta.icon??e.unref($).HOME},null,8,["to","label","icon"]))),128))]),l.$slots.fixed?(e.openBlock(),e.createElementBlock("ul",Gl,[e.renderSlot(l.$slots,"fixed",{},void 0,!0)])):e.createCommentVNode("",!0)],2)}}}),[["__scopeId","data-v-306cfc22"]]),Yl={class:"shell"},Jl={class:"shell-title"},Ql=["src"],Zl={class:"header-actions"},en=v(e.defineComponent({__name:"shell",props:{title:{},icon:{},showNavigation:{type:Boolean}},setup(t){const o=an(),n=e.toRef(o,"asideComponent"),l=e.toRef(o,"hasAside"),a=e.toRef(o,"asideData"),i=e.computed(()=>{const r=a.value;return r&&typeof r=="object"?r:{}});return(r,c)=>{const d=e.resolveComponent("router-view");return e.openBlock(),e.createElementBlock("div",Yl,[e.createElementVNode("header",null,[e.createElementVNode("span",Jl,[t.icon?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.icon,alt:"Shell Icon"},null,8,Ql)):e.createCommentVNode("",!0),e.createElementVNode("h1",null,e.toDisplayString(t.title),1)]),e.createElementVNode("div",Zl,[e.renderSlot(r.$slots,"header-actions",{},void 0,!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["shell-content",{"with-navigation":t.showNavigation}])},[t.showNavigation?(e.openBlock(),e.createBlock(e.unref(Je),{key:0},e.createSlots({_:2},[r.$slots?.["navigation-fixed"]?{name:"fixed",fn:e.withCtx(()=>[e.renderSlot(r.$slots,"navigation-fixed",{},void 0,!0)]),key:"0"}:void 0]),1024)):e.createCommentVNode("",!0),e.createElementVNode("main",null,[e.renderSlot(r.$slots,"default",{},()=>[e.createVNode(d)],!0)]),e.createElementVNode("aside",{class:e.normalizeClass({"aside-visible":l.value})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),e.normalizeProps(e.guardReactiveProps(i.value)),null,16))],2)],2),c[0]||(c[0]=e.createElementVNode("footer",null,null,-1))])}}}),[["__scopeId","data-v-4dfd0097"]]);class ea{notifications=e.ref([]);notificationIdCounter=0;getNotifications(){return this.notifications}show(o,n,l,a){const i=`notification-${++this.notificationIdCounter}-${Date.now()}`,r=o==="error"?void 0:a??5e3,c={id:i,type:o,title:n,message:l,duration:r};return this.notifications.value.unshift(c),r&&setTimeout(()=>{this.remove(i)},r),i}info(o,n,l){return this.show("info",o,n,l)}warning(o,n,l){return this.show("warning",o,n,l)}error(o,n){return this.show("error",o,n)}success(o,n,l){return this.show("success",o,n,l)}remove(o){const n=this.notifications.value.findIndex(l=>l.id===o);n!==-1&&this.notifications.value.splice(n,1)}clearAll(){this.notifications.value=[]}}const Qe=new ea,ta={class:"notifications"},tn=v(e.defineComponent({__name:"notifications",setup(t){const o=Qe.getNotifications(),n=l=>Qe.remove(l);return(l,a)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",ta,[e.createVNode(e.TransitionGroup,{name:"notification"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),i=>(e.openBlock(),e.createBlock(Le,{key:i.id,type:i.type,title:i.title,message:i.message,onClose:r=>n(i.id)},null,8,["type","title","message","onClose"]))),128))]),_:1})])]))}}),[["__scopeId","data-v-543c499f"]]),nn="navigationProvider";function na(t){return!!t.meta&&"icon"in t.meta&&"label"in t.meta}const on=()=>{const t=nt.useRouter(),o=nt.useRoute(),n=!0,l=e.computed(()=>{const f=t.getRoutes();return f.filter(u=>u.path!=="/"&&!f.some(m=>m.children?.some(p=>p.name===u.name)))}),a=e.computed(()=>{const f=o.matched;return f.length?f[f.length-1]:null}),i=e.computed(()=>{const f=o.matched;return f.length>1?f[f.length-2]:null}),r=e.computed(()=>!!(a.value?.children?.length||i.value)),c=e.computed(()=>a.value?.children?.length?a.value:i.value?.children?.length?i.value:null),d=e.computed(()=>{if(!c.value)return null;const u=t.getRoutes().find(m=>m.children?.some(p=>p.name===c.value.name));return u?{name:u.name}:{path:"/"}}),s=e.computed(()=>{let f=[];return o.path==="/"?f=l.value:a.value?.children?.length?f=a.value.children:i.value?.children?.length?f=i.value.children:f=l.value,f.filter(na)});return{hasParent:r,backRoute:d,childRoutes:s,showLabels:n}},oa=(t,o=!0,n=void 0)=>{const l=e.isRef(t)?t:e.ref(t),a=!!n,i=e.ref(n||null);return{hasParent:a,backRoute:i,childRoutes:l,showLabels:o}},Ze=e.ref(!1),et=e.ref(null),tt=e.ref(null);let re=[];const ln=t=>(re.push(t),()=>{re=re.filter(o=>o!==t)}),la=(t,o)=>(re=[],et.value=t,tt.value=o??null,Ze.value=!0,{onClose:n=>ln(n)}),aa=t=>{try{re.forEach(o=>{try{o(t)}catch(n){console.error("aside onClose callback error",n)}})}finally{Ze.value=!1,setTimeout(ia,1e3)}},ia=()=>{re=[],et.value=null,tt.value=null},ra={asideComponent:et,asideData:tt,showAside:la,closeAside:aa,onAsideClose:ln,hasAside:Ze},an=()=>ra,sa=(t,o)=>{let n=null;return(...a)=>{n&&clearTimeout(n),n=setTimeout(()=>{t(...a)},o)}};class ca{containerElement=null;apps=[];ensureContainer(){return this.containerElement||(this.containerElement=document.createElement("div"),this.containerElement.id="vj-dialog-container",document.body.appendChild(this.containerElement)),this.containerElement}open(o){return new Promise(n=>{const l=this.ensureContainer(),a=document.createElement("div");l.appendChild(a);let i=!1;const r=()=>{i||(i=!0,setTimeout(()=>{const d=this.apps.find(s=>s.element===a);d&&(d.app.unmount(),this.apps=this.apps.filter(s=>s!==d)),a.remove()},300))},c=e.createApp({setup(){return()=>e.h(be,{modelValue:!0,title:o.title,message:o.message,component:o.component,componentProps:o.componentProps,showFooter:o.showFooter??!0,showCancel:o.showCancel??!0,confirmText:o.confirmText,cancelText:o.cancelText,closeOnBackdrop:o.closeOnBackdrop??!1,closeOnEscape:o.closeOnEscape??!0,onConfirm:()=>{n(!0),r()},onCancel:()=>{n(!1),r()},onClose:()=>{i||n(!1),r()}})}});c.component("VjCard",ge),c.component("VjIcon",W),c.component("VjButton",he),c.mount(a),this.apps.push({app:c,element:a})})}confirm(o){return this.open({title:o.title,message:o.message,showFooter:!0,showCancel:!0,confirmText:o.confirmText??"OK",cancelText:o.cancelText??"Abbrechen"})}alert(o,n){return this.open({title:o,message:n,showFooter:!0,showCancel:!1,confirmText:"OK"})}closeAll(){this.apps.forEach(({app:o,element:n})=>{o.unmount(),n.remove()}),this.apps=[]}}const rn=new ca;function da(){return rn}const fa=()=>{const t=e.ref(!1),o=e.ref(null),n=()=>{o.value=null};class l{inner;defaultValue;handlers=[];constructor(r,c){this.inner=r,this.defaultValue=c}onError(r){return this.handlers.push(r),this}async exec(){o.value=null,t.value=!0;try{return await this.inner()}catch(r){o.value=r;for(const c of this.handlers)try{c(r)}catch(d){console.error("onError handler failed",d)}if(this.defaultValue!==void 0)return this.defaultValue;throw r}finally{t.value=!1}}then(r,c){return this.exec().then(r,c)}}function a(i,r){return new l(i,r)}return{run:a,running:t,error:o,clearError:n}},ua={install(t){t.component("VjButton",he),t.component("VjButtonBar",ot),t.component("VjCard",ge),t.component("VjChip",Ne),t.component("VjChipGroup",De),t.component("VjChipSelector",at),t.component("VjCarousel",ge),t.component("VjCheckbox",lt),t.component("VjDotMenu",xt),t.component("VjDialog",be),t.component("VjIcon",W),t.component("VjLinkButton",$t),t.component("VjMenu",Tt),t.component("VjMenuAction",Lt),t.component("VjPage",jt),t.component("VjPaginator",zt),t.component("VjTab",Ut),t.component("VjTabView",Ht),t.component("VjSkeleton",Wt),t.component("VjSpinner",We),t.component("VjNotifications",tn),t.component("VjNotification",Le),t.component("VjInput",Ye),t.component("VjSelect",qe),t.component("VjTextArea",Ge),t.component("VjFormField",ie),t.component("VjFormLayout",Xt),t.component("VjFormSection",qt),t.component("VjInputText",Qt),t.component("VjInputTextArea",Jt),t.component("VjInputSelect",Gt),t.component("VjInputSlider",Yt),t.component("VjShellNavigation",Je),t.component("VjShellNavigationItem",Zt),t.component("VjShell",en),t.component("VjSearchField",Ft),t.component("VjSeparator",It),t.directive("focus",Dt),t.directive("resize",At),t.directive("compact",Rt),t.directive("tooltip",Ke)}};k.Button=he,k.ButtonBar=ot,k.Card=ge,k.Carousel=Cn,k.Checkbox=lt,k.Chip=Ne,k.ChipGroup=De,k.ChipSelector=at,k.Dialog=be,k.DotMenu=xt,k.EditableLabel=wl,k.FocusFirstDirective=Dt,k.FormField=ie,k.FormLayout=Xt,k.FormSection=qt,k.Icon=W,k.IconNames=$,k.IconSize=N,k.Input=Ye,k.InputSelect=Gt,k.InputSlider=Yt,k.InputText=Qt,k.InputTextArea=Jt,k.LinkButton=$t,k.LoadingDirective=Ot,k.Menu=Tt,k.MenuAction=Lt,k.NotificationComponent=Le,k.Notifications=tn,k.Page=jt,k.Paginator=zt,k.Radio=Ln,k.ResizeDirective=At,k.SearchField=Ft,k.Select=qe,k.Separator=It,k.Shell=en,k.ShellNavigation=Je,k.ShellNavigationItem=Zt,k.Skeleton=Wt,k.Spinner=We,k.Tab=Ut,k.TabView=Ht,k.TextArea=Ge,k.TooltipDirective=Ke,k.VjComponents=ua,k.VjNavigationProviderKey=nn,k.compactDirective=Rt,k.configureVueUI=_l,k.dialogService=rn,k.getVueUIConfig=Xe,k.notificationService=Qe,k.resetVueUIConfig=Vl,k.useAsideService=an,k.useDebounce=sa,k.useDialog=da,k.useFlow=fa,k.useRouterNavigationProvider=on,k.useStaticNavigationProvider=oa,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k.VanjanaVueUi={},k.Vue,k.VueRouter))})(this,(function(k,e,nt){"use strict";const S=(t,o)=>{const n=t.__vccOpts||t;for(const[l,a]of o)n[l]=a;return n},pn={},hn={class:"button-bar"},gn={class:"left"},bn={class:"right"};function yn(t,o){return e.openBlock(),e.createElementBlock("div",hn,[e.createElementVNode("div",gn,[e.renderSlot(t.$slots,"left",{},void 0,!0)]),e.createElementVNode("div",bn,[e.renderSlot(t.$slots,"default",{},void 0,!0)])])}const ot=S(pn,[["render",yn],["__scopeId","data-v-45a6ed1a"]]);var $=(t=>(t.HOME="fa-regular fa-house",t.DASHBOARD="fa-solid fa-gauge",t.MENU="fa-solid fa-bars",t.DOT_MENU="fa-solid fa-ellipsis-vertical",t.BACK="fa-regular fa-hand-point-left",t.LOGOUT="fa-solid fa-right-from-bracket",t.CHEVRON_LEFT="fa-solid fa-chevron-left",t.CHEVRON_RIGHT="fa-solid fa-chevron-right",t.CHEVRON_UP="fa-solid fa-chevron-up",t.CHEVRON_DOWN="fa-solid fa-chevron-down",t.PREVIOUS="fa-solid fa-angle-left",t.FIRST="fa-solid fa-angles-left",t.NEXT="fa-solid fa-angle-right",t.LAST="fa-solid fa-angles-right",t.USER="fa-regular fa-user-circle",t.CHARACTER="fa-solid fa-person",t.SETTINGS="fa-solid fa-gear",t.ADD="fa-regular fa-plus",t.EDIT="fa-solid fa-pen",t.REMOVE="fa-regular fa-trash-can",t.DELETE="fa-regular fa-trash-can",t.SHARE="fa-solid fa-share-nodes",t.SORT="fa-regular fa-arrow-up-arrow-down",t.CLOSE="fa-regular fa-circle-xmark",t.SAVE="fa-regular fa-floppy-disk",t.COPY="fa-regular fa-copy",t.DUPLICATE="fa-regular fa-clone",t.CUT="fa-solid fa-scissors",t.PASTE="fa-regular fa-clipboard",t.REFRESH="fa-solid fa-rotate-right",t.RELOAD="fa-solid fa-arrows-rotate",t.PRINT="fa-solid fa-print",t.FILTER="fa-solid fa-filter",t.UNDO="fa-solid fa-rotate-left",t.REDO="fa-solid fa-rotate-right",t.PIN="fa-solid fa-thumbtack",t.EXPAND="fa-solid fa-expand",t.COLLAPSE="fa-solid fa-compress",t.EXTERNAL_LINK="fa-solid fa-arrow-up-right-from-square",t.INFO="fa-solid fa-circle-info",t.WARNING="fa-solid fa-triangle-exclamation",t.ERROR="fa-regular fa-circle-xmark",t.CHECK="fa-regular fa-circle-check",t.LOVE="fa-regular fa-heart",t.STAR="fa-regular fa-star",t.STAR_FILLED="fa-solid fa-star",t.HELP="fa-regular fa-circle-question",t.QUESTION="fa-solid fa-question",t.PROJECT="fa-regular fa-folder-open",t.FOLDER="fa-regular fa-folder",t.FILE_TEXT="fa-regular fa-file-lines",t.UPLOAD="fa-solid fa-cloud-arrow-up",t.DOWNLOAD="fa-solid fa-cloud-arrow-down",t.ATTACHMENT="fa-solid fa-paperclip",t.LINK="fa-solid fa-link",t.TAG="fa-solid fa-tag",t.TAGS="fa-solid fa-tags",t.SEARCH="fa-solid fa-magnifying-glass",t.MESSAGE_SQUARE="fa-regular fa-message",t.MAIL="fa-regular fa-envelope",t.SHOPPING_BAG="fa-regular fa-bag-shopping",t.COMMENT="fa-regular fa-comment",t.COMMENTS="fa-regular fa-comments",t.CALENDAR="fa-regular fa-calendar",t.CALENDAR_DAY="fa-solid fa-calendar-day",t.CLOCK="fa-regular fa-clock",t.HISTORY="fa-solid fa-clock-rotate-left",t.LOCK="fa-solid fa-lock",t.UNLOCK="fa-solid fa-lock-open",t.EYE="fa-regular fa-eye",t.EYE_SLASH="fa-regular fa-eye-slash",t.SHIELD="fa-solid fa-shield",t.LIST="fa-solid fa-list",t.GRID="fa-solid fa-grid",t.TABLE="fa-solid fa-table",t.COLUMNS="fa-solid fa-columns",t.BELL="fa-regular fa-bell",t.IMAGE="fa-regular fa-image",t))($||{}),N=(t=>(t.S="icon-size-s",t.M="icon-size-m",t.L="icon-size-l",t))(N||{});const W=e.defineComponent({__name:"icon",props:{icon:{},size:{}},setup(t){const o=t,n=N.M,l=e.computed(()=>`${o.icon} ${o.size??n}`);return(a,i)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(l.value)},null,2))}}),wn=["disabled"],he=S(e.defineComponent({__name:"button",props:{label:{},icon:{},primary:{type:Boolean},secondary:{type:Boolean},tertiary:{type:Boolean},disabled:{type:Boolean}},setup(t){const o=t,n=N.S,l=e.computed(()=>o.primary?"primary":o.secondary?"secondary":o.tertiary?"tertiary":"primary"),a=e.computed(()=>!o.label&&!!o.icon);return(i,r)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["button",l.value,{"icon-only":a.value}]),disabled:t.disabled},[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(n)},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.label),1)],10,wn))}}),[["__scopeId","data-v-f31c33cf"]]),kn={key:0,class:"header-actions"},_n={key:0},ge=S(e.defineComponent({__name:"card",props:{header:{},scrollable:{type:Boolean}},setup(t){const o=e.useSlots();return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["card",{scrollable:t.scrollable}])},[e.createElementVNode("header",null,[e.createElementVNode("h3",null,e.toDisplayString(t.header),1),e.unref(o).headerActions?(e.openBlock(),e.createElementBlock("span",kn,[e.renderSlot(n.$slots,"headerActions",{},void 0,!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("main",null,[e.renderSlot(n.$slots,"default",{},void 0,!0)]),e.unref(o).footer?(e.openBlock(),e.createElementBlock("footer",_n,[e.renderSlot(n.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-ec6ab562"]]),Vn=["aria-label"],Cn={key:0,class:"carousel-indicators"},En=S(e.defineComponent({__name:"carousel",props:{autoplay:{type:Boolean},interval:{},loop:{type:Boolean},pauseOnHover:{type:Boolean},startIndex:{},ariaLabel:{}},setup(t){const o=t,n=o.autoplay??!1,l=o.interval??4e3,a=o.loop??!0,i=o.pauseOnHover??!0,r=o.startIndex??0,c=o.ariaLabel??"Carousel",d=e.ref(Math.max(0,r)),s=e.ref(null),f=e.ref(null),u=e.ref(0),m=e.ref(0);let p=!1;const h=e.ref(0),_=e.ref(!1);let g=null,y=null;const w=e.ref(null),b=e.ref(null),E=()=>{h.value=s.value?s.value.children.length:0,h.value===0?d.value=0:d.value>=h.value&&(d.value=a?0:h.value-1),L()},v=e.computed(()=>u.value>0?{transform:`translateX(${-d.value*u.value+m.value}px)`}:{transform:`translateX(-${d.value*100}%)`}),L=()=>{s.value&&Array.from(s.value.children).forEach((B,ee)=>{try{ee===d.value?B.removeAttribute("aria-hidden"):B.setAttribute("aria-hidden","true")}catch{}})},V=()=>{C(),!(!n||h.value<=1)&&(i&&_.value||(g=setTimeout(()=>{T(),V()},l)))},C=()=>{g&&(clearTimeout(g),g=null)},x=()=>{h.value!==0&&(d.value<=0?d.value=a?h.value-1:0:d.value--)},T=()=>{h.value!==0&&(d.value>=h.value-1?d.value=a?0:h.value-1:d.value++)},R=B=>{B<0||B>=h.value||(d.value=B)},X=()=>{_.value=!0,i&&C()},q=()=>{_.value=!1,V()},G=B=>{B.key==="ArrowLeft"?x():B.key==="ArrowRight"&&T()};let se=0,j=0;const U=B=>{se=B.touches[0].clientX,j=0},D=B=>{j=B.touches[0].clientX-se},z=()=>{j>50?x():j<-50&&T(),j=0};let Re=0;const cn=B=>{if(B.isPrimary!==!1&&!(B.pointerType==="mouse"&&B.button!==0)){p=!0,Re=B.clientX,m.value=0,C();try{B.target?.setPointerCapture?.(B.pointerId)}catch{}}},dn=B=>{p&&(m.value=B.clientX-Re,B.preventDefault())},fn=()=>{if(!p)return;p=!1;const B=Math.max(50,u.value*.15);m.value>B?x():m.value<-B&&T(),m.value=0,V()},un=B=>{try{B.target?.releasePointerCapture?.(B.pointerId)}catch{}fn()},mn=()=>fn();return e.onMounted(()=>{e.nextTick(()=>{if(E(),s.value&&(y=new MutationObserver(E),y.observe(s.value,{childList:!0}),s.value.addEventListener("touchstart",U,{passive:!0}),s.value.addEventListener("touchmove",D,{passive:!0}),s.value.addEventListener("touchend",z)),f.value){const B=()=>{u.value=f.value?f.value.clientWidth:0};B();const ee=window.ResizeObserver;if(ee&&f.value){const te=new ee(()=>B());te.observe(f.value),w.value=te}else window.addEventListener("resize",B),b.value=B;f.value&&(f.value.addEventListener("pointerdown",cn),f.value.addEventListener("pointermove",dn),f.value.addEventListener("pointerup",un),f.value.addEventListener("pointercancel",mn))}L(),V()})}),e.onBeforeUnmount(()=>{C(),y&&s.value&&y.disconnect(),s.value&&(s.value.removeEventListener("touchstart",U),s.value.removeEventListener("touchmove",D),s.value.removeEventListener("touchend",z)),f.value&&(w.value&&w.value.disconnect&&w.value.disconnect(),b.value&&window.removeEventListener("resize",b.value),f.value.removeEventListener("pointerdown",cn),f.value.removeEventListener("pointermove",dn),f.value.removeEventListener("pointerup",un),f.value.removeEventListener("pointercancel",mn))}),e.watch([d,()=>h.value],()=>{L()}),e.watch([()=>_.value,d],()=>{V()}),(B,ee)=>{const te=e.resolveComponent("VjButton");return e.openBlock(),e.createElementBlock("div",{class:"carousel",role:"region","aria-roledescription":"carousel","aria-label":e.unref(c),tabindex:"0",onKeydown:G,onMouseenter:X,onMouseleave:q},[e.createElementVNode("div",{class:"carousel-window",ref_key:"windowRef",ref:f},[e.createElementVNode("div",{class:"carousel-track",ref_key:"track",ref:s,style:e.normalizeStyle(v.value)},[e.renderSlot(B.$slots,"default",{},void 0,!0)],4)],512),e.createVNode(te,{class:"carousel-btn prev",icon:e.unref($).PREVIOUS,onClick:x,type:"button","aria-label":"Previous slide"},null,8,["icon"]),e.createVNode(te,{class:"carousel-btn next",icon:e.unref($).NEXT,onClick:T,type:"button","aria-label":"Next slide"},null,8,["icon"]),h.value>1?(e.openBlock(),e.createElementBlock("div",Cn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,pe=>(e.openBlock(),e.createBlock(te,{key:pe-1,class:e.normalizeClass(["indicator",{active:pe-1===d.value}]),onClick:Xa=>R(pe-1),"aria-current":pe-1===d.value,"aria-label":`Go to slide ${pe}`,type:"button"},null,8,["class","onClick","aria-current","aria-label"]))),128))])):e.createCommentVNode("",!0)],40,Vn)}}}),[["__scopeId","data-v-232abca2"]]),Bn={class:"checkbox"},Sn=["checked","disabled"],xn={key:0,class:"checkbox-label"},lt=S(e.defineComponent({__name:"checkbox",props:e.mergeModels({label:{},disabled:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=l=>{const a=l.target;o.value=a.checked};return(l,a)=>(e.openBlock(),e.createElementBlock("label",Bn,[e.createElementVNode("input",{type:"checkbox",checked:o.value,onChange:n,disabled:t.disabled,class:"checkbox-input"},null,40,Sn),a[0]||(a[0]=e.createElementVNode("span",{class:"checkbox-box"},[e.createElementVNode("svg",{class:"checkbox-icon",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{class:"checkbox-check",d:"M5 12L10 17L20 7",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),t.label?(e.openBlock(),e.createElementBlock("span",xn,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-d44b45ff"]]),vn={class:"radio"},$n=["checked","disabled"],Ln={key:0,class:"radio-label"},Tn=S(e.defineComponent({__name:"radio",props:e.mergeModels({label:{},disabled:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=l=>{const a=l.target;o.value=a.checked};return(l,a)=>(e.openBlock(),e.createElementBlock("label",vn,[e.createElementVNode("input",{type:"checkbox",checked:o.value,onChange:n,disabled:t.disabled,class:"radio-input"},null,40,$n),a[0]||(a[0]=e.createElementVNode("span",{class:"radio-box"},[e.createElementVNode("span",{class:"radio-dot","aria-hidden":"true"})],-1)),t.label?(e.openBlock(),e.createElementBlock("span",Ln,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-f9e4bb65"]]),Rn={class:"chip__label"},Ne=S(e.defineComponent({__name:"chip",props:e.mergeModels({label:{},dismissable:{type:Boolean},color:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue","dismiss","click"],["update:modelValue"]),setup(t,{emit:o}){const n=t,l=e.useModel(t,"modelValue"),a=o,i=n.dismissable??!1,r=e.computed(()=>{const d={};return n.color&&(d.color=`var(--on-surface-${n.color})`,d.background=`var(--surface-${n.color})`),d}),c=()=>{a("dismiss",l.value)};return(d,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["chip",{"chip--dismissable":e.unref(i)}]),style:e.normalizeStyle(r.value),onClick:s[0]||(s[0]=f=>d.$emit("click"))},[e.createElementVNode("span",Rn,e.toDisplayString(t.label),1),e.unref(i)?(e.openBlock(),e.createElementBlock("button",{key:0,class:"chip__close",type:"button",onClick:e.withModifiers(c,["stop"]),"aria-label":"Dismiss"},[e.createVNode(W,{icon:e.unref($).CLOSE,size:e.unref(N).S},null,8,["icon","size"])])):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-c2014a3b"]]),Nn={class:"chip-group"},Dn={key:0,class:"chip-group__label"},An={class:"chip-group__container"},Mn=["onDragover","onDrop"],On=["onDragstart","onDragover","onDragenter","onDrop"],Pn=["onDragover","onDrop"],jn={key:1,class:"chip-group__hint"},De=S(e.defineComponent({__name:"chip-group",props:{items:{default:()=>[]},label:{},hint:{},dismissable:{type:Boolean,default:!0},color:{},itemKey:{default:"value"},itemLabel:{default:"label"}},emits:["update:items","reorder","dismiss","chip-click"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(null),i=e.ref(null);function r(g,y){return typeof g=="string"?`${g}-${y}`:g[n.itemKey]!==void 0?String(g[n.itemKey]):`item-${y}`}function c(g){return typeof g=="string"?g:g[n.itemLabel]!==void 0?String(g[n.itemLabel]):String(g.value||"")}function d(g,y){a.value=g,y.dataTransfer&&(y.dataTransfer.effectAllowed="move",y.dataTransfer.setData("text/plain",String(g)))}function s(g,y){a.value===null||a.value===g||(y.preventDefault(),y.dataTransfer&&(y.dataTransfer.dropEffect="move"))}function f(g){a.value===null||a.value===g||(i.value=g)}function u(){}function m(g,y){return a.value===null||i.value===null||a.value===g?!1:y==="before"&&i.value===g&&a.value>g||y==="after"&&i.value===g&&a.value<g}function p(g,y){if(y.preventDefault(),a.value===null||a.value===g)return;const w=[...n.items],b=w[a.value];w.splice(a.value,1),w.splice(g,0,b),l("update:items",w),l("reorder",w)}function h(){a.value=null,i.value=null}function _(g){const y=n.items[g],w=n.items.filter((b,E)=>E!==g);l("update:items",w),l("dismiss",y,g)}return(g,y)=>(e.openBlock(),e.createElementBlock("div",Nn,[t.label?(e.openBlock(),e.createElementBlock("label",Dn,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",An,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(w,b)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r(w,b)},[m(b,"before")?(e.openBlock(),e.createElementBlock("div",{key:0,class:"chip-group__drop-indicator",onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDrop:E=>p(b,E)},null,40,Mn)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["chip-group__item",{"chip-group__item--dragging":a.value===b}]),draggable:"true",onDragstart:E=>d(b,E),onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDragenter:e.withModifiers(E=>f(b),["prevent"]),onDragleave:u,onDrop:E=>p(b,E),onDragend:h},[e.createVNode(Ne,{label:c(w),dismissable:typeof w=="string"?t.dismissable:w.dismissable??t.dismissable,color:typeof w=="string"?t.color:w.color??t.color,onDismiss:E=>_(b),onClick:E=>g.$emit("chip-click",w,b)},null,8,["label","dismissable","color","onDismiss","onClick"])],42,On),m(b,"after")?(e.openBlock(),e.createElementBlock("div",{key:1,class:"chip-group__drop-indicator",onDragover:e.withModifiers(E=>s(b,E),["prevent"]),onDrop:E=>p(b,E)},null,40,Pn)):e.createCommentVNode("",!0)],64))),128))]),t.hint?(e.openBlock(),e.createElementBlock("div",jn,e.toDisplayString(t.hint),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-66199d19"]]),zn={class:"dialog-content"},Fn={key:1},In={class:"dialog-footer"},be=S(e.defineComponent({__name:"dialog",props:{modelValue:{type:Boolean,default:!1},title:{},message:{},component:{},componentProps:{},showFooter:{type:Boolean,default:!1},showCancel:{type:Boolean,default:!0},confirmText:{default:"OK"},cancelText:{default:"Abbrechen"},closeOnBackdrop:{type:Boolean,default:!1},closeOnEscape:{type:Boolean,default:!0}},emits:["update:modelValue","confirm","cancel","close"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue);e.watch(()=>n.modelValue,f=>a.value=f);const i=()=>{a.value=!1,l("update:modelValue",!1),l("close")},r=()=>{l("confirm"),i()},c=()=>{l("cancel"),i()},d=()=>{n.closeOnBackdrop&&i()},s=f=>{f.key==="Escape"&&n.closeOnEscape&&a.value&&i()};return e.onMounted(()=>{document.addEventListener("keydown",s)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",s)}),(f,u)=>{const m=e.resolveComponent("VjIcon"),p=e.resolveComponent("VjButton"),h=e.resolveComponent("VjCard");return e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"dialog-fade"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dialog-backdrop",onClick:d},[e.createVNode(e.Transition,{name:"dialog-scale"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dialog-wrapper",onClick:u[0]||(u[0]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(h,{class:"dialog-card",header:t.title||""},e.createSlots({headerActions:e.withCtx(()=>[e.createVNode(m,{icon:e.unref($).CLOSE,size:e.unref(N).S,class:"dialog-close",onClick:i},null,8,["icon","size"])]),default:e.withCtx(()=>[e.createElementVNode("div",zn,[t.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.component),e.mergeProps({key:0},t.componentProps,{onClose:i}),null,16)):t.message?(e.openBlock(),e.createElementBlock("div",Fn,e.toDisplayString(t.message),1)):e.renderSlot(f.$slots,"default",{key:2},void 0,!0)])]),_:2},[t.showFooter?{name:"footer",fn:e.withCtx(()=>[e.createElementVNode("div",In,[e.renderSlot(f.$slots,"footer",{},()=>[t.showCancel?(e.openBlock(),e.createBlock(p,{key:0,secondary:"",onClick:c,label:t.cancelText},null,8,["label"])):e.createCommentVNode("",!0),e.createVNode(p,{primary:"",onClick:r,label:t.confirmText},null,8,["label"])],!0)])]),key:"0"}:void 0]),1032,["header"])])):e.createCommentVNode("",!0)]),_:3})])):e.createCommentVNode("",!0)]),_:3})])}}}),[["__scopeId","data-v-6af510b3"]]),Hn={class:"vj-chip-selector"},Un={class:"options-grid"},Wn=["onClick"],Kn={key:0,class:"no-options"},at=S(e.defineComponent({__name:"chip-selector",props:{items:{default:()=>[]},label:{default:""},hint:{default:""},options:{},dialogTitle:{},addButtonText:{default:"+ Add..."}},emits:["update:items"],setup(t,{emit:o}){const n=t,l=o,a=e.ref([...n.items]),i=e.ref(!1),r=e.computed(()=>n.options.filter(s=>!a.value.includes(s.value)));function c(s){const f=s;a.value=f,l("update:items",f)}function d(s){if(!a.value.includes(s)){const f=[...a.value,s];a.value=f,l("update:items",f)}}return e.watch(()=>n.items,s=>{JSON.stringify(s)!==JSON.stringify(a.value)&&(a.value=[...s])},{deep:!0}),(s,f)=>(e.openBlock(),e.createElementBlock("div",Hn,[e.createVNode(De,{items:a.value,"onUpdate:items":[f[0]||(f[0]=u=>a.value=u),c],label:t.label,hint:t.hint},null,8,["items","label","hint"]),e.createElementVNode("button",{type:"button",class:"add-button",onClick:f[1]||(f[1]=u=>i.value=!0)},e.toDisplayString(t.addButtonText),1),e.createVNode(be,{modelValue:i.value,"onUpdate:modelValue":f[2]||(f[2]=u=>i.value=u),title:t.dialogTitle||`Add ${t.label}`,"close-on-backdrop":""},{default:e.withCtx(()=>[e.createElementVNode("div",Un,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,u=>(e.openBlock(),e.createElementBlock("button",{key:u.value,type:"button",class:"option-btn",onClick:m=>d(u.value)},"+ "+e.toDisplayString(u.label),9,Wn))),128))]),r.value.length===0?(e.openBlock(),e.createElementBlock("div",Kn,"All options already selected")):e.createCommentVNode("",!0)]),_:1},8,["modelValue","title"])]))}}),[["__scopeId","data-v-f2e1b880"]]),ne=Math.min,A=Math.max,ye=Math.round,we=Math.floor,F=t=>({x:t,y:t}),Xn={left:"right",right:"left",bottom:"top",top:"bottom"},qn={start:"end",end:"start"};function it(t,o,n){return A(t,ne(o,n))}function ce(t,o){return typeof t=="function"?t(o):t}function Y(t){return t.split("-")[0]}function de(t){return t.split("-")[1]}function rt(t){return t==="x"?"y":"x"}function st(t){return t==="y"?"height":"width"}const Gn=new Set(["top","bottom"]);function K(t){return Gn.has(Y(t))?"y":"x"}function ct(t){return rt(K(t))}function Yn(t,o,n){n===void 0&&(n=!1);const l=de(t),a=ct(t),i=st(a);let r=a==="x"?l===(n?"end":"start")?"right":"left":l==="start"?"bottom":"top";return o.reference[i]>o.floating[i]&&(r=ke(r)),[r,ke(r)]}function Jn(t){const o=ke(t);return[Ae(t),o,Ae(o)]}function Ae(t){return t.replace(/start|end/g,o=>qn[o])}const dt=["left","right"],ft=["right","left"],Qn=["top","bottom"],Zn=["bottom","top"];function eo(t,o,n){switch(t){case"top":case"bottom":return n?o?ft:dt:o?dt:ft;case"left":case"right":return o?Qn:Zn;default:return[]}}function to(t,o,n,l){const a=de(t);let i=eo(Y(t),n==="start",l);return a&&(i=i.map(r=>r+"-"+a),o&&(i=i.concat(i.map(Ae)))),i}function ke(t){return t.replace(/left|right|bottom|top/g,o=>Xn[o])}function no(t){return{top:0,right:0,bottom:0,left:0,...t}}function oo(t){return typeof t!="number"?no(t):{top:t,right:t,bottom:t,left:t}}function _e(t){const{x:o,y:n,width:l,height:a}=t;return{width:l,height:a,top:n,left:o,right:o+l,bottom:n+a,x:o,y:n}}function ut(t,o,n){let{reference:l,floating:a}=t;const i=K(o),r=ct(o),c=st(r),d=Y(o),s=i==="y",f=l.x+l.width/2-a.width/2,u=l.y+l.height/2-a.height/2,m=l[c]/2-a[c]/2;let p;switch(d){case"top":p={x:f,y:l.y-a.height};break;case"bottom":p={x:f,y:l.y+l.height};break;case"right":p={x:l.x+l.width,y:u};break;case"left":p={x:l.x-a.width,y:u};break;default:p={x:l.x,y:l.y}}switch(de(o)){case"start":p[r]-=m*(n&&s?-1:1);break;case"end":p[r]+=m*(n&&s?-1:1);break}return p}const lo=async(t,o,n)=>{const{placement:l="bottom",strategy:a="absolute",middleware:i=[],platform:r}=n,c=i.filter(Boolean),d=await(r.isRTL==null?void 0:r.isRTL(o));let s=await r.getElementRects({reference:t,floating:o,strategy:a}),{x:f,y:u}=ut(s,l,d),m=l,p={},h=0;for(let _=0;_<c.length;_++){const{name:g,fn:y}=c[_],{x:w,y:b,data:E,reset:v}=await y({x:f,y:u,initialPlacement:l,placement:m,strategy:a,middlewareData:p,rects:s,platform:r,elements:{reference:t,floating:o}});f=w??f,u=b??u,p={...p,[g]:{...p[g],...E}},v&&h<=50&&(h++,typeof v=="object"&&(v.placement&&(m=v.placement),v.rects&&(s=v.rects===!0?await r.getElementRects({reference:t,floating:o,strategy:a}):v.rects),{x:f,y:u}=ut(s,m,d)),_=-1)}return{x:f,y:u,placement:m,strategy:a,middlewareData:p}};async function Me(t,o){var n;o===void 0&&(o={});const{x:l,y:a,platform:i,rects:r,elements:c,strategy:d}=t,{boundary:s="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:m=!1,padding:p=0}=ce(o,t),h=oo(p),g=c[m?u==="floating"?"reference":"floating":u],y=_e(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(g)))==null||n?g:g.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:s,rootBoundary:f,strategy:d})),w=u==="floating"?{x:l,y:a,width:r.floating.width,height:r.floating.height}:r.reference,b=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating)),E=await(i.isElement==null?void 0:i.isElement(b))?await(i.getScale==null?void 0:i.getScale(b))||{x:1,y:1}:{x:1,y:1},v=_e(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:w,offsetParent:b,strategy:d}):w);return{top:(y.top-v.top+h.top)/E.y,bottom:(v.bottom-y.bottom+h.bottom)/E.y,left:(y.left-v.left+h.left)/E.x,right:(v.right-y.right+h.right)/E.x}}const ao=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(o){var n,l;const{placement:a,middlewareData:i,rects:r,initialPlacement:c,platform:d,elements:s}=o,{mainAxis:f=!0,crossAxis:u=!0,fallbackPlacements:m,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:_=!0,...g}=ce(t,o);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const y=Y(a),w=K(c),b=Y(c)===c,E=await(d.isRTL==null?void 0:d.isRTL(s.floating)),v=m||(b||!_?[ke(c)]:Jn(c)),L=h!=="none";!m&&L&&v.push(...to(c,_,h,E));const V=[c,...v],C=await Me(o,g),x=[];let T=((l=i.flip)==null?void 0:l.overflows)||[];if(f&&x.push(C[y]),u){const G=Yn(a,r,E);x.push(C[G[0]],C[G[1]])}if(T=[...T,{placement:a,overflows:x}],!x.every(G=>G<=0)){var R,X;const G=(((R=i.flip)==null?void 0:R.index)||0)+1,se=V[G];if(se&&(!(u==="alignment"?w!==K(se):!1)||T.every(D=>K(D.placement)===w?D.overflows[0]>0:!0)))return{data:{index:G,overflows:T},reset:{placement:se}};let j=(X=T.filter(U=>U.overflows[0]<=0).sort((U,D)=>U.overflows[1]-D.overflows[1])[0])==null?void 0:X.placement;if(!j)switch(p){case"bestFit":{var q;const U=(q=T.filter(D=>{if(L){const z=K(D.placement);return z===w||z==="y"}return!0}).map(D=>[D.placement,D.overflows.filter(z=>z>0).reduce((z,Re)=>z+Re,0)]).sort((D,z)=>D[1]-z[1])[0])==null?void 0:q[0];U&&(j=U);break}case"initialPlacement":j=c;break}if(a!==j)return{reset:{placement:j}}}return{}}}},io=new Set(["left","top"]);async function ro(t,o){const{placement:n,platform:l,elements:a}=t,i=await(l.isRTL==null?void 0:l.isRTL(a.floating)),r=Y(n),c=de(n),d=K(n)==="y",s=io.has(r)?-1:1,f=i&&d?-1:1,u=ce(o,t);let{mainAxis:m,crossAxis:p,alignmentAxis:h}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return c&&typeof h=="number"&&(p=c==="end"?h*-1:h),d?{x:p*f,y:m*s}:{x:m*s,y:p*f}}const so=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(o){var n,l;const{x:a,y:i,placement:r,middlewareData:c}=o,d=await ro(o,t);return r===((n=c.offset)==null?void 0:n.placement)&&(l=c.arrow)!=null&&l.alignmentOffset?{}:{x:a+d.x,y:i+d.y,data:{...d,placement:r}}}}},co=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(o){const{x:n,y:l,placement:a}=o,{mainAxis:i=!0,crossAxis:r=!1,limiter:c={fn:g=>{let{x:y,y:w}=g;return{x:y,y:w}}},...d}=ce(t,o),s={x:n,y:l},f=await Me(o,d),u=K(Y(a)),m=rt(u);let p=s[m],h=s[u];if(i){const g=m==="y"?"top":"left",y=m==="y"?"bottom":"right",w=p+f[g],b=p-f[y];p=it(w,p,b)}if(r){const g=u==="y"?"top":"left",y=u==="y"?"bottom":"right",w=h+f[g],b=h-f[y];h=it(w,h,b)}const _=c.fn({...o,[m]:p,[u]:h});return{..._,data:{x:_.x-n,y:_.y-l,enabled:{[m]:i,[u]:r}}}}}},fo=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(o){var n,l;const{placement:a,rects:i,platform:r,elements:c}=o,{apply:d=()=>{},...s}=ce(t,o),f=await Me(o,s),u=Y(a),m=de(a),p=K(a)==="y",{width:h,height:_}=i.floating;let g,y;u==="top"||u==="bottom"?(g=u,y=m===(await(r.isRTL==null?void 0:r.isRTL(c.floating))?"start":"end")?"left":"right"):(y=u,g=m==="end"?"top":"bottom");const w=_-f.top-f.bottom,b=h-f.left-f.right,E=ne(_-f[g],w),v=ne(h-f[y],b),L=!o.middlewareData.shift;let V=E,C=v;if((n=o.middlewareData.shift)!=null&&n.enabled.x&&(C=b),(l=o.middlewareData.shift)!=null&&l.enabled.y&&(V=w),L&&!m){const T=A(f.left,0),R=A(f.right,0),X=A(f.top,0),q=A(f.bottom,0);p?C=h-2*(T!==0||R!==0?T+R:A(f.left,f.right)):V=_-2*(X!==0||q!==0?X+q:A(f.top,f.bottom))}await d({...o,availableWidth:C,availableHeight:V});const x=await r.getDimensions(c.floating);return h!==x.width||_!==x.height?{reset:{rects:!0}}:{}}}};function Ve(){return typeof window<"u"}function Q(t){return Oe(t)?(t.nodeName||"").toLowerCase():"#document"}function M(t){var o;return(t==null||(o=t.ownerDocument)==null?void 0:o.defaultView)||window}function I(t){var o;return(o=(Oe(t)?t.ownerDocument:t.document)||window.document)==null?void 0:o.documentElement}function Oe(t){return Ve()?t instanceof Node||t instanceof M(t).Node:!1}function O(t){return Ve()?t instanceof Element||t instanceof M(t).Element:!1}function H(t){return Ve()?t instanceof HTMLElement||t instanceof M(t).HTMLElement:!1}function mt(t){return!Ve()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof M(t).ShadowRoot}const uo=new Set(["inline","contents"]);function fe(t){const{overflow:o,overflowX:n,overflowY:l,display:a}=P(t);return/auto|scroll|overlay|hidden|clip/.test(o+l+n)&&!uo.has(a)}const mo=new Set(["table","td","th"]);function po(t){return mo.has(Q(t))}const ho=[":popover-open",":modal"];function Ce(t){return ho.some(o=>{try{return t.matches(o)}catch{return!1}})}const go=["transform","translate","scale","rotate","perspective"],bo=["transform","translate","scale","rotate","perspective","filter"],yo=["paint","layout","strict","content"];function Pe(t){const o=je(),n=O(t)?P(t):t;return go.some(l=>n[l]?n[l]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!o&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!o&&(n.filter?n.filter!=="none":!1)||bo.some(l=>(n.willChange||"").includes(l))||yo.some(l=>(n.contain||"").includes(l))}function wo(t){let o=J(t);for(;H(o)&&!oe(o);){if(Pe(o))return o;if(Ce(o))return null;o=J(o)}return null}function je(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const ko=new Set(["html","body","#document"]);function oe(t){return ko.has(Q(t))}function P(t){return M(t).getComputedStyle(t)}function Ee(t){return O(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function J(t){if(Q(t)==="html")return t;const o=t.assignedSlot||t.parentNode||mt(t)&&t.host||I(t);return mt(o)?o.host:o}function pt(t){const o=J(t);return oe(o)?t.ownerDocument?t.ownerDocument.body:t.body:H(o)&&fe(o)?o:pt(o)}function ue(t,o,n){var l;o===void 0&&(o=[]),n===void 0&&(n=!0);const a=pt(t),i=a===((l=t.ownerDocument)==null?void 0:l.body),r=M(a);if(i){const c=ze(r);return o.concat(r,r.visualViewport||[],fe(a)?a:[],c&&n?ue(c):[])}return o.concat(a,ue(a,[],n))}function ze(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function ht(t){const o=P(t);let n=parseFloat(o.width)||0,l=parseFloat(o.height)||0;const a=H(t),i=a?t.offsetWidth:n,r=a?t.offsetHeight:l,c=ye(n)!==i||ye(l)!==r;return c&&(n=i,l=r),{width:n,height:l,$:c}}function Fe(t){return O(t)?t:t.contextElement}function le(t){const o=Fe(t);if(!H(o))return F(1);const n=o.getBoundingClientRect(),{width:l,height:a,$:i}=ht(o);let r=(i?ye(n.width):n.width)/l,c=(i?ye(n.height):n.height)/a;return(!r||!Number.isFinite(r))&&(r=1),(!c||!Number.isFinite(c))&&(c=1),{x:r,y:c}}const _o=F(0);function gt(t){const o=M(t);return!je()||!o.visualViewport?_o:{x:o.visualViewport.offsetLeft,y:o.visualViewport.offsetTop}}function Vo(t,o,n){return o===void 0&&(o=!1),!n||o&&n!==M(t)?!1:o}function Z(t,o,n,l){o===void 0&&(o=!1),n===void 0&&(n=!1);const a=t.getBoundingClientRect(),i=Fe(t);let r=F(1);o&&(l?O(l)&&(r=le(l)):r=le(t));const c=Vo(i,n,l)?gt(i):F(0);let d=(a.left+c.x)/r.x,s=(a.top+c.y)/r.y,f=a.width/r.x,u=a.height/r.y;if(i){const m=M(i),p=l&&O(l)?M(l):l;let h=m,_=ze(h);for(;_&&l&&p!==h;){const g=le(_),y=_.getBoundingClientRect(),w=P(_),b=y.left+(_.clientLeft+parseFloat(w.paddingLeft))*g.x,E=y.top+(_.clientTop+parseFloat(w.paddingTop))*g.y;d*=g.x,s*=g.y,f*=g.x,u*=g.y,d+=b,s+=E,h=M(_),_=ze(h)}}return _e({width:f,height:u,x:d,y:s})}function Be(t,o){const n=Ee(t).scrollLeft;return o?o.left+n:Z(I(t)).left+n}function bt(t,o){const n=t.getBoundingClientRect(),l=n.left+o.scrollLeft-Be(t,n),a=n.top+o.scrollTop;return{x:l,y:a}}function Co(t){let{elements:o,rect:n,offsetParent:l,strategy:a}=t;const i=a==="fixed",r=I(l),c=o?Ce(o.floating):!1;if(l===r||c&&i)return n;let d={scrollLeft:0,scrollTop:0},s=F(1);const f=F(0),u=H(l);if((u||!u&&!i)&&((Q(l)!=="body"||fe(r))&&(d=Ee(l)),H(l))){const p=Z(l);s=le(l),f.x=p.x+l.clientLeft,f.y=p.y+l.clientTop}const m=r&&!u&&!i?bt(r,d):F(0);return{width:n.width*s.x,height:n.height*s.y,x:n.x*s.x-d.scrollLeft*s.x+f.x+m.x,y:n.y*s.y-d.scrollTop*s.y+f.y+m.y}}function Eo(t){return Array.from(t.getClientRects())}function Bo(t){const o=I(t),n=Ee(t),l=t.ownerDocument.body,a=A(o.scrollWidth,o.clientWidth,l.scrollWidth,l.clientWidth),i=A(o.scrollHeight,o.clientHeight,l.scrollHeight,l.clientHeight);let r=-n.scrollLeft+Be(t);const c=-n.scrollTop;return P(l).direction==="rtl"&&(r+=A(o.clientWidth,l.clientWidth)-a),{width:a,height:i,x:r,y:c}}const yt=25;function So(t,o){const n=M(t),l=I(t),a=n.visualViewport;let i=l.clientWidth,r=l.clientHeight,c=0,d=0;if(a){i=a.width,r=a.height;const f=je();(!f||f&&o==="fixed")&&(c=a.offsetLeft,d=a.offsetTop)}const s=Be(l);if(s<=0){const f=l.ownerDocument,u=f.body,m=getComputedStyle(u),p=f.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,h=Math.abs(l.clientWidth-u.clientWidth-p);h<=yt&&(i-=h)}else s<=yt&&(i+=s);return{width:i,height:r,x:c,y:d}}const xo=new Set(["absolute","fixed"]);function vo(t,o){const n=Z(t,!0,o==="fixed"),l=n.top+t.clientTop,a=n.left+t.clientLeft,i=H(t)?le(t):F(1),r=t.clientWidth*i.x,c=t.clientHeight*i.y,d=a*i.x,s=l*i.y;return{width:r,height:c,x:d,y:s}}function wt(t,o,n){let l;if(o==="viewport")l=So(t,n);else if(o==="document")l=Bo(I(t));else if(O(o))l=vo(o,n);else{const a=gt(t);l={x:o.x-a.x,y:o.y-a.y,width:o.width,height:o.height}}return _e(l)}function kt(t,o){const n=J(t);return n===o||!O(n)||oe(n)?!1:P(n).position==="fixed"||kt(n,o)}function $o(t,o){const n=o.get(t);if(n)return n;let l=ue(t,[],!1).filter(c=>O(c)&&Q(c)!=="body"),a=null;const i=P(t).position==="fixed";let r=i?J(t):t;for(;O(r)&&!oe(r);){const c=P(r),d=Pe(r);!d&&c.position==="fixed"&&(a=null),(i?!d&&!a:!d&&c.position==="static"&&!!a&&xo.has(a.position)||fe(r)&&!d&&kt(t,r))?l=l.filter(f=>f!==r):a=c,r=J(r)}return o.set(t,l),l}function Lo(t){let{element:o,boundary:n,rootBoundary:l,strategy:a}=t;const r=[...n==="clippingAncestors"?Ce(o)?[]:$o(o,this._c):[].concat(n),l],c=r[0],d=r.reduce((s,f)=>{const u=wt(o,f,a);return s.top=A(u.top,s.top),s.right=ne(u.right,s.right),s.bottom=ne(u.bottom,s.bottom),s.left=A(u.left,s.left),s},wt(o,c,a));return{width:d.right-d.left,height:d.bottom-d.top,x:d.left,y:d.top}}function To(t){const{width:o,height:n}=ht(t);return{width:o,height:n}}function Ro(t,o,n){const l=H(o),a=I(o),i=n==="fixed",r=Z(t,!0,i,o);let c={scrollLeft:0,scrollTop:0};const d=F(0);function s(){d.x=Be(a)}if(l||!l&&!i)if((Q(o)!=="body"||fe(a))&&(c=Ee(o)),l){const p=Z(o,!0,i,o);d.x=p.x+o.clientLeft,d.y=p.y+o.clientTop}else a&&s();i&&!l&&a&&s();const f=a&&!l&&!i?bt(a,c):F(0),u=r.left+c.scrollLeft-d.x-f.x,m=r.top+c.scrollTop-d.y-f.y;return{x:u,y:m,width:r.width,height:r.height}}function Ie(t){return P(t).position==="static"}function _t(t,o){if(!H(t)||P(t).position==="fixed")return null;if(o)return o(t);let n=t.offsetParent;return I(t)===n&&(n=n.ownerDocument.body),n}function Vt(t,o){const n=M(t);if(Ce(t))return n;if(!H(t)){let a=J(t);for(;a&&!oe(a);){if(O(a)&&!Ie(a))return a;a=J(a)}return n}let l=_t(t,o);for(;l&&po(l)&&Ie(l);)l=_t(l,o);return l&&oe(l)&&Ie(l)&&!Pe(l)?n:l||wo(t)||n}const No=async function(t){const o=this.getOffsetParent||Vt,n=this.getDimensions,l=await n(t.floating);return{reference:Ro(t.reference,await o(t.floating),t.strategy),floating:{x:0,y:0,width:l.width,height:l.height}}};function Do(t){return P(t).direction==="rtl"}const Ao={convertOffsetParentRelativeRectToViewportRelativeRect:Co,getDocumentElement:I,getClippingRect:Lo,getOffsetParent:Vt,getElementRects:No,getClientRects:Eo,getDimensions:To,getScale:le,isElement:O,isRTL:Do};function Ct(t,o){return t.x===o.x&&t.y===o.y&&t.width===o.width&&t.height===o.height}function Mo(t,o){let n=null,l;const a=I(t);function i(){var c;clearTimeout(l),(c=n)==null||c.disconnect(),n=null}function r(c,d){c===void 0&&(c=!1),d===void 0&&(d=1),i();const s=t.getBoundingClientRect(),{left:f,top:u,width:m,height:p}=s;if(c||o(),!m||!p)return;const h=we(u),_=we(a.clientWidth-(f+m)),g=we(a.clientHeight-(u+p)),y=we(f),b={rootMargin:-h+"px "+-_+"px "+-g+"px "+-y+"px",threshold:A(0,ne(1,d))||1};let E=!0;function v(L){const V=L[0].intersectionRatio;if(V!==d){if(!E)return r();V?r(!1,V):l=setTimeout(()=>{r(!1,1e-7)},1e3)}V===1&&!Ct(s,t.getBoundingClientRect())&&r(),E=!1}try{n=new IntersectionObserver(v,{...b,root:a.ownerDocument})}catch{n=new IntersectionObserver(v,b)}n.observe(t)}return r(!0),i}function Se(t,o,n,l){l===void 0&&(l={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:d=!1}=l,s=Fe(t),f=a||i?[...s?ue(s):[],...ue(o)]:[];f.forEach(y=>{a&&y.addEventListener("scroll",n,{passive:!0}),i&&y.addEventListener("resize",n)});const u=s&&c?Mo(s,n):null;let m=-1,p=null;r&&(p=new ResizeObserver(y=>{let[w]=y;w&&w.target===s&&p&&(p.unobserve(o),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var b;(b=p)==null||b.observe(o)})),n()}),s&&!d&&p.observe(s),p.observe(o));let h,_=d?Z(t):null;d&&g();function g(){const y=Z(t);_&&!Ct(_,y)&&n(),_=y,h=requestAnimationFrame(g)}return n(),()=>{var y;f.forEach(w=>{a&&w.removeEventListener("scroll",n),i&&w.removeEventListener("resize",n)}),u?.(),(y=p)==null||y.disconnect(),p=null,d&&cancelAnimationFrame(h)}}const xe=so,ve=co,$e=ao,Oo=fo,Et=(t,o,n)=>{const l=new Map,a={platform:Ao,...n},i={...a.platform,_c:l};return lo(t,o,{...a,platform:i})};function Po(t){return t!=null&&typeof t=="object"&&"$el"in t}function Bt(t){if(Po(t)){const o=t.$el;return Oe(o)&&Q(o)==="#comment"?null:o}return t}function me(t){return typeof t=="function"?t():e.unref(t)}function St(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function xt(t,o){const n=St(t);return Math.round(o*n)/n}function He(t,o,n){n===void 0&&(n={});const l=n.whileElementsMounted,a=e.computed(()=>{var V;return(V=me(n.open))!=null?V:!0}),i=e.computed(()=>me(n.middleware)),r=e.computed(()=>{var V;return(V=me(n.placement))!=null?V:"bottom"}),c=e.computed(()=>{var V;return(V=me(n.strategy))!=null?V:"absolute"}),d=e.computed(()=>{var V;return(V=me(n.transform))!=null?V:!0}),s=e.computed(()=>Bt(t.value)),f=e.computed(()=>Bt(o.value)),u=e.ref(0),m=e.ref(0),p=e.ref(c.value),h=e.ref(r.value),_=e.shallowRef({}),g=e.ref(!1),y=e.computed(()=>{const V={position:p.value,left:"0",top:"0"};if(!f.value)return V;const C=xt(f.value,u.value),x=xt(f.value,m.value);return d.value?{...V,transform:"translate("+C+"px, "+x+"px)",...St(f.value)>=1.5&&{willChange:"transform"}}:{position:p.value,left:C+"px",top:x+"px"}});let w;function b(){if(s.value==null||f.value==null)return;const V=a.value;Et(s.value,f.value,{middleware:i.value,placement:r.value,strategy:c.value}).then(C=>{u.value=C.x,m.value=C.y,p.value=C.strategy,h.value=C.placement,_.value=C.middlewareData,g.value=V!==!1})}function E(){typeof w=="function"&&(w(),w=void 0)}function v(){if(E(),l===void 0){b();return}if(s.value!=null&&f.value!=null){w=l(s.value,f.value,b);return}}function L(){a.value||(g.value=!1)}return e.watch([i,r,c,a],b,{flush:"sync"}),e.watch([s,f],v,{flush:"sync"}),e.watch(a,L,{flush:"sync"}),e.getCurrentScope()&&e.onScopeDispose(E),{x:e.shallowReadonly(u),y:e.shallowReadonly(m),strategy:e.shallowReadonly(p),placement:e.shallowReadonly(h),middlewareData:e.shallowReadonly(_),isPositioned:e.shallowReadonly(g),floatingStyles:y,update:b}}const vt=S(e.defineComponent({inheritAttrs:!1,__name:"dot-menu",props:{icon:{}},setup(t){const o=t,n=e.ref(!1),l=e.ref(null),a=e.ref(null),i=e.computed(()=>o.icon??$.DOT_MENU),{floatingStyles:r}=He(l,a,{placement:"bottom-end",middleware:[xe(8),$e(),ve({padding:8})],whileElementsMounted:Se}),c=()=>{n.value=!n.value},d=()=>{n.value=!1},s=f=>{const u=f.target;u&&(u.closest(".menu-action")||u.closest('[role="menuitem"]')||u.closest("a"))&&d()};return(f,u)=>{const m=e.resolveComponent("VjButton"),p=e.resolveComponent("VjMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["dot-menu-container",f.$attrs.class])},[e.createVNode(m,{ref_key:"buttonRef",ref:l,class:"dot-menu",tertiary:"",icon:i.value,onClick:c},null,8,["icon"]),e.createVNode(e.Transition,{name:"menu"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createBlock(p,{key:0,ref_key:"floatingRef",ref:a,style:e.normalizeStyle(e.unref(r)),class:"menu-dropdown",onClose:d,onClickCapture:s},{default:e.withCtx(()=>[e.renderSlot(f.$slots,"default",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:3})],2),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"menu-backdrop",onClick:d})):e.createCommentVNode("",!0)]))],64)}}}),[["__scopeId","data-v-3c400bfd"]]),$t=S(e.defineComponent({__name:"link-button",props:{label:{},icon:{},to:{},primary:{type:Boolean},secondary:{type:Boolean},tertiary:{type:Boolean},disabled:{type:Boolean}},setup(t){const o=t,n=N.S,l=e.computed(()=>o.primary?"primary":o.secondary?"secondary":o.tertiary?"tertiary":"primary");return(a,i)=>{const r=e.resolveComponent("router-link");return e.openBlock(),e.createBlock(r,{to:t.to,class:e.normalizeClass(["button",l.value]),disabled:t.disabled},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(n)},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.label),1)]),_:1},8,["to","class","disabled"])}}}),[["__scopeId","data-v-bd3cf2f5"]]),jo=["disabled"],zo={class:"menu-action--icon"},Lt=S(e.defineComponent({__name:"menu-action",props:{label:{},icon:{},disabled:{type:Boolean}},setup(t){const o=N.S;return(n,l)=>(e.openBlock(),e.createElementBlock("button",{class:"menu-action button tertiary",disabled:t.disabled},[e.createElementVNode("span",zo,[t.icon?(e.openBlock(),e.createBlock(W,{key:0,icon:t.icon,size:e.unref(o)},null,8,["icon","size"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",null,e.toDisplayString(t.label),1)],8,jo))}}),[["__scopeId","data-v-07850995"]]),Fo={},Io={class:"menu"};function Ho(t,o){return e.openBlock(),e.createElementBlock("div",Io,[e.renderSlot(t.$slots,"default",{},void 0,!0)])}const Tt=S(Fo,[["render",Ho],["__scopeId","data-v-259fec08"]]),Rt={mounted(t){t.classList.add("compact")},unmounted(t){t.classList.remove("compact")}},Nt=['input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]",'[tabindex]:not([tabindex="-1"])','[contenteditable="true"]'].join(", ");function Uo(t){const o=t.querySelectorAll(Nt);for(const n of Array.from(o))if(n.offsetParent!==null||n.getClientRects().length>0)return n;return null}const Dt={mounted(t,o){const n=typeof o.value=="number"?o.value:0,l=()=>{if(t.matches(Nt)){t.focus();return}const a=Uo(t);a&&a.focus()};n>0?setTimeout(l,n):requestAnimationFrame(l)}};class Ue{static _instance=null;observer=null;targets=new Map;constructor(){this.init()}static get instance(){return this._instance||(this._instance=new Ue),this._instance}init(){typeof window<"u"&&"ResizeObserver"in window?this.observer=new ResizeObserver(o=>{for(const n of o)this.handleEntry(n)}):typeof window<"u"&&globalThis.addEventListener("resize",this.handleWindowResize)}handleWindowResize=()=>{for(const o of this.targets.keys()){const n=o.getBoundingClientRect(),l={target:o,contentRect:n};this.handleEntry(l)}};handleEntry(o){const n=this.targets.get(o.target);if(!n)return;const l=o.contentRect.width,a=o.contentRect.height,i=o.target;for(const r of n.callbacks)try{r(l,a,i)}catch(c){console.error("resize callback error",c)}if(n.breakpoints){const r=Object.keys(n.breakpoints).map(d=>Number(d)).filter(d=>!Number.isNaN(d)).sort((d,s)=>d-s);let c;for(const d of r)l>=d&&(c=n.breakpoints[d]);c!==n.currentClass&&(n.currentClass&&o.target.classList.remove(n.currentClass),c&&o.target.classList.add(c),n.currentClass=c)}}observe(o,n,l){const a=this.targets.get(o);if(a)n&&a.callbacks.add(n),l?.breakpoints&&(a.breakpoints=l.breakpoints);else{const i=new Set;n&&i.add(n),this.targets.set(o,{callbacks:i,breakpoints:l?.breakpoints}),this.observer&&this.observer.observe(o)}if(l?.immediate){const i=o.getBoundingClientRect(),r={target:o,contentRect:i};if(this.handleEntry(r),n){const c=i.width,d=i.height;n(c,d,o)}}}unobserve(o,n){const l=this.targets.get(o);l&&(n&&l.callbacks.delete(n),(!n||l.callbacks.size===0)&&(this.targets.delete(o),this.observer&&this.observer.unobserve(o),l.currentClass&&o.classList&&o.classList.remove(l.currentClass)))}}const ae=Ue.instance,At={mounted(t,o){const n=o.value,l=typeof n=="function"?n:n?.onResize,a=typeof n=="object"&&n?.breakpoints?n.breakpoints:void 0,i=typeof n=="object"&&!!n?.immediate,r=t;r.__resize_cb=l,r.__resize_breakpoints=a,l&&ae.observe(t,l,{breakpoints:a,immediate:i})},updated(t,o){const n=t,l=n.__resize_cb,a=n.__resize_breakpoints,i=o.value,r=typeof i=="function"?i:i?.onResize,c=typeof i=="object"&&i?.breakpoints?i.breakpoints:void 0;if(l!==r){l&&ae.unobserve(t,l),r&&ae.observe(t,r,{breakpoints:c,immediate:!!(i&&typeof i=="object"&&i.immediate)}),n.__resize_cb=r,n.__resize_breakpoints=c;return}JSON.stringify(a||{})!==JSON.stringify(c||{})&&(l&&ae.unobserve(t,l),r&&ae.observe(t,r,{breakpoints:c,immediate:!0}),n.__resize_breakpoints=c)},unmounted(t){const o=t,n=o.__resize_cb;n&&ae.unobserve(t,n),delete o.__resize_cb,delete o.__resize_breakpoints}},Wo={},Ko={class:"spinner"};function Xo(t,o){return e.openBlock(),e.createElementBlock("div",Ko)}const We=S(Wo,[["render",Xo],["__scopeId","data-v-b957fb82"]]),qo=200,Go=120;function Mt(t,o){const n=o.querySelector(".vj-loading-inner");if(!n)return;const l=t.clientHeight||t.getBoundingClientRect().height;n.classList.remove("vj-loading-inner--small","vj-loading-inner--minimal");const a=n.querySelector(".vj-loading-text");a&&a.classList.remove("vj-loading-text--hidden"),l<=Go?(n.classList.add("vj-loading-inner--minimal"),a&&a.classList.add("vj-loading-text--hidden")):l<=qo&&n.classList.add("vj-loading-inner--small")}const Ot={mounted(t,o){let n,l;if(typeof o.value=="object"&&o.value!==null){const m=o.value;n=!!(m.active??!0),l=m.text}else n=!!o.value,l=void 0;const a=getComputedStyle(t),i={overlay:document.createElement("div")};(a.position==="static"||!a.position)&&(i.originalPosition=t.style.position,t.style.position="relative");const r=i.overlay;r.className="vj-loading-overlay",n||r.classList.add("vj-loading-overlay--hidden");const c=document.createElement("div"),d=document.createElement("div");d.className="vj-loading-inner",d.appendChild(c);let s;l&&(s=document.createElement("div"),s.className="vj-loading-text",s.textContent=l,d.appendChild(s)),r.appendChild(d),Mt(t,r);const f=e.createVNode(We);e.render(f,c),i.spinnerVnode=f,i.spinnerContainer=c,n&&(t.setAttribute("aria-busy","true"),t.style.pointerEvents="none"),t.appendChild(r);const u=t;u.__vjLoading=i},updated(t,o){const l=t.__vjLoading;if(!l)return;const{overlay:a}=l;let i,r;if(typeof o.value=="object"&&o.value!==null){const d=o.value;i=!!(d.active??!0),r=d.text}else i=!!o.value,r=void 0;i?(a.classList.remove("vj-loading-overlay--hidden"),t.setAttribute("aria-busy","true"),t.style.pointerEvents="none"):(a.classList.add("vj-loading-overlay--hidden"),t.removeAttribute("aria-busy"),t.style.pointerEvents="");const c=a.querySelector(".vj-loading-inner");if(c){const d=c.querySelector(".vj-loading-text");if(d)r?d.textContent=r:d.remove();else if(r){const s=document.createElement("div");s.className="vj-loading-text",s.textContent=r,c.appendChild(s)}}Mt(t,a)},unmounted(t){const o=t,n=o.__vjLoading;if(!n)return;const{overlay:l,originalPosition:a}=n;try{n.spinnerContainer&&e.render(null,n.spinnerContainer)}catch{}l&&l.parentElement===t&&t.removeChild(l),a!==void 0&&(t.style.position=a),o.__vjLoading=void 0}},Yo=t=>{const o=document.createElement("div");return o.className="vj-tooltip",o.setAttribute("role","tooltip"),o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.pointerEvents="none",o.style.zIndex="10000",o.textContent=t,o};function Pt(t){if(!t)return{content:"",placement:"top",delay:200};if(typeof t.value=="string")return{content:t.value,placement:"top",delay:200};const n=t.value||{},l=n.placement??"top";return{content:n.content??"",placement:l,delay:n.delay??200}}const Ke={mounted(t,o){const n=Pt(o),l=Yo(n.content);document.body.appendChild(l);const a={tooltip:l,cleanup:void 0,showTimer:null,hideTimer:null},i=async()=>{const p=await Et(t,l,{placement:n.placement,middleware:[xe(6),$e(),ve({padding:8})]}),{x:h,y:_}=p;Object.assign(l.style,{left:`${h}px`,top:`${_}px`})},r=()=>{a.hideTimer&&window.clearTimeout(a.hideTimer),a.showTimer=window.setTimeout(()=>{l.classList.add("vj-tooltip--visible"),i(),a.cleanup=Se(t,l,i)},n.delay)},c=()=>{a.showTimer&&window.clearTimeout(a.showTimer),a.hideTimer=window.setTimeout(()=>{if(l.classList.remove("vj-tooltip--visible"),a.cleanup){try{a.cleanup()}catch{}a.cleanup=void 0}},50)},d=p=>{r()},s=p=>{c()},f=()=>r(),u=()=>c(),m=p=>{p.pointerType==="touch"&&(r(),a.docHandler=h=>{!l.contains(h.target)&&!t.contains(h.target)&&(c(),document.removeEventListener("pointerdown",a.docHandler),a.docHandler=void 0)},document.addEventListener("pointerdown",a.docHandler))};t.addEventListener("pointerenter",d),t.addEventListener("pointerleave",s),t.addEventListener("focus",f),t.addEventListener("blur",u),t.addEventListener("pointerdown",m),a.onPointerEnter=d,a.onPointerLeave=s,a.onFocus=f,a.onBlur=u,a.onPointerDown=m,t.__vjTooltip=a},updated(t,o){const n=t.__vjTooltip;if(!n)return;const l=Pt(o);n.tooltip.textContent=l.content},unmounted(t){const o=t.__vjTooltip;if(o){try{o.cleanup&&o.cleanup()}catch{}o.tooltip&&o.tooltip.parentElement&&o.tooltip.parentElement.removeChild(o.tooltip),o.onPointerEnter&&t.removeEventListener("pointerenter",o.onPointerEnter),o.onPointerLeave&&t.removeEventListener("pointerleave",o.onPointerLeave),o.onFocus&&t.removeEventListener("focus",o.onFocus),o.onBlur&&t.removeEventListener("blur",o.onBlur),o.onPointerDown&&t.removeEventListener("pointerdown",o.onPointerDown),o.docHandler&&document.removeEventListener("pointerdown",o.docHandler),t.__vjTooltip=void 0}}},Jo={class:"notification__icon"},Qo={class:"notification__message"},Zo={class:"notification__title"},el={class:"notification__text"},Le=S(e.defineComponent({__name:"notification",props:{type:{},title:{},message:{}},emits:["close"],setup(t,{emit:o}){const n=t,l=o,a=e.computed(()=>{switch(n.type){case"success":return $.CHECK;case"warning":return $.WARNING;case"error":return $.ERROR;default:return $.INFO}}),i=()=>{l("close")};return(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["notification",`notification--${t.type}`]),onClick:i},[e.createElementVNode("div",Jo,[e.createVNode(W,{icon:a.value},null,8,["icon"])]),e.createElementVNode("div",Qo,[e.createElementVNode("div",Zo,e.toDisplayString(t.title),1),e.createElementVNode("div",el,e.toDisplayString(t.message),1)]),e.createVNode(he,{class:"notification__close compact",icon:e.unref($).CLOSE,onClick:e.withModifiers(i,["stop"]),tertiary:""},null,8,["icon"])],2))}}),[["__scopeId","data-v-ca4451c0"]]),tl={class:"page"},nl={class:"header-left"},ol={class:"header-titles"},ll={key:0},al={class:"header-actions"},il={key:0,class:"page-error"},rl={key:1,class:"contents"},sl={key:2,class:"actions"},cl={key:3},dl={key:0},jt=S(e.defineComponent({directives:{loading:Ot},__name:"page",props:{title:{},subTitle:{},backLabel:{},scrollable:{type:Boolean},errorMessage:{},flow:{},loadingMessage:{}},emits:["back"],setup(t,{emit:o}){const n=t,l=e.computed(()=>n.flow?.running?.value??!1),a=e.computed(()=>n.flow?.error?.value??null),i=e.computed(()=>n.errorMessage??(a.value?String(a.value):null));return(r,c)=>{const d=e.resolveComponent("VjButton"),s=e.resolveDirective("loading");return e.withDirectives((e.openBlock(),e.createElementBlock("div",tl,[e.createElementVNode("header",null,[e.createElementVNode("div",nl,[t.backLabel?(e.openBlock(),e.createBlock(d,{key:0,tertiary:"",icon:e.unref($).BACK,onClick:c[0]||(c[0]=f=>r.$emit("back")),size:"small"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("div",ol,[e.createElementVNode("h1",null,e.toDisplayString(t.title),1),t.subTitle?(e.openBlock(),e.createElementBlock("h2",ll,e.toDisplayString(t.subTitle),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",al,[e.renderSlot(r.$slots,"headerActions",{},void 0,!0)])]),e.createElementVNode("main",{class:e.normalizeClass({scrollable:t.scrollable})},[i.value?(e.openBlock(),e.createElementBlock("div",il,[e.renderSlot(r.$slots,"error",{},()=>[e.createVNode(Le,{type:"error",title:i.value,message:i.value},null,8,["title","message"])],!0)])):e.createCommentVNode("",!0),i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",rl,[e.renderSlot(r.$slots,"default",{},void 0,!0)])),i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",sl,[e.renderSlot(r.$slots,"actions",{},void 0,!0)])),r.$slots.flexFooter?(e.openBlock(),e.createElementBlock("footer",cl,[e.renderSlot(r.$slots,"flexFooter",{},void 0,!0)])):e.createCommentVNode("",!0)],2),r.$slots.footer?(e.openBlock(),e.createElementBlock("footer",dl,[e.renderSlot(r.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)])),[[s,{active:l.value,text:n.loadingMessage}]])}}}),[["__scopeId","data-v-3e724555"]]),fl={class:"paginator-info","aria-live":"polite"},zt=S(e.defineComponent({__name:"paginator",props:e.mergeModels({totalItems:{},pageSize:{},labels:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:o}){const n=t,l=e.useModel(t,"modelValue"),a=o,i=e.computed(()=>Math.max(1,Math.ceil((n.totalItems??0)/n.pageSize))),r=e.computed(()=>Math.min(Math.max(1,l.value??1),i.value)),c=e.computed(()=>r.value),d=e.computed(()=>r.value<=1),s=e.computed(()=>r.value>=i.value),f=e.computed(()=>n.labels?.item??"Eintrag"),u=e.computed(()=>n.labels?.of??"von"),m=y=>{const w=Math.min(Math.max(1,Math.floor(y)),i.value);w!==l.value&&(l.value=w,a("change",w))},p=()=>m(1),h=()=>m(r.value-1),_=()=>m(r.value+1),g=()=>m(i.value);return e.watch([()=>n.totalItems,()=>n.pageSize],()=>{l.value>i.value&&m(i.value)}),(y,w)=>{const b=e.resolveComponent("VjButton");return e.openBlock(),e.createElementBlock("nav",{class:"paginator","aria-label":"Pagination",onKeydown:w[0]||(w[0]=e.withKeys(e.withModifiers(()=>{},["prevent"]),["enter"]))},[e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).FIRST,disabled:d.value,onClick:p,"aria-label":"First page"},null,8,["icon","disabled"]),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).PREVIOUS,disabled:d.value,onClick:h,"aria-label":"Previous page"},null,8,["icon","disabled"]),e.renderSlot(y.$slots,"info",{current:r.value,totalPages:i.value,goTo:m},()=>[e.createElementVNode("div",fl,e.toDisplayString(f.value)+" "+e.toDisplayString(c.value)+" "+e.toDisplayString(u.value)+" "+e.toDisplayString(i.value),1)],!0),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).NEXT,disabled:s.value,onClick:_,"aria-label":"Next page"},null,8,["icon","disabled"]),e.createVNode(b,{tertiary:"",class:"paginator-btn",icon:e.unref($).LAST,disabled:s.value,onClick:g,"aria-label":"Last page"},null,8,["icon","disabled"])],32)}}}),[["__scopeId","data-v-b6fa8efe"]]),ul={class:"search-field"},ml=["value","placeholder"],Ft=S(e.defineComponent({__name:"search-field",props:e.mergeModels({placeholder:{default:"Search..."}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=i=>{o.value=i.target.value},l=()=>{o.value=""},a=e.computed(()=>!o.value);return(i,r)=>{const c=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",ul,[e.createVNode(c,{icon:e.unref($).SEARCH,size:e.unref(N).S},null,8,["icon","size"]),e.createElementVNode("input",{value:o.value,onInput:n,type:"text",placeholder:t.placeholder},null,40,ml),e.createVNode(c,{class:e.normalizeClass(["reset",{invisible:a.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:l},null,8,["class","icon","size"])])}}}),[["__scopeId","data-v-2771c8ed"]]),It=S(e.defineComponent({__name:"separator",props:{vertical:{type:Boolean}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["separator",{vertical:t.vertical}])},null,2))}}),[["__scopeId","data-v-e354bb4e"]]),pl={class:"tab-view"},hl={ref:"headerRef",class:"tab-view-header"},gl=["onClick"],bl={class:"tab-view-content"},Ht=S(e.defineComponent({__name:"tab-view",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(t){const o=e.useModel(t,"modelValue"),n=e.ref([]),l=e.ref([]),a=e.ref({width:"0px",transform:"translateX(0px)"}),i=(s,f)=>{s&&(l.value[f]=s)},r=()=>{const s=n.value.findIndex(f=>f.name===o.value);if(s>=0&&l.value[s]){const f=l.value[s],u=f.offsetWidth,m=f.offsetLeft;a.value={width:`${u}px`,transform:`translateX(${m}px)`}}},c=(s,f)=>{n.value.find(u=>u.name===s)||(n.value.push({name:s,label:f}),e.nextTick(()=>{!o.value&&n.value.length===1&&(o.value=s),r()}))},d=s=>{o.value=s};return e.watch(o,()=>{e.nextTick(()=>{r()})}),e.provide("tabView",{activeTab:()=>o.value,registerTab:c}),(s,f)=>(e.openBlock(),e.createElementBlock("div",pl,[e.createElementVNode("div",hl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(u,m)=>(e.openBlock(),e.createElementBlock("div",{key:u.name,ref_for:!0,ref:p=>i(p,m),class:e.normalizeClass(["tab-button",{active:o.value===u.name}]),onClick:p=>d(u.name)},e.toDisplayString(u.label),11,gl))),128)),f[0]||(f[0]=e.createElementVNode("div",{class:"tab-line"},null,-1)),e.createElementVNode("div",{class:"tab-indicator",style:e.normalizeStyle(a.value)},null,4)],512),e.createElementVNode("div",bl,[e.renderSlot(s.$slots,"default",{},void 0,!0)])]))}}),[["__scopeId","data-v-3d4ee454"]]),yl={key:0,class:"tab"},Ut=e.defineComponent({__name:"tab",props:{name:{},label:{}},setup(t){const o=t,n=e.inject("tabView"),l=e.computed(()=>n?.activeTab()===o.name);return e.onMounted(()=>{n?.registerTab(o.name,o.label)}),(a,i)=>l.value?(e.openBlock(),e.createElementBlock("div",yl,[e.renderSlot(a.$slots,"default")])):e.createCommentVNode("",!0)}}),wl=["onKeydown"],kl=S(e.defineComponent({__name:"editable-label",props:{modelValue:{},showIcon:{type:Boolean}},emits:["update:modelValue","edit"],setup(t,{emit:o}){const n=t,l=o,a=e.computed(()=>n.modelValue??""),i=e.ref(a.value),r=e.ref(!1),c=e.ref(!1),d=e.ref(null),s=e.computed(()=>!!n.showIcon);e.watch(a,p=>{i.value=p});function f(){r.value=!0,e.nextTick(()=>d.value?.focus())}function u(){r.value=!1,i.value!==a.value&&(l("update:modelValue",i.value),l("edit",i.value))}function m(){i.value=a.value,r.value=!1}return(p,h)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["vj-editable-label",{editing:r.value}]),onMouseenter:h[1]||(h[1]=_=>c.value=!0),onMouseleave:h[2]||(h[2]=_=>c.value=!1)},[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:d,class:"edit-input","onUpdate:modelValue":h[0]||(h[0]=_=>i.value=_),onKeydown:[e.withKeys(e.withModifiers(u,["prevent"]),["enter"]),e.withKeys(e.withModifiers(m,["prevent"]),["esc"])],onBlur:u},null,40,wl)),[[e.vModelText,i.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:"label-text",onClick:f,title:"Click to edit"},e.toDisplayString(a.value),1),c.value||s.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"edit-icon",onClick:e.withModifiers(f,["stop"])},[e.createVNode(W,{icon:e.unref($).EDIT},null,8,["icon"])])):e.createCommentVNode("",!0)],64))],34))}}),[["__scopeId","data-v-cdc52c5b"]]),_l="200% 200%",Wt=S(e.defineComponent({__name:"skeleton",props:{width:{},height:{},borderRadius:{}},setup(t){const o=t,n=e.computed(()=>o.width??"100%"),l=e.computed(()=>o.height??"16px"),a=e.computed(()=>o.borderRadius??"4px");return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:"vj-skeleton",style:e.normalizeStyle({width:n.value,height:l.value,borderRadius:a.value,backgroundSize:_l}),"aria-hidden":"true"},null,4))}}),[["__scopeId","data-v-ac05e016"]]),Kt=S(e.defineComponent({__name:"amount-bar",props:{amount:{},maxAmount:{},segments:{}},setup(t){const o=t,n=e.computed(()=>o.amount/o.maxAmount*100),l=i=>{if(!o.segments)return!1;const r=100/o.segments,c=i*r;return n.value>c},a=i=>(160-i/(o.segments-1||1)*160).toString();return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["amount-bar",{"amount-bar--segmented":t.segments}])},[t.segments?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Array.from({length:t.segments}),(c,d)=>(e.openBlock(),e.createElementBlock("div",{key:d,class:e.normalizeClass(["amount-bar__segment",{"amount-bar__segment--filled":l(d)}]),style:e.normalizeStyle({"--segment-hue":a(d)})},null,6))),128)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"amount-bar__fill",style:e.normalizeStyle({width:`${t.amount/t.maxAmount*100}%`})},null,4))],2))}}),[["__scopeId","data-v-f85c6d8c"]]),Xt={form:{labelPosition:"inline",appearance:"bordered"}};let Te={};function Vl(t){Te={...Te,...t,form:{...Xt.form,...t.form}}}function Xe(){return{form:{...Xt.form,...Te.form}}}function Cl(){Te={}}const El=["data-colspan","data-newline"],Bl=["for"],Sl={class:"form-field__wrapper"},xl=["for"],vl={key:1,class:"form-field__error"},$l={key:2,class:"form-field__help",type:"button","aria-label":"Hilfe"},ie=S(e.defineComponent({directives:{tooltip:Ke},__name:"form-field",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{}},emits:["update:modelValue","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue),i=e.ref(!1),r=e.computed(()=>`form-field-${n.id??Math.random().toString(36).slice(2)}`),c=e.computed(()=>n.labelPosition??Xe().form.labelPosition),d=e.computed(()=>n.appearance??Xe().form.appearance);e.watch(()=>n.modelValue,h=>a.value=h);const s=e.computed(()=>{if(c.value==="outline")return!0;const h=a.value!==""&&a.value!==null&&a.value!==void 0;return i.value||h}),f=e.computed(()=>c.value==="outline"||s.value?n.placeholder:"");function u(h){const g=h.target.value;a.value=g,l("update:modelValue",g)}function m(h){i.value=!0,l("focus",h)}function p(h){i.value=!1,l("blur",h)}return(h,_)=>{const g=e.resolveComponent("VjIcon"),y=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-field",`form-field--${c.value}`,`form-field--${d.value}`,{disabled:t.disabled},{labelless:!t.label},{error:!!t.error}]),"data-colspan":n.spanRow?void 0:n.colspan,"data-newline":n.spanRow||n.newLine?"true":void 0,style:e.normalizeStyle(n.spanRow?{gridColumn:"1 / -1"}:void 0)},[t.label&&c.value==="outline"?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:"form-field__label-outline"},e.toDisplayString(t.label),9,Bl)):e.createCommentVNode("",!0),e.createElementVNode("div",Sl,[e.renderSlot(h.$slots,"control",{id:r.value,value:a.value,onInput:u,onFocus:m,onBlur:p,disabled:t.disabled,placeholder:f.value},void 0,!0),t.label&&c.value==="inline"?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(["form-field__label",{"form-field__label--float":s.value}])},e.toDisplayString(t.label),11,xl)):e.createCommentVNode("",!0)]),t.error?(e.openBlock(),e.createElementBlock("div",vl,e.toDisplayString(t.error),1)):e.createCommentVNode("",!0),n.helpText?e.withDirectives((e.openBlock(),e.createElementBlock("button",$l,[e.createVNode(g,{icon:e.unref($).HELP},null,8,["icon"])])),[[y,n.helpText]]):e.createCommentVNode("",!0)],14,El)}}}),[["__scopeId","data-v-19959d5e"]]),qt=S(e.defineComponent({__name:"form-layout",props:{columns:{type:Number,default:4},gap:{type:String,default:"0.75rem"}},setup(t){const o=t,n=e.ref(null);let l=null;function a(){if(!n.value)return;Array.from(n.value.children).forEach(r=>{const c=r.getAttribute("data-colspan"),d=c?Math.max(1,Number(c)||1):1,s=r.getAttribute("data-newline");s!==null&&s!=="false"?r.style.gridColumn="1 / -1":r.style.gridColumn=`span ${d}`})}return e.onMounted(()=>{e.nextTick(()=>{a(),n.value&&(l=new MutationObserver(()=>a()),l.observe(n.value,{childList:!0,subtree:!1,attributes:!0,attributeFilter:["data-colspan","data-newline"]}))})}),e.onBeforeUnmount(()=>{l?.disconnect()}),e.watch(()=>o.columns,()=>e.nextTick(a)),e.watch(()=>o.gap,()=>e.nextTick(a)),(i,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:n,class:"form-layout",style:e.normalizeStyle({gridTemplateColumns:`repeat(${t.columns}, minmax(0, 1fr))`,gap:t.gap})},[e.renderSlot(i.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-96f62ab7"]]),Ll={key:0,class:"form-section__title","data-newline":""},Gt=S(e.defineComponent({__name:"form-section",props:{title:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.title?(e.openBlock(),e.createElementBlock("h3",Ll,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},void 0,!0)],64))}}),[["__scopeId","data-v-69cff1d0"]]),Tl=["id","disabled"],Rl={class:"select-value"},Nl={key:1,class:"select-placeholder"},Dl={class:"select-options"},Al=["onClick","onMouseenter"],qe=S(e.defineComponent({inheritAttrs:!1,__name:"select",props:e.mergeModels({options:{},placeholder:{},disabled:{type:Boolean},optionLabel:{type:Function},id:{},optionValue:{type:Function},icon:{},clearable:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t,{expose:o}){const n=t,l=e.useModel(t,"modelValue"),a=e.ref(!1),i=e.ref(-1),r=e.ref(null),c=e.ref(null),d=e.ref(null),{floatingStyles:s}=He(c,d,{placement:"bottom-start",middleware:[xe(4),$e(),ve({padding:8}),Oo({apply({rects:b,elements:E}){Object.assign(E.floating.style,{minWidth:`${b.reference.width}px`})}})],whileElementsMounted:Se}),f=b=>n.optionLabel?typeof n.optionLabel=="function"?n.optionLabel(b):String(b[n.optionLabel]):String(b),u=b=>n.optionValue?typeof n.optionValue=="function"?n.optionValue(b):b[n.optionValue]:b,m=e.computed(()=>n.options.find(b=>u(b)===l.value)),p=b=>u(b)===l.value,h=()=>{n.disabled||(a.value=!a.value)},_=()=>{a.value=!1,i.value=-1},g=b=>{l.value=u(b),_()},y=()=>{l.value=void 0},w=b=>{a.value&&r.value&&!r.value.contains(b.target)&&_()};return e.onMounted(()=>{document.addEventListener("click",w)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",w)}),e.watch(a,b=>{b&&m.value&&(i.value=n.options.findIndex(E=>p(E)))}),o({focus:()=>c.value?.focus(),blur:()=>c.value?.blur()}),(b,E)=>{const v=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{ref_key:"selectRef",ref:r,class:e.normalizeClass(["select",b.$attrs.class])},[e.createElementVNode("button",{ref_key:"buttonRef",ref:c,type:"button",class:"select-trigger",id:n.id,onClick:h,disabled:t.disabled},[n.icon?(e.openBlock(),e.createBlock(v,{key:0,icon:n.icon,size:e.unref(N).S,class:"select-icon-left"},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("span",Rl,[m.value?e.renderSlot(b.$slots,"selected",{key:0,option:m.value},()=>[e.createTextVNode(e.toDisplayString(f(m.value)),1)],!0):(e.openBlock(),e.createElementBlock("span",Nl,e.toDisplayString(t.placeholder),1))]),n.clearable&&m.value&&!t.disabled?(e.openBlock(),e.createBlock(v,{key:1,icon:e.unref($).CLOSE,size:e.unref(N).S,class:"select-clear-icon",onClick:e.withModifiers(y,["stop"])},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createVNode(v,{icon:e.unref($).CHEVRON_DOWN,size:e.unref(N).S,class:e.normalizeClass(["select-icon-right",{open:a.value}])},null,8,["icon","size","class"])],8,Tl),e.createVNode(e.Transition,{name:"dropdown"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"floatingRef",ref:d,style:e.normalizeStyle(e.unref(s)),class:"select-dropdown"},[e.createElementVNode("div",Dl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(L,V)=>(e.openBlock(),e.createElementBlock("div",{key:String(u(L)),class:e.normalizeClass(["select-option",{selected:p(L),highlighted:i.value===V}]),onClick:C=>g(L),onMouseenter:C=>i.value=V},[e.renderSlot(b.$slots,"option",{option:L,selected:p(L)},()=>[e.createTextVNode(e.toDisplayString(f(L)),1)],!0)],42,Al))),128))])],4)):e.createCommentVNode("",!0)]),_:3})],2),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"select-backdrop",onClick:_})):e.createCommentVNode("",!0)]))],64)}}}),[["__scopeId","data-v-fc22f0e9"]]),Yt=e.defineComponent({__name:"input-select",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},options:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(n.modelValue);e.watch(()=>n.modelValue,r=>{a.value=r});const i=r=>{a.value=r,l("update:modelValue",r)};return(r,c)=>(e.openBlock(),e.createBlock(ie,{modelValue:a.value,"onUpdate:modelValue":i,label:n.label,id:n.id,placeholder:n.placeholder,disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,error:n.error,helpText:n.helpText,labelPosition:n.labelPosition,appearance:n.appearance},{control:e.withCtx(({id:d,disabled:s,placeholder:f})=>[e.createVNode(qe,{id:d,modelValue:a.value,"onUpdate:modelValue":[c[0]||(c[0]=u=>a.value=u),i],options:n.options,placeholder:f,disabled:s,"option-label":u=>u.label,"option-value":u=>u.value,clearable:""},e.createSlots({_:2},[r.$slots.selected?{name:"selected",fn:e.withCtx(({option:u})=>[e.renderSlot(r.$slots,"selected",{option:u})]),key:"0"}:void 0,r.$slots.option?{name:"option",fn:e.withCtx(({option:u})=>[e.renderSlot(r.$slots,"option",{option:u})]),key:"1"}:void 0]),1032,["id","modelValue","options","placeholder","disabled","option-label","option-value"])]),_:3},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","error","helpText","labelPosition","appearance"]))}}),Ml=["aria-valuemin","aria-valuemax","aria-valuenow","aria-label"],Ol=["aria-valuemin","aria-valuemax","aria-valuenow"],Pl=S(e.defineComponent({__name:"slider",props:{modelValue:{default:void 0},min:{default:0},max:{default:100},step:{default:1},range:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,l=o,a=e.ref(null),i=e.ref(!1),r=e.ref(!1),c=(V,C,x)=>Math.min(Math.max(V,C),x),d=e.ref(n.range?Array.isArray(n.modelValue)?n.modelValue[0]:n.min:typeof n.modelValue=="number"?n.modelValue:n.min),s=e.ref(n.range&&Array.isArray(n.modelValue)?n.modelValue[1]:n.max);e.watch(()=>n.modelValue,V=>{n.range?Array.isArray(V)&&(d.value=c(V[0],n.min,n.max),s.value=c(V[1],n.min,n.max)):typeof V=="number"&&(d.value=c(V,n.min,n.max))},{immediate:!0});const f=V=>(V-n.min)/(n.max-n.min)*100,u=e.computed(()=>({left:`${f(d.value)}%`})),m=e.computed(()=>({left:`${f(s.value)}%`})),p=e.computed(()=>{if(!n.range)return{width:`${f(d.value)}%`,left:"0%"};const V=f(d.value),C=f(s.value);return{left:`${V}%`,width:`${Math.max(0,C-V)}%`}});let h=null,_=null;const g=async(V,C)=>{h=V,_=C.pointerId,V==="low"?i.value=!0:r.value=!0;try{C.target.setPointerCapture(C.pointerId)}catch{}window.addEventListener("pointermove",w),window.addEventListener("pointerup",y)},y=V=>{if(_!=null&&V)try{V.target.releasePointerCapture(V.pointerId)}catch{}h=null,_=null,i.value=!1,r.value=!1,window.removeEventListener("pointermove",w),window.removeEventListener("pointerup",y),v()},w=V=>{if(!h||!a.value)return;const C=a.value.getBoundingClientRect(),x=c(V.clientX-C.left,0,C.width),T=n.min+x/C.width*(n.max-n.min),R=Math.round(T/n.step)*n.step;h==="low"?n.range?d.value=Math.min(R,s.value):d.value=c(R,n.min,n.max):h==="high"&&(s.value=Math.max(R,d.value))},b=V=>{if(!a.value)return;const C=a.value.getBoundingClientRect(),x=c(V.clientX-C.left,0,C.width),T=n.min+x/C.width*(n.max-n.min),R=Math.round(T/n.step)*n.step;if(n.range){const X=Math.abs(R-d.value),q=Math.abs(R-s.value);X<=q?d.value=Math.min(R,s.value):s.value=Math.max(R,d.value)}else d.value=c(R,n.min,n.max);v()},E=(V,C)=>{const x=n.step,T=C.key==="ArrowLeft"||C.key==="ArrowDown"?-1:C.key==="ArrowRight"||C.key==="ArrowUp"?1:0;if(T){if(V==="low"){const R=c(d.value+T*x,n.min,n.range?s.value:n.max);d.value=R,i.value=!0,setTimeout(()=>i.value=!1,800)}else{const R=c(s.value+T*x,n.range?d.value:n.max,n.max);s.value=R,r.value=!0,setTimeout(()=>r.value=!1,800)}v()}},v=()=>{n.range?(l("update:modelValue",[d.value,s.value]),l("change",[d.value,s.value])):(l("update:modelValue",d.value),l("change",d.value))};e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",w),window.removeEventListener("pointerup",y)}),e.watch([()=>n.min,()=>n.max],()=>{d.value=c(d.value,n.min,n.max),s.value=c(s.value,n.min,n.max)});const L=e.computed(()=>n.range);return e.nextTick(()=>{n.modelValue===void 0&&(n.range?l("update:modelValue",[d.value,s.value]):l("update:modelValue",d.value))}),(V,C)=>(e.openBlock(),e.createElementBlock("div",{class:"vj-slider",onPointerdown:C[8]||(C[8]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",{class:"track",ref_key:"track",ref:a,onClick:b},[e.createElementVNode("div",{class:"range",style:e.normalizeStyle(p.value)},null,4),i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"tooltip",style:e.normalizeStyle({left:u.value.left})},e.toDisplayString(d.value),5)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"handle low",style:e.normalizeStyle(u.value),"aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":d.value,"aria-label":L.value?"Lower value":"Value",onPointerdown:C[0]||(C[0]=e.withModifiers(x=>g("low",x),["prevent"])),onFocus:C[1]||(C[1]=x=>i.value=!0),onBlur:C[2]||(C[2]=x=>i.value=!1),onKeydown:C[3]||(C[3]=e.withModifiers(x=>E("low",x),["stop","prevent"])),role:"slider",tabindex:"0"},null,44,Ml),L.value&&r.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"tooltip",style:e.normalizeStyle({left:m.value.left})},e.toDisplayString(s.value),5)):e.createCommentVNode("",!0),L.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"handle high",style:e.normalizeStyle(m.value),"aria-valuemin":t.min,"aria-valuemax":t.max,"aria-valuenow":s.value,"aria-label":"Upper value",onPointerdown:C[4]||(C[4]=e.withModifiers(x=>g("high",x),["prevent"])),onFocus:C[5]||(C[5]=x=>r.value=!0),onBlur:C[6]||(C[6]=x=>r.value=!1),onKeydown:C[7]||(C[7]=e.withModifiers(x=>E("high",x),["stop","prevent"])),role:"slider",tabindex:"0"},null,44,Ol)):e.createCommentVNode("",!0)],512)],32))}}),[["__scopeId","data-v-d47c7475"]]),jl=["onFocusin","onFocusout"],Jt=S(e.defineComponent({__name:"input-slider",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},min:{},max:{},step:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=n.modelValue===void 0?0:Number(n.modelValue),i=e.ref(Number.isNaN(a)?0:a),r=c=>{const d=typeof c=="number"?c:Number(c??0);i.value=Number.isNaN(d)?0:d,l("update:modelValue",i.value),l("input",i.value)};return(c,d)=>(e.openBlock(),e.createBlock(ie,{modelValue:i.value,"onUpdate:modelValue":r,label:n.label,id:n.id,placeholder:" ",disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,error:n.error},{control:e.withCtx(({id:s,disabled:f,placeholder:u,onFocus:m,onBlur:p})=>[e.createElementVNode("div",{class:"input-slider__control",onFocusin:m,onFocusout:p},[e.createVNode(Pl,{id:s,modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=h=>i.value=h),min:n.min,max:n.max,step:n.step,range:!1,disabled:f},null,8,["id","modelValue","min","max","step","disabled"])],40,jl)]),_:1},8,["modelValue","label","id","disabled","colspan","newLine","spanRow","error"]))}}),[["__scopeId","data-v-051e6d17"]]),zl={class:"textarea"},Fl=["value","placeholder","disabled","rows"],Ge=S(e.defineComponent({__name:"textarea",props:e.mergeModels({icon:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean},rows:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["focus","blur"],["update:modelValue"]),setup(t,{emit:o}){const n=o,l=e.useModel(t,"modelValue"),a=s=>{l.value=s.target.value},i=()=>{l.value=""},r=s=>{n("focus",s)},c=s=>{n("blur",s)},d=e.computed(()=>!l.value);return(s,f)=>{const u=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",zl,[t.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:t.icon,size:e.unref(N).S,class:"textarea-icon"},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("textarea",{value:l.value,onInput:a,onFocus:r,onBlur:c,placeholder:t.placeholder,disabled:t.disabled,rows:t.rows},null,40,Fl),t.clearable&&!t.disabled?(e.openBlock(),e.createBlock(u,{key:1,class:e.normalizeClass(["clear-icon",{invisible:d.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:i},null,8,["class","icon","size"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-2ea43716"]]),Qt=e.defineComponent({__name:"input-text-area",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},rows:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=f=>l("update:modelValue",f),i=f=>l("input",f),r=f=>l("focus",f),c=f=>l("blur",f),d=f=>{a(f??"")},s=e.computed(()=>{const f=n.modelValue;return f==null?"":String(f)});return(f,u)=>(e.openBlock(),e.createBlock(ie,{modelValue:n.modelValue,"onUpdate:modelValue":a,onInput:i,onFocus:r,onBlur:c,label:n.label,id:n.id,placeholder:n.placeholder,disabled:n.disabled,colspan:n.colspan,newLine:n.newLine,spanRow:n.spanRow,labelPosition:n.labelPosition,error:n.error,helpText:n.helpText,appearance:n.appearance},{control:e.withCtx(({id:m,disabled:p,placeholder:h,onFocus:_,onBlur:g})=>[e.createVNode(Ge,{id:m,modelValue:s.value,"onUpdate:modelValue":d,onFocus:y=>{_(y),r(y)},onBlur:y=>{g(y),c(y)},placeholder:h,disabled:p,rows:n.rows,clearable:""},null,8,["id","modelValue","onFocus","onBlur","placeholder","disabled","rows"])]),_:1},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","labelPosition","error","helpText","appearance"]))}}),Il={class:"input"},Hl=["value","type","placeholder","disabled"],Ye=S(e.defineComponent({__name:"input",props:e.mergeModels({icon:{},type:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["focus","blur"],["update:modelValue"]),setup(t,{emit:o}){const n=o,l=e.useModel(t,"modelValue"),a=s=>{l.value=s.target.value},i=()=>{l.value=""},r=s=>{n("focus",s)},c=s=>{n("blur",s)},d=e.computed(()=>!l.value);return(s,f)=>{const u=e.resolveComponent("VjIcon");return e.openBlock(),e.createElementBlock("div",Il,[t.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:t.icon,size:e.unref(N).S},null,8,["icon","size"])):e.createCommentVNode("",!0),e.createElementVNode("input",{value:l.value,onInput:a,onFocus:r,onBlur:c,type:t.type,placeholder:t.placeholder,disabled:t.disabled},null,40,Hl),t.clearable&&!t.disabled?(e.openBlock(),e.createBlock(u,{key:1,class:e.normalizeClass(["clear-icon",{invisible:d.value}]),icon:e.unref($).CLOSE,size:e.unref(N).S,onClick:i},null,8,["class","icon","size"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-3187d49c"]]),Zt=e.defineComponent({__name:"input-text",props:{modelValue:{},label:{},id:{},placeholder:{},disabled:{type:Boolean},colspan:{},newLine:{type:Boolean},spanRow:{type:Boolean},error:{},helpText:{},labelPosition:{},appearance:{},type:{}},emits:["update:modelValue","input","focus","blur"],setup(t,{emit:o}){const n=t,l=o,a=s=>l("update:modelValue",s),i=s=>l("input",s),r=s=>l("focus",s),c=s=>l("blur",s),d=s=>{a(s??"")};return(s,f)=>(e.openBlock(),e.createBlock(ie,{modelValue:t.modelValue,"onUpdate:modelValue":a,onInput:i,onFocus:r,onBlur:c,label:t.label,id:t.id,placeholder:t.placeholder,disabled:t.disabled,colspan:t.colspan,newLine:t.newLine,spanRow:t.spanRow,error:t.error,helpText:n.helpText,labelPosition:t.labelPosition,appearance:t.appearance},{control:e.withCtx(({id:u,disabled:m,placeholder:p,onFocus:h,onBlur:_})=>[e.createVNode(Ye,{id:u,modelValue:t.modelValue,type:t.type,"onUpdate:modelValue":d,onFocus:g=>{h(g),r(g)},onBlur:g=>{_(g),c(g)},placeholder:p,disabled:m,clearable:""},null,8,["id","modelValue","type","onFocus","onBlur","placeholder","disabled"])]),_:1},8,["modelValue","label","id","placeholder","disabled","colspan","newLine","spanRow","error","helpText","labelPosition","appearance"]))}}),Ul={class:"shell-navigation-item"},Wl={class:"shell-navigation-item-label"},Kl={key:1,class:"shell-navigation-item-link"},Xl=["aria-expanded"],ql={class:"shell-navigation-item-label"},en=S(e.defineComponent({__name:"shell-navigation-item",props:{label:{},icon:{},to:{}},setup(t){const o=e.useSlots(),n=e.computed(()=>!!o.default),l=e.ref(!1),a=e.ref(null),i=e.ref(null),{floatingStyles:r}=He(a,i,{placement:"right-start",middleware:[xe(8),$e(),ve({padding:8})],whileElementsMounted:Se}),c=m=>{n.value&&(l.value=!l.value)},d=()=>{l.value=!1},s=m=>{d()},f=m=>{(m.key==="Escape"||m.key==="Esc")&&d()},u=m=>{const p=m.target;p&&(a.value&&a.value.contains(p)||i.value&&i.value.contains(p)||d())};return e.watch(l,m=>{m?(window.addEventListener("keydown",f),window.addEventListener("pointerdown",u)):(window.removeEventListener("keydown",f),window.removeEventListener("pointerdown",u))}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",f),window.removeEventListener("pointerdown",u)}),(m,p)=>{const h=e.resolveComponent("VjIcon"),_=e.resolveComponent("RouterLink"),g=e.resolveComponent("VjMenu");return e.openBlock(),e.createElementBlock("li",Ul,[t.to?(e.openBlock(),e.createBlock(_,{key:0,to:t.to,class:"shell-navigation-item-link"},{default:e.withCtx(()=>[e.createVNode(h,{icon:t.icon,class:"shell-navigation-item-icon"},null,8,["icon"]),e.createElementVNode("label",Wl,e.toDisplayString(t.label),1)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("div",Kl,[e.createElementVNode("button",{ref_key:"buttonRef",ref:a,class:"shell-navigation-item-button",onClick:e.withModifiers(c,["stop"]),"aria-expanded":l.value,type:"button"},[e.createVNode(h,{icon:t.icon,class:"shell-navigation-item-icon"},null,8,["icon"]),e.createElementVNode("label",ql,e.toDisplayString(t.label),1)],8,Xl),e.createVNode(e.Transition,{name:"menu"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createBlock(g,{key:0,ref_key:"floatingRef",ref:i,style:e.normalizeStyle(e.unref(r)),class:"shell-navigation-item-menu",onClose:d,onClick:e.withModifiers(s,["stop"])},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:3}),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"menu-backdrop",onClick:d})):e.createCommentVNode("",!0)]))]))])}}}),[["__scopeId","data-v-3a50d1c2"]]),Gl={class:"navigation-top"},Yl={key:0,class:"navigation-bottom"},Je=S(e.defineComponent({__name:"shell-navigation",setup(t){const o=e.inject(on,ln()),n=e.computed(()=>o.showLabels);return(l,a)=>{const i=e.resolveComponent("VjShellNavigationItem");return e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(["shell-navigation",{"with-labels":n.value}])},[e.createElementVNode("ul",Gl,[e.unref(o).hasParent&&e.unref(o).backRoute.value?(e.openBlock(),e.createBlock(i,{key:0,to:e.unref(o).backRoute.value,label:"BACK",icon:e.unref($).HOME},null,8,["to","icon"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o).childRoutes.value,r=>(e.openBlock(),e.createBlock(i,{key:r.name,to:{name:r.name},label:r.meta.label,icon:r.meta.icon??e.unref($).HOME},null,8,["to","label","icon"]))),128))]),l.$slots.fixed?(e.openBlock(),e.createElementBlock("ul",Yl,[e.renderSlot(l.$slots,"fixed",{},void 0,!0)])):e.createCommentVNode("",!0)],2)}}}),[["__scopeId","data-v-306cfc22"]]),Jl={class:"shell"},Ql={class:"shell-title"},Zl=["src"],ea={class:"header-actions"},tn=S(e.defineComponent({__name:"shell",props:{title:{},icon:{},showNavigation:{type:Boolean}},setup(t){const o=rn(),n=e.toRef(o,"asideComponent"),l=e.toRef(o,"hasAside"),a=e.toRef(o,"asideData"),i=e.computed(()=>{const r=a.value;return r&&typeof r=="object"?r:{}});return(r,c)=>{const d=e.resolveComponent("router-view");return e.openBlock(),e.createElementBlock("div",Jl,[e.createElementVNode("header",null,[e.createElementVNode("span",Ql,[t.icon?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.icon,alt:"Shell Icon"},null,8,Zl)):e.createCommentVNode("",!0),e.createElementVNode("h1",null,e.toDisplayString(t.title),1)]),e.createElementVNode("div",ea,[e.renderSlot(r.$slots,"header-actions",{},void 0,!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["shell-content",{"with-navigation":t.showNavigation}])},[t.showNavigation?(e.openBlock(),e.createBlock(e.unref(Je),{key:0},e.createSlots({_:2},[r.$slots?.["navigation-fixed"]?{name:"fixed",fn:e.withCtx(()=>[e.renderSlot(r.$slots,"navigation-fixed",{},void 0,!0)]),key:"0"}:void 0]),1024)):e.createCommentVNode("",!0),e.createElementVNode("main",null,[e.renderSlot(r.$slots,"default",{},()=>[e.createVNode(d)],!0)]),e.createElementVNode("aside",{class:e.normalizeClass({"aside-visible":l.value})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),e.normalizeProps(e.guardReactiveProps(i.value)),null,16))],2)],2),c[0]||(c[0]=e.createElementVNode("footer",null,null,-1))])}}}),[["__scopeId","data-v-4dfd0097"]]);class ta{notifications=e.ref([]);notificationIdCounter=0;getNotifications(){return this.notifications}show(o,n,l,a){const i=`notification-${++this.notificationIdCounter}-${Date.now()}`,r=o==="error"?void 0:a??5e3,c={id:i,type:o,title:n,message:l,duration:r};return this.notifications.value.unshift(c),r&&setTimeout(()=>{this.remove(i)},r),i}info(o,n,l){return this.show("info",o,n,l)}warning(o,n,l){return this.show("warning",o,n,l)}error(o,n){return this.show("error",o,n)}success(o,n,l){return this.show("success",o,n,l)}remove(o){const n=this.notifications.value.findIndex(l=>l.id===o);n!==-1&&this.notifications.value.splice(n,1)}clearAll(){this.notifications.value=[]}}const Qe=new ta,na={class:"notifications"},nn=S(e.defineComponent({__name:"notifications",setup(t){const o=Qe.getNotifications(),n=l=>Qe.remove(l);return(l,a)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",na,[e.createVNode(e.TransitionGroup,{name:"notification"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),i=>(e.openBlock(),e.createBlock(Le,{key:i.id,type:i.type,title:i.title,message:i.message,onClose:r=>n(i.id)},null,8,["type","title","message","onClose"]))),128))]),_:1})])]))}}),[["__scopeId","data-v-543c499f"]]),on="navigationProvider";function oa(t){return!!t.meta&&"icon"in t.meta&&"label"in t.meta}const ln=()=>{const t=nt.useRouter(),o=nt.useRoute(),n=!0,l=e.computed(()=>{const f=t.getRoutes();return f.filter(u=>u.path!=="/"&&!f.some(m=>m.children?.some(p=>p.name===u.name)))}),a=e.computed(()=>{const f=o.matched;return f.length?f[f.length-1]:null}),i=e.computed(()=>{const f=o.matched;return f.length>1?f[f.length-2]:null}),r=e.computed(()=>!!(a.value?.children?.length||i.value)),c=e.computed(()=>a.value?.children?.length?a.value:i.value?.children?.length?i.value:null),d=e.computed(()=>{if(!c.value)return null;const u=t.getRoutes().find(m=>m.children?.some(p=>p.name===c.value.name));return u?{name:u.name}:{path:"/"}}),s=e.computed(()=>{let f=[];return o.path==="/"?f=l.value:a.value?.children?.length?f=a.value.children:i.value?.children?.length?f=i.value.children:f=l.value,f.filter(oa)});return{hasParent:r,backRoute:d,childRoutes:s,showLabels:n}},la=(t,o=!0,n=void 0)=>{const l=e.isRef(t)?t:e.ref(t),a=!!n,i=e.ref(n||null);return{hasParent:a,backRoute:i,childRoutes:l,showLabels:o}},Ze=e.ref(!1),et=e.ref(null),tt=e.ref(null);let re=[];const an=t=>(re.push(t),()=>{re=re.filter(o=>o!==t)}),aa=(t,o)=>(re=[],et.value=t,tt.value=o??null,Ze.value=!0,{onClose:n=>an(n)}),ia=t=>{try{re.forEach(o=>{try{o(t)}catch(n){console.error("aside onClose callback error",n)}})}finally{Ze.value=!1,setTimeout(ra,1e3)}},ra=()=>{re=[],et.value=null,tt.value=null},sa={asideComponent:et,asideData:tt,showAside:aa,closeAside:ia,onAsideClose:an,hasAside:Ze},rn=()=>sa,ca=(t,o)=>{let n=null;return(...a)=>{n&&clearTimeout(n),n=setTimeout(()=>{t(...a)},o)}};class da{containerElement=null;apps=[];ensureContainer(){return this.containerElement||(this.containerElement=document.createElement("div"),this.containerElement.id="vj-dialog-container",document.body.appendChild(this.containerElement)),this.containerElement}open(o){return new Promise(n=>{const l=this.ensureContainer(),a=document.createElement("div");l.appendChild(a);let i=!1;const r=()=>{i||(i=!0,setTimeout(()=>{const d=this.apps.find(s=>s.element===a);d&&(d.app.unmount(),this.apps=this.apps.filter(s=>s!==d)),a.remove()},300))},c=e.createApp({setup(){return()=>e.h(be,{modelValue:!0,title:o.title,message:o.message,component:o.component,componentProps:o.componentProps,showFooter:o.showFooter??!0,showCancel:o.showCancel??!0,confirmText:o.confirmText,cancelText:o.cancelText,closeOnBackdrop:o.closeOnBackdrop??!1,closeOnEscape:o.closeOnEscape??!0,onConfirm:()=>{n(!0),r()},onCancel:()=>{n(!1),r()},onClose:()=>{i||n(!1),r()}})}});c.component("VjCard",ge),c.component("VjIcon",W),c.component("VjButton",he),c.mount(a),this.apps.push({app:c,element:a})})}confirm(o){return this.open({title:o.title,message:o.message,showFooter:!0,showCancel:!0,confirmText:o.confirmText??"OK",cancelText:o.cancelText??"Abbrechen"})}alert(o,n){return this.open({title:o,message:n,showFooter:!0,showCancel:!1,confirmText:"OK"})}closeAll(){this.apps.forEach(({app:o,element:n})=>{o.unmount(),n.remove()}),this.apps=[]}}const sn=new da;function fa(){return sn}const ua=()=>{const t=e.ref(!1),o=e.ref(null),n=()=>{o.value=null};class l{inner;defaultValue;handlers=[];constructor(r,c){this.inner=r,this.defaultValue=c}onError(r){return this.handlers.push(r),this}async exec(){o.value=null,t.value=!0;try{return await this.inner()}catch(r){o.value=r;for(const c of this.handlers)try{c(r)}catch(d){console.error("onError handler failed",d)}if(this.defaultValue!==void 0)return this.defaultValue;throw r}finally{t.value=!1}}then(r,c){return this.exec().then(r,c)}}function a(i,r){return new l(i,r)}return{run:a,running:t,error:o,clearError:n}},ma={install(t){t.component("VjAmountBar",Kt),t.component("VjButton",he),t.component("VjButtonBar",ot),t.component("VjCard",ge),t.component("VjChip",Ne),t.component("VjChipGroup",De),t.component("VjChipSelector",at),t.component("VjCarousel",ge),t.component("VjCheckbox",lt),t.component("VjDotMenu",vt),t.component("VjDialog",be),t.component("VjIcon",W),t.component("VjLinkButton",$t),t.component("VjMenu",Tt),t.component("VjMenuAction",Lt),t.component("VjPage",jt),t.component("VjPaginator",zt),t.component("VjTab",Ut),t.component("VjTabView",Ht),t.component("VjSkeleton",Wt),t.component("VjSpinner",We),t.component("VjNotifications",nn),t.component("VjNotification",Le),t.component("VjInput",Ye),t.component("VjSelect",qe),t.component("VjTextArea",Ge),t.component("VjFormField",ie),t.component("VjFormLayout",qt),t.component("VjFormSection",Gt),t.component("VjInputText",Zt),t.component("VjInputTextArea",Qt),t.component("VjInputSelect",Yt),t.component("VjInputSlider",Jt),t.component("VjShellNavigation",Je),t.component("VjShellNavigationItem",en),t.component("VjShell",tn),t.component("VjSearchField",Ft),t.component("VjSeparator",It),t.directive("focus",Dt),t.directive("resize",At),t.directive("compact",Rt),t.directive("tooltip",Ke)}};k.AmountBar=Kt,k.Button=he,k.ButtonBar=ot,k.Card=ge,k.Carousel=En,k.Checkbox=lt,k.Chip=Ne,k.ChipGroup=De,k.ChipSelector=at,k.Dialog=be,k.DotMenu=vt,k.EditableLabel=kl,k.FocusFirstDirective=Dt,k.FormField=ie,k.FormLayout=qt,k.FormSection=Gt,k.Icon=W,k.IconNames=$,k.IconSize=N,k.Input=Ye,k.InputSelect=Yt,k.InputSlider=Jt,k.InputText=Zt,k.InputTextArea=Qt,k.LinkButton=$t,k.LoadingDirective=Ot,k.Menu=Tt,k.MenuAction=Lt,k.NotificationComponent=Le,k.Notifications=nn,k.Page=jt,k.Paginator=zt,k.Radio=Tn,k.ResizeDirective=At,k.SearchField=Ft,k.Select=qe,k.Separator=It,k.Shell=tn,k.ShellNavigation=Je,k.ShellNavigationItem=en,k.Skeleton=Wt,k.Spinner=We,k.Tab=Ut,k.TabView=Ht,k.TextArea=Ge,k.TooltipDirective=Ke,k.VjComponents=ma,k.VjNavigationProviderKey=on,k.compactDirective=Rt,k.configureVueUI=Vl,k.dialogService=sn,k.getVueUIConfig=Xe,k.notificationService=Qe,k.resetVueUIConfig=Cl,k.useAsideService=rn,k.useDebounce=ca,k.useDialog=fa,k.useFlow=ua,k.useRouterNavigationProvider=ln,k.useStaticNavigationProvider=la,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}));