@volverjs/ui-vue 0.0.3 → 0.0.4

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.
Files changed (145) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +52 -13
  3. package/dist/Volver.d.ts +5 -1
  4. package/dist/components/VvAccordion/VvAccordion.es.js +113 -66
  5. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  6. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +159 -101
  7. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  8. package/dist/components/VvAction/VvAction.es.js +170 -0
  9. package/dist/components/VvAction/VvAction.umd.js +1 -0
  10. package/dist/components/VvAction/VvAction.vue.d.ts +63 -0
  11. package/dist/components/VvAction/index.d.ts +24 -0
  12. package/dist/components/VvBadge/VvBadge.es.js +86 -16
  13. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  14. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +97 -41
  15. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  16. package/dist/components/VvButton/VvButton.es.js +434 -251
  17. package/dist/components/VvButton/VvButton.umd.js +1 -1
  18. package/dist/components/VvButton/VvButton.vue.d.ts +50 -50
  19. package/dist/components/VvButton/index.d.ts +22 -67
  20. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +118 -43
  21. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  22. package/dist/components/VvCard/VvCard.es.js +38 -25
  23. package/dist/components/VvCard/VvCard.umd.js +1 -1
  24. package/dist/components/VvCheckbox/VvCheckbox.es.js +334 -154
  25. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  26. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +2 -2
  27. package/dist/components/VvCheckbox/index.d.ts +1 -1
  28. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +401 -204
  29. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  30. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +2 -2
  31. package/dist/components/VvCheckboxGroup/index.d.ts +1 -1
  32. package/dist/components/VvCombobox/VvCombobox.es.js +950 -594
  33. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  34. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +54 -30
  35. package/dist/components/VvCombobox/index.d.ts +18 -13
  36. package/dist/components/VvDialog/VvDialog.es.js +139 -64
  37. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  38. package/dist/components/VvDropdown/VvDropdown.es.js +276 -158
  39. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  40. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +9 -9
  41. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +61 -0
  42. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +52 -0
  43. package/dist/components/VvDropdown/index.d.ts +6 -9
  44. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +251 -0
  45. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -0
  46. package/dist/components/VvDropdownItem/VvDropdownItem.es.js +30 -15
  47. package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
  48. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +176 -0
  49. package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -0
  50. package/dist/components/VvIcon/VvIcon.es.js +48 -32
  51. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  52. package/dist/components/VvInputText/VvInputText.es.js +508 -344
  53. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  54. package/dist/components/VvInputText/VvInputText.vue.d.ts +11 -4
  55. package/dist/components/VvInputText/index.d.ts +13 -2
  56. package/dist/components/VvProgress/VvProgress.es.js +90 -20
  57. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  58. package/dist/components/VvRadio/VvRadio.es.js +305 -125
  59. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  60. package/dist/components/VvRadio/VvRadio.vue.d.ts +2 -2
  61. package/dist/components/VvRadio/index.d.ts +1 -1
  62. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +372 -175
  63. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  64. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +2 -2
  65. package/dist/components/VvRadioGroup/index.d.ts +1 -1
  66. package/dist/components/VvSelect/VvSelect.es.js +371 -216
  67. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  68. package/dist/components/VvSelect/VvSelect.vue.d.ts +11 -4
  69. package/dist/components/VvSelect/index.d.ts +5 -5
  70. package/dist/components/VvTextarea/VvTextarea.es.js +408 -244
  71. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  72. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +11 -4
  73. package/dist/components/VvTextarea/index.d.ts +5 -5
  74. package/dist/components/VvTooltip/VvTooltip.es.js +88 -18
  75. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  76. package/dist/components/index.es.js +1913 -1521
  77. package/dist/components/index.umd.js +1 -1
  78. package/dist/composables/dropdown/useInjectDropdown.d.ts +1 -1
  79. package/dist/composables/dropdown/useProvideDropdown.d.ts +2 -2
  80. package/dist/constants.d.ts +30 -0
  81. package/dist/directives/index.es.js +128 -0
  82. package/dist/directives/index.umd.js +1 -0
  83. package/dist/directives/v-tooltip.es.js +126 -0
  84. package/dist/directives/v-tooltip.umd.js +1 -0
  85. package/dist/icons.es.js +3 -3
  86. package/dist/icons.umd.js +1 -1
  87. package/dist/index.es.js +2102 -1761
  88. package/dist/index.umd.js +1 -1
  89. package/dist/props/index.d.ts +179 -11
  90. package/dist/resolvers/unplugin.d.ts +8 -8
  91. package/dist/resolvers/unplugin.es.js +51 -30
  92. package/dist/resolvers/unplugin.umd.js +1 -1
  93. package/dist/stories/Combobox/Combobox.settings.d.ts +44 -0
  94. package/dist/stories/Dropdown/Dropdown.settings.d.ts +3 -2
  95. package/package.json +60 -34
  96. package/src/Volver.ts +12 -5
  97. package/src/assets/icons/detailed.json +1 -1
  98. package/src/assets/icons/normal.json +1 -1
  99. package/src/assets/icons/simple.json +1 -1
  100. package/src/components/VvAction/VvAction.vue +144 -0
  101. package/src/components/VvAction/index.ts +5 -0
  102. package/src/components/VvButton/VvButton.vue +31 -114
  103. package/src/components/VvButton/index.ts +6 -79
  104. package/src/components/VvCombobox/VvCombobox.vue +54 -42
  105. package/src/components/VvCombobox/index.ts +11 -9
  106. package/src/components/VvDropdown/VvDropdownAction.vue +44 -0
  107. package/src/components/VvDropdown/VvDropdownOption.vue +65 -0
  108. package/src/components/VvDropdown/index.ts +4 -9
  109. package/src/components/VvSelect/index.ts +2 -4
  110. package/src/composables/dropdown/useInjectDropdown.ts +1 -1
  111. package/src/composables/dropdown/useProvideDropdown.ts +7 -9
  112. package/src/composables/useModifiers.ts +4 -7
  113. package/src/constants.ts +36 -0
  114. package/src/props/index.ts +106 -14
  115. package/src/resolvers/unplugin.ts +81 -48
  116. package/src/stories/Accordion/AccordionSlots.stories.mdx +2 -2
  117. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +2 -1
  118. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +2 -1
  119. package/src/stories/Button/Button.stories.mdx +4 -2
  120. package/src/stories/Button/Button.test.ts +3 -1
  121. package/src/stories/Button/ButtonModifiers.stories.mdx +2 -2
  122. package/src/stories/Button/ButtonSlots.stories.mdx +8 -7
  123. package/src/stories/Button/ButtonState.stories.mdx +2 -11
  124. package/src/stories/Card/Card.stories.mdx +2 -1
  125. package/src/stories/Checkbox/Checkbox.stories.mdx +2 -1
  126. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +2 -1
  127. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +2 -1
  128. package/src/stories/Combobox/Combobox.settings.ts +44 -0
  129. package/src/stories/Combobox/Combobox.stories.mdx +40 -1
  130. package/src/stories/Dialog/Dialog.stories.mdx +2 -1
  131. package/src/stories/Dropdown/Dropdown.settings.ts +3 -2
  132. package/src/stories/Dropdown/Dropdown.stories.mdx +14 -12
  133. package/src/stories/Dropdown/DropdownMultilevel.stories.mdx +56 -0
  134. package/src/stories/Dropdown/DropdownSlots.stories.mdx +14 -13
  135. package/src/stories/Icon/Icon.stories.mdx +2 -1
  136. package/src/stories/Icon/IconsCollection.stories.mdx +2 -1
  137. package/src/stories/InputText/InputText.stories.mdx +2 -1
  138. package/src/stories/Progress/Progress.stories.mdx +2 -1
  139. package/src/stories/Radio/Radio.stories.mdx +2 -1
  140. package/src/stories/RadioGroup/RadioGroup.stories.mdx +2 -1
  141. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +2 -1
  142. package/src/stories/Select/Select.stories.mdx +2 -1
  143. package/src/stories/Textarea/Textarea.stories.mdx +2 -1
  144. package/src/stories/Tooltip/Tooltip.stories.mdx +2 -1
  145. package/src/stories/Tooltip/TooltipDirective.stories.mdx +2 -1
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(C,x){typeof exports=="object"&&typeof module<"u"?x(exports,require("@iconify/vue"),require("vue"),require("nanoid"),require("@floating-ui/vue")):typeof define=="function"&&define.amd?define(["exports","@iconify/vue","vue","nanoid","@floating-ui/vue"],x):(C=typeof globalThis<"u"?globalThis:C||self,x(C.volver={},C.vue$1,C.vue,C.nanoid,C.vue$2))})(this,function(C,x,e,ot,Y){"use strict";var $l=Object.defineProperty;var Nl=(C,x,e)=>x in C?$l(C,x,{enumerable:!0,configurable:!0,writable:!0,value:e}):C[x]=e;var ge=(C,x,e)=>(Nl(C,typeof x!="symbol"?x+"":x,e),e);const lt="vv";var te=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(te||{}),De=(o=>(o.topStart="top-start",o.topEnd="top-end",o.bottomStart="bottom-start",o.bottomEnd="bottom-end",o.leftStart="left-start",o.leftEnd="left-end",o.rightStart="right-start",o.rightEnd="right-end",o))(De||{}),Ve=(o=>(o.before="before",o.after="after",o))(Ve||{});const nt=Symbol.for("volver"),Re=Symbol.for("buttonGroup"),Oe=Symbol.for("radioGroup"),Te=Symbol.for("checkGroup"),xe=Symbol.for("accordionGroup"),pe={valid:Boolean,validLabel:[String,Array]},fe={invalid:Boolean,invalidLabel:[String,Array]},Be={loading:Boolean,loadingLabel:String},ce={disabled:Boolean},me={readonly:Boolean},J={modifiers:[String,Array]},be={hintLabel:{type:String,default:""}},Ce={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},at={count:{type:[Boolean,String],default:!1,validator:o=>[!0,!1,"limit","countdown"].includes(o)}},rt={debounce:[Number,String]},Ee={icon:{type:[String,Object]},iconPosition:{type:String,default:Ve.before,validation:o=>Object.values(Ve).includes(o)}},ye={tabindex:{type:[String,Number],default:0}},Pe={floating:Boolean},_e={unselectable:{type:Boolean,default:!0}},ve={id:[String,Number]},we={placement:{type:String,default:te.bottom,validator:o=>Object.values(te).includes(o)||Object.values(De).includes(o)},transitionName:{type:String},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},autoClose:{type:Boolean,default:!0},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean}},Se={...ve,name:{type:String,required:!0}},Me={autofocus:Boolean},Le={autocomplete:{type:String,default:"off"}},ze={...Se,...Me,...Le,...ye,...ce,...me,...pe,...fe,...be,...Be,...J,...at,...rt,...Ee,...Pe,minlength:Number,maxlength:Number,placeholder:String,required:Boolean,label:String},He={...Se,...ye,...pe,...fe,...be,...ce,...me,...J,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String},Fe={...pe,...fe,...Ce,...be,...ce,...me,...J,modelValue:[String,Array],label:String,name:{type:String,required:!0},vertical:Boolean},st={...J,position:{type:String,default:te.bottom},value:{type:String}},it=e.defineComponent({__name:"VvTooltip",props:st,setup(o){const n=o,{modifiers:t}=toRefs(n),a=useBemModifiers("vv-tooltip",t,computed(()=>({[n.position]:!0})));return(l,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(a)),role:"tooltip",inert:""},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(l.value),1)])],2))}}),ct={tooltip:{beforeMount(o,n){const t=h(it,{value:n.value,position:n.arg});e.render(t,o)}}};function Ge(o,n,t){const a=t||o.name;if(!a)return o;const l=n==null?void 0:n[a],i=o.props;return!l||!i?{...o,name:a}:{...o,name:a,props:Object.keys(i).reduce((c,d)=>{if(!(d in l))return c[d]=i[d],c;const p=l[d];return typeof i[d]=="function"||Array.isArray(i[d])?(c[d]={type:i[d],default:p},c):(c[d]={...i[d],default:p},c)},{})}}class dt{constructor({fetchWithCredentials:n,fetchOptions:t,provider:a,nuxt:l,iconsCollections:i}={}){ge(this,"fetchOptions",{});ge(this,"nuxt",!1);ge(this,"iconsCollections",[]);ge(this,"provider",lt);t&&(this.fetchOptions=t),n&&(this.fetchOptions={...this.fetchOptions,credentials:"include"}),a&&(this.provider=a),l&&(this.nuxt=l),i&&Array.isArray(i)&&i.forEach(c=>{this.addCollection(c,this.provider)})}addCollection(n,t){return this.iconsCollections=[...this.iconsCollections,n],x.addCollection(n,t??this.provider)}addIcon(n,t){return x.addIcon(n,t)}addAPIProvider(n,t){return x.addAPIProvider(n,t)}fetchIcon(n,t={cache:"force-cache"}){return new Promise((a,l)=>{fetch(n,{...this.fetchOptions,...t}).catch(i=>l(i)).then(i=>i==null?void 0:i.text()).then(i=>a(i))})}}const ut={install(o,n){const t=new dt(n);o.config.globalProperties.$vv=t,n.components&&Object.entries(n.components).forEach(([a,l])=>{o.component(a,Ge(l,n.defaults))}),n.aliases&&Object.entries(n.aliases).forEach(([a,l])=>{o.component(a,Ge(l,n.defaults,a))}),Object.entries(ct).forEach(([a,l])=>{o.directive(a,l)}),o.provide(nt,t)}},pt={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},ft=["update:modelValue"];function mt(o,n){const{group:t,isInGroup:a,getGroupOrLocalRef:l}=useInjectedGroupState(xe),{title:i,content:c}=toRefs(o),d=l("modelValue",o,n),p=l("disabled",o),u=l("collapse",o),r=l("modifiers",o);return{modelValue:d,disabled:p,isInGroup:a,group:t,collapse:u,modifiers:r,title:i,content:c}}const bt=["id","open"],ht=["aria-controls","aria-expanded"],gt=["aria-hidden"],yt={name:"VvAccordion"},Ue=e.defineComponent({...yt,props:pt,emits:ft,setup(o,{emit:n}){const t=o,a=useAttrs(),l=computed(()=>t.name||(a==null?void 0:a.id)||ot.nanoid()),{modifiers:i,title:c,content:d,disabled:p,collapse:u,modelValue:r,isInGroup:s}=mt(t,n),f=ref(!1),g=computed({get:()=>s.value?u.value&&Array.isArray(r.value)?r.value.includes(l.value):r.value===l.value:r.value===void 0?f.value:r.value,set:b=>{if(s.value){if(u.value&&Array.isArray(r.value)){if(b){r.value.push(l.value);return}r.value=r.value.filter(_=>_!==l.value);return}r.value=b?l.value:null;return}if(r.value===void 0&&typeof b=="boolean"){f.value=b;return}r.value=b}}),S=useBemModifiers("vv-accordion",i,computed(()=>({disabled:p.value}))),V=useToggle(g);return(b,_)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(l),class:e.normalizeClass(e.unref(S)),open:e.unref(g),onClick:_[0]||(_[0]=e.withModifiers(E=>e.unref(V)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(l),"aria-expanded":e.unref(g),class:"vv-collapse__summary"},[e.renderSlot(b.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(c)),1)])],8,ht),e.createElementVNode("div",{"aria-hidden":!e.unref(g),class:"vv-collapse__content"},[e.renderSlot(b.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(d)),1)])],8,gt)],10,bt))}}),_t={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},vt=["update:modelValue"],St={name:"VvAccordionGroup"},kt=e.defineComponent({...St,props:_t,emits:vt,setup(o,{emit:n}){const t=o,{disabled:a,collapse:l,modifiers:i,itemModifiers:c,items:d}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&l.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const p=ref([]),u=computed({get:()=>{var s;return t.modelValue!==void 0?l.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:l.value?p.value:(s=p.value)==null?void 0:s[0]},set:s=>{if(t.modelValue!==void 0)return(Array.isArray(t.modelValue)||l.value)&&!Array.isArray(s)&&(s=[s]),n("update:modelValue",s);p.value=Array.isArray(s)?s:[s]}});useProvideGroupState({key:xe,modelValue:u,disabled:a,collapse:l,modifiers:c});const r=useBemModifiers("vv-accordion-group",i,computed(()=>({disabled:a.value})));return(s,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(r))},[e.renderSlot(s.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),g=>(e.openBlock(),e.createBlock(Ue,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content}),{header:e.withCtx(S=>[e.renderSlot(s.$slots,`header::${g.name}`,e.normalizeProps(e.guardReactiveProps(S)))]),details:e.withCtx(S=>[e.renderSlot(s.$slots,`details::${g.name}`,e.normalizeProps(e.guardReactiveProps(S)))]),_:2},1040))),128))])],2))}}),Vt={...J,value:[String,Number]},Bt={name:"VvBadge"},je=e.defineComponent({...Bt,props:Vt,setup(o){const n=o,{modifiers:t}=toRefs(n),a=useBemModifiers("vv-badge",t);return(l,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(a)),role:"status"},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(l.value),1)])],2))}});function Ct(o,n,t){return computed(()=>{const a={[o]:!0};let l=unref(n);return l&&(!Array.isArray(l)&&typeof l=="string"&&(l=l.split(" ")),Array.isArray(l)&&l.forEach(i=>{a[`${o}--${i}`]=!0})),t&&Object.keys(t.value).forEach(i=>{a[`${o}--${i}`]=unref(t.value[i])}),a})}const Et={...J,routes:Array},Pt={class:"vv-breadcrumb__list"},wt=["content"],$t={name:"VvBreadcrumb"},Nt=e.defineComponent({...$t,props:Et,setup(o){const n=o,{modifiers:t}=toRefs(n),a=Ct("vv-breadcrumb",t);return(l,i)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(a)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",Pt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.routes,(c,d)=>{var p,u,r,s;return e.openBlock(),e.createElementBlock("li",{key:`${c.label}-${d}`,class:e.normalizeClass({"vv-breadcrumb__item":d<Number((p=l.routes)==null?void 0:p.length)-1,"vv-breadcrumb__item-active":d===Number((u=l.routes)==null?void 0:u.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.to?"router-link":c.href?"a":"span"),e.mergeProps(c,{class:{"vv-breadcrumb__link":d<Number((r=l.routes)==null?void 0:r.length)-1},"aria-current":d===Number((s=l.routes)==null?void 0:s.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:c,index:d})),()=>[e.createTextVNode(e.toDisplayString(c.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${d+1}`},null,8,wt)],2)}),128))])],2))}}),At={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}},It={name:"VvIcon"},L=e.defineComponent({...It,props:At,setup(o){const n=o,t=ref(!0),a=useVolver(),{modifiers:l}=toRefs(n),i=useBemModifiers("vv-icon",l),c=computed(()=>n.provider||(a==null?void 0:a.provider)),d=computed(()=>{const r=n.name??"",s=`@${c.value}:${n.prefix}:${n.name}`;return x.iconExists(r)?r:x.iconExists(s)?s:(a==null?void 0:a.iconsCollections.find(f=>{const g=`@${c.value}:${f.prefix}:${r}`;if(x.iconExists(g))return g}))||r});function p(r){let s=null;if(typeof window>"u"){const{JSDOM:V}=require("jsdom");s=new V().window}return(s?new s.DOMParser:new window.DOMParser).parseFromString(r,"text/html").querySelector("svg")}function u(r){const s=p(r),f=(s==null?void 0:s.innerHTML.trim())||"";s&&f&&x.addIcon(`@${c.value}:${n.prefix}:${n.name}`,{body:f,height:s.viewBox.baseVal.height,width:s.viewBox.baseVal.width})}return a&&(n.src&&!x.iconExists(`@${c.value}:${n.prefix}:${n.name}`)?(t.value=!1,a.fetchIcon(n.src).then(r=>{r&&(u(r),t.value=!0)}).catch(r=>{throw new Error(`During fetch icon: ${r==null?void 0:r.message}`)})):n.svg&&u(n.svg)),(r,s)=>e.unref(t)?(e.openBlock(),e.createBlock(e.unref(x.Icon),e.mergeProps({key:0,class:e.unref(i)},{inline:r.inline,width:r.width,height:r.height,horizontalFlip:r.horizontalFlip,verticalFlip:r.verticalFlip,flip:r.flip,rotate:r.rotate,color:r.color,onLoad:r.onLoad,icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("",!0)}});var We=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(We||{}),ne=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(ne||{}),qe=(o=>(o._blank="_blank",o._self="_self",o._parent="_parent",o._top="_top",o))(qe||{});const Dt=["update:modelValue"],Rt={...ve,...J,...ce,..._e,icon:[String,Object],iconPosition:{type:String,default:te.left,validator:o=>Object.values(te).includes(o)},label:[String,Number],loading:Boolean,loadingIcon:{type:String,default:"eos-icons:bubble-loading"},loadingLabel:{type:String,default:"Loading..."},to:{type:[String,Object]},href:String,target:{type:String,validator:o=>Object.values(qe).includes(o)},active:Boolean,pressed:Boolean,rel:{type:String,default:"noopener noreferrer"},type:{type:String,default:"button",validator:o=>Object.values(We).includes(o)},toggle:{type:Boolean,default:!1},modelValue:String};function Ot(o,n){var _;const{group:t,isInGroup:a,getGroupOrLocalRef:l}=useInjectedGroupState(Re),{id:i,iconPosition:c,icon:d,label:p,pressed:u,modifiers:r}=toRefs(o),s=l("modelValue",o,n),f=l("disabled",o),g=l("toggle",o),S=l("unselectable",o),V=((_=t==null?void 0:t.value)==null?void 0:_.multiple)??ref(!1),b=computed(()=>{var B;const E=r!=null&&r.value?Array.isArray(r.value)?r.value:[r.value]:[],N=(B=t==null?void 0:t.value.itemModifiers)!=null&&B.value?Array.isArray(t.value.itemModifiers.value)?t.value.itemModifiers.value:[t.value.itemModifiers.value]:[];return[...E,...N]});return{group:t,isInGroup:a,modelValue:s,disabled:f,toggle:g,unselectable:S,multiple:V,id:i,modifiers:b,pressed:u,iconPosition:c,icon:d,label:p}}const Tt={key:1,class:"vv-button__label"},xt={key:1,class:"vv-button__label"},Mt={name:"VvButton"},Lt=e.defineComponent({...Mt,props:Rt,emits:Dt,setup(o,{expose:n,emit:t}){const a=o,l=useAttrs(),i=useSlots(),{id:c,modifiers:d,iconPosition:p,icon:u,label:r,modelValue:s,disabled:f,toggle:g,unselectable:S}=Ot(a,t),V=useUniqueId(c),b=computed(()=>(l==null?void 0:l.name)||V.value),_=useVolver(),E=ref(null);n({$el:E});const{reference:N,bus:B,aria:w}=useInjectedDropdownTrigger();watch(()=>E.value,k=>{N&&(N.value=k)});const{role:R}=useInjectedDropdownAction(),M=computed(()=>{switch(!0){case f.value:return ne.button;case a.to!==void 0:return _!=null&&_.nuxt?ne.nuxtLink:ne.routerLink;case a.href!==void 0:return ne.a;default:return ne.button}}),G=computed(()=>g.value?Array.isArray(s.value)?contains(b.value,s.value):equals(b.value,s.value):a.pressed),P=useBemModifiers("vv-button",d,computed(()=>({active:a.active,pressed:G.value,disabled:f.value,reverse:[te.right,te.bottom].includes(p.value),column:[te.top,te.bottom].includes(p.value),iconOnly:Boolean((u==null?void 0:u.value)&&!(r!=null&&r.value)&&!i.default)}))),I=computed(()=>typeof(u==null?void 0:u.value)=="string"?{name:u==null?void 0:u.value}:u==null?void 0:u.value),T=computed(()=>{const k={...w==null?void 0:w.value,"aria-pressed":G.value?!0:void 0,class:P.value,role:R};switch(M.value){case ne.a:return{...k,role:k.role??"button",href:a.href,target:a.target,rel:a.rel};case ne.routerLink:case ne.nuxtLink:return{...k,role:k.role??"button",to:a.to,target:a.target};default:return{...k,type:a.type,disabled:f.value}}}),U=k=>{if(B==null||B.emit("click",k),g.value){if(Array.isArray(s.value)){if(contains(b.value,s.value)){S.value&&(s.value=s.value.filter(j=>j!==b.value));return}s.value.push(b.value);return}if(equals(b,s.value)&&S.value){s.value=void 0;return}s.value=b.value}},X=k=>{B==null||B.emit("mouseover",k)},Q=k=>{B==null||B.emit("mouseleave",k)};return(k,j)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(M)),e.mergeProps(e.unref(T),{id:e.unref(V),ref_key:"$el",ref:E,onClickPassive:U,onMouseoverPassive:X,onMouseleavePassive:Q}),{default:e.withCtx(()=>[e.renderSlot(k.$slots,"default",{},()=>[k.loading?e.renderSlot(k.$slots,"loading",{key:0},()=>[k.loadingIcon?(e.openBlock(),e.createBlock(L,{key:0,class:"vv-button__loading-icon",name:k.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),k.loadingLabel?(e.openBlock(),e.createElementBlock("span",Tt,e.toDisplayString(k.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(k.$slots,"before"),e.unref(u)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(I)),null,16)):e.createCommentVNode("",!0),e.unref(r)?(e.openBlock(),e.createElementBlock("span",xt,[e.renderSlot(k.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(r)),1)])])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"after")],64))])]),_:3},16,["id"]))}}),zt={...J,...ce,..._e,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},Ht=["update:modelValue"],Ft={name:"VvButtonGroup"},Gt=e.defineComponent({...Ft,props:zt,emits:Ht,setup(o,{emit:n}){const t=o,{disabled:a,toggle:l,modifiers:i,multiple:c,unselectable:d,itemModifiers:p}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&c.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const u=computed({get:()=>c.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue,set:s=>(s!==void 0&&(Array.isArray(t.modelValue)||c.value)&&!Array.isArray(s)&&(s=[s]),n("update:modelValue",s))});useProvideGroupState({key:Re,modelValue:u,disabled:a,toggle:l,multiple:c,unselectable:d,itemModifiers:p});const r=useBemModifiers("vv-button-group",i);return(s,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(r)),role:"group"},[e.renderSlot(s.$slots,"default")],2))}}),Ut={title:String,modifiers:[String,Array]},jt={key:0,class:"vv-card__header"},Wt={key:1,class:"vv-card__content"},qt={key:2,class:"vv-card__footer"},Kt={name:"VvCard"},Yt=e.defineComponent({...Kt,props:Ut,setup(o){const n=o,{modifiers:t}=toRefs(n),a=useBemModifiers("vv-card",t);return(l,i)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(a))},[l.$slots.header||l.title?(e.openBlock(),e.createElementBlock("header",jt,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.content?(e.openBlock(),e.createElementBlock("div",Wt,[e.renderSlot(l.$slots,"content")])):e.createCommentVNode("",!0),l.$slots.footer?(e.openBlock(),e.createElementBlock("footer",qt,[e.renderSlot(l.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Jt={...He,...J,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean},Xt=["click","update:modelValue","change","blur"];function Qt(o,n){const{group:t,isInGroup:a,getGroupOrLocalRef:l}=useInjectedGroupState(Te),{id:i,switch:c,indeterminate:d}=toRefs(o),p=l("modelValue",o,n),u=l("readonly",o),r=l("disabled",o),s=l("valid",o),f=l("invalid",o);return{id:i,propsSwitch:c,indeterminate:d,group:t,isInGroup:a,modelValue:p,readonly:u,disabled:r,valid:s,invalid:f}}function ke(o){return Array.isArray(o)?o.filter(n=>isString(n)).join(" "):o}function se(o,n){const{invalid:t,valid:a,hint:l,loading:i}=n,{hintLabel:c,modelValue:d,valid:p,validLabel:u,invalid:r,invalidLabel:s,...f}=toRefs(o),g=resolveFieldData(f,"loading"),S=resolveFieldData(f,"loadingLabel"),V=computed(()=>r.value?!!(r.value&&t||s!=null&&s.value&&Array.isArray(s.value)&&s.value.length>0||s!=null&&s.value&&!isEmpty(s)):!1),b=computed(()=>!!(c&&c.value||l)),_=computed(()=>!!(u&&u.value||a)),E=computed(()=>!!(g!=null&&g.value&&i||g!=null&&g.value&&(S!=null&&S.value))),N=computed(()=>b.value||_.value||V.value||E.value);return{hasInvalid:V,hasHint:b,hasValid:_,hasLoading:E,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(B){const w=computed(()=>{const R=toReactive({hintLabel:c,modelValue:d,valid:p,validLabel:u,invalid:r,invalidLabel:s,loading:g,loadingLabel:S,...B.params});return r!=null&&r.value?(t==null?void 0:t(R))||ke(s==null?void 0:s.value)||(c==null?void 0:c.value):p!=null&&p.value?(a==null?void 0:a(R))||ke(u==null?void 0:u.value)||(c==null?void 0:c.value):g!=null&&g.value?(i==null?void 0:i(R))||ke(S==null?void 0:S.value)||(c==null?void 0:c.value):(l==null?void 0:l(R))||ke(c==null?void 0:c.value)||(c==null?void 0:c.value)});return{isVisible:N,hasInvalid:V,hasValid:_,hintContent:w}},render(){if(this.isVisible)return h("small",{role:this.hasInvalid?"alert":this.hasValid?"status":void 0},this.hintContent)}}}}const Zt=["for"],eo=["id","name","disabled","value","tabindex","aria-invalid"],to={name:"VvCheckbox"},Ke=e.defineComponent({...to,props:Jt,emits:Xt,setup(o,{emit:n}){const t=o,a=useSlots(),{id:l,disabled:i,readonly:c,valid:d,invalid:p,propsSwitch:u,modelValue:r,indeterminate:s,isInGroup:f}=Qt(t,n),g=useUniqueId(l),S=computed(()=>_.value?-1:t.tabindex),V=ref(),b=computed(()=>t.uncheckedValue!==void 0&&!f.value),_=computed(()=>i.value||c.value),E=computed(()=>{if(p.value===!0)return!0;if(d.value===!0)return!1}),N=computed(()=>b.value?r.value===t.value:Array.isArray(r.value)?contains(t.value,r.value):equals(t.value,r.value)),B=computed(()=>!!(s.value||!N.value&&b.value&&t.uncheckedValue!==r.value)),w=computed(()=>{if(!b.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),R=computed({get(){return N.value},set(I){if(b.value)r.value=I?t.value:t.uncheckedValue;else if(Array.isArray(r.value)||f.value){const T=new Set(Array.isArray(r.value)?r.value:r.value!==void 0?[r.value]:[]);I?T.add(t.value):T.delete(t.value),r.value=[...T]}else r.value=I?t.value:void 0;n("change",I)}}),{modifiers:M}=toRefs(t),G=useBemModifiers("vv-checkbox",M,computed(()=>({switch:u.value,valid:d.value,invalid:p.value,disabled:i.value,readonly:c.value,indeterminate:s.value})));watchEffect(()=>{b.value&&Array.isArray(r.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),watch(()=>B.value,I=>{I?V.value.indeterminate=!0:V.value.indeterminate=!1}),onMounted(()=>{B.value&&(V.value.indeterminate=!0)});const{HintSlot:P}=se(t,a);return(I,T)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(G)),for:e.unref(g)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(g),ref_key:"input",ref:V,"onUpdate:modelValue":T[0]||(T[0]=U=>e.isRef(R)?R.value=U:null),type:"checkbox",class:"vv-checkbox__input",name:I.name,disabled:e.unref(_),value:e.unref(w),tabindex:e.unref(S),"aria-invalid":e.unref(E)},null,8,eo),[[e.vModelCheckbox,e.unref(R)]]),e.renderSlot(I.$slots,"default",{value:e.unref(r)},()=>[e.createTextVNode(e.toDisplayString(I.label),1)]),e.createVNode(e.unref(P),{class:"vv-checkbox__hint",params:{value:e.unref(r)}},null,8,["params"])],10,Zt))}}),oo=Fe,lo=["update:modelValue","change"],no=["textContent"],ao={class:"vv-checkbox-group__wrapper"},ro={name:"VvCheckboxGroup"},so=e.defineComponent({...ro,props:oo,emits:lo,setup(o,{emit:n}){const t=o,a=useSlots(),l=useVModel(t,"modelValue",n),{disabled:i,readonly:c,vertical:d,valid:p,invalid:u,modifiers:r}=toRefs(t);useProvideGroupState({key:Te,modelValue:l,disabled:i,readonly:c,valid:p,invalid:u});const{getOptionLabel:s,getOptionValue:f}=useOptions(t),g=useBemModifiers("vv-checkbox-group",r,computed(()=>({disabled:i.value,readonly:c.value,horizontal:!d.value,valid:p.value,invalid:u.value}))),S=(b,_)=>({id:`${t.name}_opt${_}`,name:t.name,label:s(b),value:f(b)}),{HintSlot:V}=se(t,a);return(b,_)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[b.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(b.label)},null,8,no)):e.createCommentVNode("",!0),e.createElementVNode("div",ao,[b.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(b.options,(E,N)=>(e.openBlock(),e.createBlock(Ke,e.mergeProps({key:N},S(E,N)),null,16))),128)):e.renderSlot(b.$slots,"default",{key:1})]),e.createVNode(e.unref(V),{class:"vv-checkbox-group__hint"})],2))}}),io=["update:modelValue","change:search","focus","blur"],co={...Se,...ye,...pe,...fe,...be,...Be,...ce,...me,...J,...Ce,...Ee,...Pe,..._e,...we,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,noResultsLabel:{type:String,default:"No results"},selectedLabel:{type:String,default:"Selected"},deselectLabel:{type:String,default:"Deselect"},pressToSelectLabel:{type:String,default:"Press enter to select"},pressToDeselectLabel:{type:String,default:"Press enter to remove"},placeholder:String,searchable:Boolean,searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...we.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array]},autoOpen:Boolean,autoClose:Boolean},Ye=["listbox","menu"],uo={...ve,...J,...we,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:Ye[1],validator:o=>Ye.includes(o)}},po=["id","tabindex","role","aria-labelledby"],fo={name:"VvDropdown",inheritAttrs:!1},$e=e.defineComponent({...fo,props:uo,emits:["update:modelValue"],setup(o,{emit:n}){const t=o,{id:a}=toRefs(t),l=useUniqueId(a),i=useAttrs(),c=ref("auto"),d=ref("auto"),p=ref(null),u=ref(null),r=ref(null),s=ref(null),f=computed({get:()=>t.reference??p.value,set:m=>{p.value=m}}),g=computed(()=>{const m=[];if(t.autoPlacement?typeof t.autoPlacement=="boolean"?m.push(Y.autoPlacement()):m.push(Y.autoPlacement(t.autoPlacement)):t.flip&&(typeof t.flip=="boolean"?m.push(Y.flip()):m.push(Y.flip(t.flip))),t.shift&&(typeof t.shift=="boolean"?m.push(Y.shift()):m.push(Y.shift(t.shift))),t.size){const D=({availableWidth:Z,availableHeight:re})=>{c.value=`${Z}px`,d.value=`${re}px`};typeof t.size=="boolean"?m.push(Y.size({apply:D})):m.push(Y.size({...t.size,apply:D}))}return t.offset&&(m.push(Y.offset(Number(t.offset))),["string","number"].includes(typeof t.offset)?m.push(Y.offset(Number(t.offset))):m.push(Y.offset(t.offset))),t.arrow&&m.push(Y.arrow({element:r})),m}),{x:S,y:V,strategy:b,middlewareData:_,placement:E}=Y.useFloating(f,u,{whileElementsMounted:Y.autoUpdate,placement:t.placement,middleware:g}),N=computed(()=>({position:b.value,top:`${V.value??0}px`,left:`${S.value??0}px`,maxWidth:c.value,maxHeight:d.value,width:t.triggerWidth&&f.value?`${f.value.offsetWidth}px`:void 0})),B=computed(()=>E.value.split("-")[0]),w=computed(()=>({top:"bottom",right:"left",bottom:"top",left:"right"})[B.value]??"bottom"),R=computed(()=>{var m,D,Z,re;return["bottom","top"].includes(w.value)?{right:`${((m=_.value.arrow)==null?void 0:m.x)??0}px`,[w.value]:`${-(((D=r.value)==null?void 0:D.offsetWidth)??0)/2}px`}:{top:`${((Z=_.value.arrow)==null?void 0:Z.y)??0}px`,[w.value]:`${-(((re=r.value)==null?void 0:re.offsetWidth)??0)/2}px`}}),M=useVModel(t,"modelValue",n),G=ref(!1),P=computed({get:()=>M.value??G.value,set:m=>{if(M.value===void 0){G.value=m;return}M.value=m}}),I=()=>{P.value=!0},T=()=>{P.value=!1},U=()=>{P.value=!P.value},X=m=>{f.value=m};watch(P,m=>{m&&t.autofocusFirst&&nextTick(()=>{const D=W(u.value);D.length>0&&D[0].focus()})}),onClickOutside(u,()=>{t.autoClose&&(P.value=!1)},{ignore:[f]});const Q=computed(()=>{var m;return((m=f.value)==null?void 0:m.getAttribute("id"))??void 0}),k=computed(()=>({"aria-controls":l.value,"aria-haspopup":!0,"aria-expanded":P.value})),{component:j,bus:oe}=useProvideDropdownTrigger({reference:f,id:l,expanded:P,aria:k});oe.on("click",U);const{role:K,modifiers:ae}=toRefs(t),{itemRole:z}=useProvideDropdownItem({role:K,expanded:P}),A=useBemModifiers("vv-dropdown",ae,computed(()=>({arrow:t.arrow}))),{focused:H}=useFocusWithin(u);function W(m){return m?[...m.querySelectorAll('a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])')].filter(D=>!D.hasAttribute("disabled")&&!D.getAttribute("aria-hidden")):[]}const le=()=>{nextTick(()=>{if(H.value){const m=W(u.value);if(m.length===0||!document.activeElement)return;const D=m.indexOf(document.activeElement);D<m.length-1?m[D+1].focus():m[0].focus()}})},ee=()=>{nextTick(()=>{if(H.value){const m=W(u.value);if(m.length===0||!document.activeElement)return;const D=m.indexOf(document.activeElement);D>0?m[D-1].focus():m[m.length-1].focus()}})};return onKeyStroke("Escape",m=>{P.value&&(m.preventDefault(),T())}),onKeyStroke("ArrowDown",m=>{P.value&&H.value&&(m.preventDefault(),le())}),onKeyStroke("ArrowUp",m=>{P.value&&H.value&&(m.preventDefault(),ee())}),onKeyStroke([" ","Enter"],m=>{P.value&&H.value&&(m.preventDefault(),document.activeElement.click())}),(m,D)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(j),null,{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:X,show:I,hide:T,toggle:U,expanded:e.unref(P),aria:e.unref(k)})))]),_:3}),e.createVNode(e.Transition,{name:m.transitionName},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:u,style:e.normalizeStyle(e.unref(N)),class:e.normalizeClass(e.unref(A))},[t.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:r,style:e.normalizeStyle(e.unref(R)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(P)}))),e.createElementVNode("ul",e.mergeProps(e.unref(i),{id:e.unref(l),ref_key:"listEl",ref:s,tabindex:e.unref(P)?void 0:-1,role:e.unref(K),"aria-labelledby":e.unref(Q),class:"vv-dropdown__list"}),[e.renderSlot(m.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(z)})))],16,po),e.renderSlot(m.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(P)})))],6),[[e.vShow,e.unref(P)]])]),_:3},8,["name"])],64))}}),mo={name:"VvDropdownItem"},Je=e.defineComponent({...mo,setup(o){const{role:n,expanded:t}=useInjectedDropdownItem(),a=ref(null);useProvideDropdownAction({expanded:t});const l=useElementHover(a),{focused:i}=useFocus(a),{focused:c}=useFocusWithin(a);return watch(l,d=>{d&&(i.value=!0)}),(d,p)=>(e.openBlock(),e.createElementBlock("li",e.mergeProps({role:e.unref(n)},{ref_key:"element",ref:a,class:["vv-dropdown__item",{"focus-visible":e.unref(i)||e.unref(c)}]}),[e.renderSlot(d.$slots,"default")],16))}}),bo={...Se,...Me,...Le,...ye,...pe,...fe,...be,...Be,...ce,...me,...J,...Ce,...Ee,...Pe,..._e,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,placeholder:String},ho=["update:modelValue","focus","blur"],go=["for"],yo={class:"vv-select__wrapper"},_o={key:0,class:"vv-select__input-before"},vo={class:"vv-select__inner"},So=["id"],ko=["disabled","hidden"],Vo=["disabled","value"],Bo={key:1,class:"vv-select__input-after"},Co={name:"VvSelect"},Xe=e.defineComponent({...Co,props:bo,emits:ho,setup(o,{emit:n}){const t=o,a=useSlots(),l=ref(),{HintSlot:i,hasHint:c,hasInvalid:d}=se(t,a),{id:p,modifiers:u,disabled:r,readonly:s,loading:f,icon:g,iconPosition:S,invalid:V,valid:b,floating:_,multiple:E}=toRefs(t),N=useUniqueId(p),B=computed(()=>`${N.value}-hint`),{focused:w}=useComponentFocus(l,n),R=useElementVisibility(l);watch(R,A=>{A&&t.autofocus&&(w.value=!0)});const{hasIcon:M,hasIconBefore:G,hasIconAfter:P}=useComponentIcon(g,S),I=computed(()=>!isEmpty(t.modelValue)),T=computed(()=>t.disabled||t.readonly),U=computed(()=>T.value?-1:t.tabindex),X=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),Q=useBemModifiers("vv-select",u,computed(()=>({valid:b.value,invalid:V.value,loading:f.value,disabled:r.value,readonly:s.value,"icon-before":G.value,"icon-after":P.value,dirty:I.value,focus:w.value,floating:_.value,multiple:E.value}))),k=computed(()=>({name:t.name,tabindex:U.value,disabled:T.value,required:t.required,size:t.size,autocomplete:t.autocomplete,multiple:t.multiple,"aria-invalid":X.value,"aria-describedby":!d.value&&c.value?B.value:void 0,"aria-errormessage":d.value?B.value:void 0})),j=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue})),{getOptionLabel:oe,getOptionValue:K,getOptionDisabled:ae}=useOptions(t),z=computed({get:()=>t.modelValue,set:A=>{Array.isArray(A)&&(A=A.filter(H=>H!==void 0)),n("update:modelValue",A)}});return(A,H)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(Q))},[A.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(N)},e.toDisplayString(A.label),9,go)):e.createCommentVNode("",!0),e.createElementVNode("div",yo,[A.$slots.before?(e.openBlock(),e.createElementBlock("div",_o,[e.renderSlot(A.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(j))))])):e.createCommentVNode("",!0),e.createElementVNode("div",vo,[e.unref(G)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(M)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref(N),ref_key:"select",ref:l,"onUpdate:modelValue":H[0]||(H[0]=W=>e.isRef(z)?z.value=W:null)},e.unref(k)),[A.placeholder?(e.openBlock(),e.createElementBlock("option",{key:0,value:void 0,disabled:!A.unselectable,hidden:!A.unselectable},e.toDisplayString(A.placeholder),9,ko)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,(W,le)=>(e.openBlock(),e.createElementBlock("option",{key:le,disabled:e.unref(ae)(W),value:e.unref(K)(W)},e.toDisplayString(e.unref(oe)(W)),9,Vo))),128))],16,So),[[e.vModelSelect,e.unref(z)]]),e.unref(P)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(M)),null,16)):e.createCommentVNode("",!0)]),A.$slots.after?(e.openBlock(),e.createElementBlock("div",Bo,[e.renderSlot(A.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(j))))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(i),{id:e.unref(B),class:"vv-select__hint"},null,8,["id"])],2))}}),Eo=["id"],Po=["id","for"],wo=["id","aria-controls","aria-labelledby","aria-describedby","placeholder"],$o={key:0,class:"vv-select__input-before"},No={class:"vv-select__inner"},Ao=["aria-labelledby","tabindex"],Io=["aria-label","onClick"],Do={key:1,class:"vv-select__input-after"},Ro={class:"vv-dropdown-action__hint"},Oo={name:"VvCombobox",components:{VvDropdown:$e,VvDropdownItem:Je}},To=e.defineComponent({...Oo,props:co,emits:io,setup(o,{emit:n}){const t=o,a=useSlots(),{HintSlot:l}=se(t,a),i=ref(null),c=ref(null),d=ref(null),{focused:p}=useComponentFocus(i,n),{focused:u}=useFocusWithin(d);watch(p,y=>{if(t.autoOpen){if(y&&!f.value){S();return}!y&&f.value&&!u.value&&V()}}),watch(u,y=>{!p.value&&!y&&f.value&&V()});const r=ref(""),s=refDebounced(r,Number(t.debounceSearch));watch(s,()=>n("change:search",s.value));const f=ref(!1),g=()=>{t.disabled||t.readonly||(f.value=!f.value)},S=()=>{t.disabled||t.readonly||f.value||(f.value=!0)},V=()=>{t.disabled||t.readonly||!f.value||(f.value=!1)};watch(f,y=>{I.value&&nextTick(()=>{if(y){c.value&&c.value.focus();return}r.value=""})});const{id:b,icon:_,iconPosition:E,modifiers:N,disabled:B,readonly:w,loading:R,valid:M,invalid:G,floating:P,searchable:I}=toRefs(t),T=useUniqueId(b),U=computed(()=>`${T.value}-hint`),X=computed(()=>`${T.value}-dropdown`),Q=computed(()=>`${T.value}-search`),k=computed(()=>`${T.value}-label`),{hasIcon:j,hasIconBefore:oe,hasIconAfter:K}=useComponentIcon(_,E),ae=computed(()=>!isEmpty(t.modelValue)),z=computed(()=>B.value||w.value?-1:t.tabindex),A=useBemModifiers("vv-select",N,computed(()=>({disabled:B.value,loading:R.value,readonly:w.value,"icon-before":Boolean(oe.value),"icon-after":Boolean(K.value),valid:M.value,invalid:G.value,dirty:ae.value,focus:p.value,floating:P.value}))),H=computed(()=>t.searchable?m.value:t.options),{getOptionLabel:W,getOptionValue:le,getOptionDisabled:ee}=useOptions(t),m=computed(()=>{var y;return(y=t.options)==null?void 0:y.filter(F=>W(F).toLowerCase().includes(s.value.toLowerCase().trim()))});function D(y){return Array.isArray(t.modelValue)?contains(y,t.modelValue)||contains(le(y),t.modelValue):equals(y,t.modelValue)||equals(le(y),t.modelValue)}const Z=computed(()=>{let y=[];return Array.isArray(t.modelValue)?y=t.modelValue:t.modelValue&&(y=[t.modelValue]),t.options.filter(F=>y.includes(le(F)))}),re=computed(()=>Z.value.map(y=>W(y)).join(t.separator));watch(Z,()=>{!t.multiple&&t.autoClose&&V()});const Ie=()=>{t.autoOpen?S():g()},he=y=>{var de;if(t.disabled||t.readonly)return;const F=le(y);let O=F;if(t.multiple)if(Array.isArray(t.modelValue)){if(t.maxValues!==void 0&&t.maxValues>=0&&((de=t.modelValue)==null?void 0:de.length)>=t.maxValues&&!contains(F,t.modelValue))return;O=contains(F,t.modelValue)?removeFromList(F,t.modelValue):[...t.modelValue,F]}else O=[F];else t.unselectable&&F===t.modelValue&&(O=void 0);n("update:modelValue",O)},$=computed(()=>({id:T.value,name:t.name,tabindex:z.value,valid:M.value,validLabel:t.validLabel,invalid:G.value,invalidLabel:t.invalidLabel,hintLabel:t.hintLabel,loading:R.value,loadingLabel:t.loadingLabel,disabled:B.value,readonly:w.value,modifiers:t.modifiers,options:H.value,labelKey:t.labelKey,valueKey:t.valueKey,icon:t.icon,iconPosition:t.iconPosition,floating:t.floating,unselectable:t.unselectable,multiple:t.multiple,label:t.label,placeholder:t.placeholder,modelValue:t.modelValue})),q=computed(()=>({id:X.value,reference:d.value,placement:t.placement,transitionName:t.transitionName,offset:t.offset,shift:t.shift,flip:t.flip,autoPlacement:t.autoPlacement,arrow:t.arrow,autoClose:t.autoClose,autofocusFirst:I.value?!1:t.autofocusFirst,triggerWidth:t.triggerWidth,modifiers:t.dropdownModifiers})),ue=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue}));return onKeyStroke([" ","Enter"],y=>{t.autoOpen||!f.value&&p.value&&(y.preventDefault(),y.stopImmediatePropagation(),g())}),(y,F)=>y.native?(e.openBlock(),e.createBlock(Xe,e.mergeProps({key:1},e.unref($),{"onUpdate:modelValue":F[2]||(F[2]=O=>n("update:modelValue",O))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(T),class:e.normalizeClass(e.unref(A))},[y.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:e.unref(k),for:e.unref(I)?e.unref(Q):void 0},e.toDisplayString(y.label),9,Po)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:d,class:"vv-select__wrapper"},[e.createVNode($e,e.mergeProps({modelValue:e.unref(f),"onUpdate:modelValue":F[1]||(F[1]=O=>e.isRef(f)?f.value=O:null)},e.unref(q),{role:"listbox"}),e.createSlots({default:e.withCtx(({aria:O})=>[y.$slots.before?(e.openBlock(),e.createElementBlock("div",$o,[e.renderSlot(y.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(ue))))])):e.createCommentVNode("",!0),e.createElementVNode("div",No,[e.unref(oe)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(j)),null,16)):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({ref_key:"inputEl",ref:i},O,{"aria-labelledby":e.unref(k),class:"vv-select__input",role:"combobox",tabindex:e.unref(z),onClickPassive:Ie}),[e.renderSlot(y.$slots,"value",e.normalizeProps(e.guardReactiveProps({selectedOptions:e.unref(Z),onInput:he})),()=>[e.unref(re)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[y.badges?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(Z),(de,tt)=>(e.openBlock(),e.createBlock(je,{key:tt,modifiers:y.badgeModifiers,class:"vv-select__badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(W)(de))+" ",1),y.unselectable&&!e.unref(w)&&!e.unref(B)?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-label":y.deselectLabel,onClick:e.withModifiers(Il=>he(de),["stop"])},[e.createVNode(L,{name:"close"})],8,Io)):e.createCommentVNode("",!0)]),_:2},1032,["modifiers"]))),128)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(e.unref(re)),1)],64))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y.placeholder),1)],64))])],16,Ao),e.unref(K)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(j)),null,16)):e.createCommentVNode("",!0)]),y.$slots.after?(e.openBlock(),e.createElementBlock("div",Do,[e.renderSlot(y.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(ue))))])):e.createCommentVNode("",!0)]),items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(m),(O,de)=>(e.openBlock(),e.createBlock(Je,{key:de,class:e.normalizeClass(["vv-dropdown-action",{disabled:e.unref(ee)(O),selected:D(O),"vv-dropdown-action--unselectable":y.unselectable&&D(O)}]),tabindex:e.unref(ee)(O)?-1:0,"aria-selected":D(O),"aria-disabled":e.unref(ee)(O),onClickPassive:tt=>he(O)},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"option",e.normalizeProps(e.guardReactiveProps({option:O,selectedOptions:e.unref(Z),selected:D(O),disabled:e.unref(ee)(O)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(W)(O))+" ",1),e.createElementVNode("span",Ro,[D(O)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(y.unselectable?y.pressToDeselectLabel:y.selectedLabel),1)],64)):e.unref(ee)(O)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y.pressToSelectLabel),1)],64))])])]),_:2},1032,["tabindex","class","aria-selected","aria-disabled","onClickPassive"]))),128))]),_:2},[e.unref(I)?{name:"before",fn:e.withCtx(()=>[e.unref(I)?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:e.unref(Q),ref_key:"inputSearchEl",ref:c,"onUpdate:modelValue":F[0]||(F[0]=O=>e.isRef(r)?r.value=O:null),"aria-autocomplete":"list","aria-controls":e.unref(X),"aria-labelledby":e.unref(k),"aria-describedby":e.unref(U),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:y.searchPlaceholder},null,8,wo)),[[e.vShow,e.unref(f)],[e.vModelText,e.unref(r)]]):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1040,["modelValue"])],512),e.createVNode(e.unref(l),{id:e.unref(U),class:"vv-select__hint"},null,8,["id"])],10,Eo))}}),xo=["open","close","update:modelValue"],Mo={...ve,title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},Lo={key:0,class:"vv-dialog__header"},zo={class:"vv-dialog__content"},Ho={key:1,class:"vv-dialog__footer"},Fo={name:"VvDialog"},Go=e.defineComponent({...Fo,props:Mo,emits:xo,setup(o,{emit:n}){const t=o,a=useVModel(t,"modelValue",n),l=ref(!0),i=ref(null),c=computed(()=>{const{id:s}=t;return{id:s,open:l.value}}),d=computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),p=computed(()=>`vv-dialog--${t.transition}`),u={"before-enter":()=>{l.value=!0,n("open")},"after-leave":()=>{l.value=!1,n("close")}};onClickOutside(i,()=>{t.autoClose&&(a.value=!1)});function r(){a.value=!1}return onKeyStroke("Escape",s=>{a.value&&(s.preventDefault(),r())}),(s,f)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(p)},e.toHandlers(u)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(c),{class:e.unref(d)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:i,class:"vv-dialog__wrapper"},[s.$slots.header||s.title?(e.openBlock(),e.createElementBlock("header",Lo,[e.renderSlot(s.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(s.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClickPassive:r},[e.createVNode(L,{name:"close"})],32)])])):e.createCommentVNode("",!0),e.createElementVNode("div",zo,[e.renderSlot(s.$slots,"default")]),s.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Ho,[e.renderSlot(s.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(a)]])]),_:3},16,["name"]))}}),v={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"},ie={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},Uo=["update:modelValue","focus","blur","keyup"],jo={...ze,modelValue:[String,Number],type:{type:String,default:v.TEXT,validator:o=>Object.values(v).includes(o)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:ie.PASSWORD_SHOW},iconHidePassword:{type:String,default:ie.PASSWORD_HIDE},iconClear:{type:String,default:ie.SEARCH},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"}},Qe=defineComponent({components:{VvIcon:L},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:ie.PASSWORD_SHOW},iconHide:{type:String,default:ie.PASSWORD_HIDE}},emits:["toggle-password"],setup(o,{emit:n}){const t=ref(!1),a=computed(()=>t.value?o.iconHide:o.iconShow);function l(i){i==null||i.stopPropagation(),o.disabled||(t.value=!t.value,n("toggle-password",t.value))}return{active:t,activeIcon:a,onClick:l}},render(){const o=h(L,{name:this.activeIcon,class:"vv-input-text__action-icon"});return h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},o)}}),Ne=defineComponent({components:{VvIcon:L},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:o=>["up","down"].includes(o),default:"up"}},emits:["step-up","step-down"],setup(o,{emit:n}){const t=computed(()=>o.mode==="up");return{isUp:t,onClick:l=>{l==null||l.stopPropagation(),o.disabled||n(t.value?"step-up":"step-down")}}},render(){return h("button",{class:["vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,onClick:this.onClick})}}),Ze=defineComponent({components:{VvIcon:L},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup(o,{emit:n}){function t(a){a==null||a.stopPropagation(),o.disabled||n("clear")}return{onClick:t}},render(){const o=h(L,{name:this.icon,class:"vv-input-text__action-icon"});return h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},o)}});function Ae(o,n){return{name:"VvInputTextActions",components:{VvIcon:L,VvInputPasswordAction:Qe,VvInputStepAction:Ne,VvInputClearAction:Ze},setup(){return{isDisabled:computed(()=>n.disabled||n.readonly),labelStepUp:n.labelStepUp,labelStepDown:n.labelStepDown,labelShowPassword:n.labelShowPassword,labelHidePassword:n.labelHidePassword,labelClear:n.labelClear,iconShowPassword:n.iconShowPassword,iconHidePassword:n.iconHidePassword}},render(){let t=null;switch(o){case v.SEARCH:{const{onClear:a}=this.$attrs;t=[h(Ze,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:a})];break}case v.PASSWORD:{const{onTogglePassword:a}=this.$attrs;t=[h(Qe,{disabled:this.isDisabled,onTogglePassword:a,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case v.NUMBER:{const{onStepUp:a,onStepDown:l}=this.$attrs;t=[h(Ne,{mode:"up",disabled:this.isDisabled||n.max!==void 0&&n.modelValue===n.max,label:this.labelStepUp,onStepUp:a,onStepDown:l}),h(Ne,{mode:"down",disabled:this.isDisabled||n.min!==void 0&&n.modelValue===n.min,label:this.labelStepDown,onStepUp:a,onStepDown:l})];break}}return Array.isArray(t)?h("div",{class:"vv-input-text__actions-group"},t):t}}}const Wo=["for"],qo={class:"vv-input-text__wrapper"},Ko={key:0,class:"vv-input-text__input-before"},Yo={class:"vv-input-text__inner"},Jo=["id"],Xo={key:1,class:"vv-input-text__input-after"},Qo={key:2,class:"vv-input-text__limit"},Zo={name:"VvInputText"},el=e.defineComponent({...Zo,props:jo,emits:Uo,setup(o,{emit:n}){const t=o,a=useSlots(),l=ref(),{id:i,icon:c,iconPosition:d,label:p,modelValue:u,count:r,valid:s,invalid:f,loading:g}=toRefs(t),S=useUniqueId(i),V=computed(()=>`${S.value}-hint`),b=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),_=useDebouncedInput(u,n,t.debounce),{focused:E}=useComponentFocus(l,n),N=useElementVisibility(l);watch(N,$=>{$&&t.autofocus&&(E.value=!0)});const B=ref(!1),w=computed(()=>t.type===v.PASSWORD),R=()=>{B.value=!B.value},M=computed(()=>t.type===v.TIME||t.type===v.DATETIME_LOCAL||t.type===v.DATE||t.type===v.WEEK||t.type===v.MONTH),G=computed(()=>t.type===v.NUMBER),P=()=>{K.value&&(l.value.stepUp(),_.value=unref(l).value)},I=()=>{K.value&&(l.value.stepDown(),_.value=unref(l).value)},T=computed(()=>t.type===v.SEARCH),U=()=>{_.value=void 0},{hasIcon:X,hasIconBefore:Q,hasIconAfter:k}=useComponentIcon(c,d),j=computed(()=>{switch(t.type){case v.COLOR:return{name:ie.COLOR};case v.DATE:case v.DATETIME_LOCAL:case v.WEEK:case v.MONTH:return{name:ie.DATE};case v.TIME:return{name:ie.TIME};default:return""}}),{formatted:oe}=useTextCount(_,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),K=computed(()=>!t.disabled&&!t.readonly),ae=computed(()=>K.value?t.tabindex:-1),z=computed(()=>!isEmpty(u)),A=computed(()=>{if(f.value===!0)return!0;if(s.value===!0)return!1}),{modifiers:H}=toRefs(t),W=useBemModifiers("vv-input-text",H,computed(()=>({valid:s.value,invalid:f.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":Q.value,"icon-after":k.value||!isEmpty(j),floating:t.floating&&!isEmpty(t.label),dirty:z.value,focus:E.value}))),le=computed(()=>{const $=(()=>w.value&&B.value||M.value&&!z.value&&!E.value?v.TEXT:t.type)(),q={type:$,name:t.name,tabindex:ae.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,"aria-invalid":A.value,"aria-describedby":!Z.value&&D.value?V.value:void 0,"aria-errormessage":Z.value?V.value:void 0};return($===v.DATE||$===v.MONTH||$===v.WEEK||$===v.TIME||$===v.DATETIME_LOCAL||$===v.NUMBER)&&(q.step=t.step,q.max=String(t.max),q.min=String(t.min)),($===v.TEXT||$===v.SEARCH||$===v.URL||$===v.TEL||$===v.EMAIL||$===v.PASSWORD||$===v.NUMBER)&&(q.placeholder=b.value),($===v.TEXT||$===v.SEARCH||$===v.URL||$===v.TEL||$===v.EMAIL||$===v.PASSWORD)&&(q.minlength=t.minlength,q.maxlength=t.maxlength,q.pattern=t.pattern),$===v.EMAIL&&(q.multiple=t.multiple),q}),ee=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,togglePassword:R,stepUp:P,stepDown:I,clear:U})),{HintSlot:m,hasHint:D,hasInvalid:Z}=se(t,a),re=Ae(v.PASSWORD,t),Ie=Ae(v.NUMBER,t),he=Ae(v.SEARCH,t);return($,q)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(W))},[e.unref(p)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(S),class:"vv-input-text__label"},e.toDisplayString(e.unref(p)),9,Wo)):e.createCommentVNode("",!0),e.createElementVNode("div",qo,[$.$slots.before?(e.openBlock(),e.createElementBlock("div",Ko,[e.renderSlot($.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])):e.createCommentVNode("",!0),e.createElementVNode("div",Yo,[e.unref(Q)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,class:"vv-input-text__icon"},e.unref(X)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(S),ref_key:"input",ref:l,"onUpdate:modelValue":q[0]||(q[0]=ue=>e.isRef(_)?_.value=ue:null)},e.unref(le),{onKeyup:q[1]||(q[1]=ue=>n("keyup",ue))}),null,16,Jo),[[e.vModelDynamic,e.unref(_)]]),e.unref(k)||e.unref(j)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:1,class:"vv-input-text__icon vv-input-text__icon-after"},e.unref(k)?e.unref(X):e.unref(j)),null,16)):e.unref(w)?(e.openBlock(),e.createBlock(e.unref(re),{key:2,onTogglePassword:R})):e.unref(G)?(e.openBlock(),e.createBlock(e.unref(Ie),{key:3,onStepUp:P,onStepDown:I})):e.unref(T)?(e.openBlock(),e.createBlock(e.unref(he),{key:4,onClear:U})):e.createCommentVNode("",!0)]),$.$slots.after?(e.openBlock(),e.createElementBlock("div",Xo,[e.renderSlot($.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])):e.createCommentVNode("",!0),e.unref(r)?(e.openBlock(),e.createElementBlock("span",Qo,[e.renderSlot($.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(ee))),()=>[e.createTextVNode(e.toDisplayString(e.unref(oe)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(m),{id:e.unref(V),class:"vv-input-text__hint"},null,8,["id"])],2))}}),tl={...J,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},ol={name:"VvProgress"},ll=e.defineComponent({...ol,props:tl,setup(o){const n=o,{value:t,max:a,label:l}=toRefs(n),i=computed(()=>n.value===void 0),{modifiers:c}=toRefs(n),d=useBemModifiers("vv-progress",c,computed(()=>({indeterminate:i.value})));return(p,u)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(d),ariaLabel:e.unref(l),max:e.unref(a),value:e.unref(t)}),null,16))}}),nl=He,al=["click","update:modelValue","change","blur"];function rl(o,n){const{id:t}=toRefs(o),{group:a,isInGroup:l,getGroupOrLocalRef:i}=useInjectedGroupState(Oe),c=i("modelValue",o,n),d=i("readonly",o),p=i("disabled",o),u=i("valid",o),r=i("invalid",o);return{id:t,group:a,isInGroup:l,modelValue:c,readonly:d,disabled:p,valid:u,invalid:r}}const sl=["for"],il=["id","name","disabled","value","tabindex","aria-invalid"],cl={name:"VvRadio"},et=e.defineComponent({...cl,props:nl,emits:al,setup(o,{emit:n}){const t=o,a=useSlots(),{id:l,disabled:i,readonly:c,modelValue:d,valid:p,invalid:u}=rl(t,n),r=useUniqueId(l),s=computed(()=>g.value?-1:t.tabindex),f=ref(),g=computed(()=>i.value||c.value),S=computed(()=>{if(u.value===!0)return!0;if(p.value===!0)return!1}),V=computed(()=>Array.isArray(d.value)?contains(t.value,d.value):equals(t.value,d.value)),b=computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),_=computed({get(){return V.value?b.value:null},set(w){Array.isArray(d.value)?d.value=[t.value]:d.value=t.value,n("change",w)}}),{modifiers:E}=toRefs(t),N=useBemModifiers("vv-radio",E,computed(()=>({valid:p.value,invalid:u.value,disabled:i.value,readonly:c.value}))),{HintSlot:B}=se(t,a);return(w,R)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(N)),for:e.unref(r)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(r),ref_key:"input",ref:f,"onUpdate:modelValue":R[0]||(R[0]=M=>e.isRef(_)?_.value=M:null),type:"radio",class:"vv-radio__input",name:w.name,disabled:e.unref(g),value:e.unref(b),tabindex:e.unref(s),"aria-invalid":e.unref(S)},null,8,il),[[e.vModelRadio,e.unref(_)]]),e.renderSlot(w.$slots,"default",{value:e.unref(d)},()=>[e.createTextVNode(e.toDisplayString(w.label),1)]),e.createVNode(e.unref(B),{class:"vv-radio__hint",params:{value:e.unref(d)}},null,8,["params"])],10,sl))}}),dl=Fe,ul=["update:modelValue","change"],pl=["textContent"],fl={class:"vv-radio-group__wrapper"},ml={name:"VvRadioGroup"},bl=e.defineComponent({...ml,props:dl,emits:ul,setup(o,{emit:n}){const t=o,a=useSlots(),l=useVModel(t,"modelValue",n),{disabled:i,readonly:c,vertical:d,valid:p,invalid:u,modifiers:r}=toRefs(t);useProvideGroupState({key:Oe,modelValue:l,disabled:i,readonly:c,valid:p,invalid:u});const{getOptionLabel:s,getOptionValue:f}=useOptions(t),g=useBemModifiers("vv-radio-group",r,computed(()=>({disabled:i.value,readonly:c.value,horizontal:!d.value,valid:p.value,invalid:u.value}))),S=(b,_)=>({id:`${t.name}_opt${_}`,name:t.name,label:s(b),value:f(b)}),{HintSlot:V}=se(t,a);return(b,_)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[b.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(b.label)},null,8,pl)):e.createCommentVNode("",!0),e.createElementVNode("div",fl,[b.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(b.options,(E,N)=>(e.openBlock(),e.createBlock(et,e.mergeProps({key:N},S(E,N)),null,16))),128)):e.renderSlot(b.$slots,"default",{key:1})]),e.createVNode(e.unref(V),{class:"vv-radio-group__hint"})],2))}}),hl={hard:"hard",soft:"soft"},gl={true:!0,false:!1,default:"default"},yl=["update:modelValue","focus","blur","keyup"],_l={...ze,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:hl.soft},spellcheck:{type:[Boolean,String],default:gl.default},resizable:Boolean},vl=["for"],Sl={class:"vv-textarea__wrapper"},kl={key:0,class:"vv-textarea__input-before"},Vl={class:"vv-textarea__inner"},Bl=["id"],Cl={key:1,class:"vv-textarea__input-after"},El={key:2,class:"vv-textarea__limit"},Pl={name:"VvTextarea"},wl=e.defineComponent({...Pl,props:_l,emits:yl,setup(o,{emit:n}){const t=o,a=useSlots(),l=ref(),{id:i,icon:c,iconPosition:d,label:p,modelValue:u,count:r,valid:s,invalid:f,loading:g,modifiers:S}=toRefs(t),V=useUniqueId(i),b=computed(()=>`${V.value}-hint`),_=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),E=useDebouncedInput(u,n,t.debounce),{hasIcon:N,hasIconBefore:B,hasIconAfter:w}=useComponentIcon(c,d),{focused:R}=useComponentFocus(l,n),M=useElementVisibility(l);watch(M,z=>{z&&t.autofocus&&(R.value=!0)});const{formatted:G}=useTextCount(E,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),P=computed(()=>!t.disabled&&!t.readonly),I=computed(()=>P.value?t.tabindex:-1),T=computed(()=>!isEmpty(u)),U=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:X,hasHint:Q,hasInvalid:k}=se(t,a),j=useBemModifiers("vv-textarea",S,computed(()=>({valid:s.value,invalid:f.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":B.value,"icon-after":w.value,floating:t.floating&&!isEmpty(t.label),dirty:T.value,focused:R.value,resizable:t.resizable}))),oe=computed(()=>({name:t.name,placeholder:_.value,tabindex:I.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,minlength:t.minlength,maxlength:t.maxlength,cols:t.cols,rows:t.rows,wrap:t.wrap,spellcheck:t.spellcheck,"aria-invalid":U.value,"aria-describedby":!k.value&&Q.value?b.value:void 0,"aria-errormessage":k.value?b.value:void 0})),K=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,hintLabel:t.hintLabel,maxlength:t.maxlength,minlength:t.minlength,clear:ae})),ae=()=>{E.value=void 0};return(z,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(j))},[e.unref(p)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(V),class:"vv-textarea__label"},e.toDisplayString(e.unref(p)),9,vl)):e.createCommentVNode("",!0),e.createElementVNode("div",Sl,[z.$slots.before?(e.openBlock(),e.createElementBlock("div",kl,[e.renderSlot(z.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(K))))])):e.createCommentVNode("",!0),e.createElementVNode("div",Vl,[e.unref(B)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,class:"vv-textarea__icon"},e.unref(N)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(V),ref_key:"textarea",ref:l,"onUpdate:modelValue":A[0]||(A[0]=H=>e.isRef(E)?E.value=H:null)},e.unref(oe),{onKeyup:A[1]||(A[1]=H=>n("keyup",H))}),null,16,Bl),[[e.vModelText,e.unref(E)]]),e.unref(w)?(e.openBlock(),e.createBlock(L,e.mergeProps({key:1,class:"vv-textarea__icon vv-textarea__icon-after"},e.unref(N)),null,16)):e.createCommentVNode("",!0)]),z.$slots.after?(e.openBlock(),e.createElementBlock("div",Cl,[e.renderSlot(z.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(K))))])):e.createCommentVNode("",!0),e.unref(r)?(e.openBlock(),e.createElementBlock("span",El,[e.renderSlot(z.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(K))),()=>[e.createTextVNode(e.toDisplayString(e.unref(G)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(X),{id:e.unref(b),class:"vv-textarea__hint"},null,8,["id"])],2))}});C.VolverPlugin=ut,C.VvAccordion=Ue,C.VvAccordionGroup=kt,C.VvBadge=je,C.VvBreadcrumb=Nt,C.VvButton=Lt,C.VvButtonGroup=Gt,C.VvCard=Yt,C.VvCheckbox=Ke,C.VvCheckboxGroup=so,C.VvCombobox=To,C.VvDialog=Go,C.VvDropdown=$e,C.VvIcon=L,C.VvInputText=el,C.VvProgress=ll,C.VvRadio=et,C.VvRadioGroup=bl,C.VvSelect=Xe,C.VvTextarea=wl,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})});
1
+ (function(C,J){typeof exports=="object"&&typeof module<"u"?J(exports,require("@iconify/vue"),require("vue"),require("nanoid"),require("@vueuse/core"),require("@floating-ui/vue"),require("mitt")):typeof define=="function"&&define.amd?define(["exports","@iconify/vue","vue","nanoid","@vueuse/core","@floating-ui/vue","mitt"],J):(C=typeof globalThis<"u"?globalThis:C||self,J(C.volver={},C.vue,C.vue$1,C.nanoid,C.core,C.vue$2,C.mitt))})(this,function(C,J,e,Je,R,q,Et){"use strict";const Pt="vv";var X=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(X||{}),Xe=(o=>(o.topStart="top-start",o.topEnd="top-end",o.bottomStart="bottom-start",o.bottomEnd="bottom-end",o.leftStart="left-start",o.leftEnd="left-end",o.rightStart="right-start",o.rightEnd="right-end",o))(Xe||{}),ye=(o=>(o.before="before",o.after="after",o))(ye||{}),He=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(He||{}),re=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(re||{}),Qe=(o=>(o.button="button",o.link="link",o.menuitem="menuitem",o))(Qe||{}),ke=(o=>(o.listbox="listbox",o.menu="menu",o))(ke||{}),Me=(o=>(o.option="option",o.presentation="presentation",o))(Me||{}),Ze=(o=>(o._blank="_blank",o._self="_self",o._parent="_parent",o._top="_top",o))(Ze||{});const $e=Symbol.for("volver"),et=Symbol.for("buttonGroup"),tt=Symbol.for("radioGroup"),ot=Symbol.for("checkGroup"),nt=Symbol.for("accordionGroup"),lt=Symbol.for("dropdownTrigger"),rt=Symbol.for("dropdownItem"),at=Symbol.for("dropdownAction");function st(o,n,t){const r=t||o.name;if(!r)return o;const l=n==null?void 0:n[r],i=o.props;return!l||!i?{...o,name:r}:{...o,name:r,props:Object.keys(i).reduce((c,d)=>{if(!(d in l))return c[d]=i[d],c;const u=l[d];return typeof i[d]=="function"||Array.isArray(i[d])?(c[d]={type:i[d],default:u},c):(c[d]={...i[d],default:u},c)},{})}}class wt{constructor({fetchWithCredentials:n,fetchOptions:t,provider:r,nuxt:l,iconsCollections:i}={}){this.fetchOptions={},this.nuxt=!1,this.iconsCollections=[],this.provider=Pt,t&&(this.fetchOptions=t),n&&(this.fetchOptions={...this.fetchOptions,credentials:"include"}),r&&(this.provider=r),l&&(this.nuxt=l),i&&Array.isArray(i)&&i.forEach(c=>{this.addCollection(c,this.provider)})}addCollection(n,t){return this.iconsCollections=[...this.iconsCollections,n],J.addCollection(n,t??this.provider)}addIcon(n,t){return J.addIcon(n,t)}addAPIProvider(n,t){return J.addAPIProvider(n,t)}fetchIcon(n,t={cache:"force-cache"}){return new Promise((r,l)=>{fetch(n,{...this.fetchOptions,...t}).catch(i=>l(i)).then(i=>i==null?void 0:i.text()).then(i=>r(i))})}}const Nt={install(o,n){const t=new wt(n);o.config.globalProperties.$vv=t,n.components&&Object.entries(n.components).forEach(([r,l])=>{o.component(r,st(l,n.defaults))}),n.aliases&&Object.entries(n.aliases).forEach(([r,l])=>{o.component(r,st(l,n.defaults,r))}),n.directives&&Object.entries(n.directives).forEach(([r,l])=>{o.directive(r,l)}),o.provide($e,t)}};function ie(o,n,t){return t?Pe(o,t)===Pe(n,t):ze(o,n)}function ze(o,n){if(o===n)return!0;if(o&&n&&typeof o=="object"&&typeof n=="object"){const t=Array.isArray(o),r=Array.isArray(n);let l,i,c;if(t&&r){if(i=o.length,i!=n.length)return!1;for(l=i;l--!==0;)if(!ze(o[l],n[l]))return!1;return!0}if(t!=r)return!1;const d=o instanceof Date,u=n instanceof Date;if(d!=u)return!1;if(d&&u)return o.getTime()==n.getTime();const f=o instanceof RegExp,a=n instanceof RegExp;if(f!=a)return!1;if(f&&a)return o.toString()==n.toString();const s=Object.keys(o);if(i=s.length,i!==Object.keys(n).length)return!1;for(l=i;l--!==0;)if(!Object.prototype.hasOwnProperty.call(n,s[l]))return!1;for(l=i;l--!==0;)if(c=s[l],!ze(o[c],n[c]))return!1;return!0}return o!==o&&n!==n}function Pe(o,n){if(o&&Object.keys(o).length&&n){if(n.indexOf(".")===-1)return o[n];{const t=n.split(".");let r=o;for(let l=0,i=t.length;l<i;++l){if(o==null)return null;r=r[t[l]]}return r}}else return null}function At(o,n){let t=-1;if(n){for(let r=0;r<n.length;r++)if(ie(n[r],o)){t=r;break}}return t}function ce(o,n){if(o!=null&&n&&n.length){for(const t of n)if(ie(o,t))return!0}return!1}function ee(o){return(n=>n==null||n===""||Array.isArray(n)&&n.length===0||!(n instanceof Date)&&typeof n=="object"&&Object.keys(n).length===0)(e.unref(o))}function Dt(o,n){const t=At(o,n);return t>-1?n.filter((r,l)=>l!==t):n}function It(o){return typeof o=="string"||o instanceof String}function we(o){const n=e.inject(o,void 0),t=e.computed(()=>!ee(n));function r(l,i,c){if(n!=null&&n.value){const u=e.unref(n.value)[l];return e.computed({get(){return u==null?void 0:u.value},set(f){u.value=f}})}const d=e.toRef(i,l);return e.computed({get(){return d.value},set(u){c&&c(`update:${l}`,u)}})}return{group:n,isInGroup:t,getGroupOrLocalRef:r}}const Ot={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},Rt=["update:modelValue"];function vt(o,n){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=we(nt),{title:i,content:c}=e.toRefs(o),d=l("modelValue",o,n),u=l("disabled",o),f=l("collapse",o),a=l("modifiers",o);return{modelValue:d,disabled:u,isInGroup:r,group:t,collapse:f,modifiers:a,title:i,content:c}}function x(o,n,t){return e.computed(()=>{const r={[o]:!0},l=typeof(n==null?void 0:n.value)=="string"?n.value.split(" "):n==null?void 0:n.value;return l&&Array.isArray(l)&&l.forEach(i=>{r[`${o}--${i}`]=!0}),t&&Object.keys(t.value).forEach(i=>{r[`${o}--${i}`]=e.unref(t.value[i])}),r})}const Tt=["id","open"],Lt=["aria-controls","aria-expanded"],xt=["aria-hidden"],Ht={name:"VvAccordion"},it=e.defineComponent({...Ht,props:Ot,emits:Rt,setup(o,{emit:n}){const t=o,r=e.useAttrs(),l=e.computed(()=>t.name||(r==null?void 0:r.id)||Je.nanoid()),{modifiers:i,title:c,content:d,disabled:u,collapse:f,modelValue:a,isInGroup:s}=vt(t,n),m=e.ref(!1),g=e.computed({get:()=>s.value?f.value&&Array.isArray(a.value)?a.value.includes(l.value):a.value===l.value:a.value===void 0?m.value:a.value,set:h=>{if(s.value){if(f.value&&Array.isArray(a.value)){if(h){a.value.push(l.value);return}a.value=a.value.filter(p=>p!==l.value);return}a.value=h?l.value:null;return}if(a.value===void 0&&typeof h=="boolean"){m.value=h;return}a.value=h}}),_=x("vv-accordion",i,e.computed(()=>({disabled:u.value}))),S=R.useToggle(g);return(h,p)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(l),class:e.normalizeClass(e.unref(_)),open:e.unref(g),onClick:p[0]||(p[0]=e.withModifiers(B=>e.unref(S)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(l),"aria-expanded":e.unref(g),class:"vv-collapse__summary"},[e.renderSlot(h.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(c)),1)])],8,Lt),e.createElementVNode("div",{"aria-hidden":!e.unref(g),class:"vv-collapse__content"},[e.renderSlot(h.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(d)),1)])],8,xt)],10,Tt))}}),Mt={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},zt=["update:modelValue"];function Ne(o){if(Object.keys(o).some(n=>n!=="key"&&!e.isRef(o[n])))throw Error("One or more groupState props aren't ref.");e.provide(o.key,e.computed(()=>o))}const jt={name:"VvAccordionGroup"},Ft=e.defineComponent({...jt,props:Mt,emits:zt,setup(o,{emit:n}){const t=o,{disabled:r,collapse:l,modifiers:i,itemModifiers:c,items:d}=e.toRefs(t);e.watchEffect(()=>{typeof t.modelValue=="string"&&l.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const u=e.ref([]),f=e.computed({get:()=>{var s;return t.modelValue!==void 0?l.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:l.value?u.value:(s=u.value)==null?void 0:s[0]},set:s=>{if(t.modelValue!==void 0)return(Array.isArray(t.modelValue)||l.value)&&!Array.isArray(s)&&(s=[s]),n("update:modelValue",s);u.value=Array.isArray(s)?s:[s]}});Ne({key:nt,modelValue:f,disabled:r,collapse:l,modifiers:c});const a=x("vv-accordion-group",i,e.computed(()=>({disabled:r.value})));return(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(a))},[e.renderSlot(s.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),g=>(e.openBlock(),e.createBlock(it,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content}),{header:e.withCtx(_=>[e.renderSlot(s.$slots,`header::${g.name}`,e.normalizeProps(e.guardReactiveProps(_)))]),details:e.withCtx(_=>[e.renderSlot(s.$slots,`details::${g.name}`,e.normalizeProps(e.guardReactiveProps(_)))]),_:2},1040))),128))])],2))}}),Gt={to:{type:[String,Object]},href:String,target:{type:String,validator:o=>Object.values(Ze).includes(o)},rel:{type:String,default:"noopener noreferrer"}},_e={valid:Boolean,validLabel:[String,Array]},Se={invalid:Boolean,invalidLabel:[String,Array]},Ae={loading:Boolean,loadingLabel:{type:String,default:"Loading..."}},de={disabled:Boolean},Wt={selected:Boolean},Ut={active:Boolean},Kt={pressed:Boolean},he={label:[String,Number]},Ve={readonly:Boolean},Q={modifiers:[String,Array]},Be={hintLabel:{type:String,default:""}},je={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},qt={count:{type:[Boolean,String],default:!1,validator:o=>[!0,!1,"limit","countdown"].includes(o)}},Yt={debounce:[Number,String]},Fe={icon:{type:[String,Object]},iconPosition:{type:String,default:ye.before,validation:o=>Object.values(ye).includes(o)}},De={tabindex:{type:[String,Number],default:0}},Ge={floating:Boolean},Ce={unselectable:{type:Boolean,default:!0}},Ie={id:[String,Number]},We={placement:{type:String,default:X.bottom,validator:o=>Object.values(X).includes(o)||Object.values(Xe).includes(o)},transitionName:{type:String},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},autoClose:{type:Boolean,default:!0},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean}},Oe={...Ie,name:{type:String,required:!0}},ct={autofocus:Boolean},dt={autocomplete:{type:String,default:"off"}},ut={...Oe,...ct,...dt,...De,...de,...Ve,..._e,...Se,...Be,...Ae,...Q,...qt,...Yt,...Fe,...Ge,...he,minlength:Number,maxlength:Number,placeholder:String,required:Boolean},ft={...Oe,...De,..._e,...Se,...Be,...de,...Ve,...Q,...he,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String]},pt={..._e,...Se,...je,...Be,...de,...Ve,...Q,...he,modelValue:[String,Array],name:{type:String,required:!0},vertical:Boolean},mt={...de,...he,...Kt,...Ut,...Gt,type:{type:String,default:He.button,validator:o=>Object.values(He).includes(o)}},Jt={...Q,value:[String,Number]},Xt={name:"VvBadge"},bt=e.defineComponent({...Xt,props:Jt,setup(o){const n=o,{modifiers:t}=e.toRefs(n),r=x("vv-badge",t);return(l,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(r)),role:"status"},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(l.value),1)])],2))}}),Qt={...Q,routes:Array},Zt={class:"vv-breadcrumb__list"},$t=["content"],eo={name:"VvBreadcrumb"},to=e.defineComponent({...eo,props:Qt,setup(o){const n=o,{modifiers:t}=e.toRefs(n),r=x("vv-breadcrumb",t);return(l,i)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(r)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",Zt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.routes,(c,d)=>{var u,f,a,s;return e.openBlock(),e.createElementBlock("li",{key:`${c.label}-${d}`,class:e.normalizeClass({"vv-breadcrumb__item":d<Number((u=l.routes)==null?void 0:u.length)-1,"vv-breadcrumb__item-active":d===Number((f=l.routes)==null?void 0:f.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.to?"router-link":c.href?"a":"span"),e.mergeProps(c,{class:{"vv-breadcrumb__link":d<Number((a=l.routes)==null?void 0:a.length)-1},"aria-current":d===Number((s=l.routes)==null?void 0:s.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:c,index:d})),()=>[e.createTextVNode(e.toDisplayString(c.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${d+1}`},null,8,$t)],2)}),128))])],2))}}),oo={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}};function ht(){return e.inject($e)}const no={name:"VvIcon"},H=e.defineComponent({...no,props:oo,setup(o){const n=o,t=e.ref(!0),r=ht(),{modifiers:l}=e.toRefs(n),i=x("vv-icon",l),c=e.computed(()=>n.provider||(r==null?void 0:r.provider)),d=e.computed(()=>{const a=n.name??"",s=`@${c.value}:${n.prefix}:${n.name}`;return J.iconExists(a)?a:J.iconExists(s)?s:(r==null?void 0:r.iconsCollections.find(m=>{const g=`@${c.value}:${m.prefix}:${a}`;if(J.iconExists(g))return g}))||a});function u(a){let s=null;if(typeof window>"u"){const{JSDOM:S}=require("jsdom");s=new S().window}return(s?new s.DOMParser:new window.DOMParser).parseFromString(a,"text/html").querySelector("svg")}function f(a){const s=u(a),m=(s==null?void 0:s.innerHTML.trim())||"";s&&m&&J.addIcon(`@${c.value}:${n.prefix}:${n.name}`,{body:m,height:s.viewBox.baseVal.height,width:s.viewBox.baseVal.width})}return r&&(n.src&&!J.iconExists(`@${c.value}:${n.prefix}:${n.name}`)?(t.value=!1,r.fetchIcon(n.src).then(a=>{a&&(f(a),t.value=!0)}).catch(a=>{throw new Error(`During fetch icon: ${a==null?void 0:a.message}`)})):n.svg&&f(n.svg)),(a,s)=>e.unref(t)?(e.openBlock(),e.createBlock(e.unref(J.Icon),e.mergeProps({key:0,class:e.unref(i)},{inline:a.inline,width:a.width,height:a.height,horizontalFlip:a.horizontalFlip,verticalFlip:a.verticalFlip,flip:a.flip,rotate:a.rotate,color:a.color,onLoad:a.onLoad,icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("",!0)}}),lo=["click","mouseover","mouseleave"],ro=mt;function ao(){return e.inject(lt,{})}function so(){return e.inject(rt,{})}function io(){return e.inject(at,{})}const co={name:"VvAction"},uo=e.defineComponent({...co,props:ro,emits:lo,setup(o,{expose:n,emit:t}){const r=o,l=ht(),i=e.ref(null);n({$el:i});const{reference:c,bus:d,aria:u,expanded:f}=ao();e.watch(()=>i.value,p=>{c&&(c.value=p)});const a=e.computed(()=>r.pressed||(f==null?void 0:f.value)),{role:s}=io(),m=e.computed(()=>{switch(!0){case r.disabled:return re.button;case r.to!==void 0:return l!=null&&l.nuxt?re.nuxtLink:re.routerLink;case r.href!==void 0:return re.a;default:return re.button}}),g=e.computed(()=>{const p={...u==null?void 0:u.value,"aria-pressed":a.value?!0:void 0,role:s};switch(m.value){case re.a:return{...p,href:r.href,target:r.target,rel:r.rel};case re.routerLink:case re.nuxtLink:return{...p,to:r.to,target:r.target};default:return{...p,type:r.type,disabled:r.disabled}}}),_=p=>{if(r.disabled){p.preventDefault();return}d==null||d.emit("click",p),t("click",p)},S=p=>{d==null||d.emit("mouseover",p),t("mouseover",p)},h=p=>{d==null||d.emit("mouseleave",p),t("mouseleave",p)};return(p,B)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),e.mergeProps(e.unref(g),{ref_key:"element",ref:i,class:{active:p.active,pressed:e.unref(a),disabled:p.disabled},onClickPassive:_,onMouseoverPassive:S,onMouseleavePassive:h}),{default:e.withCtx(()=>[e.renderSlot(p.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(p.label),1)])]),_:3},16,["class"]))}}),fo=["update:modelValue"],po={...mt,...Ie,...Q,...Ce,...Ae,icon:[String,Object],iconPosition:{type:String,default:X.left,validator:o=>Object.values(X).includes(o)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},modelValue:String};function mo(o,n){var p;const{group:t,isInGroup:r,getGroupOrLocalRef:l}=we(et),{id:i,iconPosition:c,icon:d,label:u,pressed:f,modifiers:a}=e.toRefs(o),s=l("modelValue",o,n),m=l("disabled",o),g=l("toggle",o),_=l("unselectable",o),S=((p=t==null?void 0:t.value)==null?void 0:p.multiple)??e.ref(!1),h=e.computed(()=>{var N;const B=a!=null&&a.value?Array.isArray(a.value)?a.value:a.value.split(" "):[],w=(N=t==null?void 0:t.value.itemModifiers)!=null&&N.value?Array.isArray(t.value.itemModifiers.value)?t.value.itemModifiers.value:t.value.itemModifiers.value.split(" "):[];return[...B,...w]});return{group:t,isInGroup:r,modelValue:s,disabled:m,toggle:g,unselectable:_,multiple:S,id:i,modifiers:h,pressed:f,iconPosition:c,icon:d,label:u}}const ue=o=>e.computed(()=>String((o==null?void 0:o.value)||Je.nanoid())),bo={key:1,class:"vv-button__label"},ho={key:1,class:"vv-button__label"},go={name:"VvButton"},yo=e.defineComponent({...go,props:po,emits:fo,setup(o,{expose:n,emit:t}){const r=o,l=e.useAttrs(),i=e.useSlots(),{id:c,modifiers:d,iconPosition:u,icon:f,label:a,modelValue:s,disabled:m,toggle:g,unselectable:_}=mo(r,t),S=ue(c),h=e.computed(()=>(l==null?void 0:l.name)||S.value),p=e.ref(null),B=e.computed(()=>{var V;return(V=p.value)==null?void 0:V.$el});n({$el:B});const w=e.computed(()=>g.value?Array.isArray(s.value)?ce(h.value,s.value):ie(h.value,s.value):r.pressed),N=x("vv-button",d,e.computed(()=>({reverse:[X.right,X.bottom].includes(u.value),column:[X.top,X.bottom].includes(u.value),"icon-only":Boolean((f==null?void 0:f.value)&&!(a!=null&&a.value)&&!i.default)}))),A=e.computed(()=>typeof(f==null?void 0:f.value)=="string"?{name:f==null?void 0:f.value}:f==null?void 0:f.value),I=()=>{if(g.value){if(Array.isArray(s.value)){if(ce(h.value,s.value)){_.value&&(s.value=s.value.filter(V=>V!==h.value));return}s.value.push(h.value);return}if(ie(h.value,s.value)&&_.value){s.value=void 0;return}s.value=h.value}};return(V,W)=>(e.openBlock(),e.createBlock(uo,e.mergeProps({disabled:e.unref(m),pressed:e.unref(w),active:V.active,type:V.type,to:V.to,href:V.href,target:V.target,rel:V.rel},{id:e.unref(S),ref_key:"element",ref:p,class:e.unref(N),onClick:I}),{default:e.withCtx(()=>[e.renderSlot(V.$slots,"default",{},()=>[V.loading?e.renderSlot(V.$slots,"loading",{key:0},()=>[V.loadingIcon?(e.openBlock(),e.createBlock(H,{key:0,class:"vv-button__loading-icon",name:V.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),V.loadingLabel?(e.openBlock(),e.createElementBlock("span",bo,e.toDisplayString(V.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(V.$slots,"before"),e.unref(f)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(A)),null,16)):e.createCommentVNode("",!0),e.unref(a)?(e.openBlock(),e.createElementBlock("span",ho,[e.renderSlot(V.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(a)),1)])])):e.createCommentVNode("",!0),e.renderSlot(V.$slots,"after")],64))])]),_:3},16,["id","class"]))}}),ko={...Q,...de,...Ce,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},_o=["update:modelValue"],So={name:"VvButtonGroup"},Vo=e.defineComponent({...So,props:ko,emits:_o,setup(o,{emit:n}){const t=o,{disabled:r,toggle:l,modifiers:i,multiple:c,unselectable:d,itemModifiers:u}=e.toRefs(t);e.watchEffect(()=>{typeof t.modelValue=="string"&&c.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const f=e.computed({get:()=>c.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue,set:s=>(s!==void 0&&(Array.isArray(t.modelValue)||c.value)&&!Array.isArray(s)&&(s=[s]),n("update:modelValue",s))});Ne({key:et,modelValue:f,disabled:r,toggle:l,multiple:c,unselectable:d,itemModifiers:u});const a=x("vv-button-group",i);return(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(a)),role:"group"},[e.renderSlot(s.$slots,"default")],2))}}),Bo={title:String,modifiers:[String,Array]},Co={key:0,class:"vv-card__header"},Eo={key:1,class:"vv-card__content"},Po={key:2,class:"vv-card__footer"},wo={name:"VvCard"},No=e.defineComponent({...wo,props:Bo,setup(o){const n=o,{modifiers:t}=e.toRefs(n),r=x("vv-card",t);return(l,i)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(r))},[l.$slots.header||l.title?(e.openBlock(),e.createElementBlock("header",Co,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.content?(e.openBlock(),e.createElementBlock("div",Eo,[e.renderSlot(l.$slots,"content")])):e.createCommentVNode("",!0),l.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Po,[e.renderSlot(l.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Ao={...ft,...Q,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean},Do=["click","update:modelValue","change","blur"];function Io(o,n){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=we(ot),{id:i,switch:c,indeterminate:d}=e.toRefs(o),u=l("modelValue",o,n),f=l("readonly",o),a=l("disabled",o),s=l("valid",o),m=l("invalid",o);return{id:i,propsSwitch:c,indeterminate:d,group:t,isInGroup:r,modelValue:u,readonly:f,disabled:a,valid:s,invalid:m}}function Re(o){return Array.isArray(o)?o.filter(n=>It(n)).join(" "):o}function fe(o,n){const{invalid:t,valid:r,hint:l,loading:i}=n,{hintLabel:c,modelValue:d,valid:u,validLabel:f,invalid:a,invalidLabel:s,...m}=e.toRefs(o),g=Pe(m,"loading"),_=Pe(m,"loadingLabel"),S=e.computed(()=>a.value?!!(a.value&&t||s!=null&&s.value&&Array.isArray(s.value)&&s.value.length>0||s!=null&&s.value&&!ee(s)):!1),h=e.computed(()=>!!(c&&c.value||l)),p=e.computed(()=>!!(f&&f.value||r)),B=e.computed(()=>!!(g!=null&&g.value&&i||g!=null&&g.value&&(_!=null&&_.value))),w=e.computed(()=>h.value||p.value||S.value||B.value);return{hasInvalid:S,hasHint:h,hasValid:p,hasLoading:B,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(N){const A=e.computed(()=>{const I=R.toReactive({hintLabel:c,modelValue:d,valid:u,validLabel:f,invalid:a,invalidLabel:s,loading:g,loadingLabel:_,...N.params});return a!=null&&a.value?(t==null?void 0:t(I))||Re(s==null?void 0:s.value)||(c==null?void 0:c.value):u!=null&&u.value?(r==null?void 0:r(I))||Re(f==null?void 0:f.value)||(c==null?void 0:c.value):g!=null&&g.value?(i==null?void 0:i(I))||Re(_==null?void 0:_.value)||(c==null?void 0:c.value):(l==null?void 0:l(I))||Re(c==null?void 0:c.value)||(c==null?void 0:c.value)});return{isVisible:w,hasInvalid:S,hasValid:p,hintContent:A}},render(){if(this.isVisible)return e.h("small",{role:this.hasInvalid?"alert":this.hasValid?"status":void 0},this.hintContent)}}}}const Oo=["for"],Ro=["id","name","disabled","value","tabindex","aria-invalid"],vo={name:"VvCheckbox"},gt=e.defineComponent({...vo,props:Ao,emits:Do,setup(o,{emit:n}){const t=o,r=e.useSlots(),{id:l,disabled:i,readonly:c,valid:d,invalid:u,propsSwitch:f,modelValue:a,indeterminate:s,isInGroup:m}=Io(t,n),g=ue(l),_=e.computed(()=>p.value?-1:t.tabindex),S=e.ref(),h=e.computed(()=>t.uncheckedValue!==void 0&&!m.value),p=e.computed(()=>i.value||c.value),B=e.computed(()=>{if(u.value===!0)return!0;if(d.value===!0)return!1}),w=e.computed(()=>h.value?a.value===t.value:Array.isArray(a.value)?ce(t.value,a.value):ie(t.value,a.value)),N=e.computed(()=>!!(s.value||!w.value&&h.value&&t.uncheckedValue!==a.value)),A=e.computed(()=>{if(!h.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),I=e.computed({get(){return w.value},set(O){if(h.value)a.value=O?t.value:t.uncheckedValue;else if(Array.isArray(a.value)||m.value){const T=new Set(Array.isArray(a.value)?a.value:a.value!==void 0?[a.value]:[]);O?T.add(t.value):T.delete(t.value),a.value=[...T]}else a.value=O?t.value:void 0;n("change",O)}}),{modifiers:V}=e.toRefs(t),W=x("vv-checkbox",V,e.computed(()=>({switch:f.value,valid:d.value,invalid:u.value,disabled:i.value,readonly:c.value,indeterminate:s.value})));e.watchEffect(()=>{h.value&&Array.isArray(a.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),e.watch(()=>N.value,O=>{O?S.value.indeterminate=!0:S.value.indeterminate=!1}),e.onMounted(()=>{N.value&&(S.value.indeterminate=!0)});const{HintSlot:P}=fe(t,r);return(O,T)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(W)),for:e.unref(g)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(g),ref_key:"input",ref:S,"onUpdate:modelValue":T[0]||(T[0]=Y=>e.isRef(I)?I.value=Y:null),type:"checkbox",class:"vv-checkbox__input",name:O.name,disabled:e.unref(p),value:e.unref(A),tabindex:e.unref(_),"aria-invalid":e.unref(B)},null,8,Ro),[[e.vModelCheckbox,e.unref(I)]]),e.renderSlot(O.$slots,"default",{value:e.unref(a)},()=>[e.createTextVNode(e.toDisplayString(O.label),1)]),e.createVNode(e.unref(P),{class:"vv-checkbox__hint",params:{value:e.unref(a)}},null,8,["params"])],10,Oo))}}),To=pt,Lo=["update:modelValue","change"];function ve(o){const{options:n,labelKey:t,valueKey:r,disabledKey:l}=e.toRefs(o);return{options:n,getOptionLabel:u=>typeof u!="object"&&u!==null?u:typeof t.value=="function"?t.value(u):u[t.value],getOptionValue:u=>typeof u!="object"&&u!==null?u:typeof r.value=="function"?r.value(u):u[r.value],getOptionDisabled:u=>typeof u!="object"&&u!==null?!1:typeof l.value=="function"?l.value(u):u[l.value]}}const xo=["textContent"],Ho={class:"vv-checkbox-group__wrapper"},Mo={name:"VvCheckboxGroup"},zo=e.defineComponent({...Mo,props:To,emits:Lo,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=R.useVModel(t,"modelValue",n),{disabled:i,readonly:c,vertical:d,valid:u,invalid:f,modifiers:a}=e.toRefs(t);Ne({key:ot,modelValue:l,disabled:i,readonly:c,valid:u,invalid:f});const{getOptionLabel:s,getOptionValue:m}=ve(t),g=x("vv-checkbox-group",a,e.computed(()=>({disabled:i.value,readonly:c.value,horizontal:!d.value,valid:u.value,invalid:f.value}))),_=(h,p)=>({id:`${t.name}_opt${p}`,name:t.name,label:s(h),value:m(h)}),{HintSlot:S}=fe(t,r);return(h,p)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[h.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(h.label)},null,8,xo)):e.createCommentVNode("",!0),e.createElementVNode("div",Ho,[h.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(h.options,(B,w)=>(e.openBlock(),e.createBlock(gt,e.mergeProps({key:w},_(B,w)),null,16))),128)):e.renderSlot(h.$slots,"default",{key:1})]),e.createVNode(e.unref(S),{class:"vv-checkbox-group__hint"})],2))}}),jo=["update:modelValue","change:search","focus","blur"],Fo={...Oe,...De,..._e,...Se,...Be,...Ae,...de,...Ve,...Q,...je,...Fe,...Ge,...Ce,...We,...he,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},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"},placeholder:String,searchable:Boolean,searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...We.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array]},autoOpen:Boolean,autoClose:Boolean},Go={...Ie,...Q,...We,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:ke.menu,validator:o=>Object.values(ke).includes(o)}};function Wo({reference:o,id:n,expanded:t,aria:r}){const l=Et(),i=e.defineComponent({name:"VvDropdownTriggerProvider",provide(){return{[lt]:{reference:o,id:n,expanded:t,aria:r,bus:l}}},setup(){return{}},render(){var c,d;return e.h(e.Fragment,{},(d=(c=this.$slots).default)==null?void 0:d.call(c))}});return{bus:l,component:i}}function Uo({role:o,expanded:n}){const t=e.computed(()=>o.value===ke.listbox?Me.option:Me.presentation);return e.provide(rt,{role:t,expanded:n}),{itemRole:t}}function Ko({expanded:o}){e.provide(at,{role:Qe.menuitem,expanded:o})}const qo=["id","tabindex","role","aria-labelledby"],Yo={name:"VvDropdown",inheritAttrs:!1},Ue=e.defineComponent({...Yo,props:Go,emits:["update:modelValue"],setup(o,{emit:n}){const t=o,{id:r}=e.toRefs(t),l=ue(r),i=e.useAttrs(),c=e.ref("auto"),d=e.ref("auto"),u=e.ref(null),f=e.ref(null),a=e.ref(null),s=e.ref(null),m=e.computed({get:()=>t.reference??u.value,set:b=>{u.value=b}}),g=e.computed(()=>{const b=[];if(t.autoPlacement?typeof t.autoPlacement=="boolean"?b.push(q.autoPlacement()):b.push(q.autoPlacement(t.autoPlacement)):t.flip&&(typeof t.flip=="boolean"?b.push(q.flip()):b.push(q.flip(t.flip))),t.shift&&(typeof t.shift=="boolean"?b.push(q.shift()):b.push(q.shift(t.shift))),t.size){const v=({availableWidth:$,availableHeight:se})=>{c.value=`${$}px`,d.value=`${se}px`};typeof t.size=="boolean"?b.push(q.size({apply:v})):b.push(q.size({...t.size,apply:v}))}return t.offset&&(b.push(q.offset(Number(t.offset))),["string","number"].includes(typeof t.offset)?b.push(q.offset(Number(t.offset))):b.push(q.offset(t.offset))),t.arrow&&b.push(q.arrow({element:a})),b}),{x:_,y:S,strategy:h,middlewareData:p,placement:B}=q.useFloating(m,f,{whileElementsMounted:q.autoUpdate,placement:t.placement,middleware:g}),w=e.computed(()=>({position:h.value,top:`${S.value??0}px`,left:`${_.value??0}px`,maxWidth:c.value,maxHeight:d.value,width:t.triggerWidth&&m.value?`${m.value.offsetWidth}px`:void 0})),N=e.computed(()=>B.value.split("-")[0]),A=e.computed(()=>({top:"bottom",right:"left",bottom:"top",left:"right"})[N.value]??"bottom"),I=e.computed(()=>{var b,v,$,se;return["bottom","top"].includes(A.value)?{right:`${((b=p.value.arrow)==null?void 0:b.x)??0}px`,[A.value]:`${-(((v=a.value)==null?void 0:v.offsetWidth)??0)/2}px`}:{top:`${(($=p.value.arrow)==null?void 0:$.y)??0}px`,[A.value]:`${-(((se=a.value)==null?void 0:se.offsetWidth)??0)/2}px`}}),V=R.useVModel(t,"modelValue",n),W=e.ref(!1),P=e.computed({get:()=>V.value??W.value,set:b=>{if(V.value===void 0){W.value=b;return}V.value=b}}),O=()=>{P.value=!0},T=()=>{P.value=!1},Y=()=>{P.value=!P.value},te=b=>{m.value=b};e.watch(P,b=>{b&&t.autofocusFirst&&e.nextTick(()=>{const v=F(f.value);v.length>0&&v[0].focus()})}),R.onClickOutside(f,()=>{t.autoClose&&(P.value=!1)},{ignore:[m]});const oe=e.computed(()=>{var b;return((b=m.value)==null?void 0:b.getAttribute("id"))??void 0}),U=e.computed(()=>({"aria-controls":l.value,"aria-haspopup":!0,"aria-expanded":P.value})),{component:Z,bus:ne}=Wo({reference:m,id:l,expanded:P,aria:U});ne.on("click",Y);const{role:K,modifiers:ae}=e.toRefs(t),{itemRole:M}=Uo({role:K,expanded:P}),D=x("vv-dropdown",ae,e.computed(()=>({arrow:t.arrow}))),{focused:z}=R.useFocusWithin(f);function F(b){return b?[...b.querySelectorAll('a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])')].filter(v=>!v.hasAttribute("disabled")&&!v.getAttribute("aria-hidden")):[]}const le=()=>{e.nextTick(()=>{if(z.value){const b=F(f.value);if(b.length===0||!document.activeElement)return;const v=b.indexOf(document.activeElement);v<b.length-1?b[v+1].focus():b[0].focus()}})},me=()=>{e.nextTick(()=>{if(z.value){const b=F(f.value);if(b.length===0||!document.activeElement)return;const v=b.indexOf(document.activeElement);v>0?b[v-1].focus():b[b.length-1].focus()}})};return R.onKeyStroke("Escape",b=>{P.value&&(b.preventDefault(),T())}),R.onKeyStroke("ArrowDown",b=>{P.value&&z.value&&(b.preventDefault(),le())}),R.onKeyStroke("ArrowUp",b=>{P.value&&z.value&&(b.preventDefault(),me())}),R.onKeyStroke([" ","Enter"],b=>{P.value&&z.value&&(b.preventDefault(),document.activeElement.click())}),(b,v)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Z),null,{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:te,show:O,hide:T,toggle:Y,expanded:e.unref(P),aria:e.unref(U)})))]),_:3}),e.createVNode(e.Transition,{name:b.transitionName},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:f,style:e.normalizeStyle(e.unref(w)),class:e.normalizeClass(e.unref(D))},[t.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:a,style:e.normalizeStyle(e.unref(I)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("",!0),e.renderSlot(b.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(P)}))),e.createElementVNode("ul",e.mergeProps(e.unref(i),{id:e.unref(l),ref_key:"listEl",ref:s,tabindex:e.unref(P)?void 0:-1,role:e.unref(K),"aria-labelledby":e.unref(oe),class:"vv-dropdown__list"}),[e.renderSlot(b.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(M)})))],16,qo),e.renderSlot(b.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(P)})))],6),[[e.vShow,e.unref(P)]])]),_:3},8,["name"])],64))}}),Jo={name:"VvDropdownItem"},Xo=e.defineComponent({...Jo,setup(o){const{role:n,expanded:t}=so(),r=e.ref(null);Ko({expanded:t});const l=R.useElementHover(r),{focused:i}=R.useFocus(r),{focused:c}=R.useFocusWithin(r);return e.watch(l,d=>{d&&(i.value=!0)}),(d,u)=>(e.openBlock(),e.createElementBlock("li",e.mergeProps({role:e.unref(n)},{ref_key:"element",ref:r,class:["vv-dropdown__item",{"focus-visible":e.unref(i)||e.unref(c)}]}),[e.renderSlot(d.$slots,"default")],16))}}),Qo={class:"vv-dropdown-option__hint"},Zo={name:"VvDropdownOption"},Te=e.defineComponent({...Zo,props:{...de,...Wt,...Ce,...Q,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String}},setup(o){const n=o,{modifiers:t}=e.toRefs(n),r=x("vv-dropdown-option",t,e.computed(()=>({disabled:n.disabled,selected:n.selected,unselectable:n.unselectable&&n.selected})));return(l,i)=>(e.openBlock(),e.createBlock(Xo,{class:e.normalizeClass(e.unref(r)),tabindex:l.disabled?-1:0,"aria-selected":l.selected,"aria-disabled":l.disabled},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default"),e.createElementVNode("span",Qo,[e.renderSlot(l.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:l.disabled,selected:l.selected,unselectable:l.unselectable})),()=>[l.selected?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(l.unselectable?o.deselectHintLabel:o.selectedHintLabel),1)],64)):l.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(o.selectHintLabel),1)],64))])])]),_:3},8,["class","tabindex","aria-selected","aria-disabled"]))}}),$o={...Oe,...ct,...dt,...De,..._e,...Se,...Be,...Ae,...de,...Ve,...Q,...je,...Fe,...Ge,...Ce,...he,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},placeholder:String},en=["update:modelValue","focus","blur"];function Le(o,n){const{focused:t}=R.useFocus(o);return e.watch(t,r=>{n(r?"focus":"blur",e.unref(o))}),{focused:t}}function xe(o,n){const t=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===ye.before)),r=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===ye.after)),l=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===X.left)),i=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===X.right)),c=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===X.top)),d=e.computed(()=>Boolean((o==null?void 0:o.value)&&n.value===X.bottom));return{hasIcon:e.computed(()=>typeof(o==null?void 0:o.value)=="string"?{name:o==null?void 0:o.value}:o==null?void 0:o.value),hasIconLeft:l,hasIconRight:i,hasIconTop:c,hasIconBottom:d,hasIconBefore:t,hasIconAfter:r}}const tn=["for"],on={class:"vv-select__wrapper"},nn={key:0,class:"vv-select__input-before"},ln={class:"vv-select__inner"},rn=["id"],an=["disabled","hidden"],sn=["disabled","value"],cn={key:1,class:"vv-select__input-after"},dn={name:"VvSelect"},yt=e.defineComponent({...dn,props:$o,emits:en,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{HintSlot:i,hasHint:c,hasInvalid:d}=fe(t,r),{id:u,modifiers:f,disabled:a,readonly:s,loading:m,icon:g,iconPosition:_,invalid:S,valid:h,floating:p,multiple:B}=e.toRefs(t),w=ue(u),N=e.computed(()=>`${w.value}-hint`),{focused:A}=Le(l,n),I=R.useElementVisibility(l);e.watch(I,D=>{D&&t.autofocus&&(A.value=!0)});const{hasIcon:V,hasIconBefore:W,hasIconAfter:P}=xe(g,_),O=e.computed(()=>!ee(t.modelValue)),T=e.computed(()=>t.disabled||t.readonly),Y=e.computed(()=>T.value?-1:t.tabindex),te=e.computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),oe=x("vv-select",f,e.computed(()=>({valid:h.value,invalid:S.value,loading:m.value,disabled:a.value,readonly:s.value,"icon-before":W.value,"icon-after":P.value,dirty:O.value,focus:A.value,floating:p.value,multiple:B.value}))),U=e.computed(()=>({name:t.name,tabindex:Y.value,disabled:T.value,required:t.required,size:t.size,autocomplete:t.autocomplete,multiple:t.multiple,"aria-invalid":te.value,"aria-describedby":!d.value&&c.value?N.value:void 0,"aria-errormessage":d.value?N.value:void 0})),Z=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue})),{getOptionLabel:ne,getOptionValue:K,getOptionDisabled:ae}=ve(t),M=e.computed({get:()=>t.modelValue,set:D=>{Array.isArray(D)&&(D=D.filter(z=>z!==void 0)),n("update:modelValue",D)}});return(D,z)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(oe))},[D.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(w)},e.toDisplayString(D.label),9,tn)):e.createCommentVNode("",!0),e.createElementVNode("div",on,[D.$slots.before?(e.openBlock(),e.createElementBlock("div",nn,[e.renderSlot(D.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])):e.createCommentVNode("",!0),e.createElementVNode("div",ln,[e.unref(W)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(V)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref(w),ref_key:"select",ref:l,"onUpdate:modelValue":z[0]||(z[0]=F=>e.isRef(M)?M.value=F:null)},e.unref(U)),[D.placeholder?(e.openBlock(),e.createElementBlock("option",{key:0,value:void 0,disabled:!D.unselectable,hidden:!D.unselectable},e.toDisplayString(D.placeholder),9,an)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.options,(F,le)=>(e.openBlock(),e.createElementBlock("option",{key:le,disabled:e.unref(ae)(F),value:e.unref(K)(F)},e.toDisplayString(e.unref(ne)(F)),9,sn))),128))],16,rn),[[e.vModelSelect,e.unref(M)]]),e.unref(P)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(V)),null,16)):e.createCommentVNode("",!0)]),D.$slots.after?(e.openBlock(),e.createElementBlock("div",cn,[e.renderSlot(D.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(i),{id:e.unref(N),class:"vv-select__hint"},null,8,["id"])],2))}}),un=["id"],fn=["id","for"],pn=["id","aria-controls","aria-labelledby","aria-describedby","placeholder"],mn={key:0,class:"vv-select__input-before"},bn={class:"vv-select__inner"},hn=["aria-labelledby","tabindex"],gn=["aria-label","onClick"],yn={key:1,class:"vv-select__input-after"},kn={name:"VvCombobox",components:{VvDropdown:Ue,VvDropdownOption:Te}},_n=e.defineComponent({...kn,props:Fo,emits:jo,setup(o,{emit:n}){const t=o,r=e.useSlots(),{HintSlot:l}=fe(t,r),i=e.ref(null),c=e.ref(null),d=e.ref(null),{focused:u}=Le(i,n),{focused:f}=R.useFocusWithin(d);e.watch(u,y=>{if(t.autoOpen){if(y&&!m.value){_();return}!y&&m.value&&!f.value&&S()}}),e.watch(f,y=>{!u.value&&!y&&m.value&&S()});const a=e.ref(""),s=R.refDebounced(a,Number(t.debounceSearch));e.watch(s,()=>n("change:search",s.value));const m=e.ref(!1),g=()=>{t.disabled||t.readonly||(m.value=!m.value)},_=()=>{t.disabled||t.readonly||m.value||(m.value=!0)},S=()=>{t.disabled||t.readonly||!m.value||(m.value=!1)};e.watch(m,y=>{O.value&&e.nextTick(()=>{if(y){c.value&&c.value.focus();return}a.value=""})});const{id:h,icon:p,iconPosition:B,modifiers:w,disabled:N,readonly:A,loading:I,valid:V,invalid:W,floating:P,searchable:O}=e.toRefs(t),T=ue(h),Y=e.computed(()=>`${T.value}-hint`),te=e.computed(()=>`${T.value}-dropdown`),oe=e.computed(()=>`${T.value}-search`),U=e.computed(()=>`${T.value}-label`),{hasIcon:Z,hasIconBefore:ne,hasIconAfter:K}=xe(p,B),ae=e.computed(()=>!ee(t.modelValue)),M=e.computed(()=>N.value||A.value?-1:t.tabindex),D=x("vv-select",w,e.computed(()=>({disabled:N.value,loading:I.value,readonly:A.value,"icon-before":Boolean(ne.value),"icon-after":Boolean(K.value),valid:V.value,invalid:W.value,dirty:ae.value,focus:u.value,floating:P.value}))),z=e.computed(()=>t.searchable?b.value:t.options),{getOptionLabel:F,getOptionValue:le,getOptionDisabled:me}=ve(t),b=e.computed(()=>{var y;return(y=t.options)==null?void 0:y.filter(j=>F(j).toLowerCase().includes(s.value.toLowerCase().trim()))});function v(y){return Array.isArray(t.modelValue)?ce(y,t.modelValue)||ce(le(y),t.modelValue):ie(y,t.modelValue)||ie(le(y),t.modelValue)}const $=e.computed(()=>{let y=[];return Array.isArray(t.modelValue)?y=t.modelValue:t.modelValue&&(y=[t.modelValue]),t.options.filter(j=>y.includes(le(j)))}),se=e.computed(()=>$.value.map(y=>F(y)).join(t.separator));e.watch($,()=>{!t.multiple&&t.autoClose&&S()});const Ye=()=>{t.autoOpen?_():g()},Ee=y=>{var be;if(t.disabled||t.readonly)return;const j=le(y);let L=j;if(t.multiple)if(Array.isArray(t.modelValue)){if(t.maxValues!==void 0&&t.maxValues>=0&&((be=t.modelValue)==null?void 0:be.length)>=t.maxValues&&!ce(j,t.modelValue))return;L=ce(j,t.modelValue)?Dt(j,t.modelValue):[...t.modelValue,j]}else L=[j];else t.unselectable&&j===t.modelValue&&(L=void 0);n("update:modelValue",L)},E=e.computed(()=>({id:T.value,name:t.name,tabindex:M.value,valid:V.value,validLabel:t.validLabel,invalid:W.value,invalidLabel:t.invalidLabel,hintLabel:t.hintLabel,loading:I.value,loadingLabel:t.loadingLabel,disabled:N.value,readonly:A.value,modifiers:t.modifiers,options:z.value,labelKey:t.labelKey,valueKey:t.valueKey,icon:t.icon,iconPosition:t.iconPosition,floating:t.floating,unselectable:t.unselectable,multiple:t.multiple,label:t.label,placeholder:t.placeholder,modelValue:t.modelValue})),G=e.computed(()=>({id:te.value,reference:d.value,placement:t.placement,transitionName:t.transitionName,offset:t.offset,shift:t.shift,flip:t.flip,autoPlacement:t.autoPlacement,arrow:t.arrow,autoClose:t.autoClose,autofocusFirst:O.value?!1:t.autofocusFirst,triggerWidth:t.triggerWidth,modifiers:t.dropdownModifiers})),ge=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue}));return R.onKeyStroke([" ","Enter"],y=>{t.autoOpen||!m.value&&u.value&&(y.preventDefault(),y.stopImmediatePropagation(),g())}),(y,j)=>y.native?(e.openBlock(),e.createBlock(yt,e.mergeProps({key:1},e.unref(E),{"onUpdate:modelValue":j[2]||(j[2]=L=>n("update:modelValue",L))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(T),class:e.normalizeClass(e.unref(D))},[y.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:e.unref(U),for:e.unref(O)?e.unref(oe):void 0},e.toDisplayString(y.label),9,fn)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:d,class:"vv-select__wrapper"},[e.createVNode(Ue,e.mergeProps({modelValue:e.unref(m),"onUpdate:modelValue":j[1]||(j[1]=L=>e.isRef(m)?m.value=L:null)},e.unref(G),{role:e.unref(ke).listbox}),e.createSlots({default:e.withCtx(({aria:L})=>[y.$slots.before?(e.openBlock(),e.createElementBlock("div",mn,[e.renderSlot(y.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(ge))))])):e.createCommentVNode("",!0),e.createElementVNode("div",bn,[e.unref(ne)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(Z)),null,16)):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({ref_key:"inputEl",ref:i},L,{"aria-labelledby":e.unref(U),class:"vv-select__input",role:"combobox",tabindex:e.unref(M),onClickPassive:Ye}),[e.renderSlot(y.$slots,"value",e.normalizeProps(e.guardReactiveProps({selectedOptions:e.unref($),onInput:Ee})),()=>[e.unref(se)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[y.badges?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref($),(be,Ct)=>(e.openBlock(),e.createBlock(bt,{key:Ct,modifiers:y.badgeModifiers,class:"vv-select__badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(F)(be))+" ",1),y.unselectable&&!e.unref(A)&&!e.unref(N)?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-label":y.deselectActionLabel,onClick:e.withModifiers(pl=>Ee(be),["stop"])},[e.createVNode(H,{name:"close"})],8,gn)):e.createCommentVNode("",!0)]),_:2},1032,["modifiers"]))),128)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(e.unref(se)),1)],64))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y.placeholder),1)],64))])],16,hn),e.unref(K)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(Z)),null,16)):e.createCommentVNode("",!0)]),y.$slots.after?(e.openBlock(),e.createElementBlock("div",yn,[e.renderSlot(y.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(ge))))])):e.createCommentVNode("",!0)]),items:e.withCtx(()=>[e.unref(b).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(b),(L,be)=>(e.openBlock(),e.createBlock(Te,e.mergeProps({disabled:e.unref(me)(L),selected:v(L),unselectable:y.unselectable,deselectHintLabel:y.deselectHintLabel,selectHintLabel:y.selectHintLabel,selectedHintLabel:y.selectedHintLabel},{key:be,class:"vv-dropdown-option",onClickPassive:Ct=>Ee(L)}),{default:e.withCtx(()=>[e.renderSlot(y.$slots,"option",e.normalizeProps(e.guardReactiveProps({option:L,selectedOptions:e.unref($),selected:v(L),disabled:e.unref(me)(L)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(F)(L)),1)])]),_:2},1040,["onClickPassive"]))),128)):y.options.length?(e.openBlock(),e.createBlock(Te,{key:2,modifiers:"inert"},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"no-results",{},()=>[e.createTextVNode(e.toDisplayString(y.noResultsLabel),1)])]),_:3})):(e.openBlock(),e.createBlock(Te,{key:1,modifiers:"inert"},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"no-options",{},()=>[e.createTextVNode(e.toDisplayString(y.noOptionsLabel),1)])]),_:3}))]),_:2},[e.unref(O)||y.$slots["dropdown::before"]?{name:"before",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"dropdown::before"),e.unref(O)?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:e.unref(oe),ref_key:"inputSearchEl",ref:c,"onUpdate:modelValue":j[0]||(j[0]=L=>e.isRef(a)?a.value=L:null),"aria-autocomplete":"list","aria-controls":e.unref(te),"aria-labelledby":e.unref(U),"aria-describedby":e.unref(Y),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:y.searchPlaceholder},null,8,pn)),[[e.vShow,e.unref(m)],[e.vModelText,e.unref(a)]]):e.createCommentVNode("",!0)]),key:"0"}:void 0,y.$slots["dropdown::after"]?{name:"after",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"dropdown::after")]),key:"1"}:void 0]),1040,["modelValue","role"])],512),e.createVNode(e.unref(l),{id:e.unref(Y),class:"vv-select__hint"},null,8,["id"])],10,un))}}),Sn=["open","close","update:modelValue"],Vn={...Ie,title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},Bn={key:0,class:"vv-dialog__header"},Cn={class:"vv-dialog__content"},En={key:1,class:"vv-dialog__footer"},Pn={name:"VvDialog"},wn=e.defineComponent({...Pn,props:Vn,emits:Sn,setup(o,{emit:n}){const t=o,r=R.useVModel(t,"modelValue",n),l=e.ref(!0),i=e.ref(null),c=e.computed(()=>{const{id:s}=t;return{id:s,open:l.value}}),d=e.computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),u=e.computed(()=>`vv-dialog--${t.transition}`),f={"before-enter":()=>{l.value=!0,n("open")},"after-leave":()=>{l.value=!1,n("close")}};R.onClickOutside(i,()=>{t.autoClose&&(r.value=!1)});function a(){r.value=!1}return R.onKeyStroke("Escape",s=>{r.value&&(s.preventDefault(),a())}),(s,m)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(u)},e.toHandlers(f)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(c),{class:e.unref(d)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:i,class:"vv-dialog__wrapper"},[s.$slots.header||s.title?(e.openBlock(),e.createElementBlock("header",Bn,[e.renderSlot(s.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(s.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClickPassive:a},[e.createVNode(H,{name:"close"})],32)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Cn,[e.renderSlot(s.$slots,"default")]),s.$slots.footer?(e.openBlock(),e.createElementBlock("footer",En,[e.renderSlot(s.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(r)]])]),_:3},16,["name"]))}}),k={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"},pe={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},Nn=["update:modelValue","focus","blur","keyup"],An={...ut,modelValue:[String,Number],type:{type:String,default:k.TEXT,validator:o=>Object.values(k).includes(o)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:pe.PASSWORD_SHOW},iconHidePassword:{type:String,default:pe.PASSWORD_HIDE},iconClear:{type:String,default:pe.SEARCH},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"}},kt=e.defineComponent({components:{VvIcon:H},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:pe.PASSWORD_SHOW},iconHide:{type:String,default:pe.PASSWORD_HIDE}},emits:["toggle-password"],setup(o,{emit:n}){const t=e.ref(!1),r=e.computed(()=>t.value?o.iconHide:o.iconShow);function l(i){i==null||i.stopPropagation(),o.disabled||(t.value=!t.value,n("toggle-password",t.value))}return{active:t,activeIcon:r,onClick:l}},render(){const o=e.h(H,{name:this.activeIcon,class:"vv-input-text__action-icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},o)}}),Ke=e.defineComponent({components:{VvIcon:H},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:o=>["up","down"].includes(o),default:"up"}},emits:["step-up","step-down"],setup(o,{emit:n}){const t=e.computed(()=>o.mode==="up");return{isUp:t,onClick:l=>{l==null||l.stopPropagation(),o.disabled||n(t.value?"step-up":"step-down")}}},render(){return e.h("button",{class:["vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,onClick:this.onClick})}}),_t=e.defineComponent({components:{VvIcon:H},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup(o,{emit:n}){function t(r){r==null||r.stopPropagation(),o.disabled||n("clear")}return{onClick:t}},render(){const o=e.h(H,{name:this.icon,class:"vv-input-text__action-icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},o)}});function qe(o,n){return{name:"VvInputTextActions",components:{VvIcon:H,VvInputPasswordAction:kt,VvInputStepAction:Ke,VvInputClearAction:_t},setup(){return{isDisabled:e.computed(()=>n.disabled||n.readonly),labelStepUp:n.labelStepUp,labelStepDown:n.labelStepDown,labelShowPassword:n.labelShowPassword,labelHidePassword:n.labelHidePassword,labelClear:n.labelClear,iconShowPassword:n.iconShowPassword,iconHidePassword:n.iconHidePassword}},render(){let t=null;switch(o){case k.SEARCH:{const{onClear:r}=this.$attrs;t=[e.h(_t,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:r})];break}case k.PASSWORD:{const{onTogglePassword:r}=this.$attrs;t=[e.h(kt,{disabled:this.isDisabled,onTogglePassword:r,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case k.NUMBER:{const{onStepUp:r,onStepDown:l}=this.$attrs;t=[e.h(Ke,{mode:"up",disabled:this.isDisabled||n.max!==void 0&&n.modelValue===n.max,label:this.labelStepUp,onStepUp:r,onStepDown:l}),e.h(Ke,{mode:"down",disabled:this.isDisabled||n.min!==void 0&&n.modelValue===n.min,label:this.labelStepDown,onStepUp:r,onStepDown:l})];break}}return Array.isArray(t)?e.h("div",{class:"vv-input-text__actions-group"},t):t}}}function St(o,n,t=0){let r;return typeof t=="string"&&(t=parseInt(t)),e.computed({get:()=>o==null?void 0:o.value,set:l=>{r&&clearTimeout(r),r=setTimeout(()=>{n("update:modelValue",l)},t)}})}function Vt(o,n){const t=e.computed(()=>(e.unref(o)??"").length),r=e.computed(()=>(n==null?void 0:n.lowerLimit)!==void 0&&t.value<(n==null?void 0:n.lowerLimit)?t.value-n.lowerLimit:(n==null?void 0:n.upperLimit)!==void 0&&t.value<(n==null?void 0:n.upperLimit)?n.upperLimit-t.value:0),l=e.computed(()=>(n==null?void 0:n.mode)===!1?"":(n==null?void 0:n.mode)==="limit"&&(n!=null&&n.upperLimit)?`${t.value} / ${n.lowerLimit?`${n.lowerLimit}-`:""}${n.upperLimit}`:(n==null?void 0:n.mode)==="countdown"?r.value===0?void 0:r:t.value);return{length:t,gap:r,formatted:l}}const Dn=["for"],In={class:"vv-input-text__wrapper"},On={key:0,class:"vv-input-text__input-before"},Rn={class:"vv-input-text__inner"},vn=["id"],Tn={key:1,class:"vv-input-text__input-after"},Ln={key:2,class:"vv-input-text__limit"},xn={name:"VvInputText"},Hn=e.defineComponent({...xn,props:An,emits:Nn,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{id:i,icon:c,iconPosition:d,label:u,modelValue:f,count:a,valid:s,invalid:m,loading:g}=e.toRefs(t),_=ue(i),S=e.computed(()=>`${_.value}-hint`),h=e.computed(()=>t.floating&&ee(t.placeholder)?" ":t.placeholder),p=St(f,n,t.debounce),{focused:B}=Le(l,n),w=R.useElementVisibility(l);e.watch(w,E=>{E&&t.autofocus&&(B.value=!0)});const N=e.ref(!1),A=e.computed(()=>t.type===k.PASSWORD),I=()=>{N.value=!N.value},V=e.computed(()=>t.type===k.TIME||t.type===k.DATETIME_LOCAL||t.type===k.DATE||t.type===k.WEEK||t.type===k.MONTH),W=e.computed(()=>t.type===k.NUMBER),P=()=>{K.value&&(l.value.stepUp(),p.value=e.unref(l).value)},O=()=>{K.value&&(l.value.stepDown(),p.value=e.unref(l).value)},T=e.computed(()=>t.type===k.SEARCH),Y=()=>{p.value=void 0},{hasIcon:te,hasIconBefore:oe,hasIconAfter:U}=xe(c,d),Z=e.computed(()=>{switch(t.type){case k.COLOR:return{name:pe.COLOR};case k.DATE:case k.DATETIME_LOCAL:case k.WEEK:case k.MONTH:return{name:pe.DATE};case k.TIME:return{name:pe.TIME};default:return""}}),{formatted:ne}=Vt(p,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),K=e.computed(()=>!t.disabled&&!t.readonly),ae=e.computed(()=>K.value?t.tabindex:-1),M=e.computed(()=>!ee(f)),D=e.computed(()=>{if(m.value===!0)return!0;if(s.value===!0)return!1}),{modifiers:z}=e.toRefs(t),F=x("vv-input-text",z,e.computed(()=>({valid:s.value,invalid:m.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":oe.value,"icon-after":U.value||!ee(Z),floating:t.floating&&!ee(t.label),dirty:M.value,focus:B.value}))),le=e.computed(()=>{const E=(()=>A.value&&N.value||V.value&&!M.value&&!B.value?k.TEXT:t.type)(),G={type:E,name:t.name,tabindex:ae.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,"aria-invalid":D.value,"aria-describedby":!$.value&&v.value?S.value:void 0,"aria-errormessage":$.value?S.value:void 0};return(E===k.DATE||E===k.MONTH||E===k.WEEK||E===k.TIME||E===k.DATETIME_LOCAL||E===k.NUMBER)&&(G.step=t.step,G.max=String(t.max),G.min=String(t.min)),(E===k.TEXT||E===k.SEARCH||E===k.URL||E===k.TEL||E===k.EMAIL||E===k.PASSWORD||E===k.NUMBER)&&(G.placeholder=h.value),(E===k.TEXT||E===k.SEARCH||E===k.URL||E===k.TEL||E===k.EMAIL||E===k.PASSWORD)&&(G.minlength=t.minlength,G.maxlength=t.maxlength,G.pattern=t.pattern),E===k.EMAIL&&(G.multiple=t.multiple),G}),me=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,togglePassword:I,stepUp:P,stepDown:O,clear:Y})),{HintSlot:b,hasHint:v,hasInvalid:$}=fe(t,r),se=qe(k.PASSWORD,t),Ye=qe(k.NUMBER,t),Ee=qe(k.SEARCH,t);return(E,G)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(F))},[e.unref(u)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(_),class:"vv-input-text__label"},e.toDisplayString(e.unref(u)),9,Dn)):e.createCommentVNode("",!0),e.createElementVNode("div",In,[E.$slots.before?(e.openBlock(),e.createElementBlock("div",On,[e.renderSlot(E.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(me))))])):e.createCommentVNode("",!0),e.createElementVNode("div",Rn,[e.unref(oe)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,class:"vv-input-text__icon"},e.unref(te)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(_),ref_key:"input",ref:l,"onUpdate:modelValue":G[0]||(G[0]=ge=>e.isRef(p)?p.value=ge:null)},e.unref(le),{onKeyup:G[1]||(G[1]=ge=>n("keyup",ge))}),null,16,vn),[[e.vModelDynamic,e.unref(p)]]),e.unref(U)||e.unref(Z)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:1,class:"vv-input-text__icon vv-input-text__icon-after"},e.unref(U)?e.unref(te):e.unref(Z)),null,16)):e.unref(A)?(e.openBlock(),e.createBlock(e.unref(se),{key:2,onTogglePassword:I})):e.unref(W)?(e.openBlock(),e.createBlock(e.unref(Ye),{key:3,onStepUp:P,onStepDown:O})):e.unref(T)?(e.openBlock(),e.createBlock(e.unref(Ee),{key:4,onClear:Y})):e.createCommentVNode("",!0)]),E.$slots.after?(e.openBlock(),e.createElementBlock("div",Tn,[e.renderSlot(E.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(me))))])):e.createCommentVNode("",!0),e.unref(a)?(e.openBlock(),e.createElementBlock("span",Ln,[e.renderSlot(E.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(me))),()=>[e.createTextVNode(e.toDisplayString(e.unref(ne)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(b),{id:e.unref(S),class:"vv-input-text__hint"},null,8,["id"])],2))}}),Mn={...Q,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},zn={name:"VvProgress"},jn=e.defineComponent({...zn,props:Mn,setup(o){const n=o,{value:t,max:r,label:l}=e.toRefs(n),i=e.computed(()=>n.value===void 0),{modifiers:c}=e.toRefs(n),d=x("vv-progress",c,e.computed(()=>({indeterminate:i.value})));return(u,f)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(d),ariaLabel:e.unref(l),max:e.unref(r),value:e.unref(t)}),null,16))}}),Fn=ft,Gn=["click","update:modelValue","change","blur"];function Wn(o,n){const{id:t}=e.toRefs(o),{group:r,isInGroup:l,getGroupOrLocalRef:i}=we(tt),c=i("modelValue",o,n),d=i("readonly",o),u=i("disabled",o),f=i("valid",o),a=i("invalid",o);return{id:t,group:r,isInGroup:l,modelValue:c,readonly:d,disabled:u,valid:f,invalid:a}}const Un=["for"],Kn=["id","name","disabled","value","tabindex","aria-invalid"],qn={name:"VvRadio"},Bt=e.defineComponent({...qn,props:Fn,emits:Gn,setup(o,{emit:n}){const t=o,r=e.useSlots(),{id:l,disabled:i,readonly:c,modelValue:d,valid:u,invalid:f}=Wn(t,n),a=ue(l),s=e.computed(()=>g.value?-1:t.tabindex),m=e.ref(),g=e.computed(()=>i.value||c.value),_=e.computed(()=>{if(f.value===!0)return!0;if(u.value===!0)return!1}),S=e.computed(()=>Array.isArray(d.value)?ce(t.value,d.value):ie(t.value,d.value)),h=e.computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),p=e.computed({get(){return S.value?h.value:null},set(A){Array.isArray(d.value)?d.value=[t.value]:d.value=t.value,n("change",A)}}),{modifiers:B}=e.toRefs(t),w=x("vv-radio",B,e.computed(()=>({valid:u.value,invalid:f.value,disabled:i.value,readonly:c.value}))),{HintSlot:N}=fe(t,r);return(A,I)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(w)),for:e.unref(a)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(a),ref_key:"input",ref:m,"onUpdate:modelValue":I[0]||(I[0]=V=>e.isRef(p)?p.value=V:null),type:"radio",class:"vv-radio__input",name:A.name,disabled:e.unref(g),value:e.unref(h),tabindex:e.unref(s),"aria-invalid":e.unref(_)},null,8,Kn),[[e.vModelRadio,e.unref(p)]]),e.renderSlot(A.$slots,"default",{value:e.unref(d)},()=>[e.createTextVNode(e.toDisplayString(A.label),1)]),e.createVNode(e.unref(N),{class:"vv-radio__hint",params:{value:e.unref(d)}},null,8,["params"])],10,Un))}}),Yn=pt,Jn=["update:modelValue","change"],Xn=["textContent"],Qn={class:"vv-radio-group__wrapper"},Zn={name:"VvRadioGroup"},$n=e.defineComponent({...Zn,props:Yn,emits:Jn,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=R.useVModel(t,"modelValue",n),{disabled:i,readonly:c,vertical:d,valid:u,invalid:f,modifiers:a}=e.toRefs(t);Ne({key:tt,modelValue:l,disabled:i,readonly:c,valid:u,invalid:f});const{getOptionLabel:s,getOptionValue:m}=ve(t),g=x("vv-radio-group",a,e.computed(()=>({disabled:i.value,readonly:c.value,horizontal:!d.value,valid:u.value,invalid:f.value}))),_=(h,p)=>({id:`${t.name}_opt${p}`,name:t.name,label:s(h),value:m(h)}),{HintSlot:S}=fe(t,r);return(h,p)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[h.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(h.label)},null,8,Xn)):e.createCommentVNode("",!0),e.createElementVNode("div",Qn,[h.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(h.options,(B,w)=>(e.openBlock(),e.createBlock(Bt,e.mergeProps({key:w},_(B,w)),null,16))),128)):e.renderSlot(h.$slots,"default",{key:1})]),e.createVNode(e.unref(S),{class:"vv-radio-group__hint"})],2))}}),el={hard:"hard",soft:"soft"},tl={true:!0,false:!1,default:"default"},ol=["update:modelValue","focus","blur","keyup"],nl={...ut,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:el.soft},spellcheck:{type:[Boolean,String],default:tl.default},resizable:Boolean},ll=["for"],rl={class:"vv-textarea__wrapper"},al={key:0,class:"vv-textarea__input-before"},sl={class:"vv-textarea__inner"},il=["id"],cl={key:1,class:"vv-textarea__input-after"},dl={key:2,class:"vv-textarea__limit"},ul={name:"VvTextarea"},fl=e.defineComponent({...ul,props:nl,emits:ol,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{id:i,icon:c,iconPosition:d,label:u,modelValue:f,count:a,valid:s,invalid:m,loading:g,modifiers:_}=e.toRefs(t),S=ue(i),h=e.computed(()=>`${S.value}-hint`),p=e.computed(()=>t.floating&&ee(t.placeholder)?" ":t.placeholder),B=St(f,n,t.debounce),{hasIcon:w,hasIconBefore:N,hasIconAfter:A}=xe(c,d),{focused:I}=Le(l,n),V=R.useElementVisibility(l);e.watch(V,M=>{M&&t.autofocus&&(I.value=!0)});const{formatted:W}=Vt(B,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),P=e.computed(()=>!t.disabled&&!t.readonly),O=e.computed(()=>P.value?t.tabindex:-1),T=e.computed(()=>!ee(f)),Y=e.computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:te,hasHint:oe,hasInvalid:U}=fe(t,r),Z=x("vv-textarea",_,e.computed(()=>({valid:s.value,invalid:m.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":N.value,"icon-after":A.value,floating:t.floating&&!ee(t.label),dirty:T.value,focused:I.value,resizable:t.resizable}))),ne=e.computed(()=>({name:t.name,placeholder:p.value,tabindex:O.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,minlength:t.minlength,maxlength:t.maxlength,cols:t.cols,rows:t.rows,wrap:t.wrap,spellcheck:t.spellcheck,"aria-invalid":Y.value,"aria-describedby":!U.value&&oe.value?h.value:void 0,"aria-errormessage":U.value?h.value:void 0})),K=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,hintLabel:t.hintLabel,maxlength:t.maxlength,minlength:t.minlength,clear:ae})),ae=()=>{B.value=void 0};return(M,D)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(Z))},[e.unref(u)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(S),class:"vv-textarea__label"},e.toDisplayString(e.unref(u)),9,ll)):e.createCommentVNode("",!0),e.createElementVNode("div",rl,[M.$slots.before?(e.openBlock(),e.createElementBlock("div",al,[e.renderSlot(M.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(K))))])):e.createCommentVNode("",!0),e.createElementVNode("div",sl,[e.unref(N)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,class:"vv-textarea__icon"},e.unref(w)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(S),ref_key:"textarea",ref:l,"onUpdate:modelValue":D[0]||(D[0]=z=>e.isRef(B)?B.value=z:null)},e.unref(ne),{onKeyup:D[1]||(D[1]=z=>n("keyup",z))}),null,16,il),[[e.vModelText,e.unref(B)]]),e.unref(A)?(e.openBlock(),e.createBlock(H,e.mergeProps({key:1,class:"vv-textarea__icon vv-textarea__icon-after"},e.unref(w)),null,16)):e.createCommentVNode("",!0)]),M.$slots.after?(e.openBlock(),e.createElementBlock("div",cl,[e.renderSlot(M.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(K))))])):e.createCommentVNode("",!0),e.unref(a)?(e.openBlock(),e.createElementBlock("span",dl,[e.renderSlot(M.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(K))),()=>[e.createTextVNode(e.toDisplayString(e.unref(W)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(te),{id:e.unref(h),class:"vv-textarea__hint"},null,8,["id"])],2))}});C.VolverPlugin=Nt,C.VvAccordion=it,C.VvAccordionGroup=Ft,C.VvBadge=bt,C.VvBreadcrumb=to,C.VvButton=yo,C.VvButtonGroup=Vo,C.VvCard=No,C.VvCheckbox=gt,C.VvCheckboxGroup=zo,C.VvCombobox=_n,C.VvDialog=wn,C.VvDropdown=Ue,C.VvIcon=H,C.VvInputText=Hn,C.VvProgress=jn,C.VvRadio=Bt,C.VvRadioGroup=$n,C.VvSelect=yt,C.VvTextarea=fl,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})});
@@ -1,17 +1,65 @@
1
1
  import type { PropType } from 'vue';
2
2
  import type { Option } from '@/types/generic';
3
- import { Placement, Position, Side } from '@/constants';
3
+ import { Placement, Position, Side, AnchorTarget, ButtonType } from '@/constants';
4
+ export declare const LinkProps: {
5
+ /**
6
+ * The router-link/nuxt-link property, if it is defined the button is rendered as a ruouter-link or nuxt-link.
7
+ * @see Documentation of [router-link](https://router.vuejs.org/api/#router-link) and [nuxt-link](https://nuxtjs.org/api/components-nuxt-link/)
8
+ */
9
+ to: {
10
+ type: (StringConstructor | ObjectConstructor)[];
11
+ };
12
+ /**
13
+ * Anchor href
14
+ */
15
+ href: StringConstructor;
16
+ /**
17
+ * Anchor target
18
+ */
19
+ target: {
20
+ type: PropType<AnchorTarget>;
21
+ validator: (value: AnchorTarget) => boolean;
22
+ };
23
+ /**
24
+ * Anchor rel
25
+ */
26
+ rel: {
27
+ type: StringConstructor;
28
+ default: string;
29
+ };
30
+ };
4
31
  export declare const ValidProps: {
32
+ /**
33
+ * Valid status
34
+ */
5
35
  valid: BooleanConstructor;
36
+ /**
37
+ * Valid label
38
+ */
6
39
  validLabel: (StringConstructor | ArrayConstructor)[];
7
40
  };
8
41
  export declare const InvalidProps: {
42
+ /**
43
+ * Invalid status
44
+ */
9
45
  invalid: BooleanConstructor;
46
+ /**
47
+ * Invalid label
48
+ */
10
49
  invalidLabel: (StringConstructor | ArrayConstructor)[];
11
50
  };
12
51
  export declare const LoadingProps: {
52
+ /**
53
+ * Loading status
54
+ */
13
55
  loading: BooleanConstructor;
14
- loadingLabel: StringConstructor;
56
+ /**
57
+ * Loading label
58
+ */
59
+ loadingLabel: {
60
+ type: StringConstructor;
61
+ default: string;
62
+ };
15
63
  };
16
64
  export declare const DisabledProps: {
17
65
  /**
@@ -19,6 +67,30 @@ export declare const DisabledProps: {
19
67
  */
20
68
  disabled: BooleanConstructor;
21
69
  };
70
+ export declare const SelectedProps: {
71
+ /**
72
+ * Whether the item is selected
73
+ */
74
+ selected: BooleanConstructor;
75
+ };
76
+ export declare const ActiveProps: {
77
+ /**
78
+ * Whether the item is active
79
+ */
80
+ active: BooleanConstructor;
81
+ };
82
+ export declare const PressedProps: {
83
+ /**
84
+ * Whether the item is pressed
85
+ */
86
+ pressed: BooleanConstructor;
87
+ };
88
+ export declare const LabelProps: {
89
+ /**
90
+ * The item label
91
+ */
92
+ label: (StringConstructor | NumberConstructor)[];
93
+ };
22
94
  export declare const ReadonlyProps: {
23
95
  /**
24
96
  * The value is not editable
@@ -296,9 +368,9 @@ export declare const InputTextareaProps: {
296
368
  */
297
369
  required: BooleanConstructor;
298
370
  /**
299
- * <label> value for the Input / Textarea
371
+ * The item label
300
372
  */
301
- label: StringConstructor;
373
+ label: (StringConstructor | NumberConstructor)[];
302
374
  /**
303
375
  * If true the label will be floating
304
376
  */
@@ -334,15 +406,36 @@ export declare const InputTextareaProps: {
334
406
  * Component BEM modifiers
335
407
  */
336
408
  modifiers: PropType<string | string[]>;
409
+ /**
410
+ * Loading status
411
+ */
337
412
  loading: BooleanConstructor;
338
- loadingLabel: StringConstructor;
413
+ /**
414
+ * Loading label
415
+ */
416
+ loadingLabel: {
417
+ type: StringConstructor;
418
+ default: string;
419
+ };
339
420
  hintLabel: {
340
421
  type: StringConstructor;
341
422
  default: string;
342
423
  };
424
+ /**
425
+ * Invalid status
426
+ */
343
427
  invalid: BooleanConstructor;
428
+ /**
429
+ * Invalid label
430
+ */
344
431
  invalidLabel: (StringConstructor | ArrayConstructor)[];
432
+ /**
433
+ * Valid status
434
+ */
345
435
  valid: BooleanConstructor;
436
+ /**
437
+ * Valid label
438
+ */
346
439
  validLabel: (StringConstructor | ArrayConstructor)[];
347
440
  /**
348
441
  * The value is not editable
@@ -399,9 +492,9 @@ export declare const CheckboxRadioProps: {
399
492
  */
400
493
  modelValue: (StringConstructor | BooleanConstructor | ObjectConstructor | NumberConstructor)[];
401
494
  /**
402
- * <label> for input
495
+ * The item label
403
496
  */
404
- label: StringConstructor;
497
+ label: (StringConstructor | NumberConstructor)[];
405
498
  /**
406
499
  * Component BEM modifiers
407
500
  */
@@ -418,9 +511,21 @@ export declare const CheckboxRadioProps: {
418
511
  type: StringConstructor;
419
512
  default: string;
420
513
  };
514
+ /**
515
+ * Invalid status
516
+ */
421
517
  invalid: BooleanConstructor;
518
+ /**
519
+ * Invalid label
520
+ */
422
521
  invalidLabel: (StringConstructor | ArrayConstructor)[];
522
+ /**
523
+ * Valid status
524
+ */
423
525
  valid: BooleanConstructor;
526
+ /**
527
+ * Valid label
528
+ */
424
529
  validLabel: (StringConstructor | ArrayConstructor)[];
425
530
  /**
426
531
  * Global attribute tabindex
@@ -450,10 +555,6 @@ export declare const CheckboxRadioGroupProps: {
450
555
  * Input value
451
556
  */
452
557
  modelValue: (StringConstructor | ArrayConstructor)[];
453
- /**
454
- * Input label
455
- */
456
- label: StringConstructor;
457
558
  /**
458
559
  * Input name
459
560
  */
@@ -465,6 +566,10 @@ export declare const CheckboxRadioGroupProps: {
465
566
  * If true, the group will be displayed in a vertical column
466
567
  */
467
568
  vertical: BooleanConstructor;
569
+ /**
570
+ * The item label
571
+ */
572
+ label: (StringConstructor | NumberConstructor)[];
468
573
  /**
469
574
  * Component BEM modifiers
470
575
  */
@@ -509,8 +614,71 @@ export declare const CheckboxRadioGroupProps: {
509
614
  type: (StringConstructor | FunctionConstructor)[];
510
615
  default: string;
511
616
  };
617
+ /**
618
+ * Invalid status
619
+ */
512
620
  invalid: BooleanConstructor;
621
+ /**
622
+ * Invalid label
623
+ */
513
624
  invalidLabel: (StringConstructor | ArrayConstructor)[];
625
+ /**
626
+ * Valid status
627
+ */
514
628
  valid: BooleanConstructor;
629
+ /**
630
+ * Valid label
631
+ */
515
632
  validLabel: (StringConstructor | ArrayConstructor)[];
516
633
  };
634
+ export declare const ActionProps: {
635
+ /**
636
+ * Button type
637
+ */
638
+ type: {
639
+ type: StringConstructor;
640
+ default: ButtonType;
641
+ validator: (value: ButtonType) => boolean;
642
+ };
643
+ /**
644
+ * The router-link/nuxt-link property, if it is defined the button is rendered as a ruouter-link or nuxt-link.
645
+ * @see Documentation of [router-link](https://router.vuejs.org/api/#router-link) and [nuxt-link](https://nuxtjs.org/api/components-nuxt-link/)
646
+ */
647
+ to: {
648
+ type: (StringConstructor | ObjectConstructor)[];
649
+ };
650
+ /**
651
+ * Anchor href
652
+ */
653
+ href: StringConstructor;
654
+ /**
655
+ * Anchor target
656
+ */
657
+ target: {
658
+ type: PropType<AnchorTarget>;
659
+ validator: (value: AnchorTarget) => boolean;
660
+ };
661
+ /**
662
+ * Anchor rel
663
+ */
664
+ rel: {
665
+ type: StringConstructor;
666
+ default: string;
667
+ };
668
+ /**
669
+ * Whether the item is active
670
+ */
671
+ active: BooleanConstructor;
672
+ /**
673
+ * Whether the item is pressed
674
+ */
675
+ pressed: BooleanConstructor;
676
+ /**
677
+ * The item label
678
+ */
679
+ label: (StringConstructor | NumberConstructor)[];
680
+ /**
681
+ * Whether the form control is disabled
682
+ */
683
+ disabled: BooleanConstructor;
684
+ };
@@ -1,17 +1,16 @@
1
1
  import type { ComponentResolver } from 'unplugin-vue-components/types';
2
+ type ImportStyle = boolean | 'css' | 'scss';
2
3
  export interface VolverResolverOptions {
3
4
  /**
4
5
  * import style along with components
5
- *
6
- * @default 'css'
6
+ * @default undefined
7
7
  */
8
- importStyle?: boolean | 'css' | 'scss';
8
+ importStyle?: ImportStyle;
9
9
  /**
10
- * import custom style path
11
- *
12
- * @default ''
10
+ * enable/disable directives
11
+ * @default undefined
13
12
  */
14
- customStylePath?: string;
13
+ directives?: boolean;
15
14
  /**
16
15
  * prefix for components (e.g. 'vv' to resolve Button from VvButton)
17
16
  *
@@ -24,4 +23,5 @@ export interface VolverResolverOptions {
24
23
  *
25
24
  * @link https://github.com/volverjs/ui-vue
26
25
  */
27
- export declare function VolverResolver({ prefix, importStyle, customStylePath, }?: VolverResolverOptions): ComponentResolver;
26
+ export declare function VolverResolver({ prefix, importStyle, directives, }?: VolverResolverOptions): ComponentResolver[];
27
+ export {};