@volverjs/ui-vue 0.0.12 → 0.0.13-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/VvAccordion/VvAccordion.es.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +7 -2
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +5 -2
- package/dist/components/VvAction/VvAction.es.js +1 -1
- package/dist/components/VvAction/VvAction.umd.js +1 -1
- package/dist/components/VvAction/VvAction.vue.d.ts +3 -2
- package/dist/components/VvAlert/VvAlert.es.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +3 -2
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +3 -3
- package/dist/components/VvAvatar/VvAvatar.vue.d.ts +2 -2
- package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +2 -2
- package/dist/components/VvBadge/VvBadge.vue.d.ts +2 -2
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +2 -2
- package/dist/components/VvButton/VvButton.es.js +1 -1
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +3 -2
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +2 -2
- package/dist/components/VvCard/VvCard.vue.d.ts +2 -2
- package/dist/components/VvCheckbox/VvCheckbox.es.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +2 -2
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +2 -2
- package/dist/components/VvCombobox/VvCombobox.es.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +9 -7
- package/dist/components/VvDialog/VvDialog.vue.d.ts +4 -2
- package/dist/components/VvDropdown/VvDropdown.es.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +14 -2
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +2 -2
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +2 -2
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +2 -2
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +2 -2
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +1 -1
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +1 -1
- package/dist/components/VvIcon/VvIcon.es.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +2 -2
- package/dist/components/VvInputFile/VvInputFile.es.js +1 -1
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +34 -4
- package/dist/components/VvInputFile/index.d.ts +7 -0
- package/dist/components/VvInputText/VvInputText.es.js +2 -2
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +8 -3
- package/dist/components/VvNav/VvNav.es.js +1 -1
- package/dist/components/VvNav/VvNav.umd.js +1 -1
- package/dist/components/VvNav/VvNav.vue.d.ts +2 -2
- package/dist/components/VvNav/VvNavItem.vue.d.ts +2 -2
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
- package/dist/components/VvNavItem/VvNavItem.es.js +1 -1
- package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +2 -2
- package/dist/components/VvRadio/VvRadio.es.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +2 -2
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +2 -2
- package/dist/components/VvSelect/VvSelect.es.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +9 -7
- package/dist/components/VvTab/VvTab.es.js +1 -1
- package/dist/components/VvTab/VvTab.umd.js +1 -1
- package/dist/components/VvTab/VvTab.vue.d.ts +2 -2
- package/dist/components/VvTextarea/VvTextarea.es.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +3 -3
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +2 -2
- package/dist/components/index.es.js +5 -5
- package/dist/components/index.umd.js +1 -1
- package/dist/icons.es.js +1 -1
- package/dist/icons.umd.js +1 -1
- package/dist/index.es.js +1 -1
- package/dist/props/index.d.ts +7 -0
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +2 -2
- package/dist/stories/Avatar/Avatar.settings.d.ts +1 -1
- package/package.json +35 -28
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{inject as e,computed as t,toRef as a,unref as l,defineComponent as o,useAttrs as i,useId as n,toRefs as r,ref as s,watch as u,onBeforeUnmount as d,createElementBlock as v,openBlock as c,normalizeClass as p,createElementVNode as f,withModifiers as m,renderSlot as b,normalizeProps as y,guardReactiveProps as g,createTextVNode as h,toDisplayString as S,onMounted as k,isRef as _,provide as $,watchEffect as w,reactive as x,nextTick as V,Fragment as A,renderList as L,createBlock as O,mergeProps as C,createSlots as E,withCtx as B,getCurrentInstance as I,resolveComponent as T,resolveDynamicComponent as D,mergeDefaults as N,createCommentVNode as M,createVNode as H,TransitionGroup as P,toHandlers as R,useSlots as j,h as F,withDirectives as U,vModelCheckbox as G,Transition as q,normalizeStyle as z,vShow as W,vModelSelect as K,mergeModels as Y,useModel as J,withKeys as X,vModelText as Z,vModelRadio as Q}from"vue";import{useVModel as ee,useStorage as te,useMutationObserver as ae,onClickOutside as le,useFocusWithin as oe,useElementHover as ie,onKeyStroke as ne,useFocus as re,useElementVisibility as se,refDebounced as ue,computedAsync as de}from"@vueuse/core";import ve from"mitt";import{iconLoaded as ce,Icon as pe,addIcon as fe}from"@iconify/vue";import{getProperty as me}from"dot-prop";import{autoPlacement as be,flip as ye,shift as ge,size as he,offset as Se,arrow as ke,useFloating as _e,autoUpdate as $e}from"@floating-ui/vue";import we from"vuedraggable";import{useIMask as xe}from"vue-imask";const Ve="eye-on",Ae="eye-off",Le="calendar",Oe="time",Ce="color",Ee="close",Be="add",Ie="trash",Te="edit",De="download",Ne={prefix:"normal"};var Me=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(Me||{}),He=/* @__PURE__ */(e=>(e.absolute="absolute",e.fixed="fixed",e))(He||{}),Pe=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(Pe||{}),Re=/* @__PURE__ */(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(Re||{}),je=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(je||{}),Fe=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(Fe||{}),Ue=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(Ue||{}),Ge=/* @__PURE__ */(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(Ge||{}),qe=/* @__PURE__ */(e=>(e.listbox="listbox",e.menu="menu",e))(qe||{}),ze=/* @__PURE__ */(e=>(e.option="option",e.presentation="presentation",e))(ze||{}),We=/* @__PURE__ */(e=>(e.alert="alert",e.alertdialog="alertdialog",e))(We||{});const Ke=Symbol.for("volver"),Ye=Symbol.for("buttonGroup"),Je=Symbol.for("radioGroup"),Xe=Symbol.for("checkGroup"),Ze=Symbol.for("accordionGroup"),Qe=Symbol.for("dropdownTrigger"),et=Symbol.for("dropdownItem"),tt=Symbol.for("dropdownAction"),at=Symbol.for("alertGroup"),lt={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},ot={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},it={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},nt={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},rt={disabled:{type:Boolean,default:!1}},st={required:{type:Boolean,default:!1}},ut={selected:{type:Boolean,default:!1}},dt={active:{type:Boolean,default:!1}},vt={current:{type:Boolean,default:!1}},ct={showClearAction:{type:Boolean,default:!1},iconClear:{type:[String,Object],default:Ee},labelClear:{type:String,default:"Clear"}},pt={pressed:{type:Boolean,default:!1}},ft={label:{type:[String,Number],default:void 0}},mt={readonly:{type:Boolean,default:!1}},bt={modifiers:{type:[String,Array],default:void 0}},yt={hintLabel:{type:String,default:""}},gt={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},ht={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},St={debounce:{type:[Number,String],default:void 0}},kt={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:je.before,validation:e=>Object.values(je).includes(e)}},_t={tabindex:{type:[String,Number],default:0}},$t={floating:{type:Boolean,default:!1}},wt={unselectable:{type:Boolean,default:!0}},xt={id:[String,Number]},Vt={placement:{type:String,default:Pe.bottom,validator:e=>Object.values(Pe).includes(e)||Object.values(Re).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(He).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},At={...xt,name:{type:String,required:!0}},Lt={autofocus:{type:Boolean,default:!1}},Ot={autocomplete:{type:String,default:"off"}},Ct={...At,...Lt,...Ot,..._t,...rt,...mt,...ot,...it,...yt,...nt,...bt,...ht,...St,...kt,...$t,...ft,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...st},Et={...At,..._t,...ot,...it,...yt,...rt,...mt,...bt,...ft,...nt,value:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[Object,Number,Boolean,String],default:void 0}},Bt={...ot,...it,...gt,...yt,...rt,...mt,...bt,...ft,...nt,...st,modelValue:{type:[String,Array,Boolean,Number,Symbol],default:void 0},name:{type:String,required:!0},vertical:{type:Boolean,default:!1}},It={...rt,...ft,...pt,...dt,...vt,...lt,type:{type:String,default:Fe.button,validator:e=>Object.values(Fe).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:Ue.button}},Tt={items:{type:Array,default:()=>[]}},Dt={storageType:{type:String,default:Me.local,validator:e=>Object.values(Me).includes(e)},storageKey:String};function Nt(l){const o=e(l,void 0),i=t(()=>void 0!==o);return{group:o,isInGroup:i,getGroupOrLocalRef:function(e,l,i){const n=o?.[e];if(n)return t({get:()=>n.value,set(e){n.value=e}});const r=a(l,e);return t({get:()=>r.value,set(t){i&&i(`update:${e}`,t)}})}}}const Mt={...bt,name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},disabled:Boolean,not:Boolean};function Ht(e,a,o){return t(()=>{const t={[e]:!0},i="string"==typeof a?.value?a.value.split(" "):a?.value;return i&&Array.isArray(i)&&i.forEach(a=>{a&&(t[`${e}--${a}`]=!0)}),o&&Object.keys(o.value).forEach(a=>{t[`${e}--${a}`]=l(o.value[a])}),t})}const Pt=["id","open"],Rt=["aria-controls","aria-expanded"],jt=["aria-hidden"],Ft=/* @__PURE__ */o({name:"VvAccordion",props:Mt,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const k=e,_=o,$=i(),w=ee(k,"modelValue",_),x=t(()=>k.name||$?.id||n()),{title:V,content:A,not:L}=r(k),{isInGroup:O,modifiers:C,disabled:E,bus:B}=function(e){const{group:a,isInGroup:l}=Nt(Ze),o=t(()=>Boolean(e.disabled||a?.disabled.value)),i=t(()=>{let t=e.modifiers,l=a?.modifiers.value;const o=/* @__PURE__ */new Set;return t&&(Array.isArray(t)||(t=t.split(" ")),t.forEach(e=>o.add(e))),l&&(Array.isArray(l)||(l=l.split(" ")),l.forEach(e=>o.add(e))),Array.from(o)});return{isInGroup:l,group:a,modifiers:i,disabled:o,bus:a?.bus}}(k),I=s(!1);function T(){E.value||(O.value?B?.emit("toggle",{name:x.value,value:!I.value}):I.value=!I.value)}function D(){I.value||T()}function N(){I.value&&T()}function M(e){B?B.emit("expand",{name:e}):console.warn(`[VvAccordion]: You are trying to expand accordion group of "${x.value}" but it is not in a group`)}function H(e){B?B?.emit("collapse",{name:e}):console.warn(`[VvAccordion]: You are trying to collapse accordion group of "${x.value}" but it is not in a group`)}u(w,e=>{"boolean"==typeof e&&(I.value=L.value?!e:e)},{immediate:!0}),u(I,e=>{w.value=L.value?!e:e}),B?.on("toggle",({name:e,value:t})=>{e===x.value&&(I.value=t)}),u(x,(e,t)=>{B&&(t&&t!==e&&B.emit("unregister",{name:t}),B.emit("register",{name:e}))},{immediate:!0}),d(()=>{B&&B.emit("unregister",{name:x.value})}),a({isExpanded:I,expand:D,collapse:N,groupExpand:M,groupCollapse:H});const P=Ht("vv-accordion",C,t(()=>({disabled:E.value})));return(e,t)=>(c(),v("details",{id:l(x),class:p(l(P)),open:l(I)},[f("summary",{"aria-controls":l(x),"aria-expanded":l(I),class:"vv-accordion__summary",onClick:t[0]||(t[0]=m(e=>T(),["prevent"]))},[b(e.$slots,"summary",y(g({isExpanded:l(I),expand:D,collapse:N,groupExpand:M,groupCollapse:H})),()=>[h(S(l(V)),1)])],8,Rt),f("div",{"aria-hidden":!l(I),class:"vv-accordion__content"},[b(e.$slots,"default",y(g({isExpanded:l(I),expand:D,collapse:N,groupExpand:M,groupCollapse:H})),()=>[h(S(l(A)),1)])],8,jt)],10,Pt))}}),Ut={...bt,...Dt,modelValue:{type:[String,Array],default:void 0},items:{type:Array,default:()=>[]},collapse:Boolean,itemModifiers:{type:[String,Array],default:""},disabled:Boolean,not:Boolean};function Gt(e,t=Me.local,a){const o=s();let i;return a&&(o.value=a),k(()=>{e&&u(e,(e,a)=>{const n=l(t)===Me.session?sessionStorage:localStorage;if(a&&a!==e&&n.removeItem(a),e)return i=te(e,i?.value??o.value,n),void(i.value&&(o.value=i.value));i=void 0},{immediate:!0}),_(t)&&u(t,(t,a)=>{if(e?.value){if(t){const a=t===Me.session?sessionStorage:localStorage;i=te(e.value,i?.value??o.value,a)}if(a&&a!==t){(a===Me.session?sessionStorage:localStorage).removeItem(e.value)}}})}),u(o,e=>{i&&(i.value=e)},{deep:!0,immediate:!0}),o}function qt(e,t){$(e,t)}const zt=/* @__PURE__ */o({name:"VvAccordionGroup",props:Ut,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const i=e,n=o,{disabled:s,modifiers:u,itemModifiers:d,items:f,storageKey:m,storageType:h}=r(i);w(()=>{"string"==typeof i.modelValue&&i.collapse&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const S=x(/* @__PURE__ */new Set),_=Gt(m,h,[]),$=t({get:()=>null!==i.modelValue&&void 0!==i.modelValue?i.modelValue:_.value,set:e=>{n("update:modelValue",e),_.value=e}}),I=t({get:()=>{if(void 0===$.value)/* @__PURE__ */
|
|
2
|
-
return new Set;let e=/* @__PURE__ */new Set;return i.not?"string"==typeof $.value?e=new Set([...S].filter(e=>e!==$.value)):Array.isArray($.value)&&(e=new Set([...S].filter(e=>!$.value.includes(e)))):"string"==typeof $.value?e=/* @__PURE__ */new Set([$.value]):Array.isArray($.value)&&(e=new Set($.value)),e},set:e=>{i.not?$.value=[...S].filter(t=>!e.has(t)):i.collapse?$.value=[...e]:$.value=e.values().next().value}});k(()=>{i.not&&void 0===$.value&&($.value=i.collapse?[]:[...S.values()].splice(1,S.size)),V(()=>{for(const e of S)T.emit("toggle",{name:e,value:I.value.has(e)})})});const T=ve();function D(e){if("string"!=typeof e)if(Array.isArray(e))for(const t of e)T.emit("toggle",{name:t,value:!0});else for(const t of S)T.emit("toggle",{name:t,value:!0});else T.emit("toggle",{name:e,value:!0})}function N(e){if("string"!=typeof e)if(Array.isArray(e))for(const t of e)T.emit("toggle",{name:t,value:!1});else for(const t of S)T.emit("toggle",{name:t,value:!1});else T.emit("toggle",{name:e,value:!1})}qt(Ze,{disabled:s,modifiers:d,bus:T}),T.on("register",({name:e})=>{S.add(e)}),T.on("unregister",({name:e})=>{S.delete(e)}),T.on("toggle",({name:e,value:t})=>{const a=new Set(I.value);if(t){if(!i.collapse){for(const t of a)t!==e&&T.emit("toggle",{name:t,value:!1});a.clear()}return a.add(e),void(I.value=a)}a.delete(e),I.value=a}),T.on("expand",({name:e})=>D(e)),T.on("collapse",({name:e})=>N(e)),a({expandedAccordions:I,expand:D,collapse:N});const M=Ht("vv-accordion-group",u,t(()=>({disabled:s.value})));return(e,t)=>(c(),v("div",{class:p(l(M))},[b(e.$slots,"default",y(g({expandedAccordions:l(I),expand:D,collapse:N})),()=>[(c(!0),v(A,null,L(l(f),t=>(c(),O(Ft,C({key:t.title},{ref_for:!0},{name:t.name,title:t.title,content:t.content}),E({_:2},[e.$slots[`summary::${t.name}`]?{name:"summary",fn:B(a=>[b(e.$slots,`summary::${t.name}`,C({ref_for:!0},a))]),key:"0"}:void 0,e.$slots[`content::${t.name}`]?{name:"default",fn:B(a=>[b(e.$slots,`content::${t.name}`,C({ref_for:!0},a))]),key:"1"}:void 0]),1040))),128))])],2))}});function Wt(){return e(Ke,void 0)}const Kt=/* @__PURE__ */o({name:"VvAction",props:It,emits:["click","mouseover","mouseleave"],setup(a,{expose:o,emit:i}){const n=a,r=i,d=I(),v=Wt(),p=s(null);o({$el:p});const{reference:f,bus:m,aria:y,expanded:g}=e(Qe,{});u(()=>p.value,e=>{f&&(f.value=e)});const k=t(()=>n.pressed||g?.value),{role:_}=e(tt,{}),$=t(()=>{switch(!0){case n.disabled:return Ue.button;case void 0!==n.to:return v?.nuxt?T(Ue.nuxtLink):Ue.routerLink;case void 0!==n.href:return Ue.a;default:return n.defaultTag}}),w=t(()=>{const e={...y?.value,ariaPressed:!!k.value||void 0,ariaLabel:n.ariaLabel,role:_?.value};switch($.value){case Ue.a:return{...e,href:n.href,target:n.target,rel:n.rel};case Ue.routerLink:case Ue.nuxtLink:return{...e,to:n.to,target:n.target};case Ue.button:return{...e,type:n.type,disabled:n.disabled};default:return e}});function x(e){n.disabled?e.preventDefault():d?.vnode.props?.onClick?r("click",e):m?.emit("click",e)}function V(e){d?.vnode.props?.onMouseover?r("mouseover",e):m?.emit("mouseover",e)}function A(e){d?.vnode.props?.onMouseleave?r("mouseleave",e):m?.emit("mouseleave",e)}return(e,t)=>(c(),O(D(l($)),C(l(w),{ref_key:"element",ref:p,class:{active:e.active,pressed:l(k),disabled:e.disabled,current:e.current},onClickPassive:x,onMouseoverPassive:V,onMouseleavePassive:A}),{default:B(()=>[b(e.$slots,"default",{},()=>[h(S(e.label),1)])]),_:3},16,["class"]))}});function Yt(e){return t(()=>String(e?.value||n()))}function Jt(e,a){const l=t(()=>"string"==typeof e?.value?{name:e?.value}:e?.value),o=t(()=>a?.value===je.before?l.value:void 0),i=t(()=>a?.value===je.after?l.value:void 0),n=t(()=>a?.value===Pe.left?l.value:void 0),r=t(()=>a?.value===Pe.right?l.value:void 0),s=t(()=>a?.value===Pe.top?l.value:void 0),u=t(()=>a?.value===Pe.bottom?l.value:void 0);return{hasIcon:l,hasIconLeft:n,hasIconRight:r,hasIconTop:s,hasIconBottom:u,hasIconBefore:o,hasIconAfter:i}}const Xt={...xt,...kt,modifiers:{type:[String,Array],default:void 0},dismissable:{type:Boolean,default:!1},autoClose:{type:Number,default:0},closeLabel:{type:String,default:"Close"},title:{type:String,default:void 0},content:{type:String,default:void 0},footer:{type:String,default:void 0},role:{type:String,default:We.alert}};function Zt(a,l){const{bus:o}=e(at,{}),i=Yt(t(()=>a.id)),n=t(()=>`${i.value}-title`);let r;const d=()=>{r&&clearTimeout(r),l("close",i.value),o?.emit("close",i.value)};u(()=>a.autoClose,e=>{e>0?r=setTimeout(d,e):r&&clearTimeout(r)},{immediate:!0});const v=s(!1),c=()=>{v.value=!0,r&&clearTimeout(r)},p=()=>{v.value=!1,a.autoClose>0&&(r=setTimeout(d,a.autoClose))},{hasIcon:f}=Jt(t(()=>a.icon)),m=Ht("vv-alert",t(()=>a.modifiers),t(()=>({dismissable:a.autoClose>0||a.dismissable,"auto-close":a.autoClose>0,hover:v.value}))),b=t(()=>({"--alert-duration":`${a.autoClose}ms`}));return{close:d,hasIcon:f,hasTitleId:n,hasProps:t(()=>({onMouseover:c,onMouseleave:p,class:m.value,style:b.value,role:a.role,"aria-labelledby":n.value}))}}const Qt=/* @__PURE__ */o({name:"VvIcon",props:/* @__PURE__ */N({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},Ne),setup(e){const a=e,o=t(()=>"string"==typeof a.rotate?Number.parseFloat(a.rotate):a.rotate),i=s(!0),n=Wt(),{modifiers:u}=r(a),d=Ht("vv-icon",u),v=t(()=>a.provider||n?.iconsProvider),p=t(()=>{const e=a.name??"",t=`@${v.value}:${a.prefix}:${e}`;if(ce(t))return t;const l=n?.iconsCollections.find(t=>{const a=`@${v.value}:${t.prefix}:${e}`;return ce(a)});return l?`@${v.value}:${l.prefix}:${e}`:e});function f(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),l=t?.innerHTML.trim()||"";t&&l&&fe(`@${v.value}:${a.prefix}:${a.name}`,{body:l,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return n&&a.src&&!ce(`@${v.value}:${a.prefix}:${a.name}`)&&(i.value=!1,n.fetchIcon(a.src).then(e=>{e&&(f(e),i.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),a.svg&&f(a.svg),(t,a)=>l(i)?(c(),O(l(pe),C({key:0,class:l(d)},{inline:e.inline,width:e.width,height:e.height,horizontalFlip:e.horizontalFlip,verticalFlip:e.verticalFlip,flip:e.flip,rotate:l(o),color:e.color,icon:l(p)},{onLoad:e.onLoad}),null,16,["class","onLoad"])):M("v-if",!0)}}),ea={key:0,class:"vv-alert__header"},ta=["id"],aa=["aria-label"],la={key:1,class:"vv-alert__content"},oa={key:2,class:"vv-alert__footer"},ia=/* @__PURE__ */o({name:"VvAlert",props:Xt,emits:["close"],setup(e,{expose:t,emit:a}){const o=e,i=a,{hasProps:n,hasTitleId:r,hasIcon:s,close:u}=Zt(o,i);return t({close:u}),(e,t)=>(c(),v("div",y(g(l(n))),[e.$slots.header||e.$slots.title||e.$slots.close||e.$slots["title::before"]||e.$slots["title::after"]||e.title||l(s)||e.dismissable||e.autoClose?(c(),v("div",ea,[l(s)?(c(),O(Qt,C({key:0},l(s),{class:"vv-alert__icon"}),null,16)):M("v-if",!0),b(e.$slots,"header",{},()=>[b(e.$slots,"title::before"),e.$slots.title||e.title?(c(),v("strong",{key:0,id:l(r),class:"vv-alert__title"},[b(e.$slots,"title",{},()=>[h(S(e.title),1)])],8,ta)):M("v-if",!0),b(e.$slots,"title::after")]),b(e.$slots,"close",y(g({close:l(u)})),()=>[e.dismissable||e.autoClose?(c(),v("button",{key:0,class:"vv-alert__close",type:"button","aria-label":e.closeLabel,onClick:t[0]||(t[0]=m((...e)=>l(u)&&l(u)(...e),["stop"]))},[...t[1]||(t[1]=[f("div",{class:"vv-alert__close-mask"},null,-1)])],8,aa)):M("v-if",!0)])])):M("v-if",!0),e.$slots.default||e.content?(c(),v("div",la,[b(e.$slots,"default",{},()=>[h(S(e.content),1)])])):M("v-if",!0),e.$slots.footer||e.footer?(c(),v("div",oa,[b(e.$slots,"footer",{},()=>[h(S(e.footer),1)])])):M("v-if",!0)],16))}});const na={...bt,name:{type:String,required:!0},items:{type:Array,default:()=>[]},stack:{type:Boolean,default:!1},reverse:{type:Boolean,default:!1},inline:{type:String,default:void 0},block:{type:String,default:void 0},position:{type:String,default:void 0},transition:{type:String,default:void 0}};function ra(e,a){const l=function({name:e}){const t=ve();return $(at,{name:e,bus:t}),t}({name:t(()=>e.name)});(e.block&&!e.inline||!e.block&&e.inline)&&console.warn("[VvAlertGroup]: block and inline props must coexist at the same time.");const o=t(()=>{const a=[Ht("vv-alert-group",t(()=>e.modifiers),t(()=>({stack:e.stack,reverse:e.reverse,absolute:"absolute"===e.position,fixed:"fixed"===e.position}))).value];return e.inline&&e.block&&a.push(`vv-alert-group--${e.block}-${e.inline}`),a}),i=t(()=>e.transition?e.transition:e.position?"start"===e.inline?"vv-alert--fade-inline-start":"end"===e.inline?"vv-alert--fade-inline-end":"top"===e.block?"vv-alert--fade-block-top":"bottom"===e.block?"vv-alert--fade-block-bottom":"vv-alert--fade":"vv-alert--fade");return l.on("close",e=>{a("close",e)}),{hasTransition:i,hasProps:t(()=>({class:o.value}))}}const sa=/* @__PURE__ */o({name:"VvAlertGroup",props:na,emits:["close","beforeEnter","afterLeave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{emit:t}){const a=e,o=t,{hasProps:i,hasTransition:n}=ra(a,o),r={"before-enter":()=>{o("beforeEnter")},"after-leave":()=>{o("afterLeave")},enter:()=>{o("enter")},"after-enter":()=>{o("afterEnter")},"enter-cancelled":()=>{o("enterCancelled")},"before-leave":()=>{o("beforeLeave")},leave:()=>{o("leave")},"leave-cancelled":()=>{o("leaveCancelled")}};return(e,t)=>(c(),v("div",y(g(l(i))),[b(e.$slots,"before"),H(P,C({tag:"div",role:"group",name:l(n),class:"vv-alert-group__list"},R(r)),{default:B(()=>[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(e.items,e=>(c(),O(ia,C({ref_for:!0},e,{key:e.id}),null,16))),128))])]),_:3},16,["name"]),b(e.$slots,"after")],16))}}),ua={...bt,imgSrc:String},da=["role","aria-label"],va=["src"],ca=/* @__PURE__ */o({name:"VvAvatar",props:ua,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-avatar",a);return(e,t)=>(c(),v("span",{class:p(l(o)),role:e.imgSrc?void 0:"img","aria-label":e.imgSrc?void 0:"avatar"},[b(e.$slots,"default",{},()=>[e.imgSrc?(c(),v("img",{key:0,src:e.imgSrc,alt:"avatar"},null,8,va)):M("v-if",!0)])],10,da))}}),pa={...bt,items:{type:Array,default:()=>[],required:!0},toShow:{type:Number,default:3},totalItems:{type:Number},avatarModifiers:[String,Array]},fa={key:0},ma=/* @__PURE__ */o({name:"VvAvatarGroup",props:pa,setup(e){const a=e,{modifiers:o,items:i,toShow:n,totalItems:s,avatarModifiers:u}=r(a),d=Ht("vv-avatar-group",o),f=t(()=>u?.value&&Array.isArray(u?.value)?u.value.join(" "):u?.value||""),m=t(()=>i.value.slice(0,n.value).map(e=>{let t=[],a=[];return u?.value&&(t=Array.isArray(u?.value)?u?.value:[u?.value]),e.modifiers&&(a=Array.isArray(e.modifiers)?e.modifiers:[e.modifiers]),{...e,key:e.key||Yt().value,modifiers:[...t,...a]}}));return(e,t)=>(c(),v("span",{class:p(l(d))},[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(l(m),e=>(c(),O(ca,C({key:e.key},{ref_for:!0},{modifiers:e.modifiers,imgSrc:e.imgSrc}),{default:B(()=>[e.text?(c(),v("span",fa,S(e.text),1)):M("v-if",!0)]),_:2},1040))),128)),(l(s)||l(i).length)>l(n)?(c(),O(ca,{key:0,modifiers:`${l(f)} surface bordered`},{default:B(()=>[h(S("+"+((l(s)||l(i).length)-l(n))),1)]),_:1},8,["modifiers"])):M("v-if",!0)])],2))}}),ba={...bt,value:[String,Number]},ya=/* @__PURE__ */o({name:"VvBadge",props:ba,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-badge",a);return(e,t)=>(c(),v("span",{class:p(l(o))},[b(e.$slots,"default",{},()=>[h(S(e.value),1)])],2))}}),ga={...bt,routes:Array},ha={class:"vv-breadcrumb__list"},Sa=["content"],ka=/* @__PURE__ */o({name:"VvBreadcrumb",props:ga,setup(e){const a=e,{modifiers:o}=r(a),i=Ht("vv-breadcrumb",o),n=t(()=>a.routes?.length??0),s=e=>e===n.value-1;return(e,t)=>(c(),v("nav",{class:p(l(i)),"aria-label":"breadcrumbs"},[f("ol",ha,[(c(!0),v(A,null,L(e.routes,({label:t,...a},l)=>(c(),v("li",{key:`${t}-${l}`,class:p(s(l)?"vv-breadcrumb__item-active":"vv-breadcrumb__item"),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[H(Kt,C({ref_for:!0},a,{class:s(l)?"vv-breadcrumb__label":"vv-breadcrumb__link","aria-current":s(l)?"page":void 0,itemprop:"item","default-tag":"span"}),{default:B(()=>[b(e.$slots,"label",C({ref_for:!0},{...a,index:l,label:t,isLast:s(l)}),()=>[h(S(t),1)])]),_:2},1040,["class","aria-current"]),f("meta",{itemprop:"position",content:`${l+1}`},null,8,Sa)],2))),128))])],2))}}),_a={...It,...xt,...bt,...wt,...nt,...kt,iconPosition:{type:String,default:Pe.left,validator:e=>Object.values(Pe).includes(e)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};function $a(e,t,a){return wa(e,t)}function wa(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){const a=Array.isArray(e),l=Array.isArray(t);let o,i,n;if(a&&l){if(i=e.length,i!==t.length)return!1;for(o=i;0!==o--;)if(!wa(e[o],t[o]))return!1;return!0}if(a!==l)return!1;const r=e instanceof Date,s=t instanceof Date;if(r!==s)return!1;if(r&&s)return e.getTime()===t.getTime();const u=e instanceof RegExp,d=t instanceof RegExp;if(u!==d)return!1;if(u&&d)return e.toString()===t.toString();const v=Object.keys(e);if(i=v.length,i!==Object.keys(t).length)return!1;for(o=i;0!==o--;)if(!Object.prototype.hasOwnProperty.call(t,v[o]))return!1;for(o=i;0!==o--;)if(n=v[o],!wa(e[n],t[n]))return!1;return!0}return Number.isNaN(e)&&Number.isNaN(t)}function xa(e,t){if(null!=e&&t&&t.length)for(const a of t)if($a(e,a))return!0;return!1}function Va(e){return null==(t=l(e))||""===t||Array.isArray(t)&&0===t.length||!(t instanceof Date)&&"object"==typeof t&&0===Object.keys(t).length;var t}const Aa={key:1,class:"vv-button__label"},La={key:1,class:"vv-button__label"},Oa=/* @__PURE__ */o({name:"VvButton",inheritAttrs:!1,props:_a,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const n=e,u=o,d=i(),p=j(),{id:f,modifiers:m,iconPosition:y,icon:g,label:k,modelValue:_,disabled:$,toggle:w,unselectable:x}=function(e,a){const{group:l,isInGroup:o,getGroupOrLocalRef:i}=Nt(Ye),{id:n,iconPosition:s,icon:u,label:d,pressed:v}=r(e),c=i("modelValue",e,a),p=i("toggle",e),f=i("unselectable",e),m=t(()=>l?.multiple.value??!1),b=t(()=>{let t=e.modifiers,a=l?.modifiers.value;const o=/* @__PURE__ */new Set;return t&&(Array.isArray(t)||(t=t.split(" ")),t.forEach(e=>o.add(e))),a&&(Array.isArray(a)||(a=a.split(" ")),a.forEach(e=>o.add(e))),Array.from(o)}),y=t(()=>Boolean(e.disabled||l?.disabled.value));return{group:l,isInGroup:o,modelValue:c,toggle:p,unselectable:f,multiple:m,modifiers:b,disabled:y,id:n,pressed:v,iconPosition:s,icon:u,label:d}}(n,u),V=Yt(f),L=t(()=>d?.name||V.value),E=s(null);a({$el:t(()=>E.value?.$el)});const I=t(()=>w.value?Array.isArray(_.value)?xa(L.value,_.value):$a(L.value,_.value):n.pressed),T=Ht("vv-button",m,t(()=>({reverse:[Pe.right,Pe.bottom].includes(y.value),column:[Pe.top,Pe.bottom].includes(y.value),"icon-only":Boolean(g?.value&&!k?.value&&!p.default)}))),{hasIcon:D}=Jt(g),N=t(()=>void 0!==n.value?n.value:L.value),H=t(()=>{if(w.value)return{onClick:P}});function P(){if(w.value){if(Array.isArray(_.value))return xa(N.value,_.value)?void(x.value&&(_.value=_.value.filter(e=>e!==N.value))):void _.value.push(N.value);if(N.value===_.value&&x.value)return void(_.value=n.uncheckedValue);_.value=N.value}}return(e,t)=>(c(),O(Kt,C({...l(d),...l(H),disabled:l($),pressed:l(I),active:e.active,type:e.type,to:e.to,href:e.href,target:e.target,rel:e.rel,ariaLabel:e.ariaLabel},{id:l(V),ref_key:"element",ref:E,class:l(T)}),{default:B(()=>[b(e.$slots,"default",{},()=>[e.loading?b(e.$slots,"loading",{key:0},()=>[e.loadingIcon?(c(),O(Qt,{key:0,class:"vv-button__loading-icon",name:e.loadingIcon},null,8,["name"])):M("v-if",!0),e.loadingLabel?(c(),v("span",Aa,S(e.loadingLabel),1)):M("v-if",!0)]):(c(),v(A,{key:1},[b(e.$slots,"before"),l(D)?(c(),O(Qt,C({key:0},l(D),{class:"vv-button__icon"}),null,16)):M("v-if",!0),l(k)?(c(),v("span",La,[b(e.$slots,"label",{},()=>[h(S(l(k)),1)])])):M("v-if",!0),b(e.$slots,"after")],64))])]),_:3},16,["id","class"]))}}),Ca={...bt,...rt,...wt,legendLabel:{type:String},itemModifiers:{type:[String,Array],default:""},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Array],default:void 0}},Ea={key:0,class:"vv-button-group__legend"},Ba=/* @__PURE__ */o({name:"VvButtonGroup",props:Ca,emits:["update:modelValue"],setup(e,{emit:a}){const o=e,i=a,{disabled:n,toggle:s,modifiers:u,multiple:d,unselectable:f,itemModifiers:m}=r(o);w(()=>{"string"==typeof o.modelValue&&d.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const y=t({get:()=>d.value?o.modelValue:Array.isArray(o.modelValue)?o.modelValue[0]:o.modelValue,set:e=>void 0===e||!Array.isArray(o.modelValue)&&!d.value||Array.isArray(e)?i("update:modelValue",e):i("update:modelValue",[e])});qt(Ye,{modelValue:y,disabled:n,toggle:s,multiple:d,unselectable:f,modifiers:m});const g=Ht("vv-button-group",u);return(e,t)=>(c(),v("fieldset",{class:p(l(g)),role:"group"},[e.$slots.legend||e.legendLabel?(c(),v("legend",Ea,[b(e.$slots,"legend",{},()=>[h(S(e.legendLabel),1)])])):M("v-if",!0),b(e.$slots,"default")],2))}}),Ia={...bt,title:String},Ta={key:0,class:"vv-card__header"},Da={key:1,class:"vv-card__content"},Na={key:2,class:"vv-card__footer"},Ma=/* @__PURE__ */o({name:"VvCard",props:Ia,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-card",a);return(e,t)=>(c(),v("article",{class:p(l(o))},[e.$slots.header||e.title?(c(),v("header",Ta,[b(e.$slots,"header",{},()=>[h(S(e.title),1)])])):M("v-if",!0),b(e.$slots,"default"),e.$slots.content?(c(),v("div",Da,[b(e.$slots,"content")])):M("v-if",!0),e.$slots.footer?(c(),v("footer",Na,[b(e.$slots,"footer")])):M("v-if",!0)],2))}}),Ha={...Et,...bt,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean};function Pa(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}function Ra(e,a){const l=t(()=>_(e)?e.value:e),i=t(()=>Pa(l.value.invalidLabel)),n=t(()=>Pa(l.value.validLabel)),r=t(()=>l.value.loadingLabel),s=t(()=>l.value.hintLabel),u=t(()=>Boolean(l.value.loading&&(a.loading||r.value))),d=t(()=>!u.value&&Boolean(l.value.invalid&&(a.invalid||i.value))),v=t(()=>!u.value&&!d.value&&Boolean(l.value.valid&&(a.valid||n.value))),c=t(()=>!u.value&&!d.value&&!v.value&&Boolean(a.hint||s.value)),p=t(()=>d.value||v.value||u.value||c.value),f=t(()=>({modelValue:l.value.modelValue,valid:l.value.valid,invalid:l.value.invalid,loading:l.value.loading})),m=o({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:p,invalidLabel:i,validLabel:n,loadingLabel:r,hintLabel:s,hasInvalidLabelOrSlot:d,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:u,hasHintLabelOrSlot:c}),render(){if(this.isVisible){let e;return this.hasInvalidLabelOrSlot&&(e="alert"),this.hasValidLabelOrSlot&&(e="status"),this.hasLoadingLabelOrSlot?F(this.tag,{role:e},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?F(this.tag,{role:e},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?F(this.tag,{role:e},this.$slots.valid?.()??this.validLabel):F(this.tag,{role:e},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:d,hasHintLabelOrSlot:c,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:u,hintSlotScope:f,HintSlot:m}}function ja(e,a,l){const o=Wt(),i=t(()=>{if(o&&o.defaults.value?.[e])return o.defaults.value[e]});return t(()=>{if(void 0===i.value)return l;const e=i.value,t=a,o=l;return Object.keys(t).reduce((a,l)=>{const i=o[l];if(a[l]=i,l in e){if(Array.isArray(t[l])){const o=t[l];if(o.length){o[0]===i&&(a[l]=e[l])}}if("function"==typeof t[l]){(0,t[l])()===i&&(a[l]=e[l])}if("object"==typeof t[l]){let o=t[l].default;"function"==typeof o&&(o=o()),"object"==typeof o?JSON.stringify(o)===JSON.stringify(i)&&(a[l]=e[l]):o===i&&(a[l]=e[l])}}return a},{})})}const Fa=["for"],Ua=["id","name","disabled","value","tabindex","aria-invalid","aria-describedby","aria-errormessage"],Ga=/* @__PURE__ */o({name:"VvCheckbox",props:Ha,emits:["click","update:modelValue","change","blur"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvCheckbox",Ha,o),{id:m,disabled:$,readonly:x,valid:V,invalid:A,propsSwitch:L,modelValue:O,indeterminate:C,isInGroup:I}=function(e,a){const{group:l,isInGroup:o,getGroupOrLocalRef:i}=Nt(Xe),{id:n,switch:s,indeterminate:u}=r(e),d=i("modelValue",e,a),v=i("valid",e),c=i("invalid",e),p=t(()=>Boolean(e.readonly||l?.readonly.value)),f=t(()=>Boolean(e.disabled||l?.disabled.value));return{id:n,propsSwitch:s,indeterminate:u,group:l,isInGroup:o,modelValue:d,valid:v,invalid:c,readonly:p,disabled:f}}(o,i),T=Yt(m),D=t(()=>`${T.value}-hint`),N=t(()=>R.value?-1:o.tabindex),M=s(),P=t(()=>void 0!==o.uncheckedValue&&!I.value),R=t(()=>$.value||x.value),F=t(()=>!0===A.value||!0!==V.value&&void 0),q=t(()=>P.value?O.value===o.value:Array.isArray(O.value)?xa(o.value,O.value):$a(o.value,O.value)),z=t(()=>!!C.value||!(q.value||!P.value||o.uncheckedValue===O.value)),W=t(()=>{if(!P.value)return!["string","number","boolean"].includes(typeof o.value)||o.value}),K=t({get:()=>q.value,set(e){if(P.value)O.value=e?o.value:o.uncheckedValue;else if(Array.isArray(O.value)||I.value){const t=O.value??[],a=new Set(Array.isArray(t)?t:[t]);e?a.add(o.value):a.delete(o.value),O.value=[...a]}else O.value=e?o.value:void 0;i("change",e)}}),{modifiers:Y}=r(o),J=Ht("vv-checkbox",Y,t(()=>({switch:L.value,valid:V.value,invalid:A.value,disabled:$.value,readonly:x.value,indeterminate:C.value})));w(()=>{P.value&&Array.isArray(O.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),u(()=>z.value,e=>{M.value.indeterminate=!!e}),k(()=>{z.value&&(M.value.indeterminate=!0)});const{HintSlot:X,hasHintLabelOrSlot:Z,hasInvalidLabelOrSlot:Q,hintSlotScope:ee}=Ra(d,n);return(e,t)=>(c(),v("label",{class:p(l(J)),for:l(T)},[U(f("input",{id:l(T),ref_key:"input",ref:M,"onUpdate:modelValue":t[0]||(t[0]=e=>_(K)?K.value=e:null),type:"checkbox",class:"vv-checkbox__input",name:e.name,disabled:l(R),value:l(W),tabindex:l(N),"aria-invalid":l(F),"aria-describedby":l(Z)?l(D):void 0,"aria-errormessage":l(Q)?l(D):void 0},null,8,Ua),[[G,l(K)]]),b(e.$slots,"default",{value:l(O)},()=>[h(S(e.label),1)]),H(l(X),{id:l(D),class:"vv-checkbox__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(ee))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(ee))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(ee))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(ee))))]),key:"3"}:void 0]),1032,["id"])],10,Fa))}}),qa=Bt;function za(e){const{options:t,labelKey:a,valueKey:l,disabledKey:o}=r(e);return{options:t,getOptionLabel:e=>"string"==typeof e?e:"function"==typeof a.value?a.value(e):String(a.value?me(e,a.value):e),getOptionValue:e=>"string"==typeof e?e:"function"==typeof l.value?l.value(e):l.value?me(e,l.value):e,isOptionDisabled:e=>"string"!=typeof e&&("function"==typeof o.value?o.value(e):!!o.value&&Boolean(me(e,o.value))),getOptionGrouped:e=>"string"==typeof e?[]:"object"==typeof e&&e&&"options"in e?e.options:[]}}const Wa=["textContent"],Ka={class:"vv-checkbox-group__wrapper"},Ya=/* @__PURE__ */o({name:"VvCheckboxGroup",props:qa,emits:["update:modelValue","change"],setup(e,{emit:a}){const o=e,i=a,n=j(),s=ja("VvCheckboxGroup",qa,o),u=ee(o,"modelValue",i),{disabled:d,readonly:m,vertical:h,valid:k,invalid:_,modifiers:$}=r(o);qt(Xe,{modelValue:u,disabled:d,readonly:m,valid:k,invalid:_});const{getOptionLabel:w,getOptionValue:x,isOptionDisabled:V}=za(o),I=Ht("vv-checkbox-group",$,t(()=>({disabled:d.value,readonly:m.value,required:o.required,horizontal:!h.value,valid:k.value,invalid:_.value})));const{HintSlot:T,hintSlotScope:D}=Ra(s,n);return(e,t)=>(c(),v("fieldset",{class:p(l(I))},[e.label?(c(),v("legend",{key:0,textContent:S(e.label)},null,8,Wa)):M("v-if",!0),f("div",Ka,[e.options.length>0?(c(!0),v(A,{key:0},L(e.options,(e,t)=>(c(),O(Ga,C({key:t},{ref_for:!0},function(e,t){return{id:`${o.name}_opt${t}`,name:o.name,label:w(e),value:x(e),required:o.required,disabled:V(e)}}(e,t)),null,16))),128)):b(e.$slots,"default",{key:1})]),H(l(T),{class:"vv-checkbox-group__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(D))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(D))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(D))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(D))))]),key:"3"}:void 0]),1024)],2))}}),Ja={...At,..._t,...ot,...it,...yt,...nt,...rt,...mt,...bt,...gt,...kt,...$t,...Vt,...ft,...st,...ct,transitionName:{type:String,default:"vv-dropdown--mobile-fade-block"},modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},selectedOptionNotFoundLabel:{type:String,default:"Selected option not found"},selectedHintLabel:{type:String,default:"Selected"},deselectActionLabel:{type:String,default:"Deselect"},selectHintLabel:{type:String,default:"Press enter to select"},deselectHintLabel:{type:String,default:"Press enter to remove"},addOptionHintLabel:{type:String,default:"Press enter to add"},closeLabel:{type:String,default:"Close"},placeholder:String,addable:Boolean,searchable:Boolean,keepSearch:Boolean,searchFunction:{type:Function,default:void 0},searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,minValues:{type:[Number,String],default:0},maxValues:[Number,String],unselectable:{type:Boolean,default:!0},separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...Vt.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array],default:"mobile"},autoOpen:{type:Boolean,default:!1},autoselectFirst:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0}};function Xa(){return{...Ja,options:{...Ja.options,type:Array},searchFunction:{...Ja.searchFunction,type:Function}}}const Za=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:[String,Object],default:"close"}},emits:["clear"],setup(e,{emit:a}){const{hasIcon:l}=Jt(t(()=>e.icon));return{hasIcon:l,onClick:function(t){t?.stopPropagation(),e.disabled||a("clear")}}},render(){const e=this.hasIcon?F(Qt,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return F("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.label,type:"button",onClick:this.onClick},e)}}),Qa={...xt,...Vt,...bt,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:qe.menu,validator:e=>Object.values(qe).includes(e)}},el={focusOnHover:{type:Boolean,default:!1}},tl={...rt,...ut,...wt,...bt,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};const al=["id","tabindex","role","aria-labelledby"],ll=/* @__PURE__ */o({name:"VvDropdown",inheritAttrs:!1,props:Qa,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{expose:a,emit:n}){const d=e,m=n,{id:h}=r(d),S=Yt(h),_=i(),w=s("auto"),x=s("auto"),L=s(),O=s(),E=s(),I=s(),T=t({get:()=>d.reference??L.value,set:e=>{L.value=e}}),D=s(!1);k(()=>{ae(O.value,()=>{D.value="true"===window.getComputedStyle(O.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const N=t(()=>{const e=[];if(d.autoPlacement?"boolean"==typeof d.autoPlacement?e.push(be()):e.push(be(d.autoPlacement)):d.flip&&("boolean"==typeof d.flip?e.push(ye({fallbackStrategy:"initialPlacement"})):e.push(ye(d.flip))),d.shift&&("boolean"==typeof d.shift?e.push(ge()):e.push(ge(d.shift))),d.size){const t=({availableWidth:e,availableHeight:t})=>{w.value=`${e}px`,x.value=`${t}px`};"boolean"==typeof d.size?e.push(he({apply:t})):e.push(he({...d.size,apply:t}))}return d.offset&&(e.push(Se(Number(d.offset))),["string","number"].includes(typeof d.offset)?e.push(Se(Number(d.offset))):e.push(Se(d.offset))),d.arrow&&e.push(ke({element:E})),e}),{x:P,y:j,middlewareData:G,placement:K,strategy:Y}=_e(T,O,{whileElementsMounted:(...e)=>$e(...e,{animationFrame:d.strategy===He.fixed}),placement:t(()=>d.placement),strategy:t(()=>d.strategy),middleware:N}),J=t(()=>{if(D.value)return;const e=d.triggerWidth&&T.value?`${T.value?.offsetWidth}px`:void 0;return{position:Y.value,top:`${j.value??0}px`,left:`${P.value??0}px`,maxWidth:e?void 0:w.value,maxHeight:x.value,width:e}}),X=t(()=>K.value.split("-")[0]),Z=t(()=>{if(D.value)return;const e={[Pe.top]:Pe.bottom,[Pe.right]:Pe.left,[Pe.bottom]:Pe.top,[Pe.left]:Pe.right}[X.value];return{left:void 0!==G.value.arrow?.x?`${G.value.arrow?.x}px`:void 0,top:void 0!==G.value.arrow?.y?`${G.value.arrow?.y}px`:void 0,[e]:-(E.value?.offsetWidth??0)/2+"px"}}),Q=ee(d,"modelValue",m),te=s(!1),re=t({get:()=>Q.value??te.value,set:e=>{void 0!==Q.value?Q.value=e:te.value=e}});function se(){re.value=!0}function ue(){re.value=!1}function de(){re.value=!re.value}function ce(e){T.value=e}le(O,()=>{!d.keepOpen&&re.value&&(re.value=!1)},{ignore:[T]});const pe=t(()=>T.value?.getAttribute?.("id")??void 0),fe=t(()=>({"aria-controls":S.value,"aria-haspopup":!0,"aria-expanded":re.value})),{component:me,bus:we}=function({reference:e,id:t,expanded:a,aria:l}){const i=ve(),n=o({name:"VvDropdownTriggerProvider",setup(){$(Qe,{reference:e,id:t,expanded:a,aria:l,bus:i})},render(){return F(A,{},this.$slots.default?.())}});return{bus:i,component:n}}({reference:T,id:S,expanded:re,aria:fe});we.on("click",de);const{role:xe,modifiers:Ve}=r(d),Ae=Ht("vv-dropdown",Ve,t(()=>({arrow:d.arrow}))),{focused:Le}=oe(O);function Oe(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function Ce(){V(()=>{const e=Oe(O.value);e.length>0&&e[0].focus({preventScroll:!0})})}function Ee(){V(()=>{if(Le.value){const e=Oe(O.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function Be(){V(()=>{if(Le.value){const e=Oe(O.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}u(re,e=>{e&&d.autofocusFirst&&Ce()}),a({toggle:de,show:se,hide:ue,init:ce,focusFirst:Ce,focusFirstListElement:function(){V(()=>{const e=Oe(I.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:Ee,focusPrev:Be,customPosition:D});const Ie=ie(O),{itemRole:Te}=function({role:e,...a}){const l=t(()=>e.value===qe.listbox?ze.option:ze.presentation);return $(et,{role:l,...a}),{itemRole:l}}({role:xe,expanded:re,focused:Le,hovered:Ie});ne("Escape",e=>{re.value&&(e.preventDefault(),ue())}),ne("ArrowDown",e=>{re.value&&Le.value&&(e.preventDefault(),Ee())}),ne("ArrowUp",e=>{re.value&&Le.value&&(e.preventDefault(),Be())}),ne([" ","Enter"],e=>{const t=e.target;re.value&&Le.value&&t&&t?.click()});const De={"before-enter":()=>{m(re.value?"beforeExpand":"beforeCollapse"),m("beforeEnter")},"after-leave":()=>{m(re.value?"afterExpand":"afterCollapse"),m("afterLeave")},enter:()=>{m("enter")},"after-enter":()=>{m("afterEnter")},"enter-cancelled":()=>{m("enterCancelled")},"before-leave":()=>{m("beforeLeave")},leave:()=>{m("leave")},"leave-cancelled":()=>{m("leaveCancelled")}};return(e,t)=>(c(),v(A,null,[H(l(me),null,{default:B(()=>[b(e.$slots,"default",y(g({init:ce,show:se,hide:ue,toggle:de,expanded:l(re),aria:l(fe)})))]),_:3}),H(q,C({name:e.transitionName},R(De),{persisted:""}),{default:B(()=>[U(f("div",{ref_key:"floatingEl",ref:O,style:z(l(J)),class:p(l(Ae))},[d.arrow?(c(),v("div",{key:0,ref_key:"arrowEl",ref:E,style:z(l(Z)),class:"vv-dropdown__arrow"},null,4)):M("v-if",!0),b(e.$slots,"before",y(g({expanded:l(re)}))),f("div",C(l(_),{id:l(S),ref_key:"listEl",ref:I,tabindex:l(re)?void 0:-1,role:l(xe),"aria-labelledby":l(pe),class:"vv-dropdown__list"}),[b(e.$slots,"items",y(g({role:l(Te)})))],16,al),b(e.$slots,"after",y(g({expanded:l(re)})))],6),[[W,l(re)]])]),_:3},16,["name"])],64))}}),ol={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"},il=/* @__PURE__ */o({name:"VvDropdownOptgroup",props:{...ft},setup(e){const t=e;return(e,a)=>(c(),v("li",ol,[b(e.$slots,"default",{},()=>[h(S(t.label),1)])]))}}),nl=/* @__PURE__ */o({name:"VvDropdownItem",props:el,setup(t){const a=t,{role:o,expanded:i}=e(et,{}),n=s(null);!function({expanded:e}){$(tt,{role:s(Ge.menuitem),expanded:e})}({expanded:i});const r=ie(n),{focused:d}=re(n),{focused:p}=oe(n);return u(r,e=>{e&&a.focusOnHover&&(d.value=!0)}),(e,t)=>(c(),v("div",C({role:l(o)},{ref_key:"element",ref:n,class:["vv-dropdown__item",{"focus-visible":l(d)||l(p)}]}),[b(e.$slots,"default")],16))}}),rl=["title"],sl=/* @__PURE__ */o({name:"VvDropdownOption",props:tl,setup(e){const a=e,{modifiers:o}=r(a),i=Ht("vv-dropdown-option",o,t(()=>({disabled:a.disabled,selected:a.selected,unselectable:a.unselectable&&a.selected}))),n=t(()=>a.selected?a.unselectable?a.deselectHintLabel:a.selectedHintLabel:a.disabled?"":a.selectHintLabel);return(e,t)=>(c(),O(nl,{class:p(l(i)),tabindex:e.disabled?-1:0,"aria-selected":e.selected,"aria-disabled":e.disabled,"focus-on-hover":e.focusOnHover},{default:B(()=>[b(e.$slots,"default"),f("span",{class:"vv-dropdown-option__hint",title:l(n)},[b(e.$slots,"hint",y(g({disabled:e.disabled,selected:e.selected,unselectable:e.unselectable})),()=>[h(S(l(n)),1)])],8,rl)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}}),ul={...At,...Lt,...Ot,..._t,...ot,...it,...yt,...nt,...rt,...mt,...bt,...gt,...kt,...$t,...wt,...ft,...ct,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},autoselectFirst:{type:Boolean,default:!1},placeholder:String};function dl(){return{...ul,options:{...ul.options,type:Array,default:()=>[]}}}function vl(e,t){const{focused:a}=re(e);return u(a,a=>{t(a?"focus":"blur",l(e))}),{focused:a}}const cl=["for"],pl={class:"vv-select__wrapper"},fl={key:0,class:"vv-select__input-before"},ml={class:"vv-select__inner"},bl=["id"],yl=["disabled","hidden"],gl=["disabled","value"],hl=["disabled","label"],Sl=["disabled","value"],kl={key:2,class:"vv-select__input-after"},_l=/* @__PURE__ */o({name:"VvSelect",props:dl(),emits:["update:modelValue","focus","blur","clear"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvSelect",dl(),o),m=s(),{HintSlot:h,hasHintLabelOrSlot:k,hasInvalidLabelOrSlot:$,hintSlotScope:w}=Ra(d,n),{focused:x}=vl(m,i);function V(e){return"string"!=typeof e&&e.options?.length}const{id:I,modifiers:T,disabled:D,readonly:N,loading:P,icon:R,iconPosition:F,invalid:G,valid:q,floating:z,multiple:W}=r(o),Y=Yt(I),J=t(()=>`${Y.value}-hint`),X=t(()=>o.disabled||o.readonly),Z=t(()=>X.value?-1:o.tabindex),Q=t({get:()=>o.modelValue,set:e=>{Array.isArray(e)&&0===(e=e.filter(e=>void 0!==e)).length&&!o.unselectable&&m.value?m.value.value=String(o.modelValue):i("update:modelValue",e)}}),ee=t(()=>Array.isArray(Q.value)?Q.value.length>0:void 0!==Q.value&&null!==Q.value),te=t(()=>!X.value&&o.unselectable),ae=se(m);u(ae,e=>{e&&o.autofocus&&(x.value=!0)});const{hasIconBefore:le,hasIconAfter:oe}=Jt(R,F),ie=t(()=>!0===o.invalid||!0!==o.valid&&void 0),ne=Ht("vv-select",T,t(()=>({valid:q.value,invalid:G.value,loading:P.value,disabled:D.value,readonly:N.value,"icon-before":void 0!==le.value,"icon-after":void 0!==oe.value,dirty:ee.value,focus:x.value&&!X.value,floating:z.value,multiple:W.value}))),{getOptionLabel:re,getOptionValue:ue,isOptionDisabled:de,getOptionGrouped:ve}=za(o);function ce(){Array.isArray(Q.value)?Q.value=[]:Q.value=void 0,i("clear")}u(()=>o.options,e=>{if(e?.length&&o.autoselectFirst&&!ee.value){const t=ue(e[0]);Q.value=o.multiple?[t]:t}},{immediate:!0});const pe=t(()=>({name:o.name,tabindex:Z.value,disabled:X.value,required:o.required,size:o.size,autocomplete:o.autocomplete,multiple:o.multiple,"aria-invalid":ie.value,"aria-describedby":k.value?J.value:void 0,"aria-errormessage":$.value?J.value:void 0})),fe=t(()=>({valid:o.valid,invalid:o.invalid,modelValue:o.modelValue}));return(e,t)=>(c(),v("div",{class:p(l(ne))},[e.label?(c(),v("label",{key:0,for:l(Y)},S(e.label),9,cl)):M("v-if",!0),f("div",pl,[e.$slots.before?(c(),v("div",fl,[b(e.$slots,"before",y(g(l(fe))))])):M("v-if",!0),f("div",ml,[l(le)?(c(),O(Qt,C({key:0},l(le),{class:"vv-select__icon"}),null,16)):M("v-if",!0),U(f("select",C({id:l(Y),ref_key:"selectEl",ref:m},l(pe),{"onUpdate:modelValue":t[0]||(t[0]=e=>_(Q)?Q.value=e:null)}),[e.placeholder?(c(),v("option",{key:0,value:void 0,disabled:!l(te),hidden:!l(te)},S(e.placeholder),9,yl)):M("v-if",!0),(c(!0),v(A,null,L(e.options,(e,t)=>(c(),v(A,null,[V(e)?(c(),v("optgroup",{key:`group-${t}`,disabled:l(de)(e),label:l(re)(e)},[(c(!0),v(A,null,L(l(ve)(e),(e,a)=>(c(),v("option",{key:`group-${t}-item-${a}`,disabled:l(de)(e),value:l(ue)(e)},S(l(re)(e)),9,Sl))),128))],8,hl)):(c(),v("option",{key:t,disabled:l(de)(e),value:l(ue)(e)},S(l(re)(e)),9,gl))],64))),256))],16,bl),[[K,l(Q)]]),l(oe)?(c(),O(Qt,C({key:1},l(oe),{class:"vv-select__icon vv-select__icon-after"}),null,16)):M("v-if",!0)]),l(te)&&l(d).showClearAction?(c(),O(l(Za),{key:1,"input-type":"select",label:e.labelClear,icon:e.iconClear,disabled:!l(ee),onClear:ce},null,8,["label","icon","disabled"])):M("v-if",!0),e.$slots.after?(c(),v("div",kl,[b(e.$slots,"after",y(g(l(fe))))])):M("v-if",!0)]),H(l(h),{id:l(J),class:"vv-select__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(w))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(w))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(w))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(w))))]),key:"3"}:void 0]),1032,["id"])],2))}}),$l=["id"],wl=["id","for"],xl=["id","aria-controls","placeholder"],Vl={key:0,class:"vv-select__input-before"},Al={class:"vv-select__inner"},Ll=["aria-controls","aria-expanded","aria-labelledby","aria-describedby","aria-errormessage","tabindex"],Ol={key:0,class:"vv-select__value"},Cl=["aria-label","onClick"],El={key:2,class:"vv-select__input-after"},Bl=/* @__PURE__ */o({...{name:"VvCombobox",components:{VvDropdown:ll,VvDropdownOption:sl,VvDropdownOptgroup:il,VvButton:Oa}},props:/* @__PURE__ */Y(Xa(),{search:{type:String,default:"",required:!1},searchModifiers:{}}),emits:/* @__PURE__ */Y(["update:modelValue","update:search","update:options","focus","blur","clear","change:search"],["update:search"]),setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvCombobox",Xa(),o),k=s(null),$=s(null),w=s(null),x=s(),{HintSlot:V,hasHintLabelOrSlot:I,hasInvalidLabelOrSlot:T,hintSlotScope:D}=Ra(d,n),{focused:N}=vl(k,i),{focused:P}=oe(w);u(N,e=>{o.autoOpen&&(!e||G.value?e||!G.value||P.value||W():z())}),u(P,e=>{N.value||e||!G.value||W()});const R=J(e,"search"),F=ue(R,t(()=>Number(o.debounceSearch)));u(F,()=>{i("update:search",F.value),i("change:search",F.value)});const G=s(!1);function q(){Se.value||(G.value=!G.value)}function z(){Se.value||G.value||(G.value=!0)}function W(){!Se.value&&G.value&&(G.value=!1)}function K(){d.value.searchable&&$.value&&$.value.focus({preventScroll:!0})}function Y(){d.value.keepSearch||(R.value="")}function Q(e){return"string"!=typeof e&&e.options?.length}const{id:ee,icon:te,iconPosition:ae,modifiers:le,disabled:ie,required:re,readonly:se,loading:ve,valid:ce,invalid:pe,floating:fe}=r(o),me=Yt(ee),be=t(()=>`${me.value}-hint`),ye=t(()=>`${me.value}-dropdown`),ge=t(()=>`${me.value}-search`),he=t(()=>`${me.value}-label`),Se=t(()=>o.disabled||o.readonly),ke=t(()=>Se.value?-1:o.tabindex),_e=t({get:()=>Array.isArray(o.modelValue)?o.modelValue:void 0!==o.modelValue&&null!==o.modelValue?[o.modelValue]:[],set:e=>{i("update:modelValue",o.multiple||Array.isArray(o.modelValue)?e:e.pop())}}),$e=t(()=>_e.value.length),we=t(()=>$e.value>0),xe=t(()=>o.multiple?void 0===o.maxValues?1/0:Number(o.maxValues):1),Ve=t(()=>!Se.value&&(!!o.unselectable&&(0===Number(o.minValues)||$e.value>Number(o.minValues)))),Ae=t(()=>!Se.value&&(!o.multiple||$e.value<xe.value)),Le=s(!1),Oe=t(()=>Le.value||ve.value),{hasIconBefore:Ce,hasIconAfter:Ee}=Jt(te,ae),Be=Ht("vv-select",le,t(()=>({disabled:ie.value,required:re.value,loading:Oe.value,readonly:se.value,"icon-before":void 0!==Ce.value,"icon-after":void 0!==Ee.value,valid:ce.value,invalid:pe.value,dirty:we.value,focus:(N.value||P.value||G.value)&&!Se.value,floating:fe.value,badges:o.badges}))),Ie=s(/* @__PURE__ */new Set),{getOptionLabel:Te,getOptionValue:De,getOptionGrouped:Ne,isOptionDisabled:Me}=za(o),He=t(()=>{const e=[...Ie.value];for(const t of o.options)Q(t)?e.push(...Ne(t)):e.push(t);return e}),Pe=t(()=>{const e=[...o.options,...Ie.value];for(const t of _e.value)He.value.some(e=>{const a=De(e);return"object"==typeof a&&"object"==typeof t?JSON.stringify(a)===JSON.stringify(t):a===t})||e.push(t);return e});function Re(e){return Me(e)||!Ae.value&&!Fe(e)}u(Ie,e=>{e.size>0&&i("update:options",Pe.value)});const je=de(async()=>{if(d.value.searchFunction){Le.value=!0;const e=await Promise.resolve(d.value.searchFunction(F.value,Pe.value));return Le.value=!1,e}const e=F.value.toLowerCase().trim();return e?Pe.value?.reduce((t,a)=>{if(Q(a)){const l=Te(a).toLowerCase(),o=Ne(a).filter(t=>Te(t).toLowerCase().includes(e));if(l.includes(e))t.push(a);else if(o.length>0){const e="object"==typeof a?{...a,options:o}:a;t.push(e)}return t}return Te(a).toLowerCase().includes(e)&&t.push(a),t},[]):Pe.value});function Fe(e){const t=De(e);return"object"==typeof t?_e.value.some(e=>"object"==typeof e&&JSON.stringify(e)===JSON.stringify(t)):_e.value.includes(t)}const Ue=t(()=>Pe.value.reduce((e,t)=>Q(t)?[...e,...Ne(t)]:[...e,t],[]).filter(e=>Fe(e))),Ge=t(()=>Ue.value.map(e=>Te(e)).join(o.separator));function ze(){o.autoOpen?z():q()}function We(e){const t=Fe(e),a=De(e);t&&Ve.value?_e.value=_e.value.filter(e=>"object"==typeof a&&"object"==typeof e?JSON.stringify(e)!==JSON.stringify(a):e!==a):!t&&Ae.value&&(o.multiple?_e.value=[..._e.value,a]:_e.value=[a]),o.multiple||o.keepOpen||W()}function Ke(){_e.value=[],i("update:search",""),i("clear")}u(Pe,e=>{if(e?.length&&o.autoselectFirst&&!we.value){const t=e.find(e=>!Q(e));if(t)return void We(t);const a=e.find(e=>Q(e));if(a){const e=Ne(a);e.length&&We(e[0])}}},{immediate:!0});const Ye=t(()=>({id:me.value,name:o.name,tabindex:ke.value,valid:ce.value,validLabel:d.value.validLabel,invalid:pe.value,invalidLabel:d.value.invalidLabel,hintLabel:d.value.hintLabel,loading:Oe.value,loadingLabel:d.value.loadingLabel,disabled:ie.value,readonly:se.value,modifiers:d.value.modifiers,options:d.value.options,labelKey:d.value.labelKey,valueKey:d.value.valueKey,icon:d.value.icon,iconPosition:d.value.iconPosition,floating:d.value.floating,unselectable:Ve.value,autoselectFirst:d.value.autoselectFirst,multiple:d.value.multiple,label:d.value.label,placeholder:d.value.placeholder,modelValue:o.modelValue})),Je=t(()=>({id:ye.value,reference:w.value,placement:d.value.placement,strategy:d.value.strategy,transitionName:d.value.transitionName,offset:d.value.offset,shift:d.value.shift,flip:d.value.flip,autoPlacement:d.value.autoPlacement,arrow:d.value.arrow,autofocusFirst:!!d.value.searchable||d.value.autofocusFirst,triggerWidth:d.value.triggerWidth,modifiers:d.value.dropdownModifiers})),Xe=t(()=>({valid:o.valid,invalid:o.invalid,modelValue:o.modelValue}));function Ze(){if(je.value?.length){if(1===je.value.length){const e=je.value[0];if(Q(e)){const t=Ne(e);return void(t.length&&We(t[0]))}return void We(e)}x.value?.focusFirstListElement()}else if(d.value.addable){const e=R.value.trim();if(!e)return;if(He.value.some(t=>Te(t).toLowerCase()===e.toLowerCase()))return;Ie.value.add(e),We(e)}}return ne([" ","Enter"],e=>{o.autoOpen||!G.value&&N.value&&(e.preventDefault(),e.stopImmediatePropagation(),q())},{target:k}),(e,t)=>e.native?(c(),O(_l,C({key:1},l(Ye),{"onUpdate:modelValue":t[3]||(t[3]=e=>i("update:modelValue",e))}),null,16)):(c(),v("div",{key:0,id:l(me),class:p(l(Be))},[e.label?(c(),v("label",{key:0,id:l(he),for:l(d).searchable?l(ge):void 0},S(e.label),9,wl)):M("v-if",!0),f("div",{ref_key:"wrapperEl",ref:w,class:"vv-select__wrapper"},[H(ll,C({ref_key:"dropdownEl",ref:x,modelValue:l(G),"onUpdate:modelValue":t[2]||(t[2]=e=>_(G)?G.value=e:null)},l(Je),{role:l(qe).listbox,onAfterExpand:K,onAfterCollapse:Y}),E({default:B(({aria:t})=>[e.$slots.before?(c(),v("div",Vl,[b(e.$slots,"before",y(g(l(Xe))))])):M("v-if",!0),f("div",Al,[l(Ce)?(c(),O(Qt,C({key:0},l(Ce),{class:"vv-select__icon"}),null,16)):M("v-if",!0),f("div",C({ref_key:"inputEl",ref:k},t,{class:"vv-select__input",role:"combobox","aria-controls":l(ye),"aria-expanded":l(G),"aria-labelledby":l(he),"aria-describedby":l(I)?l(be):void 0,"aria-errormessage":l(T)?l(be):void 0,tabindex:l(ke),onClickPassive:ze}),[l(Ge)?b(e.$slots,"value",y(C({key:0},{selectedOptions:l(Ue),onInput:We})),()=>[e.badges?(c(!0),v(A,{key:1},L(l(Ue),(t,a)=>(c(),O(ya,{key:a,modifiers:e.badgeModifiers,class:"vv-select__badge"},{default:B(()=>[h(S(l(Te)(t))+" ",1),l(Ve)?(c(),v("button",{key:0,"aria-label":l(d).deselectActionLabel,type:"button",onClick:m(e=>We(t),["stop"])},[H(Qt,{name:"close"})],8,Cl)):M("v-if",!0)]),_:2},1032,["modifiers"]))),128)):(c(),v("div",Ol,S(l(Ge)),1))]):b(e.$slots,"placeholder",{key:1},()=>[h(S(e.placeholder),1)])],16,Ll),l(Ee)?(c(),O(Qt,C({key:1},l(Ee),{class:"vv-select__icon vv-select__icon-after"}),null,16)):M("v-if",!0)]),l(Ve)&&l(d).showClearAction?(c(),O(l(Za),{key:1,"input-type":"select",label:e.labelClear,icon:e.iconClear,disabled:!l(we),onClear:Ke},null,8,["label","icon","disabled"])):M("v-if",!0),e.$slots.after?(c(),v("div",El,[b(e.$slots,"after",y(g(l(Xe))))])):M("v-if",!0)]),items:B(()=>[!l(ie)&&l(je)?.length?(c(!0),v(A,{key:0},L(l(je),(t,a)=>(c(),v(A,{key:a},[Q(t)?(c(),v(A,{key:0},[H(il,{label:l(Te)(t)},{default:B(()=>[b(e.$slots,"option-group",C({ref_for:!0},{option:t,selectedOptions:l(Ue)}),()=>[h(S(l(Te)(t)),1)])]),_:2},1032,["label"]),(c(!0),v(A,null,L(l(Ne)(t),(t,a)=>(c(),O(sl,C({ref_for:!0},{selected:Fe(t),disabled:Re(t),unselectable:l(Ve),deselectHintLabel:l(d).deselectHintLabel,selectHintLabel:l(d).selectHintLabel,selectedHintLabel:l(d).selectedHintLabel,focusOnHover:e.focusOnHover},{key:a,class:"vv-dropdown-option",onClickPassive:e=>We(t)}),{default:B(()=>[b(e.$slots,"option",C({ref_for:!0},{option:t,selectedOptions:l(Ue),selected:Fe(t),disabled:Re(t)}),()=>[h(S(l(Te)(t)),1)])]),_:2},1040,["onClickPassive"]))),128))],64)):(c(),O(sl,C({key:1,ref_for:!0},{selected:Fe(t),disabled:Re(t),unselectable:l(Ve),deselectHintLabel:l(d).deselectHintLabel,selectHintLabel:l(d).selectHintLabel,selectedHintLabel:l(d).selectedHintLabel,focusOnHover:e.focusOnHover},{class:"vv-dropdown-option",onClickPassive:e=>We(t)}),{default:B(()=>[b(e.$slots,"option",C({ref_for:!0},{option:t,selectedOptions:l(Ue),selected:Fe(t),disabled:Re(t)}),()=>[h(S(l(Te)(t)),1)])]),_:2},1040,["onClickPassive"]))],64))),128)):e.options.length?(c(),O(sl,{key:2,modifiers:"inert"},{default:B(()=>[b(e.$slots,"no-results",{},()=>[h(S(l(d).addable?l(d).addOptionHintLabel:l(d).noResultsLabel),1)])]),_:3})):(c(),O(sl,{key:1,modifiers:"inert"},{default:B(()=>[b(e.$slots,"no-options",{},()=>[h(S(l(d).addable&&R.value.length?l(d).addOptionHintLabel:l(d).noOptionsLabel),1)])]),_:3}))]),after:B(()=>[b(e.$slots,"dropdown::after",{},()=>[l(x)?.customPosition?(c(),O(Oa,{key:0,label:l(d).closeLabel,modifiers:"secondary",onClick:t[1]||(t[1]=e=>l(x).hide())},null,8,["label"])):M("v-if",!0)])]),_:2},[l(d).searchable||e.$slots["dropdown::before"]?{name:"before",fn:B(()=>[b(e.$slots,"dropdown::before"),l(d).searchable&&!l(ie)?U((c(),v("input",{key:0,id:l(ge),ref_key:"inputSearchEl",ref:$,"onUpdate:modelValue":t[0]||(t[0]=e=>R.value=e),"aria-autocomplete":"list","aria-controls":l(ye),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:l(d).searchPlaceholder,onKeyup:X(Ze,["enter"])},null,40,xl)),[[Z,R.value]]):M("v-if",!0)]),key:"0"}:void 0]),1040,["modelValue","role"])],512),H(l(V),{id:l(be),class:"vv-select__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(D))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(D))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(D))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(D))))]),key:"3"}:void 0]),1032,["id"])],10,$l))}}),Il={...bt,...xt,title:String,modelValue:{type:Boolean,default:void 0},transition:{type:String,default:"fade-block"},size:String,keepOpen:{type:Boolean,default:!1},labelClose:{type:String,default:"Close"}},Tl={key:0,class:"vv-dialog__header"},Dl=["aria-label","title"],Nl={class:"vv-dialog__content"},Ml={key:1,class:"vv-dialog__footer"},Hl=/* @__PURE__ */o({name:"VvDialog",props:Il,emits:["open","close","update:modelValue","beforeEnter","afterLeave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{expose:a,emit:o}){const i=e,n=o,u=s(),d=ee(i,"modelValue",n),p=s(!1),y=t({get:()=>d.value??p.value,set:e=>{void 0!==d.value?d.value=e:p.value=e}}),g=s(null),{modifiers:k}=r(i),_=Ht("vv-dialog",k,t(()=>i.size?{[i.size]:!!i.size}:{})),$=t(()=>{const{id:e}=i;return{id:e}}),w=t(()=>`vv-dialog--${i.transition}`),x={"before-enter":()=>{u.value?.open||u.value?.showModal(),n("open"),n("beforeEnter")},"after-leave":()=>{u.value?.open&&u.value?.close(),n("close"),n("afterLeave")},enter:()=>{n("enter")},"after-enter":()=>{n("afterEnter")},"enter-cancelled":()=>{n("enterCancelled")},"before-leave":()=>{n("beforeLeave")},leave:()=>{n("leave")},"leave-cancelled":()=>{n("leaveCancelled")}};function V(){y.value=!1}function A(){i.keepOpen||V()}return le(g,()=>{i.keepOpen||V()}),a({close:V,open:function(){y.value=!0}}),(e,t)=>(c(),O(q,C({name:l(w)},R(x),{persisted:""}),{default:B(()=>[U(f("dialog",C(l($),{ref_key:"dialogEl",ref:u,class:l(_),onCancel:m(A,["stop","prevent"])}),[f("article",{ref_key:"modalWrapper",ref:g,class:"vv-dialog__wrapper"},[e.$slots.header||e.title?(c(),v("header",Tl,[b(e.$slots,"header",{},()=>[h(S(e.title)+" ",1),f("button",{type:"button","aria-label":e.labelClose,title:e.labelClose,class:"vv-dialog__close",onClickPassive:V},null,40,Dl)])])):M("v-if",!0),f("div",Nl,[b(e.$slots,"default")]),e.$slots.footer?(c(),v("footer",Ml,[b(e.$slots,"footer")])):M("v-if",!0)],512)],16),[[W,l(y)]])]),_:3},16,["name"]))}}),Pl=/* @__PURE__ */o({__name:"VvDropdownAction",props:{...It,...bt},setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-dropdown-action",a);return(e,t)=>(c(),O(nl,null,{default:B(()=>[H(Kt,C({disabled:e.disabled,pressed:e.pressed,active:e.active,type:e.type,to:e.to,href:e.href,target:e.target,rel:e.rel},{class:l(o)}),{default:B(()=>[b(e.$slots,"default",{},()=>[h(S(e.label),1)])]),_:3},16,["class"])]),_:3}))}}),Rl={...At,...bt,...ot,...it,...yt,...ft,...nt,...mt,...rt,...st,...kt,modelValue:{type:Object},progress:{type:[Number,String],default:void 0},placeholder:{type:String,default:void 0},accept:{type:String,default:"*"},multiple:{type:Boolean,default:!1},capture:{type:String,default:void 0,validation:e=>void 0===e||["user","environment"].includes(e)},max:{type:[Number,String],default:void 0},dropArea:{type:Boolean,default:!1},sortable:{type:Boolean,default:!1},labelAdd:{type:String,default:"Add file"},iconAdd:{type:[String,Object],default:Be},labelReplace:{type:String,default:"Replace file"},iconReplace:{type:[String,Object],default:Te},labelDownload:{type:String,default:"Downlaod file"},iconDownload:{type:[String,Object],default:De},labelRemove:{type:String,default:"Remove file"}};const jl=["for"],Fl={class:"vv-input-file__preview"},Ul=["src","alt"],Gl={class:"vv-input-file__wrapper"},ql=["id","readonly","disabled","required","placeholder","aria-describedby","aria-invalid","aria-errormessage","multiple","accept","capture","name"],zl=["value"],Wl=["onClick"],Kl=["title","onClick"],Yl={class:"vv-input-file__item-name"},Jl={class:"vv-input-file__item-info"},Xl=["title","disabled","onClick"],Zl=/* @__PURE__ */o({name:"VvInputFile",props:Rl,emits:["remove","download","update:modelValue"],setup(e,{emit:a}){const o=e,i=a,n=j(),h=ja("VvInputFile",Rl,o),{modifiers:k,id:_,readonly:$,disabled:w,icon:x,iconPosition:V,iconDownload:A}=r(o),L=Yt(_),I=t(()=>`${L.value}-hint`),T=t(()=>{if(!o.progress)return!1;const e="string"==typeof o.progress?Number.parseInt(o.progress):o.progress;return e>0&&e<100}),{hasIconBefore:D,hasIconAfter:N}=Jt(x,V),{hasIcon:P}=Jt(A),R=Ht("vv-input-file",k,t(()=>({valid:!0===o.valid,invalid:!0===o.invalid,loading:o.loading&&!T.value,disabled:o.disabled,required:o.required,readonly:o.readonly,dragging:Z.value,"icon-before":!!D.value,"icon-after":!!N.value,"drop-area":J.value}))),{HintSlot:F,hasHintLabelOrSlot:U,hasInvalidLabelOrSlot:G,hintSlotScope:q}=Ra(h,n),z=ee(o,"modelValue",i),W=t({get:()=>z.value&&(Array.isArray(z.value)||z.value?.name)?Array.isArray(z.value)?z.value:[z.value]:[],set:e=>{X.value?z.value=e:z.value=e?.[0]}}),K=t(()=>o.disabled||o.readonly),Y=t(()=>"string"==typeof o.max?Number.parseInt(o.max):o.max),J=t(()=>o.dropArea&&!K.value),X=t(()=>!!o.multiple&&(!Y.value||Y.value-W.value.length>1)),Z=s(!1),Q=s();function te(){Z.value=!0}function ae(){Z.value=!1}function le(e){e.dataTransfer?.files&&(Z.value=!1,ie(e.dataTransfer?.files))}function oe(){Q.value?.files&&(ie(Q.value.files),Q.value.value="")}function ie(e){const t=function(e,t){if(!t||""===t.trim()||"*"===t)return Array.from(e);const{mimeTypes:a,extensions:l,wildcards:o}=function(e){const t=[],a=[],l=[],o=e?.split(",").map(e=>e.trim().toLowerCase());return o?.length&&o.forEach(e=>{e.startsWith(".")?a.push(e):e.includes("/*")?l.push(e.replace("/*","")):t.push(e)}),{mimeTypes:t,extensions:a,wildcards:l}}(t);return Array.from(e).filter(e=>{const t=e.type.toLowerCase(),i=`.${e.name.split(".").pop()?.toLowerCase()}`,n=a.includes(t),r=o.some(e=>t.startsWith(`${e}/`)),s=l.some(e=>i===e.toLowerCase());return n||r||s})}(e,o.accept);if(!o.multiple)return Array.isArray(z.value)?void(z.value=t):void(z.value=t[0]);let a=[];a=!Array.isArray(z.value)&&z.value?[z.value]:z.value&&Array.isArray(z.value)?[...z.value]:a;for(const l of t){if(Y.value&&a.length>=Y.value)break;a.push(l)}z.value=a,re.value=a.length-1}function ne(){Q.value&&(K.value||Q.value.click())}const re=s(0),se=["image/jpeg","image/png"],ue=t(()=>{if(0===W.value.length)return;if(!W.value[re.value])return;if(W.value[re.value]instanceof File){const e=W.value[re.value];if(!se.includes(e.type))return;return URL.createObjectURL(e)}const e=W.value[re.value];return e.thumbnailUrl?e.thumbnailUrl:se.includes(e.type)?e.url:void 0});function de(e,t){if(!e)return;if(0===e)return"0 Bytes";const a=Math.floor(Math.log(e)/Math.log(1024));return`${Number.parseFloat((e/1024**a).toFixed(2))} ${["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][a]}`}u(ue,(e,t)=>{t&&URL.revokeObjectURL(t)}),d(()=>{ue.value&&URL.revokeObjectURL(ue.value)});const ve=t(()=>0===W.value.length||X.value?o.labelAdd:o.labelReplace),ce=t(()=>0===W.value.length||X.value?o.iconAdd:o.iconReplace);function pe({newIndex:e}){null!==e&&(re.value=e)}return(e,t)=>(c(),v("div",{class:p(l(R))},[e.label?(c(),v("label",{key:0,for:l(L)},S(e.label),9,jl)):M("v-if",!0),J.value?(c(),v("div",{key:1,class:"vv-input-file__drop-area",onDragenter:m(te,["prevent","stop"]),onDragleave:m(ae,["prevent","stop"]),onDrop:m(le,["prevent","stop"]),onDragover:t[0]||(t[0]=m(()=>{},["prevent","stop"])),onClick:m(ne,["stop"])},[b(e.$slots,"drop-area",{},()=>[f("picture",Fl,[ue.value?(c(),v("img",{key:0,src:ue.value,alt:W.value[re.value].name},null,8,Ul)):M("v-if",!0)]),l($)?M("v-if",!0):(c(),O(Oa,{key:0,modifiers:"action",label:ue.value?void 0:ve.value,title:ue.value?ve.value:void 0,disabled:l(w),class:p({"vv-input-file__drop-area-action":ue.value}),icon:ce.value,onClick:m(ne,["stop"])},null,8,["label","title","disabled","class","icon"]))])],32)):M("v-if",!0),f("div",Gl,[l(D)?(c(),O(Qt,y(C({key:0},l(D))),null,16)):M("v-if",!0),f("input",{id:l(L),ref_key:"inputEl",ref:Q,type:"file",readonly:l($),disabled:l(w),required:e.required,placeholder:e.placeholder,"aria-describedby":l(U)?I.value:void 0,"aria-invalid":e.invalid,"aria-errormessage":l(G)?I.value:void 0,multiple:X.value,accept:e.accept,capture:e.capture,name:e.name,onChange:oe},null,40,ql),T.value?(c(),v("progress",{key:1,class:"vv-input-file__progress",value:e.progress,max:"100"},S(e.progress)+"% ",9,zl)):M("v-if",!0),l(N)?(c(),O(Qt,y(C({key:2},l(N))),null,16)):M("v-if",!0)]),H(l(we),{modelValue:W.value,"onUpdate:modelValue":t[1]||(t[1]=e=>W.value=e),tag:"ul",class:"vv-input-file__list","item-key":"name",move:()=>e.sortable,onEnd:pe},{item:B(({element:t,index:a})=>[f("li",{class:p(["vv-input-file__item",{active:a===re.value&&J.value&&W.value.length>1,"cursor-move":e.sortable}]),onClick:m(e=>function(e){re.value=e}(a),["stop"])},[l(P)?(c(),v("button",{key:0,type:"button",class:"vv-input-file__item-action",title:e.labelDownload,onClick:m(e=>function(e){i("download",e);const t=e instanceof File?URL.createObjectURL(e):e.url;if(!t)return;const a=document.createElement("a");a.href=t,a.setAttribute("download",e.name),document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(a.href)}(t),["stop"])},[H(Qt,y(g(l(P))),null,16)],8,Kl)):M("v-if",!0),f("div",Yl,S(t.name),1),f("small",Jl,S(de(t.size)),1),l($)?M("v-if",!0):(c(),v("button",{key:1,type:"button",class:"vv-input-file__item-remove",title:e.labelRemove,disabled:l(w),onClick:m(e=>function(e){const t=Array.isArray(z.value)?z.value[e]:z.value;if(!t)return;if(i("remove",t),!Array.isArray(z.value))return void(z.value=void 0);re.value===e&&(re.value=0);const a=[...z.value];a.splice(e,1),z.value=a}(a),["stop"])},null,8,Xl))],10,Wl)]),_:1},8,["modelValue","move"]),H(l(F),{id:I.value,class:"vv-input-file__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(q))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(q))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(q))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(q))))]),key:"3"}:void 0]),1032,["id"])],2))}}),Ql=e=>e.toString().padStart(2,"0");function eo(e){if("string"!=typeof e)return!1;if(!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?(?:Z|[+-]\d{2}:?\d{2})?$/.test(e))return!1;const t=new Date(e);return!Number.isNaN(t.getTime())&&t.toISOString()===e}function to(e,t="date",a){if("string"==typeof e&&!eo(e))return"";const l=new Date(e);if(Number.isNaN(l.getTime()))return"";let o=`${l.getFullYear()}-${Ql(l.getMonth()+1)}`;if("month"===t)return o;if(o+=`-${Ql(l.getDate())}`,"date"===t)return o;const i=a?`${Ql(l.getHours())}:${Ql(l.getMinutes())}:${Ql(l.getSeconds())}`:`${Ql(l.getHours())}:${Ql(l.getMinutes())}`;return"time"===t?i:`${o}T${i}`}const ao={TEXT:"text",PASSWORD:"password",NUMBER:"number",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",DATE:"date",TIME:"time",DATETIME_LOCAL:"datetime-local",MONTH:"month",WEEK:"week"},lo={...Ct,...Dt,modelValue:[String,Number,Date],type:{type:String,default:ao.TEXT,validator:e=>Object.values(ao).includes(e)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:[String,Object],default:Ve},iconHidePassword:{type:[String,Object],default:Ae},iconClear:{type:[String,Object],default:Ee},iconRemoveSuggestion:{type:[String,Object],default:Ie},labelStepUp:{type:String,default:"Increase value"},labelStepDown:{type:String,default:"Decrease value"},labelShowPassword:{type:String,default:"Show password"},labelHidePassword:{type:String,default:"Hide password"},labelClear:{type:String,default:"Clear"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},iMask:{type:Object,default:void 0},masked:{type:String,default:void 0},autoWidth:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},unit:{type:String},selectOnFocus:{type:Boolean,default:!1},maxSuggestions:{type:Number,default:5},inputMode:{type:String,default:"text"}},oo=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:[String,Object],default:Ve},iconHide:{type:[String,Object],default:Ae}},emits:["toggle-password"],setup(e,{emit:a}){const l=s(!1),o=t(()=>l.value?e.iconHide:e.iconShow),{hasIcon:i}=Jt(o);return{active:l,activeIcon:o,hasIcon:i,onClick:function(t){t?.stopPropagation(),e.disabled||(l.value=!l.value,a("toggle-password",l.value))}}},render(){const e=this.hasIcon?F(Qt,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return F("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},e)}}),io=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:e=>["up","down"].includes(e),default:"up"}},emits:["step-up","step-down"],setup(e,{emit:a}){const l=t(()=>"up"===e.mode);return{isUp:l,onClick:t=>{t?.stopPropagation(),e.disabled||a(l.value?"step-up":"step-down")}}},render(){return F("button",{class:[`vv-${this.inputType}__action`,`vv-${this.inputType}__action-chevron`,this.isUp?`vv-${this.inputType}__action-chevron-up`:void 0],disabled:this.disabled,ariaLabel:this.label,type:"button",onClick:this.onClick})}});function no(e,a,l){return{name:"VvInputTextActions",components:{VvIcon:Qt,VvInputPasswordAction:oo,VvInputStepAction:io,VvInputClearAction:Za},setup(){const e=t(()=>a.disabled||a.readonly);return{isDirty:l,isDisabled:e,labelStepUp:a.labelStepUp,labelStepDown:a.labelStepDown,labelShowPassword:a.labelShowPassword,labelHidePassword:a.labelHidePassword,labelClear:a.labelClear,iconShowPassword:a.iconShowPassword,iconHidePassword:a.iconHidePassword}},render(){let t=null;switch(e){case ao.SEARCH:{const{onClear:e}=this.$attrs;t=[F(Za,{disabled:this.isDisabled||!this.isDirty,label:this.labelClear,onClear:e})];break}case ao.PASSWORD:{const{onTogglePassword:e}=this.$attrs;t=[F(oo,{disabled:this.isDisabled,onTogglePassword:e,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case ao.NUMBER:{const{onStepUp:e,onStepDown:l}=this.$attrs;t=[F(io,{mode:"up",disabled:this.isDisabled||void 0!==a.max&&a.modelValue===a.max,label:this.labelStepUp,onStepUp:e,onStepDown:l}),F(io,{mode:"down",disabled:this.isDisabled||void 0!==a.min&&a.modelValue===a.min,label:this.labelStepDown,onStepUp:e,onStepDown:l})];break}}return Array.isArray(t)?F("div",{class:"vv-input-text__actions-group"},t):t}}}function ro(e,a,l=0,{getter:o=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof l&&(l=Number.parseInt(l)),t({get:()=>o(e?.value),set:e=>{n&&clearTimeout(n),n=setTimeout(()=>{a("update:modelValue",i(e))},l)}})}function so(e,a){const o=t(()=>(l(e)??"").length),i=t(()=>void 0!==a?.lowerLimit&&o.value<a?.lowerLimit?o.value-a.lowerLimit:void 0!==a?.upperLimit&&o.value<a?.upperLimit?a.upperLimit-o.value:0),n=t(()=>{if(!1===a?.mode)return"";if("limit"===a?.mode&&a?.upperLimit)return`${o.value} / ${a.lowerLimit?`${a.lowerLimit}-`:""}${a.upperLimit}`;if("countdown"===a?.mode){if(0===i.value)return;return i}return o.value});return{length:o,gap:i,formatted:n}}const uo=["for"],vo={key:0,class:"vv-input-text__input-before"},co=["id"],po={key:1,class:"vv-input-text__unit"},fo={key:5,class:"vv-input-text__input-after"},mo={key:6,class:"vv-input-text__limit"},bo={class:"flex-1"},yo=["title","onClick"],go=/* @__PURE__ */o({name:"VvInputText",props:lo,emits:["update:modelValue","update:masked","accept","accept:typed","accept:masked","accept:unmasked","complete","complete:typed","complete:masked","complete:unmasked","suggestion:selected","suggestion:removed","focus","blur","keyup","keydown","keypress","clear"],setup(e,{expose:a,emit:o}){const i=e,n=o,d=j(),_=Wt(),$=ja("VvInputText",lo,i),{count:w,debounce:x,icon:V,iconPosition:I,iconRemoveSuggestion:T,id:D,invalid:N,label:P,loading:R,maxlength:F,minlength:U,modelValue:G,step:q,storageType:z,type:W,valid:K}=r(i),Y=Yt(D),J=t(()=>`${Y.value}-hint`),X=t(()=>i.floating&&Va(i.placeholder)?" ":i.placeholder),Z=ro(G,n,x?.value??0),Q=t(()=>{const e="number"==typeof q.value?q.value:Number.parseInt(q.value);return!Number.isNaN(e)&&e%60!=0}),ee=/^-0?[.,]?[0*]?$/,te=s(!1),ae=s(),le=s(),{el:oe,mask:ie,typed:ne,masked:re,unmasked:ue}=xe(t(()=>{if(!i.iMask)return{mask:/./};if(i.iMask.mask===Number){const e={...i.iMask};return i.min&&(e.min=Number(i.min)),i.max&&(e.max=Number(i.max)),e}return i.iMask}),{emit:n,onAccept:()=>{if(te.value){if(n("update:masked",re.value),W.value===ao.NUMBER){if(/^-$|^$/.test(ue.value)){if(null===Z.value||void 0===Z.value)return;return void(Z.value=void 0)}return ee.test(ue.value)?void(Z.value=0):"number"!=typeof ne.value?void(Z.value=Number(ne.value)):void(Z.value=ne.value)}if(W.value===ao.DATETIME_LOCAL||W.value===ao.DATE||W.value===ao.TIME||W.value===ao.MONTH){if(!ne.value){if(!Z.value)return;return ae.value?void(Z.value=void 0):void(Z.value="")}if(!(ne.value instanceof Date||ae.value||le.value))return void(Z.value=ne.value);let e=ne.value;if(e instanceof Date||(e=function(e,t="date"){if(!e?.trim())return null;const a=/* @__PURE__ */new Date,l=a.getFullYear(),o=a.getMonth(),i=a.getDate();if("date"===t){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected: YYYY-MM-DD");/* @__PURE__ */
|
|
1
|
+
import{inject as e,computed as t,toRef as a,unref as l,defineComponent as o,useAttrs as i,useId as n,toRefs as r,ref as s,watch as u,onBeforeUnmount as d,createElementBlock as v,openBlock as c,normalizeClass as p,createElementVNode as f,withModifiers as m,renderSlot as b,normalizeProps as y,guardReactiveProps as g,createTextVNode as h,toDisplayString as S,onMounted as k,isRef as $,provide as _,watchEffect as w,reactive as x,nextTick as V,Fragment as A,renderList as L,createBlock as O,mergeProps as C,createSlots as E,withCtx as B,getCurrentInstance as I,resolveComponent as D,resolveDynamicComponent as T,mergeDefaults as N,createCommentVNode as M,createVNode as H,TransitionGroup as P,toHandlers as R,useSlots as j,h as F,withDirectives as U,vModelCheckbox as G,Transition as q,normalizeStyle as z,vShow as W,vModelSelect as K,mergeModels as Y,useModel as J,withKeys as X,vModelText as Z,vModelRadio as Q}from"vue";import{useVModel as ee,useStorage as te,useMutationObserver as ae,onClickOutside as le,useFocusWithin as oe,useElementHover as ie,onKeyStroke as ne,useFocus as re,useElementVisibility as se,refDebounced as ue,computedAsync as de}from"@vueuse/core";import ve from"mitt";import{iconLoaded as ce,Icon as pe,addIcon as fe}from"@iconify/vue";import{getProperty as me}from"dot-prop";import{autoPlacement as be,flip as ye,shift as ge,size as he,offset as Se,arrow as ke,useFloating as $e,autoUpdate as _e}from"@floating-ui/vue";import we from"vuedraggable";import{useIMask as xe}from"vue-imask";const Ve="eye-on",Ae="eye-off",Le="calendar",Oe="time",Ce="color",Ee="close",Be="add",Ie="trash",De="edit",Te="download",Ne={prefix:"normal"};var Me=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(Me||{}),He=/* @__PURE__ */(e=>(e.absolute="absolute",e.fixed="fixed",e))(He||{}),Pe=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(Pe||{}),Re=/* @__PURE__ */(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(Re||{}),je=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(je||{}),Fe=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(Fe||{}),Ue=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(Ue||{}),Ge=/* @__PURE__ */(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(Ge||{}),qe=/* @__PURE__ */(e=>(e.listbox="listbox",e.menu="menu",e))(qe||{}),ze=/* @__PURE__ */(e=>(e.option="option",e.presentation="presentation",e))(ze||{}),We=/* @__PURE__ */(e=>(e.alert="alert",e.alertdialog="alertdialog",e))(We||{});const Ke=/* @__PURE__ */Symbol.for("volver"),Ye=/* @__PURE__ */Symbol.for("buttonGroup"),Je=/* @__PURE__ */Symbol.for("radioGroup"),Xe=/* @__PURE__ */Symbol.for("checkGroup"),Ze=/* @__PURE__ */Symbol.for("accordionGroup"),Qe=/* @__PURE__ */Symbol.for("dropdownTrigger"),et=/* @__PURE__ */Symbol.for("dropdownItem"),tt=/* @__PURE__ */Symbol.for("dropdownAction"),at=/* @__PURE__ */Symbol.for("alertGroup"),lt={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},ot={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},it={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},nt={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},rt={disabled:{type:Boolean,default:!1}},st={required:{type:Boolean,default:!1}},ut={selected:{type:Boolean,default:!1}},dt={active:{type:Boolean,default:!1}},vt={current:{type:Boolean,default:!1}},ct={showClearAction:{type:Boolean,default:!1},iconClear:{type:[String,Object],default:Ee},labelClear:{type:String,default:"Clear"}},pt={pressed:{type:Boolean,default:!1}},ft={label:{type:[String,Number],default:void 0}},mt={readonly:{type:Boolean,default:!1}},bt={modifiers:{type:[String,Array],default:void 0}},yt={hintLabel:{type:String,default:""}},gt={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},ht={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},St={debounce:{type:[Number,String],default:void 0}},kt={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:je.before,validation:e=>Object.values(je).includes(e)}},$t={tabindex:{type:[String,Number],default:0}},_t={floating:{type:Boolean,default:!1}},wt={unselectable:{type:Boolean,default:!0}},xt={id:[String,Number]},Vt={placement:{type:String,default:Pe.bottom,validator:e=>Object.values(Pe).includes(e)||Object.values(Re).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(He).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},At={...xt,name:{type:String,required:!0}},Lt={autofocus:{type:Boolean,default:!1}},Ot={autocomplete:{type:String,default:"off"}},Ct={...At,...Lt,...Ot,...$t,...rt,...mt,...ot,...it,...yt,...nt,...bt,...ht,...St,...kt,..._t,...ft,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...st},Et={...At,...$t,...ot,...it,...yt,...rt,...mt,...bt,...ft,...nt,value:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[Object,Number,Boolean,String],default:void 0}},Bt={...ot,...it,...gt,...yt,...rt,...mt,...bt,...ft,...nt,...st,modelValue:{type:[String,Array,Boolean,Number,Symbol],default:void 0},name:{type:String,required:!0},vertical:{type:Boolean,default:!1}},It={...rt,...ft,...pt,...dt,...vt,...lt,type:{type:String,default:Fe.button,validator:e=>Object.values(Fe).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:Ue.button}},Dt={items:{type:Array,default:()=>[]}},Tt={storageType:{type:String,default:Me.local,validator:e=>Object.values(Me).includes(e)},storageKey:String};function Nt(l){const o=e(l,void 0),i=t(()=>void 0!==o);return{group:o,isInGroup:i,getGroupOrLocalRef:function(e,l,i){const n=o?.[e];if(n)return t({get:()=>n.value,set(e){n.value=e}});const r=a(l,e);return t({get:()=>r.value,set(t){i&&i(`update:${e}`,t)}})}}}const Mt={...bt,name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},disabled:Boolean,not:Boolean};function Ht(e,a,o){return t(()=>{const t={[e]:!0},i="string"==typeof a?.value?a.value.split(" "):a?.value;return i&&Array.isArray(i)&&i.forEach(a=>{a&&(t[`${e}--${a}`]=!0)}),o&&Object.keys(o.value).forEach(a=>{t[`${e}--${a}`]=l(o.value[a])}),t})}const Pt=["id","open"],Rt=["aria-controls","aria-expanded"],jt=["aria-hidden"],Ft=/* @__PURE__ */o({name:"VvAccordion",props:Mt,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const k=e,$=o,_=i(),w=ee(k,"modelValue",$),x=t(()=>k.name||_?.id||n()),{title:V,content:A,not:L}=r(k),{isInGroup:O,modifiers:C,disabled:E,bus:B}=function(e){const{group:a,isInGroup:l}=Nt(Ze),o=t(()=>Boolean(e.disabled||a?.disabled.value)),i=t(()=>{let t=e.modifiers,l=a?.modifiers.value;const o=/* @__PURE__ */new Set;return t&&(Array.isArray(t)||(t=t.split(" ")),t.forEach(e=>o.add(e))),l&&(Array.isArray(l)||(l=l.split(" ")),l.forEach(e=>o.add(e))),Array.from(o)});return{isInGroup:l,group:a,modifiers:i,disabled:o,bus:a?.bus}}(k),I=s(!1);function D(){E.value||(O.value?B?.emit("toggle",{name:x.value,value:!I.value}):I.value=!I.value)}function T(){I.value||D()}function N(){I.value&&D()}function M(e){B?B.emit("expand",{name:e}):console.warn(`[VvAccordion]: You are trying to expand accordion group of "${x.value}" but it is not in a group`)}function H(e){B?B?.emit("collapse",{name:e}):console.warn(`[VvAccordion]: You are trying to collapse accordion group of "${x.value}" but it is not in a group`)}u(w,e=>{"boolean"==typeof e&&(I.value=L.value?!e:e)},{immediate:!0}),u(I,e=>{w.value=L.value?!e:e}),B?.on("toggle",({name:e,value:t})=>{e===x.value&&(I.value=t)}),u(x,(e,t)=>{B&&(t&&t!==e&&B.emit("unregister",{name:t}),B.emit("register",{name:e}))},{immediate:!0}),d(()=>{B&&B.emit("unregister",{name:x.value})}),a({isExpanded:I,expand:T,collapse:N,groupExpand:M,groupCollapse:H});const P=Ht("vv-accordion",C,t(()=>({disabled:E.value})));return(e,t)=>(c(),v("details",{id:l(x),class:p(l(P)),open:l(I)},[f("summary",{"aria-controls":l(x),"aria-expanded":l(I),class:"vv-accordion__summary",onClick:t[0]||(t[0]=m(e=>D(),["prevent"]))},[b(e.$slots,"summary",y(g({isExpanded:l(I),expand:T,collapse:N,groupExpand:M,groupCollapse:H})),()=>[h(S(l(V)),1)])],8,Rt),f("div",{"aria-hidden":!l(I),class:"vv-accordion__content"},[b(e.$slots,"default",y(g({isExpanded:l(I),expand:T,collapse:N,groupExpand:M,groupCollapse:H})),()=>[h(S(l(A)),1)])],8,jt)],10,Pt))}}),Ut={...bt,...Tt,modelValue:{type:[String,Array],default:void 0},items:{type:Array,default:()=>[]},collapse:Boolean,itemModifiers:{type:[String,Array],default:""},disabled:Boolean,not:Boolean};function Gt(e,t=Me.local,a){const o=s();let i;return a&&(o.value=a),k(()=>{e&&u(e,(e,a)=>{const n=l(t)===Me.session?sessionStorage:localStorage;if(a&&a!==e&&n.removeItem(a),e)return i=te(e,i?.value??o.value,n),void(i.value&&(o.value=i.value));i=void 0},{immediate:!0}),$(t)&&u(t,(t,a)=>{if(e?.value){if(t){const a=t===Me.session?sessionStorage:localStorage;i=te(e.value,i?.value??o.value,a)}if(a&&a!==t){(a===Me.session?sessionStorage:localStorage).removeItem(e.value)}}})}),u(o,e=>{i&&(i.value=e)},{deep:!0,immediate:!0}),o}function qt(e,t){_(e,t)}const zt=/* @__PURE__ */o({name:"VvAccordionGroup",props:Ut,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const i=e,n=o,{disabled:s,modifiers:u,itemModifiers:d,items:f,storageKey:m,storageType:h}=r(i);w(()=>{"string"==typeof i.modelValue&&i.collapse&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const S=x(/* @__PURE__ */new Set),$=Gt(m,h,[]),_=t({get:()=>null!==i.modelValue&&void 0!==i.modelValue?i.modelValue:$.value,set:e=>{n("update:modelValue",e),$.value=e}}),I=t({get:()=>{if(void 0===_.value)/* @__PURE__ */
|
|
2
|
+
return new Set;let e=/* @__PURE__ */new Set;return i.not?"string"==typeof _.value?e=new Set([...S].filter(e=>e!==_.value)):Array.isArray(_.value)&&(e=new Set([...S].filter(e=>!_.value.includes(e)))):"string"==typeof _.value?e=/* @__PURE__ */new Set([_.value]):Array.isArray(_.value)&&(e=new Set(_.value)),e},set:e=>{i.not?_.value=[...S].filter(t=>!e.has(t)):i.collapse?_.value=[...e]:_.value=e.values().next().value}});k(()=>{i.not&&void 0===_.value&&(_.value=i.collapse?[]:[...S.values()].splice(1,S.size)),V(()=>{for(const e of S)D.emit("toggle",{name:e,value:I.value.has(e)})})});const D=ve();function T(e){if("string"!=typeof e)if(Array.isArray(e))for(const t of e)D.emit("toggle",{name:t,value:!0});else for(const t of S)D.emit("toggle",{name:t,value:!0});else D.emit("toggle",{name:e,value:!0})}function N(e){if("string"!=typeof e)if(Array.isArray(e))for(const t of e)D.emit("toggle",{name:t,value:!1});else for(const t of S)D.emit("toggle",{name:t,value:!1});else D.emit("toggle",{name:e,value:!1})}qt(Ze,{disabled:s,modifiers:d,bus:D}),D.on("register",({name:e})=>{S.add(e)}),D.on("unregister",({name:e})=>{S.delete(e)}),D.on("toggle",({name:e,value:t})=>{const a=new Set(I.value);if(t){if(!i.collapse){for(const t of a)t!==e&&D.emit("toggle",{name:t,value:!1});a.clear()}return a.add(e),void(I.value=a)}a.delete(e),I.value=a}),D.on("expand",({name:e})=>T(e)),D.on("collapse",({name:e})=>N(e)),a({expandedAccordions:I,expand:T,collapse:N});const M=Ht("vv-accordion-group",u,t(()=>({disabled:s.value})));return(e,t)=>(c(),v("div",{class:p(l(M))},[b(e.$slots,"default",y(g({expandedAccordions:l(I),expand:T,collapse:N})),()=>[(c(!0),v(A,null,L(l(f),t=>(c(),O(Ft,C({key:t.title},{ref_for:!0},{name:t.name,title:t.title,content:t.content}),E({_:2},[e.$slots[`summary::${t.name}`]?{name:"summary",fn:B(a=>[b(e.$slots,`summary::${t.name}`,C({ref_for:!0},a))]),key:"0"}:void 0,e.$slots[`content::${t.name}`]?{name:"default",fn:B(a=>[b(e.$slots,`content::${t.name}`,C({ref_for:!0},a))]),key:"1"}:void 0]),1040))),128))])],2))}});function Wt(){return e(Ke,void 0)}const Kt=/* @__PURE__ */o({name:"VvAction",props:It,emits:["click","mouseover","mouseleave"],setup(a,{expose:o,emit:i}){const n=a,r=i,d=I(),v=Wt(),p=s(null);o({$el:p});const{reference:f,bus:m,aria:y,expanded:g}=e(Qe,{});u(()=>p.value,e=>{f&&(f.value=e)});const k=t(()=>n.pressed||g?.value),{role:$}=e(tt,{}),_=t(()=>{switch(!0){case n.disabled:return Ue.button;case void 0!==n.to:return v?.nuxt?D(Ue.nuxtLink):Ue.routerLink;case void 0!==n.href:return Ue.a;default:return n.defaultTag}}),w=t(()=>{const e={...y?.value,ariaPressed:!!k.value||void 0,ariaLabel:n.ariaLabel,role:$?.value};switch(_.value){case Ue.a:return{...e,href:n.href,target:n.target,rel:n.rel};case Ue.routerLink:case Ue.nuxtLink:return{...e,to:n.to,target:n.target};case Ue.button:return{...e,type:n.type,disabled:n.disabled};default:return e}});function x(e){n.disabled?e.preventDefault():d?.vnode.props?.onClick?r("click",e):m?.emit("click",e)}function V(e){d?.vnode.props?.onMouseover?r("mouseover",e):m?.emit("mouseover",e)}function A(e){d?.vnode.props?.onMouseleave?r("mouseleave",e):m?.emit("mouseleave",e)}return(e,t)=>(c(),O(T(l(_)),C(l(w),{ref_key:"rootEl",ref:p,class:{active:e.active,pressed:l(k),disabled:e.disabled,current:e.current},onClickPassive:x,onMouseoverPassive:V,onMouseleavePassive:A}),{default:B(()=>[b(e.$slots,"default",{},()=>[h(S(e.label),1)])]),_:3},16,["class"]))}});function Yt(e){return t(()=>String(e?.value||n()))}function Jt(e,a){const l=t(()=>"string"==typeof e?.value?{name:e?.value}:e?.value),o=t(()=>a?.value===je.before?l.value:void 0),i=t(()=>a?.value===je.after?l.value:void 0),n=t(()=>a?.value===Pe.left?l.value:void 0),r=t(()=>a?.value===Pe.right?l.value:void 0),s=t(()=>a?.value===Pe.top?l.value:void 0),u=t(()=>a?.value===Pe.bottom?l.value:void 0);return{hasIcon:l,hasIconLeft:n,hasIconRight:r,hasIconTop:s,hasIconBottom:u,hasIconBefore:o,hasIconAfter:i}}const Xt={...xt,...kt,modifiers:{type:[String,Array],default:void 0},dismissable:{type:Boolean,default:!1},autoClose:{type:Number,default:0},closeLabel:{type:String,default:"Close"},title:{type:String,default:void 0},content:{type:String,default:void 0},footer:{type:String,default:void 0},role:{type:String,default:We.alert}};function Zt(a,l){const{bus:o}=e(at,{}),i=Yt(t(()=>a.id)),n=t(()=>`${i.value}-title`);let r;const d=()=>{r&&clearTimeout(r),l("close",i.value),o?.emit("close",i.value)};u(()=>a.autoClose,e=>{e>0?r=setTimeout(d,e):r&&clearTimeout(r)},{immediate:!0});const v=s(!1),c=()=>{v.value=!0,r&&clearTimeout(r)},p=()=>{v.value=!1,a.autoClose>0&&(r=setTimeout(d,a.autoClose))},{hasIcon:f}=Jt(t(()=>a.icon)),m=Ht("vv-alert",t(()=>a.modifiers),t(()=>({dismissable:a.autoClose>0||a.dismissable,"auto-close":a.autoClose>0,hover:v.value}))),b=t(()=>({"--alert-duration":`${a.autoClose}ms`}));return{close:d,hasIcon:f,hasTitleId:n,hasProps:t(()=>({onMouseover:c,onMouseleave:p,class:m.value,style:b.value,role:a.role,"aria-labelledby":n.value}))}}const Qt=/* @__PURE__ */o({name:"VvIcon",props:/* @__PURE__ */N({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},Ne),setup(e){const a=e,o=t(()=>"string"==typeof a.rotate?Number.parseFloat(a.rotate):a.rotate),i=s(!0),n=Wt(),{modifiers:u}=r(a),d=Ht("vv-icon",u),v=t(()=>a.provider||n?.iconsProvider),p=t(()=>{const e=a.name??"",t=`@${v.value}:${a.prefix}:${e}`;if(ce(t))return t;const l=n?.iconsCollections.find(t=>{const a=`@${v.value}:${t.prefix}:${e}`;return ce(a)});return l?`@${v.value}:${l.prefix}:${e}`:e});function f(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),l=t?.innerHTML.trim()||"";t&&l&&fe(`@${v.value}:${a.prefix}:${a.name}`,{body:l,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return n&&a.src&&!ce(`@${v.value}:${a.prefix}:${a.name}`)&&(i.value=!1,n.fetchIcon(a.src).then(e=>{e&&(f(e),i.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),a.svg&&f(a.svg),(t,a)=>l(i)?(c(),O(l(pe),C({key:0,class:l(d)},{inline:e.inline,width:e.width,height:e.height,horizontalFlip:e.horizontalFlip,verticalFlip:e.verticalFlip,flip:e.flip,rotate:l(o),color:e.color,icon:l(p)},{onLoad:e.onLoad}),null,16,["class","onLoad"])):M("v-if",!0)}}),ea={key:0,class:"vv-alert__header"},ta=["id"],aa=["aria-label"],la={key:1,class:"vv-alert__content"},oa={key:2,class:"vv-alert__footer"},ia=/* @__PURE__ */o({name:"VvAlert",props:Xt,emits:["close"],setup(e,{expose:t,emit:a}){const o=e,i=a,{hasProps:n,hasTitleId:r,hasIcon:s,close:u}=Zt(o,i);return t({close:u}),(e,t)=>(c(),v("div",y(g(l(n))),[e.$slots.header||e.$slots.title||e.$slots.close||e.$slots["title::before"]||e.$slots["title::after"]||e.title||l(s)||e.dismissable||e.autoClose?(c(),v("div",ea,[l(s)?(c(),O(Qt,C({key:0},l(s),{class:"vv-alert__icon"}),null,16)):M("v-if",!0),b(e.$slots,"header",{},()=>[b(e.$slots,"title::before"),e.$slots.title||e.title?(c(),v("strong",{key:0,id:l(r),class:"vv-alert__title"},[b(e.$slots,"title",{},()=>[h(S(e.title),1)])],8,ta)):M("v-if",!0),b(e.$slots,"title::after")]),b(e.$slots,"close",y(g({close:l(u)})),()=>[e.dismissable||e.autoClose?(c(),v("button",{key:0,class:"vv-alert__close",type:"button","aria-label":e.closeLabel,onClick:t[0]||(t[0]=m((...e)=>l(u)&&l(u)(...e),["stop"]))},[...t[1]||(t[1]=[f("div",{class:"vv-alert__close-mask"},null,-1)])],8,aa)):M("v-if",!0)])])):M("v-if",!0),e.$slots.default||e.content?(c(),v("div",la,[b(e.$slots,"default",{},()=>[h(S(e.content),1)])])):M("v-if",!0),e.$slots.footer||e.footer?(c(),v("div",oa,[b(e.$slots,"footer",{},()=>[h(S(e.footer),1)])])):M("v-if",!0)],16))}});const na={...bt,name:{type:String,required:!0},items:{type:Array,default:()=>[]},stack:{type:Boolean,default:!1},reverse:{type:Boolean,default:!1},inline:{type:String,default:void 0},block:{type:String,default:void 0},position:{type:String,default:void 0},transition:{type:String,default:void 0}};function ra(e,a){const l=function({name:e}){const t=ve();return _(at,{name:e,bus:t}),t}({name:t(()=>e.name)});(e.block&&!e.inline||!e.block&&e.inline)&&console.warn("[VvAlertGroup]: block and inline props must coexist at the same time.");const o=t(()=>{const a=[Ht("vv-alert-group",t(()=>e.modifiers),t(()=>({stack:e.stack,reverse:e.reverse,absolute:"absolute"===e.position,fixed:"fixed"===e.position}))).value];return e.inline&&e.block&&a.push(`vv-alert-group--${e.block}-${e.inline}`),a}),i=t(()=>e.transition?e.transition:e.position?"start"===e.inline?"vv-alert--fade-inline-start":"end"===e.inline?"vv-alert--fade-inline-end":"top"===e.block?"vv-alert--fade-block-top":"bottom"===e.block?"vv-alert--fade-block-bottom":"vv-alert--fade":"vv-alert--fade");return l.on("close",e=>{a("close",e)}),{hasTransition:i,hasProps:t(()=>({class:o.value}))}}const sa=/* @__PURE__ */o({name:"VvAlertGroup",props:na,emits:["close","beforeEnter","afterLeave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{emit:t}){const a=e,o=t,{hasProps:i,hasTransition:n}=ra(a,o),r={"before-enter":()=>{o("beforeEnter")},"after-leave":()=>{o("afterLeave")},enter:()=>{o("enter")},"after-enter":()=>{o("afterEnter")},"enter-cancelled":()=>{o("enterCancelled")},"before-leave":()=>{o("beforeLeave")},leave:()=>{o("leave")},"leave-cancelled":()=>{o("leaveCancelled")}};return(e,t)=>(c(),v("div",y(g(l(i))),[b(e.$slots,"before"),H(P,C({tag:"div",role:"group",name:l(n),class:"vv-alert-group__list"},R(r)),{default:B(()=>[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(e.items,e=>(c(),O(ia,C({ref_for:!0},e,{key:e.id}),null,16))),128))])]),_:3},16,["name"]),b(e.$slots,"after")],16))}}),ua={...bt,imgSrc:String},da=["role","aria-label"],va=["src"],ca=/* @__PURE__ */o({name:"VvAvatar",props:ua,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-avatar",a);return(e,t)=>(c(),v("span",{class:p(l(o)),role:e.imgSrc?void 0:"img","aria-label":e.imgSrc?void 0:"avatar"},[b(e.$slots,"default",{},()=>[e.imgSrc?(c(),v("img",{key:0,src:e.imgSrc,alt:"avatar"},null,8,va)):M("v-if",!0)])],10,da))}}),pa={...bt,items:{type:Array,default:()=>[],required:!0},toShow:{type:Number,default:3},totalItems:{type:Number},avatarModifiers:[String,Array]},fa={key:0},ma=/* @__PURE__ */o({name:"VvAvatarGroup",props:pa,setup(e){const a=e,{modifiers:o,items:i,toShow:n,totalItems:s,avatarModifiers:u}=r(a),d=Ht("vv-avatar-group",o),f=t(()=>u?.value&&Array.isArray(u?.value)?u.value.join(" "):u?.value||""),m=t(()=>i.value.slice(0,n.value).map(e=>{let t=[],a=[];return u?.value&&(t=Array.isArray(u?.value)?u?.value:[u?.value]),e.modifiers&&(a=Array.isArray(e.modifiers)?e.modifiers:[e.modifiers]),{...e,key:e.key||Yt().value,modifiers:[...t,...a]}}));return(e,t)=>(c(),v("span",{class:p(l(d))},[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(l(m),e=>(c(),O(ca,C({key:e.key},{ref_for:!0},{modifiers:e.modifiers,imgSrc:e.imgSrc}),{default:B(()=>[e.text?(c(),v("span",fa,S(e.text),1)):M("v-if",!0)]),_:2},1040))),128)),(l(s)||l(i).length)>l(n)?(c(),O(ca,{key:0,modifiers:`${l(f)} surface bordered`},{default:B(()=>[h(S("+"+((l(s)||l(i).length)-l(n))),1)]),_:1},8,["modifiers"])):M("v-if",!0)])],2))}}),ba={...bt,value:[String,Number]},ya=/* @__PURE__ */o({name:"VvBadge",props:ba,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-badge",a);return(e,t)=>(c(),v("span",{class:p(l(o))},[b(e.$slots,"default",{},()=>[h(S(e.value),1)])],2))}}),ga={...bt,routes:Array},ha={class:"vv-breadcrumb__list"},Sa=["content"],ka=/* @__PURE__ */o({name:"VvBreadcrumb",props:ga,setup(e){const a=e,{modifiers:o}=r(a),i=Ht("vv-breadcrumb",o),n=t(()=>a.routes?.length??0),s=e=>e===n.value-1;return(e,t)=>(c(),v("nav",{class:p(l(i)),"aria-label":"breadcrumbs"},[f("ol",ha,[(c(!0),v(A,null,L(e.routes,({label:t,...a},l)=>(c(),v("li",{key:`${t}-${l}`,class:p(s(l)?"vv-breadcrumb__item-active":"vv-breadcrumb__item"),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[H(Kt,C({ref_for:!0},a,{class:s(l)?"vv-breadcrumb__label":"vv-breadcrumb__link","aria-current":s(l)?"page":void 0,itemprop:"item","default-tag":"span"}),{default:B(()=>[b(e.$slots,"label",C({ref_for:!0},{...a,index:l,label:t,isLast:s(l)}),()=>[h(S(t),1)])]),_:2},1040,["class","aria-current"]),f("meta",{itemprop:"position",content:`${l+1}`},null,8,Sa)],2))),128))])],2))}}),$a={...It,...xt,...bt,...wt,...nt,...kt,iconPosition:{type:String,default:Pe.left,validator:e=>Object.values(Pe).includes(e)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};function _a(e,t,a){return wa(e,t)}function wa(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){const a=Array.isArray(e),l=Array.isArray(t);let o,i,n;if(a&&l){if(i=e.length,i!==t.length)return!1;for(o=i;0!==o--;)if(!wa(e[o],t[o]))return!1;return!0}if(a!==l)return!1;const r=e instanceof Date,s=t instanceof Date;if(r!==s)return!1;if(r&&s)return e.getTime()===t.getTime();const u=e instanceof RegExp,d=t instanceof RegExp;if(u!==d)return!1;if(u&&d)return e.toString()===t.toString();const v=Object.keys(e);if(i=v.length,i!==Object.keys(t).length)return!1;for(o=i;0!==o--;)if(!Object.prototype.hasOwnProperty.call(t,v[o]))return!1;for(o=i;0!==o--;)if(n=v[o],!wa(e[n],t[n]))return!1;return!0}return Number.isNaN(e)&&Number.isNaN(t)}function xa(e,t){if(null!=e&&t&&t.length)for(const a of t)if(_a(e,a))return!0;return!1}function Va(e){return null==(t=l(e))||""===t||Array.isArray(t)&&0===t.length||!(t instanceof Date)&&"object"==typeof t&&0===Object.keys(t).length;var t}const Aa={key:1,class:"vv-button__label"},La={key:1,class:"vv-button__label"},Oa=/* @__PURE__ */o({name:"VvButton",inheritAttrs:!1,props:$a,emits:["update:modelValue"],setup(e,{expose:a,emit:o}){const n=e,u=o,d=i(),p=j(),{id:f,modifiers:m,iconPosition:y,icon:g,label:k,modelValue:$,disabled:_,toggle:w,unselectable:x}=function(e,a){const{group:l,isInGroup:o,getGroupOrLocalRef:i}=Nt(Ye),{id:n,iconPosition:s,icon:u,label:d,pressed:v}=r(e),c=i("modelValue",e,a),p=i("toggle",e),f=i("unselectable",e),m=t(()=>l?.multiple.value??!1),b=t(()=>{let t=e.modifiers,a=l?.modifiers.value;const o=/* @__PURE__ */new Set;return t&&(Array.isArray(t)||(t=t.split(" ")),t.forEach(e=>o.add(e))),a&&(Array.isArray(a)||(a=a.split(" ")),a.forEach(e=>o.add(e))),Array.from(o)}),y=t(()=>Boolean(e.disabled||l?.disabled.value));return{group:l,isInGroup:o,modelValue:c,toggle:p,unselectable:f,multiple:m,modifiers:b,disabled:y,id:n,pressed:v,iconPosition:s,icon:u,label:d}}(n,u),V=Yt(f),L=t(()=>d?.name||V.value),E=s(null);a({$el:t(()=>E.value?.$el)});const I=t(()=>w.value?Array.isArray($.value)?xa(L.value,$.value):_a(L.value,$.value):n.pressed),D=Ht("vv-button",m,t(()=>({reverse:[Pe.right,Pe.bottom].includes(y.value),column:[Pe.top,Pe.bottom].includes(y.value),"icon-only":Boolean(g?.value&&!k?.value&&!p.default)}))),{hasIcon:T}=Jt(g),N=t(()=>void 0!==n.value?n.value:L.value),H=t(()=>{if(w.value)return{onClick:P}});function P(){if(w.value){if(Array.isArray($.value))return xa(N.value,$.value)?void(x.value&&($.value=$.value.filter(e=>e!==N.value))):void $.value.push(N.value);if(N.value===$.value&&x.value)return void($.value=n.uncheckedValue);$.value=N.value}}return(e,t)=>(c(),O(Kt,C({...l(d),...l(H),disabled:l(_),pressed:l(I),active:e.active,type:e.type,to:e.to,href:e.href,target:e.target,rel:e.rel,ariaLabel:e.ariaLabel},{id:l(V),ref_key:"rootEl",ref:E,class:l(D)}),{default:B(()=>[b(e.$slots,"default",{},()=>[e.loading?b(e.$slots,"loading",{key:0},()=>[e.loadingIcon?(c(),O(Qt,{key:0,class:"vv-button__loading-icon",name:e.loadingIcon},null,8,["name"])):M("v-if",!0),e.loadingLabel?(c(),v("span",Aa,S(e.loadingLabel),1)):M("v-if",!0)]):(c(),v(A,{key:1},[b(e.$slots,"before"),l(T)?(c(),O(Qt,C({key:0},l(T),{class:"vv-button__icon"}),null,16)):M("v-if",!0),l(k)?(c(),v("span",La,[b(e.$slots,"label",{},()=>[h(S(l(k)),1)])])):M("v-if",!0),b(e.$slots,"after")],64))])]),_:3},16,["id","class"]))}}),Ca={...bt,...rt,...wt,legendLabel:{type:String},itemModifiers:{type:[String,Array],default:""},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Array],default:void 0}},Ea={key:0,class:"vv-button-group__legend"},Ba=/* @__PURE__ */o({name:"VvButtonGroup",props:Ca,emits:["update:modelValue"],setup(e,{emit:a}){const o=e,i=a,{disabled:n,toggle:s,modifiers:u,multiple:d,unselectable:f,itemModifiers:m}=r(o);w(()=>{"string"==typeof o.modelValue&&d.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const y=t({get:()=>d.value?o.modelValue:Array.isArray(o.modelValue)?o.modelValue[0]:o.modelValue,set:e=>void 0===e||!Array.isArray(o.modelValue)&&!d.value||Array.isArray(e)?i("update:modelValue",e):i("update:modelValue",[e])});qt(Ye,{modelValue:y,disabled:n,toggle:s,multiple:d,unselectable:f,modifiers:m});const g=Ht("vv-button-group",u);return(e,t)=>(c(),v("fieldset",{class:p(l(g)),role:"group"},[e.$slots.legend||e.legendLabel?(c(),v("legend",Ea,[b(e.$slots,"legend",{},()=>[h(S(e.legendLabel),1)])])):M("v-if",!0),b(e.$slots,"default")],2))}}),Ia={...bt,title:String},Da={key:0,class:"vv-card__header"},Ta={key:1,class:"vv-card__content"},Na={key:2,class:"vv-card__footer"},Ma=/* @__PURE__ */o({name:"VvCard",props:Ia,setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-card",a);return(e,t)=>(c(),v("article",{class:p(l(o))},[e.$slots.header||e.title?(c(),v("header",Da,[b(e.$slots,"header",{},()=>[h(S(e.title),1)])])):M("v-if",!0),b(e.$slots,"default"),e.$slots.content?(c(),v("div",Ta,[b(e.$slots,"content")])):M("v-if",!0),e.$slots.footer?(c(),v("footer",Na,[b(e.$slots,"footer")])):M("v-if",!0)],2))}}),Ha={...Et,...bt,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean};function Pa(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}function Ra(e,a){const l=t(()=>$(e)?e.value:e),i=t(()=>Pa(l.value.invalidLabel)),n=t(()=>Pa(l.value.validLabel)),r=t(()=>l.value.loadingLabel),s=t(()=>l.value.hintLabel),u=t(()=>Boolean(l.value.loading&&(a.loading||r.value))),d=t(()=>!u.value&&Boolean(l.value.invalid&&(a.invalid||i.value))),v=t(()=>!u.value&&!d.value&&Boolean(l.value.valid&&(a.valid||n.value))),c=t(()=>!u.value&&!d.value&&!v.value&&Boolean(a.hint||s.value)),p=t(()=>d.value||v.value||u.value||c.value),f=t(()=>({modelValue:l.value.modelValue,valid:l.value.valid,invalid:l.value.invalid,loading:l.value.loading})),m=o({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:p,invalidLabel:i,validLabel:n,loadingLabel:r,hintLabel:s,hasInvalidLabelOrSlot:d,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:u,hasHintLabelOrSlot:c}),render(){if(this.isVisible){let e;return this.hasInvalidLabelOrSlot&&(e="alert"),this.hasValidLabelOrSlot&&(e="status"),this.hasLoadingLabelOrSlot?F(this.tag,{role:e},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?F(this.tag,{role:e},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?F(this.tag,{role:e},this.$slots.valid?.()??this.validLabel):F(this.tag,{role:e},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:d,hasHintLabelOrSlot:c,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:u,hintSlotScope:f,HintSlot:m}}function ja(e,a,l){const o=Wt(),i=t(()=>{if(o&&o.defaults.value?.[e])return o.defaults.value[e]});return t(()=>{if(void 0===i.value)return l;const e=i.value,t=a,o=l;return Object.keys(t).reduce((a,l)=>{const i=o[l];if(a[l]=i,l in e){if(Array.isArray(t[l])){const o=t[l];if(o.length){o[0]===i&&(a[l]=e[l])}}if("function"==typeof t[l]){(0,t[l])()===i&&(a[l]=e[l])}if("object"==typeof t[l]){let o=t[l].default;"function"==typeof o&&(o=o()),"object"==typeof o?JSON.stringify(o)===JSON.stringify(i)&&(a[l]=e[l]):o===i&&(a[l]=e[l])}}return a},{})})}const Fa=["for"],Ua=["id","name","disabled","value","tabindex","aria-invalid","aria-describedby","aria-errormessage"],Ga=/* @__PURE__ */o({name:"VvCheckbox",props:Ha,emits:["click","update:modelValue","change","blur"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvCheckbox",Ha,o),{id:m,disabled:_,readonly:x,valid:V,invalid:A,propsSwitch:L,modelValue:O,indeterminate:C,isInGroup:I}=function(e,a){const{group:l,isInGroup:o,getGroupOrLocalRef:i}=Nt(Xe),{id:n,switch:s,indeterminate:u}=r(e),d=i("modelValue",e,a),v=i("valid",e),c=i("invalid",e),p=t(()=>Boolean(e.readonly||l?.readonly.value)),f=t(()=>Boolean(e.disabled||l?.disabled.value));return{id:n,propsSwitch:s,indeterminate:u,group:l,isInGroup:o,modelValue:d,valid:v,invalid:c,readonly:p,disabled:f}}(o,i),D=Yt(m),T=t(()=>`${D.value}-hint`),N=t(()=>R.value?-1:o.tabindex),M=s(),P=t(()=>void 0!==o.uncheckedValue&&!I.value),R=t(()=>_.value||x.value),F=t(()=>!0===A.value||!0!==V.value&&void 0),q=t(()=>P.value?O.value===o.value:Array.isArray(O.value)?xa(o.value,O.value):_a(o.value,O.value)),z=t(()=>!!C.value||!(q.value||!P.value||o.uncheckedValue===O.value)),W=t(()=>{if(!P.value)return!["string","number","boolean"].includes(typeof o.value)||o.value}),K=t({get:()=>q.value,set(e){if(P.value)O.value=e?o.value:o.uncheckedValue;else if(Array.isArray(O.value)||I.value){const t=O.value??[],a=new Set(Array.isArray(t)?t:[t]);e?a.add(o.value):a.delete(o.value),O.value=[...a]}else O.value=e?o.value:void 0;i("change",e)}}),{modifiers:Y}=r(o),J=Ht("vv-checkbox",Y,t(()=>({switch:L.value,valid:V.value,invalid:A.value,disabled:_.value,readonly:x.value,indeterminate:C.value})));w(()=>{P.value&&Array.isArray(O.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),u(()=>z.value,e=>{M.value.indeterminate=!!e}),k(()=>{z.value&&(M.value.indeterminate=!0)});const{HintSlot:X,hasHintLabelOrSlot:Z,hasInvalidLabelOrSlot:Q,hintSlotScope:ee}=Ra(d,n);return(e,t)=>(c(),v("label",{class:p(l(J)),for:l(D)},[U(f("input",{id:l(D),ref_key:"input",ref:M,"onUpdate:modelValue":t[0]||(t[0]=e=>$(K)?K.value=e:null),type:"checkbox",class:"vv-checkbox__input",name:e.name,disabled:l(R),value:l(W),tabindex:l(N),"aria-invalid":l(F),"aria-describedby":l(Z)?l(T):void 0,"aria-errormessage":l(Q)?l(T):void 0},null,8,Ua),[[G,l(K)]]),b(e.$slots,"default",{value:l(O)},()=>[h(S(e.label),1)]),H(l(X),{id:l(T),class:"vv-checkbox__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(ee))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(ee))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(ee))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(ee))))]),key:"3"}:void 0]),1032,["id"])],10,Fa))}}),qa=Bt;function za(e){const{options:t,labelKey:a,valueKey:l,disabledKey:o}=r(e);return{options:t,getOptionLabel:e=>"string"==typeof e?e:"function"==typeof a.value?a.value(e):String(a.value?me(e,a.value):e),getOptionValue:e=>"string"==typeof e?e:"function"==typeof l.value?l.value(e):l.value?me(e,l.value):e,isOptionDisabled:e=>"string"!=typeof e&&("function"==typeof o.value?o.value(e):!!o.value&&Boolean(me(e,o.value))),getOptionGrouped:e=>"string"==typeof e?[]:"object"==typeof e&&e&&"options"in e?e.options:[]}}const Wa=["textContent"],Ka={class:"vv-checkbox-group__wrapper"},Ya=/* @__PURE__ */o({name:"VvCheckboxGroup",props:qa,emits:["update:modelValue","change"],setup(e,{emit:a}){const o=e,i=a,n=j(),s=ja("VvCheckboxGroup",qa,o),u=ee(o,"modelValue",i),{disabled:d,readonly:m,vertical:h,valid:k,invalid:$,modifiers:_}=r(o);qt(Xe,{modelValue:u,disabled:d,readonly:m,valid:k,invalid:$});const{getOptionLabel:w,getOptionValue:x,isOptionDisabled:V}=za(o),I=Ht("vv-checkbox-group",_,t(()=>({disabled:d.value,readonly:m.value,required:o.required,horizontal:!h.value,valid:k.value,invalid:$.value})));const{HintSlot:D,hintSlotScope:T}=Ra(s,n);return(e,t)=>(c(),v("fieldset",{class:p(l(I))},[e.label?(c(),v("legend",{key:0,textContent:S(e.label)},null,8,Wa)):M("v-if",!0),f("div",Ka,[e.options.length>0?(c(!0),v(A,{key:0},L(e.options,(e,t)=>(c(),O(Ga,C({key:t},{ref_for:!0},function(e,t){return{id:`${o.name}_opt${t}`,name:o.name,label:w(e),value:x(e),required:o.required,disabled:V(e)}}(e,t)),null,16))),128)):b(e.$slots,"default",{key:1})]),H(l(D),{class:"vv-checkbox-group__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(T))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(T))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(T))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(T))))]),key:"3"}:void 0]),1024)],2))}}),Ja={...At,...$t,...ot,...it,...yt,...nt,...rt,...mt,...bt,...gt,...kt,..._t,...Vt,...ft,...st,...ct,transitionName:{type:String,default:"vv-dropdown--mobile-fade-block"},modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},selectedOptionNotFoundLabel:{type:String,default:"Selected option not found"},selectedHintLabel:{type:String,default:"Selected"},deselectActionLabel:{type:String,default:"Deselect"},selectHintLabel:{type:String,default:"Press enter to select"},deselectHintLabel:{type:String,default:"Press enter to remove"},addOptionHintLabel:{type:String,default:"Press enter to add"},closeLabel:{type:String,default:"Close"},placeholder:String,addable:Boolean,searchable:Boolean,keepSearch:Boolean,searchFunction:{type:Function,default:void 0},searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,minValues:{type:[Number,String],default:0},maxValues:[Number,String],unselectable:{type:Boolean,default:!0},separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...Vt.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array],default:"mobile"},autoOpen:{type:Boolean,default:!1},autoselectFirst:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0}};function Xa(){return{...Ja,options:{...Ja.options,type:Array},searchFunction:{...Ja.searchFunction,type:Function}}}const Za=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:[String,Object],default:"close"}},emits:["clear"],setup(e,{emit:a}){const{hasIcon:l}=Jt(t(()=>e.icon));return{hasIcon:l,onClick:function(t){t?.stopPropagation(),e.disabled||a("clear")}}},render(){const e=this.hasIcon?F(Qt,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return F("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.label,type:"button",onClick:this.onClick},e)}}),Qa={...xt,...Vt,...bt,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:qe.menu,validator:e=>Object.values(qe).includes(e)}},el={focusOnHover:{type:Boolean,default:!1}},tl={...rt,...ut,...wt,...bt,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};const al=["id","tabindex","role","aria-labelledby"],ll=/* @__PURE__ */o({name:"VvDropdown",inheritAttrs:!1,props:Qa,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{expose:a,emit:n}){const d=e,m=n,{id:h}=r(d),S=Yt(h),$=i(),w=s("auto"),x=s("auto"),L=s(),O=s(),E=s(),I=s(),D=t({get:()=>d.reference??L.value,set:e=>{L.value=e}}),T=s(!1);k(()=>{ae(O.value,()=>{T.value="true"===window.getComputedStyle(O.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const N=t(()=>{const e=[];if(d.autoPlacement?"boolean"==typeof d.autoPlacement?e.push(be()):e.push(be(d.autoPlacement)):d.flip&&("boolean"==typeof d.flip?e.push(ye({fallbackStrategy:"initialPlacement"})):e.push(ye(d.flip))),d.shift&&("boolean"==typeof d.shift?e.push(ge()):e.push(ge(d.shift))),d.size){const t=({availableWidth:e,availableHeight:t})=>{w.value=`${e}px`,x.value=`${t}px`};"boolean"==typeof d.size?e.push(he({apply:t})):e.push(he({...d.size,apply:t}))}return d.offset&&(e.push(Se(Number(d.offset))),["string","number"].includes(typeof d.offset)?e.push(Se(Number(d.offset))):e.push(Se(d.offset))),d.arrow&&e.push(ke({element:E})),e}),{x:P,y:j,middlewareData:G,placement:K,strategy:Y}=$e(D,O,{whileElementsMounted:(...e)=>_e(...e,{animationFrame:d.strategy===He.fixed}),placement:t(()=>d.placement),strategy:t(()=>d.strategy),middleware:N}),J=t(()=>{if(T.value)return;const e=d.triggerWidth&&D.value?`${D.value?.offsetWidth}px`:void 0;return{position:Y.value,top:`${j.value??0}px`,left:`${P.value??0}px`,maxWidth:e?void 0:w.value,maxHeight:x.value,width:e}}),X=t(()=>K.value.split("-")[0]),Z=t(()=>{if(T.value)return;const e={[Pe.top]:Pe.bottom,[Pe.right]:Pe.left,[Pe.bottom]:Pe.top,[Pe.left]:Pe.right}[X.value];return{left:void 0!==G.value.arrow?.x?`${G.value.arrow?.x}px`:void 0,top:void 0!==G.value.arrow?.y?`${G.value.arrow?.y}px`:void 0,[e]:-(E.value?.offsetWidth??0)/2+"px"}}),Q=ee(d,"modelValue",m),te=s(!1),re=t({get:()=>Q.value??te.value,set:e=>{void 0!==Q.value?Q.value=e:te.value=e}});function se(){re.value=!0}function ue(){re.value=!1}function de(){re.value=!re.value}function ce(e){D.value=e}le(O,()=>{!d.keepOpen&&re.value&&(re.value=!1)},{ignore:[D]});const pe=t(()=>D.value?.getAttribute?.("id")??void 0),fe=t(()=>({"aria-controls":S.value,"aria-haspopup":!0,"aria-expanded":re.value})),{component:me,bus:we}=function({reference:e,id:t,expanded:a,aria:l}){const i=ve(),n=o({name:"VvDropdownTriggerProvider",setup(){_(Qe,{reference:e,id:t,expanded:a,aria:l,bus:i})},render(){return F(A,{},this.$slots.default?.())}});return{bus:i,component:n}}({reference:D,id:S,expanded:re,aria:fe});we.on("click",de);const{role:xe,modifiers:Ve}=r(d),Ae=Ht("vv-dropdown",Ve,t(()=>({arrow:d.arrow}))),{focused:Le}=oe(O);function Oe(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function Ce(){V(()=>{const e=Oe(O.value);e.length>0&&e[0].focus({preventScroll:!0})})}function Ee(){V(()=>{if(Le.value){const e=Oe(O.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function Be(){V(()=>{if(Le.value){const e=Oe(O.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}u(re,e=>{e&&d.autofocusFirst&&Ce()}),a({toggle:de,show:se,hide:ue,init:ce,focusFirst:Ce,focusFirstListElement:function(){V(()=>{const e=Oe(I.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:Ee,focusPrev:Be,customPosition:T});const Ie=ie(O),{itemRole:De}=function({role:e,...a}){const l=t(()=>e.value===qe.listbox?ze.option:ze.presentation);return _(et,{role:l,...a}),{itemRole:l}}({role:xe,expanded:re,focused:Le,hovered:Ie});ne("Escape",e=>{re.value&&(e.preventDefault(),ue())}),ne("ArrowDown",e=>{re.value&&Le.value&&(e.preventDefault(),Ee())}),ne("ArrowUp",e=>{re.value&&Le.value&&(e.preventDefault(),Be())}),ne([" ","Enter"],e=>{const t=e.target;re.value&&Le.value&&t&&t?.click()});const Te={"before-enter":()=>{m(re.value?"beforeExpand":"beforeCollapse"),m("beforeEnter")},"after-leave":()=>{m(re.value?"afterExpand":"afterCollapse"),m("afterLeave")},enter:()=>{m("enter")},"after-enter":()=>{m("afterEnter")},"enter-cancelled":()=>{m("enterCancelled")},"before-leave":()=>{m("beforeLeave")},leave:()=>{m("leave")},"leave-cancelled":()=>{m("leaveCancelled")}};return(e,t)=>(c(),v(A,null,[H(l(me),null,{default:B(()=>[b(e.$slots,"default",y(g({init:ce,show:se,hide:ue,toggle:de,expanded:l(re),aria:l(fe)})))]),_:3}),H(q,C({name:e.transitionName},R(Te),{persisted:""}),{default:B(()=>[U(f("div",{ref_key:"floatingEl",ref:O,style:z(l(J)),class:p(l(Ae))},[d.arrow?(c(),v("div",{key:0,ref_key:"arrowEl",ref:E,style:z(l(Z)),class:"vv-dropdown__arrow"},null,4)):M("v-if",!0),b(e.$slots,"before",y(g({expanded:l(re)}))),f("div",C(l($),{id:l(S),ref_key:"listEl",ref:I,tabindex:l(re)?void 0:-1,role:l(xe),"aria-labelledby":l(pe),class:"vv-dropdown__list"}),[b(e.$slots,"items",y(g({role:l(De)})))],16,al),b(e.$slots,"after",y(g({expanded:l(re)})))],6),[[W,l(re)]])]),_:3},16,["name"])],64))}}),ol={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"},il=/* @__PURE__ */o({name:"VvDropdownOptgroup",props:{...ft},setup(e){const t=e;return(e,a)=>(c(),v("li",ol,[b(e.$slots,"default",{},()=>[h(S(t.label),1)])]))}}),nl=/* @__PURE__ */o({name:"VvDropdownItem",props:el,setup(t){const a=t,{role:o,expanded:i}=e(et,{}),n=s(null);!function({expanded:e}){_(tt,{role:s(Ge.menuitem),expanded:e})}({expanded:i});const r=ie(n),{focused:d}=re(n),{focused:p}=oe(n);return u(r,e=>{e&&a.focusOnHover&&(d.value=!0)}),(e,t)=>(c(),v("div",C({role:l(o)},{ref_key:"element",ref:n,class:["vv-dropdown__item",{"focus-visible":l(d)||l(p)}]}),[b(e.$slots,"default")],16))}}),rl=["title"],sl=/* @__PURE__ */o({name:"VvDropdownOption",props:tl,setup(e){const a=e,{modifiers:o}=r(a),i=Ht("vv-dropdown-option",o,t(()=>({disabled:a.disabled,selected:a.selected,unselectable:a.unselectable&&a.selected}))),n=t(()=>a.selected?a.unselectable?a.deselectHintLabel:a.selectedHintLabel:a.disabled?"":a.selectHintLabel);return(e,t)=>(c(),O(nl,{class:p(l(i)),tabindex:e.disabled?-1:0,"aria-selected":e.selected,"aria-disabled":e.disabled,"focus-on-hover":e.focusOnHover},{default:B(()=>[b(e.$slots,"default"),f("span",{class:"vv-dropdown-option__hint",title:l(n)},[b(e.$slots,"hint",y(g({disabled:e.disabled,selected:e.selected,unselectable:e.unselectable})),()=>[h(S(l(n)),1)])],8,rl)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}}),ul={...At,...Lt,...Ot,...$t,...ot,...it,...yt,...nt,...rt,...mt,...bt,...gt,...kt,..._t,...wt,...ft,...ct,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},autoselectFirst:{type:Boolean,default:!1},placeholder:String};function dl(){return{...ul,options:{...ul.options,type:Array,default:()=>[]}}}function vl(e,t){const{focused:a}=re(e);return u(a,a=>{t(a?"focus":"blur",l(e))}),{focused:a}}const cl=["for"],pl={class:"vv-select__wrapper"},fl={key:0,class:"vv-select__input-before"},ml={class:"vv-select__inner"},bl=["id"],yl=["disabled","hidden"],gl=["disabled","value"],hl=["disabled","label"],Sl=["disabled","value"],kl={key:2,class:"vv-select__input-after"},$l=/* @__PURE__ */o({name:"VvSelect",props:dl(),emits:["update:modelValue","focus","blur","clear"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvSelect",dl(),o),m=s(),{HintSlot:h,hasHintLabelOrSlot:k,hasInvalidLabelOrSlot:_,hintSlotScope:w}=Ra(d,n),{focused:x}=vl(m,i);function V(e){return"string"!=typeof e&&e.options?.length}const{id:I,modifiers:D,disabled:T,readonly:N,loading:P,icon:R,iconPosition:F,invalid:G,valid:q,floating:z,multiple:W}=r(o),Y=Yt(I),J=t(()=>`${Y.value}-hint`),X=t(()=>o.disabled||o.readonly),Z=t(()=>X.value?-1:o.tabindex),Q=t({get:()=>o.modelValue,set:e=>{Array.isArray(e)&&0===(e=e.filter(e=>void 0!==e)).length&&!o.unselectable&&m.value?m.value.value=String(o.modelValue):i("update:modelValue",e)}}),ee=t(()=>Array.isArray(Q.value)?Q.value.length>0:void 0!==Q.value&&null!==Q.value),te=t(()=>!X.value&&o.unselectable),ae=se(m);u(ae,e=>{e&&o.autofocus&&(x.value=!0)});const{hasIconBefore:le,hasIconAfter:oe}=Jt(R,F),ie=t(()=>!0===o.invalid||!0!==o.valid&&void 0),ne=Ht("vv-select",D,t(()=>({valid:q.value,invalid:G.value,loading:P.value,disabled:T.value,readonly:N.value,"icon-before":void 0!==le.value,"icon-after":void 0!==oe.value,dirty:ee.value,focus:x.value&&!X.value,floating:z.value,multiple:W.value}))),{getOptionLabel:re,getOptionValue:ue,isOptionDisabled:de,getOptionGrouped:ve}=za(o);function ce(){Array.isArray(Q.value)?Q.value=[]:Q.value=void 0,i("clear")}u(()=>o.options,e=>{if(e?.length&&o.autoselectFirst&&!ee.value){const t=ue(e[0]);Q.value=o.multiple?[t]:t}},{immediate:!0});const pe=t(()=>({name:o.name,tabindex:Z.value,disabled:X.value,required:o.required,size:o.size,autocomplete:o.autocomplete,multiple:o.multiple,"aria-invalid":ie.value,"aria-describedby":k.value?J.value:void 0,"aria-errormessage":_.value?J.value:void 0})),fe=t(()=>({valid:o.valid,invalid:o.invalid,modelValue:o.modelValue}));return(e,t)=>(c(),v("div",{class:p(l(ne))},[e.label?(c(),v("label",{key:0,for:l(Y)},S(e.label),9,cl)):M("v-if",!0),f("div",pl,[e.$slots.before?(c(),v("div",fl,[b(e.$slots,"before",y(g(l(fe))))])):M("v-if",!0),f("div",ml,[l(le)?(c(),O(Qt,C({key:0},l(le),{class:"vv-select__icon"}),null,16)):M("v-if",!0),U(f("select",C({id:l(Y),ref_key:"selectEl",ref:m},l(pe),{"onUpdate:modelValue":t[0]||(t[0]=e=>$(Q)?Q.value=e:null)}),[e.placeholder?(c(),v("option",{key:0,value:void 0,disabled:!l(te),hidden:!l(te)},S(e.placeholder),9,yl)):M("v-if",!0),(c(!0),v(A,null,L(e.options,(e,t)=>(c(),v(A,null,[V(e)?(c(),v("optgroup",{key:`group-${t}`,disabled:l(de)(e),label:l(re)(e)},[(c(!0),v(A,null,L(l(ve)(e),(e,a)=>(c(),v("option",{key:`group-${t}-item-${a}`,disabled:l(de)(e),value:l(ue)(e)},S(l(re)(e)),9,Sl))),128))],8,hl)):(c(),v("option",{key:t,disabled:l(de)(e),value:l(ue)(e)},S(l(re)(e)),9,gl))],64))),256))],16,bl),[[K,l(Q)]]),l(oe)?(c(),O(Qt,C({key:1},l(oe),{class:"vv-select__icon vv-select__icon-after"}),null,16)):M("v-if",!0)]),l(te)&&l(d).showClearAction?(c(),O(l(Za),{key:1,"input-type":"select",label:e.labelClear,icon:e.iconClear,disabled:!l(ee),onClear:ce},null,8,["label","icon","disabled"])):M("v-if",!0),e.$slots.after?(c(),v("div",kl,[b(e.$slots,"after",y(g(l(fe))))])):M("v-if",!0)]),H(l(h),{id:l(J),class:"vv-select__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(w))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(w))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(w))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(w))))]),key:"3"}:void 0]),1032,["id"])],2))}}),_l=["id"],wl=["id","for"],xl=["id","aria-controls","placeholder"],Vl={key:0,class:"vv-select__input-before"},Al={class:"vv-select__inner"},Ll=["aria-controls","aria-expanded","aria-labelledby","aria-describedby","aria-errormessage","tabindex"],Ol={key:0,class:"vv-select__value"},Cl=["aria-label","onClick"],El={key:2,class:"vv-select__input-after"},Bl=/* @__PURE__ */o({...{name:"VvCombobox",components:{VvDropdown:ll,VvDropdownOption:sl,VvDropdownOptgroup:il,VvButton:Oa}},props:/* @__PURE__ */Y(Xa(),{search:{type:String,default:"",required:!1},searchModifiers:{}}),emits:/* @__PURE__ */Y(["update:modelValue","update:search","update:options","focus","blur","clear","change:search"],["update:search"]),setup(e,{emit:a}){const o=e,i=a,n=j(),d=ja("VvCombobox",Xa(),o),k=s(null),_=s(null),w=s(null),x=s(),{HintSlot:V,hasHintLabelOrSlot:I,hasInvalidLabelOrSlot:D,hintSlotScope:T}=Ra(d,n),{focused:N}=vl(k,i),{focused:P}=oe(w);u(N,e=>{o.autoOpen&&(!e||G.value?e||!G.value||P.value||W():z())}),u(P,e=>{N.value||e||!G.value||W()});const R=J(e,"search"),F=ue(R,t(()=>Number(o.debounceSearch)));u(F,()=>{i("update:search",F.value),i("change:search",F.value)});const G=s(!1);function q(){Se.value||(G.value=!G.value)}function z(){Se.value||G.value||(G.value=!0)}function W(){!Se.value&&G.value&&(G.value=!1)}function K(){d.value.searchable&&_.value&&_.value.focus({preventScroll:!0})}function Y(){d.value.keepSearch||(R.value="")}function Q(e){return"string"!=typeof e&&e.options?.length}const{id:ee,icon:te,iconPosition:ae,modifiers:le,disabled:ie,required:re,readonly:se,loading:ve,valid:ce,invalid:pe,floating:fe}=r(o),me=Yt(ee),be=t(()=>`${me.value}-hint`),ye=t(()=>`${me.value}-dropdown`),ge=t(()=>`${me.value}-search`),he=t(()=>`${me.value}-label`),Se=t(()=>o.disabled||o.readonly),ke=t(()=>Se.value?-1:o.tabindex),$e=t({get:()=>Array.isArray(o.modelValue)?o.modelValue:void 0!==o.modelValue&&null!==o.modelValue?[o.modelValue]:[],set:e=>{i("update:modelValue",o.multiple||Array.isArray(o.modelValue)?e:e.pop())}}),_e=t(()=>$e.value.length),we=t(()=>_e.value>0),xe=t(()=>o.multiple?void 0===o.maxValues?1/0:Number(o.maxValues):1),Ve=t(()=>!Se.value&&(!!o.unselectable&&(0===Number(o.minValues)||_e.value>Number(o.minValues)))),Ae=t(()=>!Se.value&&(!o.multiple||_e.value<xe.value)),Le=s(!1),Oe=t(()=>Le.value||ve.value),{hasIconBefore:Ce,hasIconAfter:Ee}=Jt(te,ae),Be=Ht("vv-select",le,t(()=>({disabled:ie.value,required:re.value,loading:Oe.value,readonly:se.value,"icon-before":void 0!==Ce.value,"icon-after":void 0!==Ee.value,valid:ce.value,invalid:pe.value,dirty:we.value,focus:(N.value||P.value||G.value)&&!Se.value,floating:fe.value,badges:o.badges}))),Ie=s(/* @__PURE__ */new Set),{getOptionLabel:De,getOptionValue:Te,getOptionGrouped:Ne,isOptionDisabled:Me}=za(o),He=t(()=>{const e=[...Ie.value];for(const t of o.options)Q(t)?e.push(...Ne(t)):e.push(t);return e}),Pe=t(()=>{const e=[...o.options,...Ie.value];for(const t of $e.value)He.value.some(e=>{const a=Te(e);return"object"==typeof a&&"object"==typeof t?JSON.stringify(a)===JSON.stringify(t):a===t})||e.push(t);return e});function Re(e){return Me(e)||!Ae.value&&!Fe(e)}u(Ie,e=>{e.size>0&&i("update:options",Pe.value)});const je=de(async()=>{if(d.value.searchFunction){Le.value=!0;const e=await Promise.resolve(d.value.searchFunction(F.value,Pe.value));return Le.value=!1,e}const e=F.value.toLowerCase().trim();return e?Pe.value?.reduce((t,a)=>{if(Q(a)){const l=De(a).toLowerCase(),o=Ne(a).filter(t=>De(t).toLowerCase().includes(e));if(l.includes(e))t.push(a);else if(o.length>0){const e="object"==typeof a?{...a,options:o}:a;t.push(e)}return t}return De(a).toLowerCase().includes(e)&&t.push(a),t},[]):Pe.value});function Fe(e){const t=Te(e);return"object"==typeof t?$e.value.some(e=>"object"==typeof e&&JSON.stringify(e)===JSON.stringify(t)):$e.value.includes(t)}const Ue=t(()=>Pe.value.reduce((e,t)=>Q(t)?[...e,...Ne(t)]:[...e,t],[]).filter(e=>Fe(e))),Ge=t(()=>Ue.value.map(e=>De(e)).join(o.separator));function ze(){o.autoOpen?z():q()}function We(e){const t=Fe(e),a=Te(e);t&&Ve.value?$e.value=$e.value.filter(e=>"object"==typeof a&&"object"==typeof e?JSON.stringify(e)!==JSON.stringify(a):e!==a):!t&&Ae.value&&(o.multiple?$e.value=[...$e.value,a]:$e.value=[a]),o.multiple||o.keepOpen||W()}function Ke(){$e.value=[],i("update:search",""),i("clear")}u(Pe,e=>{if(e?.length&&o.autoselectFirst&&!we.value){const t=e.find(e=>!Q(e));if(t)return void We(t);const a=e.find(e=>Q(e));if(a){const e=Ne(a);e.length&&We(e[0])}}},{immediate:!0});const Ye=t(()=>({id:me.value,name:o.name,tabindex:ke.value,valid:ce.value,validLabel:d.value.validLabel,invalid:pe.value,invalidLabel:d.value.invalidLabel,hintLabel:d.value.hintLabel,loading:Oe.value,loadingLabel:d.value.loadingLabel,disabled:ie.value,readonly:se.value,modifiers:d.value.modifiers,options:d.value.options,labelKey:d.value.labelKey,valueKey:d.value.valueKey,icon:d.value.icon,iconPosition:d.value.iconPosition,floating:d.value.floating,unselectable:Ve.value,autoselectFirst:d.value.autoselectFirst,multiple:d.value.multiple,label:d.value.label,placeholder:d.value.placeholder,modelValue:o.modelValue})),Je=t(()=>({id:ye.value,reference:w.value,placement:d.value.placement,strategy:d.value.strategy,transitionName:d.value.transitionName,offset:d.value.offset,shift:d.value.shift,flip:d.value.flip,autoPlacement:d.value.autoPlacement,arrow:d.value.arrow,autofocusFirst:!!d.value.searchable||d.value.autofocusFirst,triggerWidth:d.value.triggerWidth,modifiers:d.value.dropdownModifiers})),Xe=t(()=>({valid:o.valid,invalid:o.invalid,modelValue:o.modelValue}));function Ze(){if(je.value?.length){if(1===je.value.length){const e=je.value[0];if(Q(e)){const t=Ne(e);return void(t.length&&We(t[0]))}return void We(e)}x.value?.focusFirstListElement()}else if(d.value.addable){const e=R.value.trim();if(!e)return;if(He.value.some(t=>De(t).toLowerCase()===e.toLowerCase()))return;Ie.value.add(e),We(e)}}return ne([" ","Enter"],e=>{o.autoOpen||!G.value&&N.value&&(e.preventDefault(),e.stopImmediatePropagation(),q())},{target:k}),(e,t)=>e.native?(c(),O($l,C({key:1},l(Ye),{"onUpdate:modelValue":t[3]||(t[3]=e=>i("update:modelValue",e))}),null,16)):(c(),v("div",{key:0,id:l(me),class:p(l(Be))},[e.label?(c(),v("label",{key:0,id:l(he),for:l(d).searchable?l(ge):void 0},S(e.label),9,wl)):M("v-if",!0),f("div",{ref_key:"wrapperEl",ref:w,class:"vv-select__wrapper"},[H(ll,C({ref_key:"dropdownEl",ref:x,modelValue:l(G),"onUpdate:modelValue":t[2]||(t[2]=e=>$(G)?G.value=e:null)},l(Je),{role:l(qe).listbox,onAfterExpand:K,onAfterCollapse:Y}),E({default:B(({aria:t})=>[e.$slots.before?(c(),v("div",Vl,[b(e.$slots,"before",y(g(l(Xe))))])):M("v-if",!0),f("div",Al,[l(Ce)?(c(),O(Qt,C({key:0},l(Ce),{class:"vv-select__icon"}),null,16)):M("v-if",!0),f("div",C({ref_key:"inputEl",ref:k},t,{class:"vv-select__input",role:"combobox","aria-controls":l(ye),"aria-expanded":l(G),"aria-labelledby":l(he),"aria-describedby":l(I)?l(be):void 0,"aria-errormessage":l(D)?l(be):void 0,tabindex:l(ke),onClickPassive:ze}),[l(Ge)?b(e.$slots,"value",y(C({key:0},{selectedOptions:l(Ue),onInput:We})),()=>[e.badges?(c(!0),v(A,{key:1},L(l(Ue),(t,a)=>(c(),O(ya,{key:a,modifiers:e.badgeModifiers,class:"vv-select__badge"},{default:B(()=>[h(S(l(De)(t))+" ",1),l(Ve)?(c(),v("button",{key:0,"aria-label":l(d).deselectActionLabel,type:"button",onClick:m(e=>We(t),["stop"])},[H(Qt,{name:"close"})],8,Cl)):M("v-if",!0)]),_:2},1032,["modifiers"]))),128)):(c(),v("div",Ol,S(l(Ge)),1))]):b(e.$slots,"placeholder",{key:1},()=>[h(S(e.placeholder),1)])],16,Ll),l(Ee)?(c(),O(Qt,C({key:1},l(Ee),{class:"vv-select__icon vv-select__icon-after"}),null,16)):M("v-if",!0)]),l(Ve)&&l(d).showClearAction?(c(),O(l(Za),{key:1,"input-type":"select",label:e.labelClear,icon:e.iconClear,disabled:!l(we),onClear:Ke},null,8,["label","icon","disabled"])):M("v-if",!0),e.$slots.after?(c(),v("div",El,[b(e.$slots,"after",y(g(l(Xe))))])):M("v-if",!0)]),items:B(()=>[!l(ie)&&l(je)?.length?(c(!0),v(A,{key:0},L(l(je),(t,a)=>(c(),v(A,{key:a},[Q(t)?(c(),v(A,{key:0},[H(il,{label:l(De)(t)},{default:B(()=>[b(e.$slots,"option-group",C({ref_for:!0},{option:t,selectedOptions:l(Ue)}),()=>[h(S(l(De)(t)),1)])]),_:2},1032,["label"]),(c(!0),v(A,null,L(l(Ne)(t),(t,a)=>(c(),O(sl,C({ref_for:!0},{selected:Fe(t),disabled:Re(t),unselectable:l(Ve),deselectHintLabel:l(d).deselectHintLabel,selectHintLabel:l(d).selectHintLabel,selectedHintLabel:l(d).selectedHintLabel,focusOnHover:e.focusOnHover},{key:a,class:"vv-dropdown-option",onClickPassive:e=>We(t)}),{default:B(()=>[b(e.$slots,"option",C({ref_for:!0},{option:t,selectedOptions:l(Ue),selected:Fe(t),disabled:Re(t)}),()=>[h(S(l(De)(t)),1)])]),_:2},1040,["onClickPassive"]))),128))],64)):(c(),O(sl,C({key:1,ref_for:!0},{selected:Fe(t),disabled:Re(t),unselectable:l(Ve),deselectHintLabel:l(d).deselectHintLabel,selectHintLabel:l(d).selectHintLabel,selectedHintLabel:l(d).selectedHintLabel,focusOnHover:e.focusOnHover},{class:"vv-dropdown-option",onClickPassive:e=>We(t)}),{default:B(()=>[b(e.$slots,"option",C({ref_for:!0},{option:t,selectedOptions:l(Ue),selected:Fe(t),disabled:Re(t)}),()=>[h(S(l(De)(t)),1)])]),_:2},1040,["onClickPassive"]))],64))),128)):e.options.length?(c(),O(sl,{key:2,modifiers:"inert"},{default:B(()=>[b(e.$slots,"no-results",{},()=>[h(S(l(d).addable?l(d).addOptionHintLabel:l(d).noResultsLabel),1)])]),_:3})):(c(),O(sl,{key:1,modifiers:"inert"},{default:B(()=>[b(e.$slots,"no-options",{},()=>[h(S(l(d).addable&&R.value.length?l(d).addOptionHintLabel:l(d).noOptionsLabel),1)])]),_:3}))]),after:B(()=>[b(e.$slots,"dropdown::after",{},()=>[l(x)?.customPosition?(c(),O(Oa,{key:0,label:l(d).closeLabel,modifiers:"secondary",onClick:t[1]||(t[1]=e=>l(x).hide())},null,8,["label"])):M("v-if",!0)])]),_:2},[l(d).searchable||e.$slots["dropdown::before"]?{name:"before",fn:B(()=>[b(e.$slots,"dropdown::before"),l(d).searchable&&!l(ie)?U((c(),v("input",{key:0,id:l(ge),ref_key:"inputSearchEl",ref:_,"onUpdate:modelValue":t[0]||(t[0]=e=>R.value=e),"aria-autocomplete":"list","aria-controls":l(ye),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:l(d).searchPlaceholder,onKeyup:X(Ze,["enter"])},null,40,xl)),[[Z,R.value]]):M("v-if",!0)]),key:"0"}:void 0]),1040,["modelValue","role"])],512),H(l(V),{id:l(be),class:"vv-select__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(T))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(T))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(T))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(T))))]),key:"3"}:void 0]),1032,["id"])],10,_l))}}),Il={...bt,...xt,title:String,modelValue:{type:Boolean,default:void 0},transition:{type:String,default:"fade-block"},size:String,keepOpen:{type:Boolean,default:!1},labelClose:{type:String,default:"Close"}},Dl={key:0,class:"vv-dialog__header"},Tl=["aria-label","title"],Nl={class:"vv-dialog__content"},Ml={key:1,class:"vv-dialog__footer"},Hl=/* @__PURE__ */o({name:"VvDialog",props:Il,emits:["open","close","update:modelValue","beforeEnter","afterLeave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(e,{expose:a,emit:o}){const i=e,n=o,u=s(),d=ee(i,"modelValue",n),p=s(!1),y=t({get:()=>d.value??p.value,set:e=>{void 0!==d.value?d.value=e:p.value=e}}),g=s(null),{modifiers:k}=r(i),$=Ht("vv-dialog",k,t(()=>i.size?{[i.size]:!!i.size}:{})),_=t(()=>{const{id:e}=i;return{id:e}}),w=t(()=>`vv-dialog--${i.transition}`),x={"before-enter":()=>{u.value?.open||u.value?.showModal(),n("open"),n("beforeEnter")},"after-leave":()=>{u.value?.open&&u.value?.close(),n("close"),n("afterLeave")},enter:()=>{n("enter")},"after-enter":()=>{n("afterEnter")},"enter-cancelled":()=>{n("enterCancelled")},"before-leave":()=>{n("beforeLeave")},leave:()=>{n("leave")},"leave-cancelled":()=>{n("leaveCancelled")}};function V(){y.value=!1}function A(){i.keepOpen||V()}return le(g,()=>{i.keepOpen||V()}),a({close:V,open:function(){y.value=!0}}),(e,t)=>(c(),O(q,C({name:l(w)},R(x),{persisted:""}),{default:B(()=>[U(f("dialog",C(l(_),{ref_key:"dialogEl",ref:u,class:l($),onCancel:m(A,["stop","prevent"])}),[f("article",{ref_key:"modalWrapper",ref:g,class:"vv-dialog__wrapper"},[e.$slots.header||e.title?(c(),v("header",Dl,[b(e.$slots,"header",{},()=>[h(S(e.title)+" ",1),f("button",{type:"button","aria-label":e.labelClose,title:e.labelClose,class:"vv-dialog__close",onClickPassive:V},null,40,Tl)])])):M("v-if",!0),f("div",Nl,[b(e.$slots,"default")]),e.$slots.footer?(c(),v("footer",Ml,[b(e.$slots,"footer")])):M("v-if",!0)],512)],16),[[W,l(y)]])]),_:3},16,["name"]))}}),Pl=/* @__PURE__ */o({__name:"VvDropdownAction",props:{...It,...bt},setup(e){const t=e,{modifiers:a}=r(t),o=Ht("vv-dropdown-action",a);return(e,t)=>(c(),O(nl,null,{default:B(()=>[H(Kt,C({disabled:e.disabled,pressed:e.pressed,active:e.active,type:e.type,to:e.to,href:e.href,target:e.target,rel:e.rel},{class:l(o)}),{default:B(()=>[b(e.$slots,"default",{},()=>[h(S(e.label),1)])]),_:3},16,["class"])]),_:3}))}}),Rl={...At,...bt,...ot,...it,...yt,...ft,...nt,...mt,...rt,...st,...kt,modelValue:{type:Object},progress:{type:[Number,String],default:void 0},placeholder:{type:String,default:void 0},accept:{type:String,default:"*"},multiple:{type:Boolean,default:!1},capture:{type:String,default:void 0,validation:e=>void 0===e||["user","environment"].includes(e)},max:{type:[Number,String],default:void 0},dropArea:{type:Boolean,default:!1},sortable:{type:Boolean,default:!1},hidePreview:{type:Boolean,default:!1},labelAdd:{type:String,default:"Add file"},iconAdd:{type:[String,Object],default:Be},labelReplace:{type:String,default:"Replace file"},iconReplace:{type:[String,Object],default:De},labelDownload:{type:String,default:"Downlaod file"},iconDownload:{type:[String,Object],default:Te},labelRemove:{type:String,default:"Remove file"}};const jl=["for"],Fl={class:"vv-input-file__preview"},Ul=["src","alt"],Gl={class:"vv-input-file__wrapper"},ql=["id","readonly","disabled","required","placeholder","aria-describedby","aria-invalid","aria-errormessage","multiple","accept","capture","name"],zl=["value"],Wl=["onClick"],Kl=["title","onClick"],Yl={class:"vv-input-file__item-name"},Jl={class:"vv-input-file__item-info"},Xl=["title","disabled","onClick"],Zl=/* @__PURE__ */o({name:"VvInputFile",props:Rl,emits:["remove","download","update:modelValue"],setup(e,{emit:a}){const o=e,i=a,n=j(),h=ja("VvInputFile",Rl,o),{modifiers:k,id:$,readonly:_,disabled:w,icon:x,iconPosition:V,iconDownload:A}=r(o),L=Yt($),I=t(()=>`${L.value}-hint`),D=t(()=>{if(!o.progress)return!1;const e="string"==typeof o.progress?Number.parseInt(o.progress):o.progress;return e>0&&e<100}),{hasIconBefore:T,hasIconAfter:N}=Jt(x,V),{hasIcon:P}=Jt(A),R=Ht("vv-input-file",k,t(()=>({valid:!0===o.valid,invalid:!0===o.invalid,loading:o.loading&&!D.value,disabled:o.disabled,required:o.required,readonly:o.readonly,dragging:Z.value,"icon-before":!!T.value,"icon-after":!!N.value,"drop-area":J.value}))),{HintSlot:F,hasHintLabelOrSlot:U,hasInvalidLabelOrSlot:G,hintSlotScope:q}=Ra(h,n),z=ee(o,"modelValue",i),W=t({get:()=>z.value&&(Array.isArray(z.value)||z.value?.name)?Array.isArray(z.value)?z.value:[z.value]:[],set:e=>{X.value?z.value=e:z.value=e?.[0]}}),K=t(()=>o.disabled||o.readonly),Y=t(()=>"string"==typeof o.max?Number.parseInt(o.max):o.max),J=t(()=>o.dropArea&&!K.value),X=t(()=>!!o.multiple&&(!Y.value||Y.value-W.value.length>1)),Z=s(!1),Q=s();function te(){Z.value=!0}function ae(){Z.value=!1}function le(e){e.dataTransfer?.files&&(Z.value=!1,ie(e.dataTransfer?.files))}function oe(){Q.value?.files&&(ie(Q.value.files),Q.value.value="")}function ie(e){const t=function(e,t){if(!t||""===t.trim()||"*"===t)return Array.from(e);const{mimeTypes:a,extensions:l,wildcards:o}=function(e){const t=[],a=[],l=[],o=e?.split(",").map(e=>e.trim().toLowerCase());return o?.length&&o.forEach(e=>{e.startsWith(".")?a.push(e):e.includes("/*")?l.push(e.replace("/*","")):t.push(e)}),{mimeTypes:t,extensions:a,wildcards:l}}(t);return Array.from(e).filter(e=>{const t=e.type.toLowerCase(),i=`.${e.name.split(".").pop()?.toLowerCase()}`,n=a.includes(t),r=o.some(e=>t.startsWith(`${e}/`)),s=l.some(e=>i===e.toLowerCase());return n||r||s})}(e,o.accept);if(!o.multiple)return Array.isArray(z.value)?void(z.value=t):void(z.value=t[0]);let a=[];a=!Array.isArray(z.value)&&z.value?[z.value]:z.value&&Array.isArray(z.value)?[...z.value]:a;for(const l of t){if(Y.value&&a.length>=Y.value)break;a.push(l)}z.value=a,se.value=a.length-1}function ne(){Q.value&&(K.value||Q.value.click())}function re(e){const t=Array.isArray(z.value)?z.value[e]:z.value;if(!t)return;if(i("remove",t),!Array.isArray(z.value))return void(z.value=void 0);se.value===e&&(se.value=0);const a=[...z.value];a.splice(e,1),z.value=a}const se=s(0),ue=["image/jpeg","image/png"],de=t(()=>{if(o.hidePreview)return;if(0===W.value.length)return;if(!W.value[se.value])return;if(W.value[se.value]instanceof File){const e=W.value[se.value];if(!ue.includes(e.type))return;return URL.createObjectURL(e)}const e=W.value[se.value];return e.thumbnailUrl?e.thumbnailUrl:ue.includes(e.type)?e.url:void 0});function ve(e,t){if(!e)return;if(0===e)return"0 Bytes";const a=t?t<=0?0:t:2,l=Math.floor(Math.log(e)/Math.log(1024));return`${Number.parseFloat((e/1024**l).toFixed(a))} ${["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][l]}`}function ce(e){i("download",e);const t=e instanceof File?URL.createObjectURL(e):e.url;if(!t)return;const a=document.createElement("a");a.href=t,a.setAttribute("download",e.name),document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(a.href)}function pe(e){se.value=e}u(de,(e,t)=>{t&&URL.revokeObjectURL(t)}),d(()=>{de.value&&URL.revokeObjectURL(de.value)});const fe=t(()=>0===W.value.length||X.value?o.labelAdd:o.labelReplace),me=t(()=>0===W.value.length||X.value?o.iconAdd:o.iconReplace);function be({newIndex:e}){null!==e&&(se.value=e)}return(e,t)=>(c(),v("div",{class:p(l(R))},[e.label?(c(),v("label",{key:0,for:l(L)},S(e.label),9,jl)):M("v-if",!0),J.value?(c(),v("div",{key:1,class:"vv-input-file__drop-area",onDragenter:m(te,["prevent","stop"]),onDragleave:m(ae,["prevent","stop"]),onDrop:m(le,["prevent","stop"]),onDragover:t[0]||(t[0]=m(()=>{},["prevent","stop"])),onClick:m(ne,["stop"])},[b(e.$slots,"drop-area",y(g({previewSrc:de.value,onClickDropArea:ne})),()=>[f("picture",Fl,[de.value?(c(),v("img",{key:0,src:de.value,alt:W.value[se.value].name},null,8,Ul)):M("v-if",!0)]),l(_)?M("v-if",!0):(c(),O(Oa,{key:0,modifiers:"action",label:de.value?void 0:fe.value,title:de.value?fe.value:void 0,disabled:l(w),class:p({"vv-input-file__drop-area-action":de.value}),icon:me.value,onClick:m(ne,["stop"])},null,8,["label","title","disabled","class","icon"]))])],32)):M("v-if",!0),f("div",Gl,[l(T)?(c(),O(Qt,y(C({key:0},l(T))),null,16)):M("v-if",!0),f("input",{id:l(L),ref_key:"inputEl",ref:Q,type:"file",readonly:l(_),disabled:l(w),required:e.required,placeholder:e.placeholder,"aria-describedby":l(U)?I.value:void 0,"aria-invalid":e.invalid,"aria-errormessage":l(G)?I.value:void 0,multiple:X.value,accept:e.accept,capture:e.capture,name:e.name,onChange:oe},null,40,ql),D.value?(c(),v("progress",{key:1,class:"vv-input-file__progress",value:e.progress,max:"100"},S(e.progress)+"% ",9,zl)):M("v-if",!0),l(N)?(c(),O(Qt,y(C({key:2},l(N))),null,16)):M("v-if",!0)]),b(e.$slots,"file-list",y(g({files:W.value,selectedFileIndex:se.value,onSelectIndex:pe,onRemoveIndex:re,onDownloadFile:ce,formatBytes:ve})),()=>[H(l(we),{modelValue:W.value,"onUpdate:modelValue":t[1]||(t[1]=e=>W.value=e),tag:"ul",class:"vv-input-file__list","item-key":"name",move:()=>e.sortable,onEnd:be},{item:B(({element:t,index:a})=>[f("li",{class:p(["vv-input-file__item",{active:a===se.value&&J.value&&W.value.length>1,"cursor-move":e.sortable}]),onClick:m(e=>pe(a),["stop"])},[b(e.$slots,"file-item",y(g({file:t,index:a,isSelected:a===se.value,onRemoveIndex:re,onDownloadFile:ce,formatBytes:ve})),()=>[l(P)?(c(),v("button",{key:0,type:"button",class:"vv-input-file__item-action",title:e.labelDownload,onClick:m(e=>ce(t),["stop"])},[H(Qt,y(g(l(P))),null,16)],8,Kl)):M("v-if",!0),f("div",Yl,S(t.name),1),f("small",Jl,S(ve(t.size)),1),l(_)?M("v-if",!0):(c(),v("button",{key:1,type:"button",class:"vv-input-file__item-remove",title:e.labelRemove,disabled:l(w),onClick:m(e=>re(a),["stop"])},null,8,Xl))])],10,Wl)]),_:3},8,["modelValue","move"])]),H(l(F),{id:I.value,class:"vv-input-file__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(q))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(q))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(q))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(q))))]),key:"3"}:void 0]),1032,["id"])],2))}}),Ql=e=>e.toString().padStart(2,"0");function eo(e){if("string"!=typeof e)return!1;if(!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?(?:Z|[+-]\d{2}:?\d{2})?$/.test(e))return!1;const t=new Date(e);return!Number.isNaN(t.getTime())&&t.toISOString()===e}function to(e,t="date",a){if("string"==typeof e&&!eo(e))return"";const l=new Date(e);if(Number.isNaN(l.getTime()))return"";let o=`${l.getFullYear()}-${Ql(l.getMonth()+1)}`;if("month"===t)return o;if(o+=`-${Ql(l.getDate())}`,"date"===t)return o;const i=a?`${Ql(l.getHours())}:${Ql(l.getMinutes())}:${Ql(l.getSeconds())}`:`${Ql(l.getHours())}:${Ql(l.getMinutes())}`;return"time"===t?i:`${o}T${i}`}const ao={TEXT:"text",PASSWORD:"password",NUMBER:"number",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",DATE:"date",TIME:"time",DATETIME_LOCAL:"datetime-local",MONTH:"month",WEEK:"week"},lo={...Ct,...Tt,modelValue:[String,Number,Date],type:{type:String,default:ao.TEXT,validator:e=>Object.values(ao).includes(e)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:[String,Object],default:Ve},iconHidePassword:{type:[String,Object],default:Ae},iconClear:{type:[String,Object],default:Ee},iconRemoveSuggestion:{type:[String,Object],default:Ie},labelStepUp:{type:String,default:"Increase value"},labelStepDown:{type:String,default:"Decrease value"},labelShowPassword:{type:String,default:"Show password"},labelHidePassword:{type:String,default:"Hide password"},labelClear:{type:String,default:"Clear"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},iMask:{type:Object,default:void 0},masked:{type:String,default:void 0},autoWidth:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},unit:{type:String},selectOnFocus:{type:Boolean,default:!1},maxSuggestions:{type:Number,default:5},inputMode:{type:String,default:"text"}},oo=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:[String,Object],default:Ve},iconHide:{type:[String,Object],default:Ae}},emits:["toggle-password"],setup(e,{emit:a}){const l=s(!1),o=t(()=>l.value?e.iconHide:e.iconShow),{hasIcon:i}=Jt(o);return{active:l,activeIcon:o,hasIcon:i,onClick:function(t){t?.stopPropagation(),e.disabled||(l.value=!l.value,a("toggle-password",l.value))}}},render(){const e=this.hasIcon?F(Qt,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return F("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},e)}}),io=o({components:{VvIcon:Qt},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:e=>["up","down"].includes(e),default:"up"}},emits:["step-up","step-down"],setup(e,{emit:a}){const l=t(()=>"up"===e.mode);return{isUp:l,onClick:t=>{t?.stopPropagation(),e.disabled||a(l.value?"step-up":"step-down")}}},render(){return F("button",{class:[`vv-${this.inputType}__action`,`vv-${this.inputType}__action-chevron`,this.isUp?`vv-${this.inputType}__action-chevron-up`:void 0],disabled:this.disabled,ariaLabel:this.label,type:"button",onClick:this.onClick})}});function no(e,a,l){return{name:"VvInputTextActions",components:{VvIcon:Qt,VvInputPasswordAction:oo,VvInputStepAction:io,VvInputClearAction:Za},setup(){const e=t(()=>a.disabled||a.readonly);return{isDirty:l,isDisabled:e,labelStepUp:a.labelStepUp,labelStepDown:a.labelStepDown,labelShowPassword:a.labelShowPassword,labelHidePassword:a.labelHidePassword,labelClear:a.labelClear,iconShowPassword:a.iconShowPassword,iconHidePassword:a.iconHidePassword}},render(){let t=null;switch(e){case ao.SEARCH:{const{onClear:e}=this.$attrs;t=[F(Za,{disabled:this.isDisabled||!this.isDirty,label:this.labelClear,onClear:e})];break}case ao.PASSWORD:{const{onTogglePassword:e}=this.$attrs;t=[F(oo,{disabled:this.isDisabled,onTogglePassword:e,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case ao.NUMBER:{const{onStepUp:e,onStepDown:l}=this.$attrs;t=[F(io,{mode:"up",disabled:this.isDisabled||void 0!==a.max&&a.modelValue===a.max,label:this.labelStepUp,onStepUp:e,onStepDown:l}),F(io,{mode:"down",disabled:this.isDisabled||void 0!==a.min&&a.modelValue===a.min,label:this.labelStepDown,onStepUp:e,onStepDown:l})];break}}return Array.isArray(t)?F("div",{class:"vv-input-text__actions-group"},t):t}}}function ro(e,a,l=0,{getter:o=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof l&&(l=Number.parseInt(l)),t({get:()=>o(e?.value),set:e=>{n&&clearTimeout(n),n=setTimeout(()=>{a("update:modelValue",i(e))},l)}})}function so(e,a){const o=t(()=>(l(e)??"").length),i=t(()=>void 0!==a?.lowerLimit&&o.value<a?.lowerLimit?o.value-a.lowerLimit:void 0!==a?.upperLimit&&o.value<a?.upperLimit?a.upperLimit-o.value:0),n=t(()=>{if(!1===a?.mode)return"";if("limit"===a?.mode&&a?.upperLimit)return`${o.value} / ${a.lowerLimit?`${a.lowerLimit}-`:""}${a.upperLimit}`;if("countdown"===a?.mode){if(0===i.value)return;return i}return o.value});return{length:o,gap:i,formatted:n}}const uo=["for"],vo={key:0,class:"vv-input-text__input-before"},co=["id"],po={key:1,class:"vv-input-text__unit"},fo={key:5,class:"vv-input-text__input-after"},mo={key:6,class:"vv-input-text__limit"},bo={class:"flex-1"},yo=["title","onClick"],go=/* @__PURE__ */o({name:"VvInputText",props:lo,emits:["update:modelValue","update:masked","accept","accept:typed","accept:masked","accept:unmasked","complete","complete:typed","complete:masked","complete:unmasked","suggestion:selected","suggestion:removed","focus","blur","keyup","keydown","keypress","clear"],setup(e,{expose:a,emit:o}){const i=e,n=o,d=j(),$=Wt(),_=ja("VvInputText",lo,i),{count:w,debounce:x,icon:V,iconPosition:I,iconRemoveSuggestion:D,id:T,invalid:N,label:P,loading:R,maxlength:F,minlength:U,modelValue:G,step:q,storageType:z,type:W,valid:K}=r(i),Y=Yt(T),J=t(()=>`${Y.value}-hint`),X=t(()=>i.floating&&Va(i.placeholder)?" ":i.placeholder),Z=ro(G,n,x?.value??0),Q=t(()=>{const e="number"==typeof q.value?q.value:Number.parseInt(q.value);return!Number.isNaN(e)&&e%60!=0}),ee=/^-0?[.,]?[0*]?$/,te=s(!1),ae=s(),le=s(),{el:oe,mask:ie,typed:ne,masked:re,unmasked:ue}=xe(t(()=>{if(!i.iMask)return{mask:/./};if(i.iMask.mask===Number){const e={...i.iMask};return i.min&&(e.min=Number(i.min)),i.max&&(e.max=Number(i.max)),e}return i.iMask}),{emit:n,onAccept:()=>{if(te.value){if(n("update:masked",re.value),W.value===ao.NUMBER){if(/^-$|^$/.test(ue.value)){if(null===Z.value||void 0===Z.value)return;return void(Z.value=void 0)}return ee.test(ue.value)?void(Z.value=0):"number"!=typeof ne.value?void(Z.value=Number(ne.value)):void(Z.value=ne.value)}if(W.value===ao.DATETIME_LOCAL||W.value===ao.DATE||W.value===ao.TIME||W.value===ao.MONTH){if(!ne.value){if(!Z.value)return;return ae.value?void(Z.value=void 0):void(Z.value="")}if(!(ne.value instanceof Date||ae.value||le.value))return void(Z.value=ne.value);let e=ne.value;if(e instanceof Date||(e=function(e,t="date"){if(!e?.trim())return null;const a=/* @__PURE__ */new Date,l=a.getFullYear(),o=a.getMonth(),i=a.getDate();if("date"===t){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))throw new Error("Invalid date format. Expected: YYYY-MM-DD");/* @__PURE__ */
|
|
3
3
|
return new Date(`${e}T00:00:00`)}if("month"===t){if(!/^\d{4}-\d{2}$/.test(e))throw new Error("Invalid month format. Expected: YYYY-MM");/* @__PURE__ */
|
|
4
|
-
return new Date(`${e}-01T00:00:00`)}if("time"===t){if(!/^(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d)?$/.test(e))throw new Error("Invalid time format. Expected: HH:mm or HH:mm:ss");return 8===e.length?/* @__PURE__ */new Date(`${l}-${Ql(o+1)}-${Ql(i)}T${e}`):/* @__PURE__ */new Date(`${l}-${Ql(o+1)}-${Ql(i)}T${e}:00`)}if(!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2})?$/.test(e))throw new Error("Invalid datetime format. Expected: YYYY-MM-DDThh:mm or YYYY-MM-DDThh:mm:ss");return 16===e.length?/* @__PURE__ */new Date(`${e}:00`):/* @__PURE__ */new Date(`${e}`)}(ne.value,W.value)),ae.value||le.value){const t=new Date(ae.value||le.value);if(W.value!==ao.DATETIME_LOCAL&&W.value!==ao.DATE&&W.value!==ao.MONTH||(t.setFullYear(e.getFullYear()),t.setMonth(e.getMonth())),W.value!==ao.DATETIME_LOCAL&&W.value!==ao.DATE||t.setDate(e.getDate()),W.value!==ao.DATETIME_LOCAL&&W.value!==ao.TIME||(t.setHours(e.getHours()),t.setMinutes(e.getMinutes()),t.setSeconds(e.getSeconds())),ae.value instanceof Date){if(Z.value?.getTime()===t.getTime())return;return void(Z.value=t)}return void(Z.value=t.toISOString())}return void(Z.value=to(e,W.value,Q.value))}(Z.value||ue.value)&&(Z.value=ue.value)}}});function de(e){if(null==e)return ne.value="",void(ue.value="");if(i.iMask?.mask!==Date){if(W.value!==ao.NUMBER||!ee.test(ue.value)||0!==e){if(W.value===ao.DATE||W.value===ao.MONTH||W.value===ao.DATETIME_LOCAL||W.value===ao.TIME){if(e instanceof Date||eo(e)){e instanceof Date?(ae.value=e,le.value=void 0):(le.value=e,ae.value=void 0);const t=new Date(e);return ne.value=to(t,W.value,Q.value),void(ue.value=ne.value)}ae.value=void 0,le.value=void 0}ne.value=e,ue.value=`${ne.value}`}}else ne.value=e instanceof Date?e:new Date(e)}k(()=>{ie.value&&(te.value=!0,de(i.modelValue))}),u(()=>i.modelValue,e=>{ie.value&&de(e)}),u(()=>i.masked,e=>{re.value=e??""});const ve=oe,ce=s(),pe=s(),fe=s();a({$inner:ce});const{focused:me}=vl(ve,n),be=t(()=>me.value&&!i.disabled&&!i.readonly);u(be,e=>{if(e
|
|
5
|
-
/* @__PURE__ */new Set),Fe=t(()=>je.value?[...je.value].filter(e=>Va(Z.value)||`${e}`.toLowerCase().includes(`${Z.value}`.toLowerCase())&&e!==Z.value).reverse():[]),Ue=t(()=>Re?.value&&je.value&&je.value.size>0);const{modifiers:Ge}=r(i),qe=Ht("vv-input-text",Ge,t(()=>({valid:K.value,invalid:N.value,loading:R.value,disabled:i.disabled,required:i.required,readonly:i.readonly,"icon-before":!!Ee.value,"icon-after":!!Ie.value,floating:i.floating&&!Va(i.label),dirty:He.value,focus:be.value&&!Ne.value,"auto-width":i.autoWidth}))),ze=t(()=>{const e=he.value&&ge.value?ao.TEXT:!ke.value||He.value||me.value?i.iMask?ao.TEXT:i.type:ao.TEXT,t={type:e,name:i.name,tabindex:Me.value,disabled:i.disabled,readonly:i.readonly,required:i.required,autocomplete:i.autocomplete,"aria-invalid":Pe.value,"aria-describedby":Ye.value?J.value:void 0,"aria-errormessage":Je.value?J.value:void 0,inputMode:i.inputMode};if(e===ao.DATE||e===ao.MONTH||e===ao.WEEK||e===ao.TIME||e===ao.DATETIME_LOCAL||e===ao.NUMBER){let a=i.max;e!==ao.DATE||a||(a="9999-12-31"),t.step=i.step,t.max=void 0!==a?String(a):void 0,t.min=void 0!==i.min?String(i.min):void 0}return e!==ao.TEXT&&e!==ao.SEARCH&&e!==ao.URL&&e!==ao.TEL&&e!==ao.EMAIL&&e!==ao.PASSWORD&&e!==ao.NUMBER||(t.placeholder=X.value),e!==ao.TEXT&&e!==ao.SEARCH&&e!==ao.URL&&e!==ao.TEL&&e!==ao.EMAIL&&e!==ao.PASSWORD||(t.minlength=i.minlength,t.maxlength=i.maxlength,t.pattern=i.pattern),e===ao.EMAIL&&(t.multiple=i.multiple),t}),We=t(()=>({valid:i.valid,invalid:i.invalid,modelValue:i.modelValue,togglePassword:Se,stepUp:$e,stepDown:we,clear:Ae})),{HintSlot:Ke,hasHintLabelOrSlot:Ye,hasInvalidLabelOrSlot:Je,hintSlotScope:Xe}=Ra($,d),Ze=no(ao.PASSWORD,i,He),Qe=no(ao.NUMBER,i,He),et=no(ao.SEARCH,i,He);function tt(){Ne.value||(me.value=!0)}const at=t(()=>{if(i.autoWidth)return{width:void 0!==Z.value?`${String(Z.value).length+1}ch`:void 0}});function lt(e){switch(e.code){case"ArrowUp":_e.value&&($e(),e.preventDefault());break;case"ArrowDown":_e.value&&(we(),e.preventDefault())}n("keydown",e)}return(e,t)=>(c(),v("div",{class:p(l(qe))},[l(P)?(c(),v("label",{key:0,for:l(Y),class:"vv-input-text__label"},S(l(P)),9,uo)):M("v-if",!0),f("div",{ref_key:"wrapperEl",ref:pe,class:"vv-input-text__wrapper"},[e.$slots.before?(c(),v("div",vo,[b(e.$slots,"before",y(g(l(We))))])):M("v-if",!0),f("div",{ref_key:"innerEl",ref:ce,class:"vv-input-text__inner",onClick:m(tt,["stop"])},[l(Ee)?(c(),O(Qt,C({key:0},l(Ee),{class:"vv-input-text__icon"}),null,16)):M("v-if",!0),f("input",C({id:l(Y),ref_key:"inputEl",ref:ve},l(ze),{style:l(at),onKeyup:t[0]||(t[0]=e=>n("keyup",e)),onKeydown:lt,onKeypress:t[1]||(t[1]=e=>n("keypress",e))}),null,16,co),(e.unit||e.$slots.unit)&&l(He)?(c(),v("div",po,[b(e.$slots,"unit",y(g(l(We))),()=>[h(S(e.unit),1)])])):M("v-if",!0)],512),l(Ie)?(c(),O(Qt,C({key:1},l(Ie),{class:"vv-input-text__icon vv-input-text__icon-after"}),null,16)):!l(he)||e.hideActions||l(Ne)?!l(_e)||e.hideActions||l(Ne)?!l(Ve)||e.hideActions||l(Ne)?M("v-if",!0):(c(),O(l(et),{key:4,onClear:Ae})):(c(),O(l(Qe),{key:3,onStepUp:$e,onStepDown:we})):(c(),O(l(Ze),{key:2,onTogglePassword:Se})),e.$slots.after?(c(),v("div",fo,[b(e.$slots,"after",y(g(l(We))))])):M("v-if",!0),l(w)?(c(),v("span",mo,[b(e.$slots,"count",y(g(l(We))),()=>[h(S(l(De)),1)])])):M("v-if",!0)],512),H(l(Ke),{id:l(J),class:"vv-input-text__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(Xe))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(Xe))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(Xe))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(Xe))))]),key:"3"}:void 0]),1032,["id"]),l(Ue)?(c(),O(ll,{key:1,ref_key:"suggestionsDropdownEl",ref:fe,reference:l(pe),"autofocus-first":!1,"trigger-width":!0},{items:B(()=>[(c(!0),v(A,null,L(l(Fe),t=>(c(),O(sl,{key:t,onClick:m(e=>{return a=t,Z.value=a,fe.value?.hide(),void n("suggestion:selected",a);var a},["stop"])},{default:B(()=>[f("div",bo,[b(e.$slots,"suggestion",C({ref_for:!0},{value:t}),()=>[h(S(t),1)])]),l(je)&&l(Te)?(c(),v("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:e.labelRemoveSuggestion,onClick:m(e=>{return a=t,je.value?.delete(a),void n("suggestion:removed",a);var a},["stop"])},[H(Qt,C({ref_for:!0},l(Te)),null,16)],8,yo)):M("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):M("v-if",!0)],2))}}),ho={...bt,...Tt},So={class:"vv-nav__item",role:"presentation"},ko=/* @__PURE__ */o({name:"VvNavItem",inheritAttrs:!1,setup:e=>(e,t)=>(c(),v("li",So,[b(e.$slots,"before"),H(Kt,C(e.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:B(()=>[b(e.$slots,"default")]),_:3},16),b(e.$slots,"after")]))}),_o=/* @__PURE__ */o({name:"VvNav",props:ho,emits:["click"],setup(e,{emit:t}){const a=e,o=t,{modifiers:i}=r(a);function n(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),l=a.items?.[e];if(!l||l?.disabled)return;o("click",l)}}const s=Ht("vv-nav",i);return(e,t)=>(c(),v("nav",{class:p(l(s))},[f("ul",{class:"vv-nav__menu",role:"menu",onClick:m(n,["stop"])},[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(e.items,({on:t={},data:a,...l},o)=>(c(),O(ko,C({key:o,"data-index":o},{ref_for:!0},l,R(t)),{default:B(()=>[b(e.$slots,"item",C({ref_for:!0},{item:l,data:a,index:o}))]),_:2},1040,["data-index"]))),128))])])],2))}}),$o={class:"vv-nav__separator",role:"separator"};const wo=/* @__PURE__ */((e,t)=>{const a=e.__vccOpts||e;for(const[l,o]of t)a[l]=o;return a})({name:"VvNavSeparator"},[["render",function(e,t,a,l,o,i){return c(),v("li",$o,[b(e.$slots,"default")])}]]),xo={...bt,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},Vo=/* @__PURE__ */o({name:"VvProgress",props:xo,setup(e){const a=e,{value:o,max:i,label:n}=r(a),s=t(()=>void 0===a.value),{modifiers:u}=r(a),d=Ht("vv-progress",u,t(()=>({indeterminate:s.value})));return(e,t)=>(c(),v("progress",y(g({class:l(d),ariaLabel:l(n),max:l(i),value:l(o)})),null,16))}}),Ao=Et;const Lo=["for"],Oo=["id","name","disabled","value","tabindex","aria-invalid","aria-describedby","aria-errormessage"],Co=/* @__PURE__ */o({name:"VvRadio",props:Ao,emits:["click","update:modelValue","change","blur"],setup(e,{emit:a}){const o=e,i=a,n=j(),u=ja("VvRadio",Ao,o),{id:d,disabled:m,readonly:k,modelValue:$,valid:w,invalid:x}=function(e,a){const{id:l}=r(e),{group:o,isInGroup:i,getGroupOrLocalRef:n}=Nt(Je),s=n("modelValue",e,a),u=n("valid",e),d=n("invalid",e),v=t(()=>Boolean(e.readonly||o?.readonly.value)),c=t(()=>Boolean(e.disabled||o?.disabled.value));return{id:l,group:o,isInGroup:i,modelValue:s,valid:u,invalid:d,readonly:v,disabled:c}}(o,i),V=Yt(d),A=t(()=>`${V.value}-hint`),L=t(()=>C.value?-1:o.tabindex),O=s(),C=t(()=>m.value||k.value),I=t(()=>!0===x.value||!0!==w.value&&void 0),T=t(()=>Array.isArray($.value)?xa(o.value,$.value):$a(o.value,$.value)),D=t(()=>!["string","number","boolean"].includes(typeof o.value)||o.value),N=t({get:()=>T.value?D.value:null,set(e){Array.isArray($.value)?$.value=[o.value]:$.value=o.value,i("change",e)}}),{modifiers:M}=r(o),P=Ht("vv-radio",M,t(()=>({valid:w.value,invalid:x.value,disabled:m.value,readonly:k.value}))),{HintSlot:R,hasHintLabelOrSlot:F,hasInvalidLabelOrSlot:G,hintSlotScope:q}=Ra(u,n);return(e,t)=>(c(),v("label",{class:p(l(P)),for:l(V)},[U(f("input",{id:l(V),ref_key:"input",ref:O,"onUpdate:modelValue":t[0]||(t[0]=e=>_(N)?N.value=e:null),type:"radio",class:"vv-radio__input",name:e.name,disabled:l(C),value:l(D),tabindex:l(L),"aria-invalid":l(I),"aria-describedby":l(F)?l(A):void 0,"aria-errormessage":l(G)?l(A):void 0},null,8,Oo),[[Q,l(N)]]),b(e.$slots,"default",{value:l($)},()=>[h(S(e.label),1)]),H(l(R),{id:l(A),class:"vv-radio__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(q))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(q))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(q))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(q))))]),key:"3"}:void 0]),1032,["id"])],10,Lo))}}),Eo=Bt,Bo=["textContent"],Io={class:"vv-radio-group__wrapper"},To=/* @__PURE__ */o({name:"VvRadioGroup",props:Eo,emits:["update:modelValue","change"],setup(e,{emit:a}){const o=e,i=a,n=j(),s=ja("VvRadioGroup",Eo,o),u=ee(o,"modelValue",i),{disabled:d,readonly:m,vertical:h,valid:k,invalid:_,modifiers:$}=r(o);qt(Je,{modelValue:u,disabled:d,readonly:m,valid:k,invalid:_});const{getOptionLabel:w,getOptionValue:x,isOptionDisabled:V}=za(o),I=Ht("vv-radio-group",$,t(()=>({disabled:d.value,readonly:m.value,required:o.required,horizontal:!h.value,valid:k.value,invalid:_.value})));const{HintSlot:T,hintSlotScope:D}=Ra(s,n);return(e,t)=>(c(),v("fieldset",{class:p(l(I))},[e.label?(c(),v("legend",{key:0,textContent:S(e.label)},null,8,Bo)):M("v-if",!0),f("div",Io,[e.options.length>0?(c(!0),v(A,{key:0},L(e.options,(e,t)=>(c(),O(Co,C({key:t},{ref_for:!0},function(e,t){return{id:`${o.name}_opt${t}`,name:o.name,label:w(e),value:x(e),required:o.required,disabled:V(e)}}(e,t)),null,16))),128)):b(e.$slots,"default",{key:1})]),H(l(T),{class:"vv-radio-group__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(D))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(D))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(D))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(D))))]),key:"3"}:void 0]),1024)],2))}}),Do={...bt,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},No=/* @__PURE__ */o({name:"VvTab",props:Do,emits:["update:modelValue"],setup(e,{emit:a}){const o=e,i=a,{modifiers:n,items:u}=r(o),d=t(()=>u.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),f=s(),m=t({get:()=>o.modelValue||f.value||d.value?.[0],set:e=>{f.value=e,i("update:modelValue",e)}}),h=t(()=>["tabs",...Array.isArray(o.navModifiers)?o.navModifiers:o.navModifiers?.split(" ")??[]]);function S(e){e.tab&&(m.value=e.tab)}const k=t(()=>o.items.map(e=>({current:e.tab===m.value,...e}))),_=Ht("vv-tab",n);return(e,t)=>(c(),v("div",{class:p(l(_))},[H(_o,C({items:l(k),modifiers:l(h)},{onClick:S}),{item:B(({item:t,data:a,index:l})=>[b(e.$slots,"nav-item",y(g({item:t,data:a,index:l})))]),_:3},16),(c(!0),v(A,null,L(l(u),(t,a)=>(c(),v(A,{key:a},[t.tab?(c(),v("article",{key:0,class:p([{target:l(m)===t.tab},"vv-tab__panel"])},[b(e.$slots,`panel::${t.tab}`)],2)):M("v-if",!0)],64))),128))],2))}}),Mo={...Ct,...Dt,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},iconRemoveSuggestion:{type:[String,Object],default:Ie},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean},Ho=["for"],Po={key:0,class:"vv-textarea__input-before"},Ro={class:"vv-textarea__inner"},jo=["id"],Fo={key:1,class:"vv-textarea__input-after"},Uo={key:2,class:"vv-textarea__limit"},Go={class:"flex-1"},qo=["title","onClick"],zo=/* @__PURE__ */o({name:"VvTextarea",props:Mo,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=Wt(),k=ja("VvTextarea",Mo,o),$=s(),w=s(),x=s(),{id:V,icon:I,iconPosition:T,iconRemoveSuggestion:D,labelRemoveSuggestion:N,label:P,modelValue:R,count:F,valid:G,invalid:q,loading:z,modifiers:W,debounce:K,minlength:Y,maxlength:J,storageType:X}=r(o),Q=Yt(V),ee=t(()=>`${Q.value}-hint`),te=t(()=>o.floating&&Va(o.placeholder)?" ":o.placeholder),ae=ro(R,i,K?.value),{hasIconBefore:le,hasIconAfter:oe}=Jt(I,T),{hasIcon:ie}=Jt(D),{focused:ne}=vl($,i),re=t(()=>ne.value&&!o.disabled&&!o.readonly);u(re,e=>{if(e&&k.value.selectOnFocus&&$.value&&$.value.select(),e&&be.value?.size)x.value?.show();else if(pe.value&&be.value){const e=o.maxSuggestions;be.value.size>=e&&!be.value.has(ae.value)&&(be.value=new Set([...be.value].slice(be.value.size-e+1))),be.value.add(ae.value)}});const ue=se($);u(ue,e=>{e&&o.autofocus&&(ne.value=!0)});const{formatted:de}=so(ae,{mode:F?.value,upperLimit:Number(J?.value),lowerLimit:Number(Y?.value)}),ve=t(()=>!o.disabled&&!o.readonly),ce=t(()=>ve.value?o.tabindex:-1),pe=t(()=>!Va(R)),fe=t(()=>!0===o.invalid||!0!==o.valid&&void 0),me=t(()=>o.storageKey??(d?.experimentalFeatures.forceInputSuggestions?o.name:void 0)),be=Gt(me,X,
|
|
6
|
-
/* @__PURE__ */new Set),ye=t(()=>be.value?[...be.value].filter(e=>Va(ae.value)||`${e}`.toLowerCase().includes(`${ae.value}`.toLowerCase())&&e!==ae.value).reverse():[]),ge=t(()=>me?.value&&be.value&&be.value.size>0);const{HintSlot:he,hasHintLabelOrSlot:Se,hasInvalidLabelOrSlot:ke,hintSlotScope
|
|
4
|
+
return new Date(`${e}-01T00:00:00`)}if("time"===t){if(!/^(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d)?$/.test(e))throw new Error("Invalid time format. Expected: HH:mm or HH:mm:ss");return 8===e.length?/* @__PURE__ */new Date(`${l}-${Ql(o+1)}-${Ql(i)}T${e}`):/* @__PURE__ */new Date(`${l}-${Ql(o+1)}-${Ql(i)}T${e}:00`)}if(!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2})?$/.test(e))throw new Error("Invalid datetime format. Expected: YYYY-MM-DDThh:mm or YYYY-MM-DDThh:mm:ss");return 16===e.length?/* @__PURE__ */new Date(`${e}:00`):/* @__PURE__ */new Date(`${e}`)}(ne.value,W.value)),ae.value||le.value){const t=new Date(ae.value||le.value);if(W.value!==ao.DATETIME_LOCAL&&W.value!==ao.DATE&&W.value!==ao.MONTH||(t.setFullYear(e.getFullYear()),t.setMonth(e.getMonth())),W.value!==ao.DATETIME_LOCAL&&W.value!==ao.DATE||t.setDate(e.getDate()),W.value!==ao.DATETIME_LOCAL&&W.value!==ao.TIME||(t.setHours(e.getHours()),t.setMinutes(e.getMinutes()),t.setSeconds(e.getSeconds())),ae.value instanceof Date){if(Z.value?.getTime()===t.getTime())return;return void(Z.value=t)}return void(Z.value=t.toISOString())}return void(Z.value=to(e,W.value,Q.value))}(Z.value||ue.value)&&(Z.value=ue.value)}}});function de(e){if(null==e)return ne.value="",void(ue.value="");if(i.iMask?.mask!==Date){if(W.value!==ao.NUMBER||!ee.test(ue.value)||0!==e){if(W.value===ao.DATE||W.value===ao.MONTH||W.value===ao.DATETIME_LOCAL||W.value===ao.TIME){if(e instanceof Date||eo(e)){e instanceof Date?(ae.value=e,le.value=void 0):(le.value=e,ae.value=void 0);const t=new Date(e);return ne.value=to(t,W.value,Q.value),void(ue.value=ne.value)}ae.value=void 0,le.value=void 0}ne.value=e,ue.value=`${ne.value}`}}else ne.value=e instanceof Date?e:new Date(e)}k(()=>{ie.value&&(te.value=!0,de(i.modelValue))}),u(()=>i.modelValue,e=>{ie.value&&de(e)}),u(()=>i.masked,e=>{re.value=e??""});const ve=oe,ce=s(),pe=s(),fe=s();a({$input:ve,$inner:ce,$wrapper:pe});const{focused:me}=vl(ve,n),be=t(()=>me.value&&!i.disabled&&!i.readonly);u(be,e=>{if(e&&_.value.selectOnFocus&&ve.value&&ve.value.select(),e&&je.value?.size)fe.value?.show();else if(He.value&&je.value){const e=i.maxSuggestions;je.value.size>=e&&!je.value.has(Z.value)&&(je.value=new Set([...je.value].slice(je.value.size-e+1))),je.value.add(Z.value)}});const ye=se(ve);u(ye,e=>{e&&i.autofocus&&!i.disabled&&!i.readonly&&(me.value=!0)});const ge=s(!1),he=t(()=>i.type===ao.PASSWORD);function Se(){ge.value=!ge.value}const ke=t(()=>i.type===ao.TIME||i.type===ao.DATETIME_LOCAL||i.type===ao.DATE||i.type===ao.WEEK||i.type===ao.MONTH),$e=t(()=>i.type===ao.NUMBER);function _e(){if(!Ne.value){if(i.iMask)return void(ne.value=Number(ne.value)+Number(q?.value??1));ve.value.stepUp(),Z.value=Number(l(ve).value)}}function we(){if(!Ne.value){if(i.iMask)return void(ne.value=Number(ne.value)-Number(q?.value??1));ve.value.stepDown(),Z.value=Number(l(ve).value)}}const Ve=t(()=>i.type===ao.SEARCH);function Ae(){Z.value="",n("clear")}const{hasIconBefore:Ee,hasIconAfter:Be}=Jt(V,I),Ie=t(()=>{if(void 0!==Be.value)return Be.value;switch(i.type){case ao.COLOR:return{name:Ce};case ao.DATE:case ao.DATETIME_LOCAL:case ao.WEEK:case ao.MONTH:return{name:Le};case ao.TIME:return{name:Oe}}}),{hasIcon:De}=Jt(D),{formatted:Te}=so(Z,{mode:w.value,upperLimit:Number(F?.value),lowerLimit:Number(U?.value)}),Ne=t(()=>i.disabled||i.readonly),Me=t(()=>Ne.value?-1:i.tabindex),He=t(()=>!Va(G)),Pe=t(()=>!0===N.value||!0!==K.value&&void 0),Re=t(()=>i.storageKey??($?.experimentalFeatures.forceInputSuggestions?i.name:void 0)),je=Gt(Re,z,
|
|
5
|
+
/* @__PURE__ */new Set),Fe=t(()=>je.value?[...je.value].filter(e=>Va(Z.value)||`${e}`.toLowerCase().includes(`${Z.value}`.toLowerCase())&&e!==Z.value).reverse():[]),Ue=t(()=>Re?.value&&je.value&&je.value.size>0);const{modifiers:Ge}=r(i),qe=Ht("vv-input-text",Ge,t(()=>({valid:K.value,invalid:N.value,loading:R.value,disabled:i.disabled,required:i.required,readonly:i.readonly,"icon-before":!!Ee.value,"icon-after":!!Ie.value,floating:i.floating&&!Va(i.label),dirty:He.value,focus:be.value&&!Ne.value,"auto-width":i.autoWidth}))),ze=t(()=>{const e=he.value&&ge.value?ao.TEXT:!ke.value||He.value||me.value?i.iMask?ao.TEXT:i.type:ao.TEXT,t={type:e,name:i.name,tabindex:Me.value,disabled:i.disabled,readonly:i.readonly,required:i.required,autocomplete:i.autocomplete,"aria-invalid":Pe.value,"aria-describedby":Ye.value?J.value:void 0,"aria-errormessage":Je.value?J.value:void 0,inputMode:i.inputMode};if(e===ao.DATE||e===ao.MONTH||e===ao.WEEK||e===ao.TIME||e===ao.DATETIME_LOCAL||e===ao.NUMBER){let a=i.max;e!==ao.DATE||a||(a="9999-12-31"),t.step=i.step,t.max=void 0!==a?String(a):void 0,t.min=void 0!==i.min?String(i.min):void 0}return e!==ao.TEXT&&e!==ao.SEARCH&&e!==ao.URL&&e!==ao.TEL&&e!==ao.EMAIL&&e!==ao.PASSWORD&&e!==ao.NUMBER||(t.placeholder=X.value),e!==ao.TEXT&&e!==ao.SEARCH&&e!==ao.URL&&e!==ao.TEL&&e!==ao.EMAIL&&e!==ao.PASSWORD||(t.minlength=i.minlength,t.maxlength=i.maxlength,t.pattern=i.pattern),e===ao.EMAIL&&(t.multiple=i.multiple),t}),We=t(()=>({valid:i.valid,invalid:i.invalid,modelValue:i.modelValue,togglePassword:Se,stepUp:_e,stepDown:we,clear:Ae})),{HintSlot:Ke,hasHintLabelOrSlot:Ye,hasInvalidLabelOrSlot:Je,hintSlotScope:Xe}=Ra(_,d),Ze=no(ao.PASSWORD,i,He),Qe=no(ao.NUMBER,i,He),et=no(ao.SEARCH,i,He);function tt(){Ne.value||(me.value=!0)}const at=t(()=>{if(i.autoWidth)return{width:void 0!==Z.value?`${String(Z.value).length+1}ch`:void 0}});function lt(e){switch(e.code){case"ArrowUp":$e.value&&(_e(),e.preventDefault());break;case"ArrowDown":$e.value&&(we(),e.preventDefault())}n("keydown",e)}return(e,t)=>(c(),v("div",{class:p(l(qe))},[l(P)?(c(),v("label",{key:0,for:l(Y),class:"vv-input-text__label"},S(l(P)),9,uo)):M("v-if",!0),f("div",{ref_key:"wrapperEl",ref:pe,class:"vv-input-text__wrapper"},[e.$slots.before?(c(),v("div",vo,[b(e.$slots,"before",y(g(l(We))))])):M("v-if",!0),f("div",{ref_key:"innerEl",ref:ce,class:"vv-input-text__inner",onClick:m(tt,["stop"])},[l(Ee)?(c(),O(Qt,C({key:0},l(Ee),{class:"vv-input-text__icon"}),null,16)):M("v-if",!0),f("input",C({id:l(Y),ref_key:"inputEl",ref:ve},l(ze),{style:l(at),onKeyup:t[0]||(t[0]=e=>n("keyup",e)),onKeydown:lt,onKeypress:t[1]||(t[1]=e=>n("keypress",e))}),null,16,co),(e.unit||e.$slots.unit)&&l(He)?(c(),v("div",po,[b(e.$slots,"unit",y(g(l(We))),()=>[h(S(e.unit),1)])])):M("v-if",!0)],512),l(Ie)?(c(),O(Qt,C({key:1},l(Ie),{class:"vv-input-text__icon vv-input-text__icon-after"}),null,16)):!l(he)||e.hideActions||l(Ne)?!l($e)||e.hideActions||l(Ne)?!l(Ve)||e.hideActions||l(Ne)?M("v-if",!0):(c(),O(l(et),{key:4,onClear:Ae})):(c(),O(l(Qe),{key:3,onStepUp:_e,onStepDown:we})):(c(),O(l(Ze),{key:2,onTogglePassword:Se})),e.$slots.after?(c(),v("div",fo,[b(e.$slots,"after",y(g(l(We))))])):M("v-if",!0),l(w)?(c(),v("span",mo,[b(e.$slots,"count",y(g(l(We))),()=>[h(S(l(Te)),1)])])):M("v-if",!0)],512),H(l(Ke),{id:l(J),class:"vv-input-text__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(Xe))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(Xe))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(Xe))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(Xe))))]),key:"3"}:void 0]),1032,["id"]),l(Ue)?(c(),O(ll,{key:1,ref_key:"suggestionsDropdownEl",ref:fe,reference:l(pe),"autofocus-first":!1,"trigger-width":!0},{items:B(()=>[(c(!0),v(A,null,L(l(Fe),t=>(c(),O(sl,{key:t,onClick:m(e=>{return a=t,Z.value=a,fe.value?.hide(),void n("suggestion:selected",a);var a},["stop"])},{default:B(()=>[f("div",bo,[b(e.$slots,"suggestion",C({ref_for:!0},{value:t}),()=>[h(S(t),1)])]),l(je)&&l(De)?(c(),v("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:e.labelRemoveSuggestion,onClick:m(e=>{return a=t,je.value?.delete(a),void n("suggestion:removed",a);var a},["stop"])},[H(Qt,C({ref_for:!0},l(De)),null,16)],8,yo)):M("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):M("v-if",!0)],2))}}),ho={...bt,...Dt},So={class:"vv-nav__item",role:"presentation"},ko=/* @__PURE__ */o({name:"VvNavItem",inheritAttrs:!1,setup:e=>(e,t)=>(c(),v("li",So,[b(e.$slots,"before"),H(Kt,C(e.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:B(()=>[b(e.$slots,"default")]),_:3},16),b(e.$slots,"after")]))}),$o=/* @__PURE__ */o({name:"VvNav",props:ho,emits:["click"],setup(e,{emit:t}){const a=e,o=t,{modifiers:i}=r(a);function n(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),l=a.items?.[e];if(!l||l?.disabled)return;o("click",l)}}const s=Ht("vv-nav",i);return(e,t)=>(c(),v("nav",{class:p(l(s))},[f("ul",{class:"vv-nav__menu",role:"menu",onClick:m(n,["stop"])},[b(e.$slots,"default",{},()=>[(c(!0),v(A,null,L(e.items,({on:t={},data:a,...l},o)=>(c(),O(ko,C({key:o,"data-index":o},{ref_for:!0},l,R(t)),{default:B(()=>[b(e.$slots,"item",C({ref_for:!0},{item:l,data:a,index:o}))]),_:2},1040,["data-index"]))),128))])])],2))}}),_o={class:"vv-nav__separator",role:"separator"};const wo=/* @__PURE__ */((e,t)=>{const a=e.__vccOpts||e;for(const[l,o]of t)a[l]=o;return a})({name:"VvNavSeparator"},[["render",function(e,t,a,l,o,i){return c(),v("li",_o,[b(e.$slots,"default")])}]]),xo={...bt,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},Vo=/* @__PURE__ */o({name:"VvProgress",props:xo,setup(e){const a=e,{value:o,max:i,label:n}=r(a),s=t(()=>void 0===a.value),{modifiers:u}=r(a),d=Ht("vv-progress",u,t(()=>({indeterminate:s.value})));return(e,t)=>(c(),v("progress",y(g({class:l(d),ariaLabel:l(n),max:l(i),value:l(o)})),null,16))}}),Ao=Et;const Lo=["for"],Oo=["id","name","disabled","value","tabindex","aria-invalid","aria-describedby","aria-errormessage"],Co=/* @__PURE__ */o({name:"VvRadio",props:Ao,emits:["click","update:modelValue","change","blur"],setup(e,{emit:a}){const o=e,i=a,n=j(),u=ja("VvRadio",Ao,o),{id:d,disabled:m,readonly:k,modelValue:_,valid:w,invalid:x}=function(e,a){const{id:l}=r(e),{group:o,isInGroup:i,getGroupOrLocalRef:n}=Nt(Je),s=n("modelValue",e,a),u=n("valid",e),d=n("invalid",e),v=t(()=>Boolean(e.readonly||o?.readonly.value)),c=t(()=>Boolean(e.disabled||o?.disabled.value));return{id:l,group:o,isInGroup:i,modelValue:s,valid:u,invalid:d,readonly:v,disabled:c}}(o,i),V=Yt(d),A=t(()=>`${V.value}-hint`),L=t(()=>C.value?-1:o.tabindex),O=s(),C=t(()=>m.value||k.value),I=t(()=>!0===x.value||!0!==w.value&&void 0),D=t(()=>Array.isArray(_.value)?xa(o.value,_.value):_a(o.value,_.value)),T=t(()=>!["string","number","boolean"].includes(typeof o.value)||o.value),N=t({get:()=>D.value?T.value:null,set(e){Array.isArray(_.value)?_.value=[o.value]:_.value=o.value,i("change",e)}}),{modifiers:M}=r(o),P=Ht("vv-radio",M,t(()=>({valid:w.value,invalid:x.value,disabled:m.value,readonly:k.value}))),{HintSlot:R,hasHintLabelOrSlot:F,hasInvalidLabelOrSlot:G,hintSlotScope:q}=Ra(u,n);return(e,t)=>(c(),v("label",{class:p(l(P)),for:l(V)},[U(f("input",{id:l(V),ref_key:"input",ref:O,"onUpdate:modelValue":t[0]||(t[0]=e=>$(N)?N.value=e:null),type:"radio",class:"vv-radio__input",name:e.name,disabled:l(C),value:l(T),tabindex:l(L),"aria-invalid":l(I),"aria-describedby":l(F)?l(A):void 0,"aria-errormessage":l(G)?l(A):void 0},null,8,Oo),[[Q,l(N)]]),b(e.$slots,"default",{value:l(_)},()=>[h(S(e.label),1)]),H(l(R),{id:l(A),class:"vv-radio__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(q))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(q))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(q))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(q))))]),key:"3"}:void 0]),1032,["id"])],10,Lo))}}),Eo=Bt,Bo=["textContent"],Io={class:"vv-radio-group__wrapper"},Do=/* @__PURE__ */o({name:"VvRadioGroup",props:Eo,emits:["update:modelValue","change"],setup(e,{emit:a}){const o=e,i=a,n=j(),s=ja("VvRadioGroup",Eo,o),u=ee(o,"modelValue",i),{disabled:d,readonly:m,vertical:h,valid:k,invalid:$,modifiers:_}=r(o);qt(Je,{modelValue:u,disabled:d,readonly:m,valid:k,invalid:$});const{getOptionLabel:w,getOptionValue:x,isOptionDisabled:V}=za(o),I=Ht("vv-radio-group",_,t(()=>({disabled:d.value,readonly:m.value,required:o.required,horizontal:!h.value,valid:k.value,invalid:$.value})));const{HintSlot:D,hintSlotScope:T}=Ra(s,n);return(e,t)=>(c(),v("fieldset",{class:p(l(I))},[e.label?(c(),v("legend",{key:0,textContent:S(e.label)},null,8,Bo)):M("v-if",!0),f("div",Io,[e.options.length>0?(c(!0),v(A,{key:0},L(e.options,(e,t)=>(c(),O(Co,C({key:t},{ref_for:!0},function(e,t){return{id:`${o.name}_opt${t}`,name:o.name,label:w(e),value:x(e),required:o.required,disabled:V(e)}}(e,t)),null,16))),128)):b(e.$slots,"default",{key:1})]),H(l(D),{class:"vv-radio-group__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l(T))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l(T))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l(T))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l(T))))]),key:"3"}:void 0]),1024)],2))}}),To={...bt,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},No=/* @__PURE__ */o({name:"VvTab",props:To,emits:["update:modelValue"],setup(e,{emit:a}){const o=e,i=a,{modifiers:n,items:u}=r(o),d=t(()=>u.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),f=s(),m=t({get:()=>o.modelValue||f.value||d.value?.[0],set:e=>{f.value=e,i("update:modelValue",e)}}),h=t(()=>["tabs",...Array.isArray(o.navModifiers)?o.navModifiers:o.navModifiers?.split(" ")??[]]);function S(e){e.tab&&(m.value=e.tab)}const k=t(()=>o.items.map(e=>({current:e.tab===m.value,...e}))),$=Ht("vv-tab",n);return(e,t)=>(c(),v("div",{class:p(l($))},[H($o,C({items:l(k),modifiers:l(h)},{onClick:S}),{item:B(({item:t,data:a,index:l})=>[b(e.$slots,"nav-item",y(g({item:t,data:a,index:l})))]),_:3},16),(c(!0),v(A,null,L(l(u),(t,a)=>(c(),v(A,{key:a},[t.tab?(c(),v("article",{key:0,class:p([{target:l(m)===t.tab},"vv-tab__panel"])},[b(e.$slots,`panel::${t.tab}`)],2)):M("v-if",!0)],64))),128))],2))}}),Mo={...Ct,...Tt,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},iconRemoveSuggestion:{type:[String,Object],default:Ie},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean},Ho=["for"],Po={key:0,class:"vv-textarea__input-before"},Ro={class:"vv-textarea__inner"},jo=["id"],Fo={key:1,class:"vv-textarea__input-after"},Uo={key:2,class:"vv-textarea__limit"},Go={class:"flex-1"},qo=["title","onClick"],zo=/* @__PURE__ */o({name:"VvTextarea",props:Mo,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(e,{emit:a}){const o=e,i=a,n=j(),d=Wt(),k=ja("VvTextarea",Mo,o),_=s(),w=s(),x=s(),{id:V,icon:I,iconPosition:D,iconRemoveSuggestion:T,labelRemoveSuggestion:N,label:P,modelValue:R,count:F,valid:G,invalid:q,loading:z,modifiers:W,debounce:K,minlength:Y,maxlength:J,storageType:X}=r(o),Q=Yt(V),ee=t(()=>`${Q.value}-hint`),te=t(()=>o.floating&&Va(o.placeholder)?" ":o.placeholder),ae=ro(R,i,K?.value),{hasIconBefore:le,hasIconAfter:oe}=Jt(I,D),{hasIcon:ie}=Jt(T),{focused:ne}=vl(_,i),re=t(()=>ne.value&&!o.disabled&&!o.readonly);u(re,e=>{if(e&&k.value.selectOnFocus&&_.value&&_.value.select(),e&&be.value?.size)x.value?.show();else if(pe.value&&be.value){const e=o.maxSuggestions;be.value.size>=e&&!be.value.has(ae.value)&&(be.value=new Set([...be.value].slice(be.value.size-e+1))),be.value.add(ae.value)}});const ue=se(_);u(ue,e=>{e&&o.autofocus&&(ne.value=!0)});const{formatted:de}=so(ae,{mode:F?.value,upperLimit:Number(J?.value),lowerLimit:Number(Y?.value)}),ve=t(()=>!o.disabled&&!o.readonly),ce=t(()=>ve.value?o.tabindex:-1),pe=t(()=>!Va(R)),fe=t(()=>!0===o.invalid||!0!==o.valid&&void 0),me=t(()=>o.storageKey??(d?.experimentalFeatures.forceInputSuggestions?o.name:void 0)),be=Gt(me,X,
|
|
6
|
+
/* @__PURE__ */new Set),ye=t(()=>be.value?[...be.value].filter(e=>Va(ae.value)||`${e}`.toLowerCase().includes(`${ae.value}`.toLowerCase())&&e!==ae.value).reverse():[]),ge=t(()=>me?.value&&be.value&&be.value.size>0);const{HintSlot:he,hasHintLabelOrSlot:Se,hasInvalidLabelOrSlot:ke,hintSlotScope:$e}=Ra(k,n),_e=Ht("vv-textarea",W,t(()=>({valid:G.value,invalid:q.value,loading:z.value,disabled:o.disabled,readonly:o.readonly,required:o.required,"icon-before":void 0!==le.value,"icon-after":void 0!==oe.value,floating:o.floating&&!Va(o.label),dirty:pe.value,focus:ne.value,resizable:o.resizable}))),we=t(()=>({name:o.name,placeholder:te.value,tabindex:ce.value,disabled:o.disabled,readonly:o.readonly,required:o.required,autocomplete:o.autocomplete,minlength:o.minlength,maxlength:o.maxlength,cols:o.cols,rows:o.rows,wrap:o.wrap,spellcheck:o.spellcheck,"aria-invalid":fe.value,"aria-describedby":Se.value?ee.value:void 0,"aria-errormessage":ke.value?ee.value:void 0})),xe=t(()=>({valid:o.valid,invalid:o.invalid,modelValue:o.modelValue,hintLabel:o.hintLabel,maxlength:o.maxlength,minlength:o.minlength,clear:Ve}));function Ve(){ae.value=void 0}return(e,t)=>(c(),v("div",{class:p(l(_e))},[l(P)?(c(),v("label",{key:0,for:l(Q),class:"vv-textarea__label"},S(l(P)),9,Ho)):M("v-if",!0),f("div",{ref_key:"wrapperEl",ref:w,class:"vv-textarea__wrapper"},[e.$slots.before?(c(),v("div",Po,[b(e.$slots,"before",y(g(l(xe))))])):M("v-if",!0),f("div",Ro,[l(le)?(c(),O(Qt,C({key:0},l(le),{class:"vv-textarea__icon"}),null,16)):M("v-if",!0),U(f("textarea",C({id:l(Q),ref_key:"textareaEl",ref:_,"onUpdate:modelValue":t[0]||(t[0]=e=>$(ae)?ae.value=e:null)},l(we),{onKeyup:t[1]||(t[1]=e=>i("keyup",e))}),null,16,jo),[[Z,l(ae)]]),l(oe)?(c(),O(Qt,C({key:1},l(oe),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):M("v-if",!0)]),e.$slots.after?(c(),v("div",Fo,[b(e.$slots,"after",y(g(l(xe))))])):M("v-if",!0),l(F)?(c(),v("span",Uo,[b(e.$slots,"count",y(g(l(xe))),()=>[h(S(l(de)),1)])])):M("v-if",!0)],512),H(l(he),{id:l(ee),class:"vv-textarea__hint"},E({_:2},[e.$slots.hint?{name:"hint",fn:B(()=>[b(e.$slots,"hint",y(g(l($e))))]),key:"0"}:void 0,e.$slots.loading?{name:"loading",fn:B(()=>[b(e.$slots,"loading",y(g(l($e))))]),key:"1"}:void 0,e.$slots.valid?{name:"valid",fn:B(()=>[b(e.$slots,"valid",y(g(l($e))))]),key:"2"}:void 0,e.$slots.invalid?{name:"invalid",fn:B(()=>[b(e.$slots,"invalid",y(g(l($e))))]),key:"3"}:void 0]),1032,["id"]),l(ge)?(c(),O(ll,{key:1,ref_key:"suggestionsDropdownEl",ref:x,reference:l(w),"autofocus-first":!1,"trigger-width":!0},{items:B(()=>[(c(!0),v(A,null,L(l(ye),t=>(c(),O(sl,{key:t,onClick:m(e=>{return a=t,ae.value=a,x.value?.hide(),void i("suggestion:selected",a);var a},["stop"])},{default:B(()=>[f("div",Go,[b(e.$slots,"suggestion",C({ref_for:!0},{value:t}),()=>[h(S(t),1)])]),l(be)&&l(ie)?(c(),v("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:l(N),onClick:m(e=>{return a=t,be.value?.delete(a),void i("suggestion:removed",a);var a},["stop"])},[H(Qt,C({ref_for:!0},l(ie)),null,16)],8,qo)):M("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):M("v-if",!0)],2))}}),Wo={...bt,position:{type:String,default:Pe.bottom},value:{type:String}},Ko=/* @__PURE__ */o({name:"VvTooltip",props:Wo,setup(e){const a=e,{modifiers:o}=r(a),i=Ht("vv-tooltip",o,t(()=>({[a.position]:!0})));return(e,t)=>(c(),v("span",{class:p(l(i)),role:"tooltip",inert:""},[b(e.$slots,"default",{},()=>[h(S(e.value),1)])],2))}});export{Ft as VvAccordion,zt as VvAccordionGroup,Kt as VvAction,ia as VvAlert,sa as VvAlertGroup,ca as VvAvatar,ma as VvAvatarGroup,ya as VvBadge,ka as VvBreadcrumb,Oa as VvButton,Ba as VvButtonGroup,Ma as VvCard,Ga as VvCheckbox,Ya as VvCheckboxGroup,Bl as VvCombobox,Hl as VvDialog,ll as VvDropdown,Pl as VvDropdownAction,nl as VvDropdownItem,il as VvDropdownOptgroup,sl as VvDropdownOption,Qt as VvIcon,Zl as VvInputFile,go as VvInputText,$o as VvNav,ko as VvNavItem,wo as VvNavSeparator,Vo as VvProgress,Co as VvRadio,Do as VvRadioGroup,$l as VvSelect,No as VvTab,zo as VvTextarea,Ko as VvTooltip};
|