@volverjs/ui-vue 0.0.2 → 0.0.3-beta.3

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 (171) hide show
  1. package/auto-imports.d.ts +289 -0
  2. package/dist/components/VvAccordion/VvAccordion.es.js +63 -131
  3. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  4. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +2 -2
  5. package/dist/components/VvAccordion/index.d.ts +2 -2
  6. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +97 -176
  7. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  8. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +4 -4
  9. package/dist/components/VvAccordionGroup/index.d.ts +2 -2
  10. package/dist/components/VvBadge/VvBadge.es.js +16 -50
  11. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  12. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +38 -45
  13. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  14. package/dist/components/VvButton/VvButton.es.js +170 -306
  15. package/dist/components/VvButton/VvButton.umd.js +1 -1
  16. package/dist/components/VvButton/VvButton.vue.d.ts +4 -4
  17. package/dist/components/VvButton/index.d.ts +3 -3
  18. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +39 -84
  19. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  20. package/dist/components/VvCard/VvCard.es.js +26 -60
  21. package/dist/components/VvCard/VvCard.umd.js +1 -1
  22. package/dist/components/VvCard/VvCard.vue.d.ts +2 -2
  23. package/dist/components/VvCard/index.d.ts +1 -1
  24. package/dist/components/VvCheckbox/VvCheckbox.es.js +144 -282
  25. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  26. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +6 -6
  27. package/dist/components/VvCheckbox/index.d.ts +10 -4
  28. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +190 -346
  29. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  30. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +7 -7
  31. package/dist/components/VvCheckboxGroup/index.d.ts +3 -3
  32. package/dist/components/VvCombobox/VvCombobox.es.js +330 -487
  33. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  34. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +8 -8
  35. package/dist/components/VvCombobox/index.d.ts +4 -4
  36. package/dist/components/VvDialog/VvDialog.es.js +66 -102
  37. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  38. package/dist/components/VvDropdown/VvDropdown.es.js +61 -185
  39. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  40. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +2 -2
  41. package/dist/components/VvDropdown/index.d.ts +1 -1
  42. package/dist/components/VvIcon/VvIcon.es.js +30 -65
  43. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  44. package/dist/components/VvInputText/VvInputText.es.js +304 -407
  45. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  46. package/dist/components/VvInputText/VvInputText.vue.d.ts +10 -10
  47. package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
  48. package/dist/components/VvInputText/index.d.ts +5 -5
  49. package/dist/components/VvProgress/VvProgress.es.js +17 -51
  50. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  51. package/dist/components/VvRadio/VvRadio.es.js +110 -249
  52. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  53. package/dist/components/VvRadio/VvRadio.vue.d.ts +6 -6
  54. package/dist/components/VvRadio/index.d.ts +3 -3
  55. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +161 -318
  56. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  57. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +7 -7
  58. package/dist/components/VvRadioGroup/index.d.ts +3 -3
  59. package/dist/components/VvSelect/VvSelect.es.js +200 -292
  60. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  61. package/dist/components/VvSelect/VvSelect.vue.d.ts +8 -8
  62. package/dist/components/VvSelect/index.d.ts +4 -4
  63. package/dist/components/VvTextarea/VvTextarea.es.js +196 -299
  64. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  65. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +6 -6
  66. package/dist/components/VvTextarea/index.d.ts +3 -3
  67. package/dist/components/VvTooltip/VvTooltip.es.js +28 -0
  68. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -0
  69. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +23 -0
  70. package/dist/components/VvTooltip/index.d.ts +18 -0
  71. package/dist/components/common/HintSlot.d.ts +1 -1
  72. package/dist/components/index.es.js +1179 -1371
  73. package/dist/components/index.umd.js +1 -1
  74. package/dist/composables/group/useInjectedGroupState.d.ts +1 -1
  75. package/dist/composables/useComponentFocus.d.ts +1 -1
  76. package/dist/composables/useComponentIcons.d.ts +1 -1
  77. package/dist/composables/useDebouncedInput.d.ts +1 -1
  78. package/dist/composables/useModifiers.d.ts +1 -1
  79. package/dist/composables/useTextCount.d.ts +1 -1
  80. package/dist/icons.es.js +3 -3
  81. package/dist/icons.umd.js +1 -1
  82. package/dist/index.es.js +1211 -1404
  83. package/dist/index.umd.js +1 -1
  84. package/dist/props/index.d.ts +12 -12
  85. package/dist/stories/Tooltip/Tooltip.settings.d.ts +42 -0
  86. package/dist/stories/Tooltip/Tooltip.test.d.ts +2 -0
  87. package/dist/utils/ObjectUtilities.d.ts +1 -1
  88. package/package.json +27 -20
  89. package/src/assets/icons/detailed.json +1 -1
  90. package/src/assets/icons/normal.json +1 -1
  91. package/src/assets/icons/simple.json +1 -1
  92. package/src/components/VvAccordion/VvAccordion.vue +0 -3
  93. package/src/components/VvAccordion/index.ts +1 -2
  94. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +1 -3
  95. package/src/components/VvBadge/VvBadge.vue +0 -1
  96. package/src/components/VvButton/VvButton.vue +0 -3
  97. package/src/components/VvButton/index.ts +2 -10
  98. package/src/components/VvButtonGroup/VvButtonGroup.vue +0 -3
  99. package/src/components/VvCard/VvCard.vue +0 -1
  100. package/src/components/VvCheckbox/VvCheckbox.vue +0 -3
  101. package/src/components/VvCheckbox/index.ts +1 -2
  102. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +0 -5
  103. package/src/components/VvCombobox/VvCombobox.vue +0 -7
  104. package/src/components/VvDialog/VvDialog.vue +1 -2
  105. package/src/components/VvDropdown/VvDropdown.vue +0 -4
  106. package/src/components/VvIcon/VvIcon.vue +0 -2
  107. package/src/components/VvInputText/VvInputClearAction.ts +0 -1
  108. package/src/components/VvInputText/VvInputPasswordAction.ts +0 -1
  109. package/src/components/VvInputText/VvInputStepAction.ts +0 -1
  110. package/src/components/VvInputText/VvInputText.vue +1 -16
  111. package/src/components/VvInputText/VvInputTextActions.ts +1 -1
  112. package/src/components/VvProgress/VvProgress.vue +0 -2
  113. package/src/components/VvRadio/VvRadio.vue +0 -3
  114. package/src/components/VvRadio/index.ts +0 -1
  115. package/src/components/VvRadioGroup/VvRadioGroup.vue +0 -5
  116. package/src/components/VvSelect/VvSelect.vue +1 -14
  117. package/src/components/VvTextarea/VvTextarea.vue +1 -15
  118. package/src/components/VvTooltip/VvTooltip.vue +17 -0
  119. package/src/components/VvTooltip/index.ts +21 -0
  120. package/src/components/common/HintSlot.ts +1 -11
  121. package/src/composables/group/types/IAccordionGroupState.ts +0 -1
  122. package/src/composables/group/types/IButtonGroupState.ts +0 -1
  123. package/src/composables/group/types/IInputGroup.ts +0 -1
  124. package/src/composables/group/useInjectedGroupState.ts +1 -2
  125. package/src/composables/group/useProvideGroupState.ts +0 -1
  126. package/src/composables/useComponentFocus.ts +1 -2
  127. package/src/composables/useComponentIcons.ts +1 -1
  128. package/src/composables/useDebouncedInput.ts +1 -1
  129. package/src/composables/useModifiers.ts +1 -2
  130. package/src/composables/useOptions.ts +0 -1
  131. package/src/composables/useTextCount.ts +1 -1
  132. package/src/stories/Accordion/Accordion.stories.mdx +1 -1
  133. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +1 -1
  134. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +1 -1
  135. package/src/stories/Badge/Badge.stories.mdx +1 -1
  136. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +0 -1
  137. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +1 -1
  138. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.mdx +1 -1
  139. package/src/stories/Button/Button.stories.mdx +1 -1
  140. package/src/stories/Button/ButtonModifiers.stories.mdx +2 -2
  141. package/src/stories/Button/ButtonSlots.stories.mdx +3 -3
  142. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +0 -1
  143. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +1 -1
  144. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.mdx +1 -1
  145. package/src/stories/Card/Card.stories.mdx +1 -1
  146. package/src/stories/Card/CardSlots.stories.mdx +1 -1
  147. package/src/stories/Checkbox/Checkbox.stories.mdx +1 -1
  148. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +1 -1
  149. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +1 -1
  150. package/src/stories/Combobox/Combobox.settings.ts +0 -1
  151. package/src/stories/Combobox/Combobox.stories.mdx +1 -1
  152. package/src/stories/Dialog/Dialog.stories.mdx +1 -1
  153. package/src/stories/Dropdown/Dropdown.settings.ts +0 -1
  154. package/src/stories/Dropdown/Dropdown.stories.mdx +1 -1
  155. package/src/stories/Icon/Icon.settings.ts +0 -1
  156. package/src/stories/Icon/Icon.stories.mdx +1 -1
  157. package/src/stories/Icon/IconsCollection.stories.mdx +1 -1
  158. package/src/stories/InputText/InputText.settings.ts +0 -1
  159. package/src/stories/InputText/InputText.stories.mdx +1 -1
  160. package/src/stories/Progress/Progress.stories.mdx +1 -1
  161. package/src/stories/Radio/Radio.stories.mdx +1 -1
  162. package/src/stories/RadioGroup/RadioGroup.stories.mdx +1 -1
  163. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +1 -1
  164. package/src/stories/Select/Select.settings.ts +0 -1
  165. package/src/stories/Select/Select.stories.mdx +1 -1
  166. package/src/stories/Textarea/Textarea.settings.ts +0 -1
  167. package/src/stories/Textarea/Textarea.stories.mdx +1 -1
  168. package/src/stories/Tooltip/Tooltip.settings.ts +25 -0
  169. package/src/stories/Tooltip/Tooltip.stories.mdx +98 -0
  170. package/src/stories/Tooltip/Tooltip.test.ts +49 -0
  171. package/src/utils/ObjectUtilities.ts +1 -1
@@ -1 +1 @@
1
- (function(B,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@vueuse/core"),require("nanoid"),require("@iconify/vue")):typeof define=="function"&&define.amd?define(["exports","vue","@vueuse/core","nanoid","@iconify/vue"],e):(B=typeof globalThis<"u"?globalThis:B||self,e(B.components={},B.vue,B.core,B.nanoid,B.vue$1))})(this,function(B,e,L,U,ne){"use strict";function Y(o,n,t){return t?ue(o,t)===ue(n,t):Se(o,n)}function Se(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,a;if(t&&r){if(i=o.length,i!=n.length)return!1;for(l=i;l--!==0;)if(!Se(o[l],n[l]))return!1;return!0}if(t!=r)return!1;const f=o instanceof Date,d=n instanceof Date;if(f!=d)return!1;if(f&&d)return o.getTime()==n.getTime();const c=o instanceof RegExp,s=n instanceof RegExp;if(c!=s)return!1;if(c&&s)return o.toString()==n.toString();const p=Object.keys(o);if(i=p.length,i!==Object.keys(n).length)return!1;for(l=i;l--!==0;)if(!Object.prototype.hasOwnProperty.call(n,p[l]))return!1;for(l=i;l--!==0;)if(a=p[l],!Se(o[a],n[a]))return!1;return!0}return o!==o&&n!==n}function ue(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 Ye(o,n){let t=-1;if(n){for(let r=0;r<n.length;r++)if(Y(n[r],o)){t=r;break}}return t}function J(o,n){if(o!=null&&n&&n.length){for(const t of n)if(Y(o,t))return!0}return!1}function H(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 Je(o,n){const t=Ye(o,n);return t>-1?n.filter((r,l)=>l!==t):n}function Qe(o){return typeof o=="string"||o instanceof String}function Pe(o){var n,t;if(o)return(t=(n=o.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:n.join("-"))==null?void 0:t.toLowerCase()}function N(o,n){const t={[`${o}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(n).reduce((l,i)=>{const a=e.unref(n[i])||!1;if(!a)return l;if(i==="modifiers"){const f=Array.isArray(a)?a:a.split(" ");return{...l,...f.reduce((d,c)=>({...d,[`${o}--${Pe(c)}`]:!0}),{})}}else return{...l,[`${o}--${Pe(i)}`]:a}},t)||{})}}function pe(o){const n=e.inject(o,void 0),t=e.computed(()=>!H(n));function r(l,i,a){if(n!=null&&n.value){const d=e.unref(n.value)[l];return e.computed({get(){return d==null?void 0:d.value},set(c){d.value=c}})}const f=e.toRef(i,l);return e.computed({get(){return f.value},set(d){a&&a(`update:${l}`,d)}})}return{group:n,isInGroup:t,getGroupOrLocalRef:r}}const Ae="VV_BUTTON_GROUP",we="VV_RADIO_GROUP",Ne="VV_CHECK_GROUP",Re="VV_ACCORDION_GROUP",et={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},tt=["update:modelValue"];function ot(o,n){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=pe(Re),{title:i,content:a}=e.toRefs(o),f=l("modelValue",o,n),d=l("disabled",o),c=l("collapse",o),s=l("modifiers",o);return{modelValue:f,disabled:d,isInGroup:r,group:t,collapse:c,modifiers:s,title:i,content:a}}const nt=["id","open"],lt=["aria-controls","aria-expanded"],rt=["aria-hidden"],at={name:"VvAccordion"},De=e.defineComponent({...at,props:et,emits:tt,setup(o,{emit:n}){const t=o,r=e.useAttrs(),l=t.name||(r==null?void 0:r.id)||U.nanoid(),{modifiers:i,title:a,content:f,disabled:d,collapse:c,modelValue:s,isInGroup:p}=ot(t,n),u=e.ref(!1),b=e.computed({get:()=>p.value?c.value&&Array.isArray(s.value)?s.value.includes(l):s.value===l:s.value===void 0?u.value:s.value,set:m=>{if(p.value){if(c.value&&Array.isArray(s.value)){if(m){s.value.push(l);return}s.value=s.value.filter(V=>V!==l);return}s.value=m?l:null;return}if(s.value===void 0&&typeof m=="boolean"){u.value=m;return}s.value=m}}),{bemCssClasses:g}=N("vv-accordion",{modifiers:i,disabled:d}),h=L.useToggle(b);return(m,V)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(l),class:e.normalizeClass(e.unref(g)),open:e.unref(b),onClick:V[0]||(V[0]=e.withModifiers(E=>e.unref(h)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(l),"aria-expanded":e.unref(b),class:"vv-collapse__summary"},[e.renderSlot(m.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(b)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(a)),1)])],8,lt),e.createElementVNode("div",{"aria-hidden":!e.unref(b),class:"vv-collapse__content"},[e.renderSlot(m.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(b)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(f)),1)])],8,rt)],10,nt))}});function me(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 st={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},it=["update:modelValue"],ct={name:"VvAccordionGroup"},dt=e.defineComponent({...ct,props:st,emits:it,setup(o,{emit:n}){const t=o,{disabled:r,collapse:l,modifiers:i,itemModifiers:a,items:f}=e.toRefs(t);e.watchEffect(()=>{typeof t.modelValue=="string"&&l.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const d=e.ref([]),c=e.computed({get:()=>{var u;return t.modelValue!==void 0?l.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:l.value?d.value:(u=d.value)==null?void 0:u[0]},set:u=>{if(t.modelValue!==void 0)return(Array.isArray(t.modelValue)||l.value)&&!Array.isArray(u)&&(u=[u]),n("update:modelValue",u);d.value=Array.isArray(u)?u:[u]}});me({key:Re,modelValue:c,disabled:r,collapse:l,modifiers:a});const{bemCssClasses:p}=N("vv-accordion-group",{modifiers:i,disabled:r});return(u,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(p))},[e.renderSlot(u.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),g=>(e.openBlock(),e.createBlock(De,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content}),{header:e.withCtx(h=>[e.renderSlot(u.$slots,`header::${g.name}`,e.normalizeProps(e.guardReactiveProps(h)))]),details:e.withCtx(h=>[e.renderSlot(u.$slots,`details::${g.name}`,e.normalizeProps(e.guardReactiveProps(h)))]),_:2},1040))),128))])],2))}}),re={valid:Boolean,validLabel:[String,Array]},ae={invalid:Boolean,invalidLabel:[String,Array]},ke={loading:Boolean,loadingLabel:String},Q={disabled:Boolean},se={readonly:Boolean},j={modifiers:[String,Array]},ie={hintLabel:{type:String,default:""}},fe={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"}},ut={count:{type:[Boolean,String],default:!1,validator:o=>[!0,!1,"limit","countdown"].includes(o)}},pt={debounce:[Number,String]},Ie={LEFT:"left",RIGHT:"right"},_e={icon:{type:[String,Object]},iconPosition:{type:String,validation:o=>Object.values(Ie).includes(o),default:Ie.RIGHT}},be={tabindex:{type:[String,Number],default:0}},Ce={floating:Boolean},ge={unselectable:{type:Boolean,default:!0}},ce={id:[String,Number],name:{type:String,required:!0}},Oe={autofocus:Boolean},Te={autocomplete:{type:String,default:"off"}},Le={...ce,...Oe,...Te,...be,...Q,...se,...re,...ae,...ie,...ke,...j,...ut,...pt,..._e,...Ce,minlength:Number,maxlength:Number,placeholder:String,required:Boolean,label:String},xe={...ce,...be,...re,...ae,...ie,...Q,...se,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String},Me={...re,...ae,...fe,...ie,...Q,...se,modelValue:[String,Array],label:String,name:{type:String,required:!0},vertical:Boolean},mt={...j,value:[String,Number]},ft={name:"VvBadge"},bt=e.defineComponent({...ft,props:mt,setup(o){const n=o,{bemCssClasses:t}=N("vv-badge",{modifiers:n.modifiers});return(r,l)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(t)),role:"status"},[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])],2))}}),gt={...j,routes:Array},ht={class:"vv-breadcrumb__list"},yt=["content"],Vt={name:"VvBreadcrumb"},St=e.defineComponent({...Vt,props:gt,setup(o){const n=o,{bemCssClasses:t}=N("vv-breadcrumb",{modifiers:n.modifiers});return(r,l)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(t)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",ht,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.routes,(i,a)=>{var f,d,c,s;return e.openBlock(),e.createElementBlock("li",{key:`${i.label}-${a}`,class:e.normalizeClass({"vv-breadcrumb__item":a<Number((f=r.routes)==null?void 0:f.length)-1,"vv-breadcrumb__item-active":a===Number((d=r.routes)==null?void 0:d.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.to?"router-link":i.href?"a":"span"),e.mergeProps(i,{class:{"vv-breadcrumb__link":a<Number((c=r.routes)==null?void 0:c.length)-1},"aria-current":a===Number((s=r.routes)==null?void 0:s.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:i,index:a})),()=>[e.createTextVNode(e.toDisplayString(i.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${a+1}`},null,8,yt)],2)}),128))])],2))}}),He="ds",kt={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]}},_t={name:"VvIcon"},R=e.defineComponent({..._t,props:kt,setup(o){const n=o,t=e.ref(!0),{modifiers:r}=e.toRefs(n),l=e.inject(He),{bemCssClasses:i}=N("vv-icon",{modifiers:r}),a=e.computed(()=>n.provider||(l==null?void 0:l.provider)),f=e.computed(()=>{const s=n.name??"",p=`@${a.value}:${n.prefix}:${n.name}`;return ne.iconExists(s)?s:ne.iconExists(p)?p:(l==null?void 0:l.iconsCollections.find(u=>{const b=`@${a.value}:${u.prefix}:${s}`;if(ne.iconExists(b))return b}))||s});function d(s){let p=null;if(typeof window>"u"){const{JSDOM:h}=require("jsdom");p=new h().window}return(p?new p.DOMParser:new window.DOMParser).parseFromString(s,"text/html").querySelector("svg")}function c(s){const p=d(s),u=(p==null?void 0:p.innerHTML.trim())||"";p&&u&&ne.addIcon(`@${a.value}:${n.prefix}:${n.name}`,{body:u,height:p.viewBox.baseVal.height,width:p.viewBox.baseVal.width})}return l&&(n.src&&!ne.iconExists(`@${a.value}:${n.prefix}:${n.name}`)?(t.value=!1,l.fetchIcon(n.src).then(s=>{s&&(c(s),t.value=!0)}).catch(s=>{throw new Error(`During fetch icon: ${s==null?void 0:s.message}`)})):n.svg&&c(n.svg)),(s,p)=>t.value?(e.openBlock(),e.createBlock(e.unref(ne.Icon),e.mergeProps({key:0,class:e.unref(i)},{inline:s.inline,width:s.width,height:s.height,horizontalFlip:s.horizontalFlip,verticalFlip:s.verticalFlip,flip:s.flip,rotate:s.rotate,color:s.color,onLoad:s.onLoad,icon:e.unref(f)}),null,16,["class"])):e.createCommentVNode("",!0)}});var le=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(le||{}),Ge=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(Ge||{}),F=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(F||{}),ze=(o=>(o._blank="_blank",o._self="_self",o._parent="_parent",o._top="_top",o))(ze||{});const Ct=["update:modelValue"],Bt={...j,...Q,...ge,icon:{type:[String,Object],default:""},iconPosition:{type:String,default:"left",validator:o=>o in le},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=>o in ze},active:Boolean,pressed:Boolean,rel:{type:String,default:"noopener noreferrer"},type:{type:String,default:"button",validator:o=>o in Ge},toggle:{type:Boolean,default:!1},modelValue:String};function Et(o,n){var m;const{group:t,isInGroup:r,getGroupOrLocalRef:l}=pe(Ae),{iconPosition:i,icon:a,label:f,pressed:d,modifiers:c}=e.toRefs(o),s=l("modelValue",o,n),p=l("disabled",o),u=l("toggle",o),b=l("unselectable",o),g=((m=t==null?void 0:t.value)==null?void 0:m.multiple)??e.ref(!1),h=e.computed(()=>{var S;const V=c!=null&&c.value?Array.isArray(c.value)?c.value:[c.value]:[],E=(S=t==null?void 0:t.value.itemModifiers)!=null&&S.value?Array.isArray(t.value.itemModifiers.value)?t.value.itemModifiers.value:[t.value.itemModifiers.value]:[];return[...V,...E]});return{group:t,isInGroup:r,modelValue:s,disabled:p,toggle:u,unselectable:b,multiple:g,modifiers:h,pressed:d,iconPosition:i,icon:a,label:f}}const $t={key:1,class:"vv-button__label"},Pt={key:1,class:"vv-button__label"},At={name:"VvButton"},wt=e.defineComponent({...At,props:Bt,emits:Ct,setup(o,{emit:n}){const t=o,r=e.useAttrs(),l=e.useSlots(),i=(r==null?void 0:r.name)||U.nanoid(),{modifiers:a,iconPosition:f,icon:d,label:c,modelValue:s,disabled:p,toggle:u,unselectable:b}=Et(t,n),g=e.inject(He),h=e.computed(()=>{switch(!0){case p.value:return F.button;case t.to!==void 0:return g!=null&&g.nuxt?F.nuxtLink:F.routerLink;case t.href!==void 0:return F.a;default:return F.button}}),m=e.computed(()=>u.value?Array.isArray(s.value)?J(i,s.value):Y(i,s.value):t.pressed),{bemCssClasses:V}=N("vv-button",{modifiers:a,active:t.active,pressed:m,disabled:p,reverse:e.computed(()=>[le.right,le.bottom].includes(f.value)),column:e.computed(()=>[le.top,le.bottom].includes(f.value)),iconOnly:e.computed(()=>(d==null?void 0:d.value)&&!(c!=null&&c.value)&&!l.default)}),E=e.computed(()=>typeof(d==null?void 0:d.value)=="string"?{name:d==null?void 0:d.value}:d==null?void 0:d.value),S=e.computed(()=>{const k={class:V.value,"aria-pressed":m.value?!0:void 0};switch(h.value){case F.a:return{...k,role:"button",href:t.href,target:t.target,rel:t.rel};case F.routerLink:case F.nuxtLink:return{...k,role:"button",to:t.to,target:t.target};default:return{...k,type:t.type,disabled:p.value}}}),w=()=>{if(u.value){if(Array.isArray(s.value)){if(J(i,s.value)){b.value&&(s.value=s.value.filter(k=>k!==i));return}s.value.push(i);return}if(Y(i,s.value)&&b.value){s.value=void 0;return}s.value=i}};return(k,D)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(h)),e.mergeProps(e.unref(S),{onClickPassive:w}),{default:e.withCtx(()=>[e.renderSlot(k.$slots,"default",{},()=>[k.loading?e.renderSlot(k.$slots,"loading",{key:0},()=>[k.loadingIcon?(e.openBlock(),e.createBlock(R,{key:0,class:"vv-button__loading-icon",name:k.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),k.loadingLabel?(e.openBlock(),e.createElementBlock("span",$t,e.toDisplayString(k.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(k.$slots,"before"),e.unref(d)?(e.openBlock(),e.createBlock(R,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(E)),null,16)):e.createCommentVNode("",!0),e.unref(c)?(e.openBlock(),e.createElementBlock("span",Pt,[e.renderSlot(k.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)),1)])])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"after")],64))])]),_:3},16))}}),Nt={...j,...Q,...ge,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},Rt=["update:modelValue"],Dt={name:"VvButtonGroup"},It=e.defineComponent({...Dt,props:Nt,emits:Rt,setup(o,{emit:n}){const t=o,{disabled:r,toggle:l,modifiers:i,multiple:a,unselectable:f,itemModifiers:d}=e.toRefs(t);e.watchEffect(()=>{typeof t.modelValue=="string"&&a.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const c=e.computed({get:()=>a.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue,set:u=>(u!==void 0&&(Array.isArray(t.modelValue)||a.value)&&!Array.isArray(u)&&(u=[u]),n("update:modelValue",u))});me({key:Ae,modelValue:c,disabled:r,toggle:l,multiple:a,unselectable:f,itemModifiers:d});const{bemCssClasses:p}=N("vv-button-group",{modifiers:i});return(u,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(p)),role:"group"},[e.renderSlot(u.$slots,"default")],2))}}),Ot={title:String,modifiers:[String,Array]},Tt={key:0,class:"vv-card__header"},Lt={key:1,class:"vv-card__content"},xt={key:2,class:"vv-card__footer"},Mt={name:"VvCard"},Ht=e.defineComponent({...Mt,props:Ot,setup(o){const n=o,{bemCssClasses:t}=N("vv-card",{modifiers:n.modifiers});return(r,l)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(t))},[r.$slots.header||r.title?(e.openBlock(),e.createElementBlock("header",Tt,[e.renderSlot(r.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(r.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default"),r.$slots.content?(e.openBlock(),e.createElementBlock("div",Lt,[e.renderSlot(r.$slots,"content")])):e.createCommentVNode("",!0),r.$slots.footer?(e.openBlock(),e.createElementBlock("footer",xt,[e.renderSlot(r.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Gt={...xe,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean},zt=["click","update:modelValue","change","blur"];function vt(o,n){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=pe(Ne),{switch:i,indeterminate:a}=e.toRefs(o),f=l("modelValue",o,n),d=l("readonly",o),c=l("disabled",o),s=l("valid",o),p=l("invalid",o);return{propsSwitch:i,indeterminate:a,group:t,isInGroup:r,modelValue:f,readonly:d,disabled:c,valid:s,invalid:p}}function he(o){return Array.isArray(o)?o.filter(n=>Qe(n)).join(" "):o}function ee(o,n){const{invalid:t,valid:r,hint:l,loading:i}=n,{hintLabel:a,modelValue:f,valid:d,validLabel:c,invalid:s,invalidLabel:p,...u}=e.toRefs(o),b=ue(u,"loading"),g=ue(u,"loadingLabel"),h=e.computed(()=>s.value?!!(s.value&&t||p!=null&&p.value&&Array.isArray(p.value)&&p.value.length>0||p!=null&&p.value&&!H(p)):!1),m=e.computed(()=>!!(a&&a.value||l)),V=e.computed(()=>!!(c&&c.value||r)),E=e.computed(()=>!!(b!=null&&b.value&&i||b!=null&&b.value&&(g!=null&&g.value))),S=e.computed(()=>m.value||V.value||h.value||E.value);return{hasInvalid:h,hasHint:m,hasValid:V,hasLoading:E,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(w){const k=e.computed(()=>{const D=L.toReactive({hintLabel:a,modelValue:f,valid:d,validLabel:c,invalid:s,invalidLabel:p,loading:b,loadingLabel:g,...w.params});return s!=null&&s.value?(t==null?void 0:t(D))||he(p==null?void 0:p.value)||(a==null?void 0:a.value):d!=null&&d.value?(r==null?void 0:r(D))||he(c==null?void 0:c.value)||(a==null?void 0:a.value):b!=null&&b.value?(i==null?void 0:i(D))||he(g==null?void 0:g.value)||(a==null?void 0:a.value):(l==null?void 0:l(D))||he(a==null?void 0:a.value)||(a==null?void 0:a.value)});return{isVisible:S,hasInvalid:h,hasValid:V,hintContent:k}},render(){if(this.isVisible)return e.h("small",{role:this.hasInvalid||this.hasValid?"alert":void 0},this.hintContent)}}}}const Ut=["for"],jt=["id","name","disabled","value","tabindex","aria-invalid"],Ft={name:"VvCheckbox"},ve=e.defineComponent({...Ft,props:Gt,emits:zt,setup(o,{emit:n}){const t=o,r=e.useSlots(),{disabled:l,readonly:i,valid:a,invalid:f,propsSwitch:d,modelValue:c,indeterminate:s,isInGroup:p}=vt(t,n),u=e.computed(()=>String(t.id||U.nanoid())),b=e.computed(()=>m.value?-1:t.tabindex),g=e.ref(),h=e.computed(()=>t.uncheckedValue!==void 0&&!p.value),m=e.computed(()=>l.value||i.value),V=e.computed(()=>{if(f.value===!0)return!0;if(a.value===!0)return!1}),E=e.computed(()=>h.value?c.value===t.value:Array.isArray(c.value)?J(t.value,c.value):Y(t.value,c.value)),S=e.computed(()=>!!(s.value||!E.value&&h.value&&t.uncheckedValue!==c.value)),w=e.computed(()=>{if(!h.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),k=e.computed({get(){return E.value},set(P){if(h.value)c.value=P?t.value:t.uncheckedValue;else if(Array.isArray(c.value)||p.value){const I=new Set(Array.isArray(c.value)?c.value:c.value!==void 0?[c.value]:[]);P?I.add(t.value):I.delete(t.value),c.value=[...I]}else c.value=P?t.value:void 0;n("change",P)}}),{bemCssClasses:D}=N("vv-checkbox",{switch:d,valid:a,invalid:f,disabled:l,readonly:i,indeterminate:s});e.watchEffect(()=>{h.value&&Array.isArray(c.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),e.watch(()=>S.value,P=>{P?g.value.indeterminate=!0:g.value.indeterminate=!1}),e.onMounted(()=>{S.value&&(g.value.indeterminate=!0)});const{HintSlot:G}=ee(t,r);return(P,I)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(D)),for:e.unref(u)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(u),ref_key:"input",ref:g,"onUpdate:modelValue":I[0]||(I[0]=z=>e.isRef(k)?k.value=z:null),type:"checkbox",class:"vv-checkbox__input",name:P.name,disabled:e.unref(m),value:e.unref(w),tabindex:e.unref(b),"aria-invalid":e.unref(V)},null,8,jt),[[e.vModelCheckbox,e.unref(k)]]),e.renderSlot(P.$slots,"default",{value:e.unref(c)},()=>[e.createTextVNode(e.toDisplayString(P.label),1)]),e.createVNode(e.unref(G),{class:"vv-checkbox__hint",params:{value:e.unref(c)}},null,8,["params"])],10,Ut))}});function de(o){const{options:n,labelKey:t,valueKey:r}=e.toRefs(o);return{options:n,getOptionLabel:a=>typeof a!="object"&&a!==null?a:typeof t.value=="function"?t.value(a):a[t.value],getOptionValue:a=>typeof a!="object"&&a!==null?a:typeof r.value=="function"?r.value(a):a[r.value]}}const Kt=Me,Wt=["update:modelValue","change"],qt=["textContent"],Xt={class:"vv-checkbox-group__wrapper"},Zt={name:"VvCheckboxGroup"},Yt=e.defineComponent({...Zt,props:Kt,emits:Wt,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=L.useVModel(t,"modelValue",n),{disabled:i,readonly:a,vertical:f,valid:d,invalid:c}=e.toRefs(t);me({key:Ne,modelValue:l,disabled:i,readonly:a,valid:d,invalid:c});const{getOptionLabel:p,getOptionValue:u}=de(t),{bemCssClasses:b}=N("vv-checkbox-group",{disabled:i,readonly:a,horizontal:e.computed(()=>!f.value),valid:d,invalid:c}),g=(m,V)=>({id:`${t.name}_opt${V}`,name:t.name,label:p(m),value:u(m)}),{HintSlot:h}=ee(t,r);return(m,V)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(b))},[m.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(m.label)},null,8,qt)):e.createCommentVNode("",!0),e.createElementVNode("div",Xt,[m.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.options,(E,S)=>(e.openBlock(),e.createBlock(ve,e.mergeProps({key:S},g(E,S)),null,16))),128)):e.renderSlot(m.$slots,"default",{key:1})]),e.createVNode(e.unref(h),{class:"vv-checkbox-group__hint"})],2))}});function ye(o,n,t){const r=e.computed(()=>!!(o!=null&&o.value&&n.value==="left"||t!=null&&t.iconLeft)),l=e.computed(()=>!!(o!=null&&o.value&&n.value==="right"||t!=null&&t.iconRight)),i=e.computed(()=>!!(o!=null&&o.value&&n.value==="top"||t!=null&&t.iconTop)),a=e.computed(()=>!!(o!=null&&o.value&&n.value==="bottom"||t!=null&&t.iconBottom));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:r,hasIconRight:l,hasIconTop:i,hasIconBottom:a}}function Ve(o,n){const{focused:t}=L.useFocus(o);return e.watch(t,r=>{n(r?"focus":"blur",e.unref(o))}),{focused:t}}const Jt={...ce,...fe,...Q,...j,modelValue:{type:[String,Number,Boolean,Object,Array]},labelNoResults:{type:String,default:"No results"},multiple:Boolean,maxValues:[Number,String],unselectable:{type:Boolean,default:!0}},Qt=["id"],eo={key:0,role:"option"},to=["aria-selected"],oo=["for","onClick"],no=["id","type","value","checked","disabled","name"],lo={name:"VvDropdown"},Ue=e.defineComponent({...lo,props:Jt,emits:["update:modelValue"],setup(o,{emit:n}){const t=o,r=e.computed(()=>String(t.id||U.nanoid())),{modifiers:l,disabled:i}=e.toRefs(t),{getOptionLabel:a,getOptionValue:f}=de(t),{bemCssClasses:d}=N("vv-dropdown",{modifiers:l,disabled:i});function c(u){return Array.isArray(t.modelValue)?J(u,t.modelValue)||J(f(u),t.modelValue):Y(u,t.modelValue)||Y(f(u),t.modelValue)}function s(u){return typeof u=="string"||u.disabled===void 0?i.value:u.disabled}function p(u){var g;if(t.disabled)return;let b=u;if(t.multiple)if(Array.isArray(t.modelValue)){if(t.maxValues!==void 0&&t.maxValues>=0&&((g=t.modelValue)==null?void 0:g.length)>=t.maxValues&&!J(u,t.modelValue))return;b=J(u,t.modelValue)?Je(u,t.modelValue):[...t.modelValue,u]}else b=[u];else t.unselectable&&u===t.modelValue&&(b=void 0);n("update:modelValue",b)}return(u,b)=>{var g;return e.openBlock(),e.createElementBlock("ul",{id:e.unref(r),class:e.normalizeClass(e.unref(d)),role:"listbox"},[(g=u.options)!=null&&g.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",eo,[e.createElementVNode("label",null,e.toDisplayString(u.labelNoResults),1)])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.options,(h,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,role:"option","aria-selected":c(h)},[e.createElementVNode("label",{for:`dropdown-${m}-${e.unref(r)}`,onClick:e.withModifiers(V=>p(e.unref(f)(h)),["prevent"])},[e.createElementVNode("input",{id:`dropdown-${m}-${e.unref(r)}`,type:u.multiple?"checkbox":"radio",value:e.unref(f)(h),checked:c(h),disabled:s(h),name:u.name,tabindex:"-1","aria-hidden":"true"},null,8,no),e.createTextVNode(" "+e.toDisplayString(e.unref(a)(h)),1)],8,oo)],8,to))),128))],10,Qt)}}}),ro={...ce,...Oe,...Te,...be,...re,...ae,...ie,...ke,...Q,...se,...j,...fe,..._e,...Ce,...ge,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,placeholder:String},ao=["update:modelValue","focus","blur"],so=["for"],io={class:"vv-select__wrapper"},co=["id"],uo=["disabled","hidden"],po=["disabled","value"],mo={name:"VvSelect"},je=e.defineComponent({...mo,props:ro,emits:ao,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{HintSlot:i,hasHint:a,hasInvalid:f}=ee(t,r),{modifiers:d,disabled:c,readonly:s,loading:p,icon:u,iconPosition:b,invalid:g,valid:h,floating:m,multiple:V}=e.toRefs(t),E=e.computed(()=>String(t.id||U.nanoid())),S=e.computed(()=>`${E.value}-hint`),{focused:w}=Ve(l,n),k=L.useElementVisibility(l);e.watch(k,C=>{C&&t.autofocus&&(w.value=!0)});const{hasIcon:D,hasIconLeft:G,hasIconRight:P}=ye(u,b),I=e.computed(()=>!H(t.modelValue)),z=e.computed(()=>t.disabled||t.readonly),K=e.computed(()=>z.value?-1:t.tabindex),W=e.computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{bemCssClasses:v}=N("vv-select",{modifiers:d,valid:h,invalid:g,loading:p,disabled:c,readonly:s,iconLeft:G,iconRight:P,dirty:I,focus:w,floating:m,multiple:V}),oe=e.computed(()=>({name:t.name,tabindex:K.value,disabled:z.value,required:t.required,size:t.size,autocomplete:t.autocomplete,multiple:t.multiple,"aria-invalid":W.value,"aria-describedby":!f.value&&a.value?S.value:void 0,"aria-errormessage":f.value?S.value:void 0})),{getOptionLabel:q,getOptionValue:X}=de(t);function Z(C){return typeof C=="string"||C.disabled===void 0?c.value:C.disabled}const T=e.computed({get:()=>t.modelValue,set:C=>{Array.isArray(C)&&(C=C.filter(x=>x!==void 0)),n("update:modelValue",C)}});return(C,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(v))},[C.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(E)},e.toDisplayString(C.label),9,so)):e.createCommentVNode("",!0),e.createElementVNode("div",io,[e.renderSlot(C.$slots,"before",{},()=>[e.unref(G)?(e.openBlock(),e.createBlock(R,e.normalizeProps(e.mergeProps({key:0},e.unref(D))),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref(E),ref_key:"select",ref:l,"onUpdate:modelValue":x[0]||(x[0]=_=>e.isRef(T)?T.value=_:null)},e.unref(oe)),[C.placeholder?(e.openBlock(),e.createElementBlock("option",{key:0,value:void 0,disabled:!C.unselectable,hidden:!C.unselectable},e.toDisplayString(C.placeholder),9,uo)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.options,(_,A)=>(e.openBlock(),e.createElementBlock("option",{key:A,disabled:Z(_),value:e.unref(X)(_)},e.toDisplayString(e.unref(q)(_)),9,po))),128))],16,co),[[e.vModelSelect,e.unref(T)]]),e.renderSlot(C.$slots,"after",{},()=>[e.unref(P)?(e.openBlock(),e.createBlock(R,e.normalizeProps(e.mergeProps({key:0},e.unref(D))),null,16)):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(i),{id:e.unref(S),class:"vv-select__hint"},null,8,["id"])],2))}}),fo=["update:modelValue","change:search","focus","blur"],bo={...ce,...be,...re,...ae,...ie,...ke,...Q,...se,...j,...fe,..._e,...Ce,...ge,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,labelNoResults:{type:String,default:"No results"},placeholder:String,searchable:Boolean,searchPlaceholder:String,debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean},go=["id"],ho=["id","for"],yo=["tabindex"],Vo=["id","placeholder"],So={name:"VvCombobox"},ko=e.defineComponent({...So,props:bo,emits:fo,setup(o,{emit:n}){const t=o,r=e.useSlots(),{HintSlot:l}=ee(t,r),i=e.ref(),a=e.ref(),{focused:f}=Ve(i,n),d=e.computed(()=>String(t.id||U.nanoid())),c=e.ref(""),s=L.refDebounced(c,Number(t.debounceSearch)),p=e.ref(!1),{icon:u,iconPosition:b,modifiers:g,disabled:h,readonly:m,loading:V,valid:E,invalid:S,floating:w}=e.toRefs(t);e.watch(s,()=>n("change:search",s.value));const{hasIcon:k,hasIconLeft:D,hasIconRight:G}=ye(u,b),P=e.computed(()=>!H(t.modelValue)),I=e.computed(()=>h.value||m.value?-1:t.tabindex),{bemCssClasses:z}=N("vv-select",{modifiers:g,disabled:h,loading:V,readonly:m,iconLeft:D,iconRight:G,valid:E,invalid:S,dirty:P,focus:f,floating:w}),K=e.computed(()=>t.searchable?oe.value:t.options),{getOptionLabel:W,getOptionValue:v}=de(t),oe=e.computed(()=>{var _;return(_=t.options)==null?void 0:_.filter(A=>W(A).toLowerCase().includes(s.value.toLowerCase().trim()))}),q=e.computed(()=>{let _=[];return Array.isArray(t.modelValue)?_=t.modelValue:t.modelValue&&(_=[t.modelValue]),t.options.filter(A=>_.includes(v(A)))}),X=e.computed(()=>q.value.map(_=>W(_)).join(t.separator));L.onClickOutside(i,()=>{i.value.open=!1});function Z(_){const A=_.target;p.value=A.open}function T(_){i.value&&!t.multiple&&(i.value.open=!1),n("update:modelValue",_)}const C=e.computed(()=>({name:t.name,options:K.value,labelKey:t.labelKey,valueKey:t.valueKey,disabled:t.disabled,labelNoResults:t.labelNoResults,multiple:t.multiple,maxValues:t.maxValues,modelValue:t.modelValue,unselectable:t.unselectable})),x=e.computed(()=>({id:d.value,name:t.name,tabindex:I.value,valid:E.value,validLabel:t.validLabel,invalid:S.value,invalidLabel:t.invalidLabel,hintLabel:t.hintLabel,loading:V.value,loadingLabel:t.loadingLabel,disabled:h.value,readonly:m.value,modifiers:t.modifiers,options:K.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}));return(_,A)=>_.native?(e.openBlock(),e.createBlock(je,e.mergeProps({key:1},e.unref(x),{"onUpdate:modelValue":A[4]||(A[4]=M=>n("update:modelValue",M))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(d),class:e.normalizeClass(e.unref(z))},[_.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:`${e.unref(d)}-label`,for:_.searchable&&p.value?`${e.unref(d)}-input`:void 0},e.toDisplayString(_.label),9,ho)):e.createCommentVNode("",!0),e.createElementVNode("details",{ref_key:"dropdown",ref:i,class:"vv-select__wrapper",onClick:A[2]||(A[2]=M=>e.unref(h)||e.unref(m)?M.preventDefault():null),onKeyup:A[3]||(A[3]=e.withKeys(M=>i.value.open=!1,["esc"])),onToggle:Z},[e.createElementVNode("summary",{class:"vv-select__input",tabindex:e.unref(I),onKeyup:A[1]||(A[1]=e.withKeys(M=>_.searchable?M.preventDefault():null,["space"]))},[e.renderSlot(_.$slots,"before",{},()=>[e.unref(D)?(e.openBlock(),e.createBlock(R,e.mergeProps({key:0,class:"vv-select__icon-left"},e.unref(k)),null,16)):e.createCommentVNode("",!0)]),_.searchable&&p.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:`${e.unref(d)}-input`,ref_key:"inputSearch",ref:a,"onUpdate:modelValue":A[0]||(A[0]=M=>c.value=M),role:"combobox",type:"search",placeholder:_.searchPlaceholder},null,8,Vo)),[[e.vModelText,c.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(X)||_.placeholder),1)],64)),e.renderSlot(_.$slots,"after",{},()=>[e.unref(G)?(e.openBlock(),e.createBlock(R,e.mergeProps({key:0,class:"vv-select__icon-right"},e.unref(k)),null,16)):e.createCommentVNode("",!0)])],40,yo),e.createVNode(Ue,e.mergeProps({id:`${e.unref(d)}-dropdown`},e.unref(C),{"onUpdate:modelValue":T}),null,16,["id"])],544),e.createVNode(e.unref(l),{class:"vv-select__hint"})],10,go))}}),_o=["open","close","update:modelValue"],Co={id:{type:String,required:!0},title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},Bo={key:0,class:"vv-dialog__header"},Eo=["onClick"],$o={class:"vv-dialog__content"},Po={key:1,class:"vv-dialog__footer"},Ao={name:"VvDialog"},wo=e.defineComponent({...Ao,props:Co,emits:_o,setup(o,{emit:n}){const t=o,r=L.useVModel(t,"modelValue",n),l=e.ref(!0),i=e.ref(null),a=e.computed(()=>{const{id:p}=t;return{id:p,open:l.value}}),f=e.computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),d=e.computed(()=>`vv-dialog--${t.transition}`),c={"before-enter":()=>{l.value=!0,n("open")},"after-leave":()=>{l.value=!1,n("close")}};L.onClickOutside(i,()=>{t.autoClose&&(r.value=!1)});function s(){r.value=!1}return(p,u)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(d)},e.toHandlers(c)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(a),{class:e.unref(f)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:i,class:"vv-dialog__wrapper"},[p.$slots.header||p.title?(e.openBlock(),e.createElementBlock("header",Bo,[e.renderSlot(p.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(p.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClick:e.withModifiers(s,["prevent"])},[e.createVNode(R,{name:"close"})],8,Eo)])])):e.createCommentVNode("",!0),e.createElementVNode("div",$o,[e.renderSlot(p.$slots,"default")]),p.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Po,[e.renderSlot(p.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(r)]])]),_:3},16,["name"]))}});function Fe(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 Ke(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 y={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"},te={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},No=["update:modelValue","focus","blur","keyup"],Ro={...Le,modelValue:[String,Number],type:{type:String,default:y.TEXT,validator:o=>Object.values(y).includes(o)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:te.PASSWORD_SHOW},iconHidePassword:{type:String,default:te.PASSWORD_HIDE},iconClear:{type:String,default:te.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"}},We=e.defineComponent({components:{VvIcon:R},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:te.PASSWORD_SHOW},iconHide:{type:String,default:te.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(R,{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)}}),Be=e.defineComponent({components:{VvIcon:R},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})}}),qe=e.defineComponent({components:{VvIcon:R},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(R,{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 Ee(o,n){return{name:"VvInputTextActions",components:{VvIcon:R,VvInputPasswordAction:We,VvInputStepAction:Be,VvInputClearAction:qe},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 y.SEARCH:{const{onClear:r}=this.$attrs;t=[e.h(qe,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:r})];break}case y.PASSWORD:{const{onTogglePassword:r}=this.$attrs;t=[e.h(We,{disabled:this.isDisabled,onTogglePassword:r,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case y.NUMBER:{const{onStepUp:r,onStepDown:l}=this.$attrs;t=[e.h(Be,{mode:"up",disabled:this.isDisabled||n.max!==void 0&&n.modelValue===n.max,label:this.labelStepUp,onStepUp:r,onStepDown:l}),e.h(Be,{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}}}const Do=["for"],Io={class:"vv-input-text__wrapper"},Oo=["id"],To={key:0,class:"vv-input-text__limit"},Lo={name:"VvInputText"},xo=e.defineComponent({...Lo,props:Ro,emits:No,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{icon:i,iconPosition:a,label:f,modelValue:d,count:c,valid:s,invalid:p,loading:u}=e.toRefs(t),b=e.computed(()=>String(t.id||U.nanoid())),g=e.computed(()=>`${b.value}-hint`),h=e.computed(()=>t.floating&&H(t.placeholder)?" ":t.placeholder),m=Fe(d,n,t.debounce),{focused:V}=Ve(l,n),E=L.useElementVisibility(l);e.watch(E,$=>{$&&t.autofocus&&(V.value=!0)});const S=e.ref(!1),w=e.computed(()=>t.type===y.PASSWORD),k=()=>{S.value=!S.value},D=e.computed(()=>t.type===y.TIME||t.type===y.DATETIME_LOCAL||t.type===y.DATE||t.type===y.WEEK||t.type===y.MONTH),G=e.computed(()=>t.type===y.NUMBER),P=()=>{Z.value&&(l.value.stepUp(),m.value=e.unref(l).value)},I=()=>{Z.value&&(l.value.stepDown(),m.value=e.unref(l).value)},z=e.computed(()=>t.type===y.SEARCH),K=()=>{m.value=void 0},{hasIconLeft:W,hasIconRight:v,hasIcon:oe}=ye(i,a),q=e.computed(()=>{switch(t.type){case y.COLOR:return{name:te.COLOR};case y.DATE:case y.DATETIME_LOCAL:case y.WEEK:case y.MONTH:return{name:te.DATE};case y.TIME:return{name:te.TIME};default:return""}}),{formatted:X}=Ke(m,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),Z=e.computed(()=>!t.disabled&&!t.readonly),T=e.computed(()=>Z.value?t.tabindex:-1),C=e.computed(()=>!H(d)),x=e.computed(()=>{if(p.value===!0)return!0;if(s.value===!0)return!1}),{bemCssClasses:_}=N("vv-input-text",{modifiers:t.modifiers,valid:s,invalid:p,loading:u,disabled:t.disabled,readonly:t.readonly,iconLeft:W,iconRight:v.value||!H(q),floating:t.floating&&!H(t.label),dirty:C,focus:V}),A=e.computed(()=>{const $=(()=>w.value&&S.value||D.value&&!C.value&&!V.value?y.TEXT:t.type)(),O={type:$,name:t.name,tabindex:T.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,"aria-invalid":x.value,"aria-describedby":!Ze.value&&un.value?g.value:void 0,"aria-errormessage":Ze.value?g.value:void 0};return($===y.DATE||$===y.MONTH||$===y.WEEK||$===y.TIME||$===y.DATETIME_LOCAL||$===y.NUMBER)&&(O.step=t.step,O.max=String(t.max),O.min=String(t.min)),($===y.TEXT||$===y.SEARCH||$===y.URL||$===y.TEL||$===y.EMAIL||$===y.PASSWORD||$===y.NUMBER)&&(O.placeholder=h.value),($===y.TEXT||$===y.SEARCH||$===y.URL||$===y.TEL||$===y.EMAIL||$===y.PASSWORD)&&(O.minlength=t.minlength,O.maxlength=t.maxlength,O.pattern=t.pattern),$===y.EMAIL&&(O.multiple=t.multiple),O}),M=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,togglePassword:k,stepUp:P,stepDown:I,clear:K})),{HintSlot:dn,hasHint:un,hasInvalid:Ze}=ee(t,r),pn=Ee(y.PASSWORD,t),mn=Ee(y.NUMBER,t),fn=Ee(y.SEARCH,t);return($,O)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(_))},[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(b),class:"vv-input-text__label"},e.toDisplayString(e.unref(f)),9,Do)):e.createCommentVNode("",!0),e.createElementVNode("div",Io,[e.renderSlot($.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(M))),()=>[e.unref(W)?(e.openBlock(),e.createBlock(R,e.mergeProps({key:0,class:"vv-input-text__icon-left"},e.unref(oe)),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(b),ref_key:"input",ref:l,"onUpdate:modelValue":O[0]||(O[0]=$e=>e.isRef(m)?m.value=$e:null)},e.unref(A),{onKeyup:O[1]||(O[1]=$e=>n("keyup",$e))}),null,16,Oo),[[e.vModelDynamic,e.unref(m)]]),e.renderSlot($.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(M))),()=>[e.unref(v)||e.unref(q)?(e.openBlock(),e.createBlock(R,e.normalizeProps(e.mergeProps({key:0},e.unref(v)?e.unref(oe):e.unref(q))),null,16)):e.unref(w)?(e.openBlock(),e.createBlock(e.unref(pn),{key:1,onTogglePassword:k})):e.unref(G)?(e.openBlock(),e.createBlock(e.unref(mn),{key:2,onStepUp:P,onStepDown:I})):e.unref(z)?(e.openBlock(),e.createBlock(e.unref(fn),{key:3,onClear:K})):e.createCommentVNode("",!0)]),e.unref(c)?(e.openBlock(),e.createElementBlock("span",To,[e.renderSlot($.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(M))),()=>[e.createTextVNode(e.toDisplayString(e.unref(X)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(dn),{id:e.unref(g),class:"vv-input-text__hint"},null,8,["id"])],2))}}),Mo={...j,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},Ho={name:"VvProgress"},Go=e.defineComponent({...Ho,props:Mo,setup(o){const n=o,{value:t,max:r,label:l}=e.toRefs(n),i=e.computed(()=>n.value===void 0),{bemCssClasses:a}=N("vv-progress",{modifiers:n.modifiers,indeterminate:i});return(f,d)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(a),ariaLabel:e.unref(l),max:e.unref(r),value:e.unref(t)}),null,16))}}),zo=xe,vo=["click","update:modelValue","change","blur"];function Uo(o,n){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=pe(we),i=l("modelValue",o,n),a=l("readonly",o),f=l("disabled",o),d=l("valid",o),c=l("invalid",o);return{group:t,isInGroup:r,modelValue:i,readonly:a,disabled:f,valid:d,invalid:c}}const jo=["for"],Fo=["id","name","disabled","value","tabindex","aria-invalid"],Ko={name:"VvRadio"},Xe=e.defineComponent({...Ko,props:zo,emits:vo,setup(o,{emit:n}){const t=o,r=e.useSlots(),{disabled:l,readonly:i,modelValue:a,valid:f,invalid:d}=Uo(t,n),c=e.computed(()=>String(t.id||U.nanoid())),s=e.computed(()=>u.value?-1:t.tabindex),p=e.ref(),u=e.computed(()=>l.value||i.value),b=e.computed(()=>{if(d.value===!0)return!0;if(f.value===!0)return!1}),g=e.computed(()=>Array.isArray(a.value)?J(t.value,a.value):Y(t.value,a.value)),h=e.computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),m=e.computed({get(){return g.value?h.value:null},set(S){Array.isArray(a.value)?a.value=[t.value]:a.value=t.value,n("change",S)}}),{bemCssClasses:V}=N("vv-radio",{valid:f,invalid:d,disabled:l,readonly:i}),{HintSlot:E}=ee(t,r);return(S,w)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(V)),for:e.unref(c)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(c),ref_key:"input",ref:p,"onUpdate:modelValue":w[0]||(w[0]=k=>e.isRef(m)?m.value=k:null),type:"radio",class:"vv-radio__input",name:S.name,disabled:e.unref(u),value:e.unref(h),tabindex:e.unref(s),"aria-invalid":e.unref(b)},null,8,Fo),[[e.vModelRadio,e.unref(m)]]),e.renderSlot(S.$slots,"default",{value:e.unref(a)},()=>[e.createTextVNode(e.toDisplayString(S.label),1)]),e.createVNode(e.unref(E),{class:"vv-radio__hint",params:{value:e.unref(a)}},null,8,["params"])],10,jo))}}),Wo=Me,qo=["update:modelValue","change"],Xo=["textContent"],Zo={class:"vv-radio-group__wrapper"},Yo={name:"VvRadioGroup"},Jo=e.defineComponent({...Yo,props:Wo,emits:qo,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=L.useVModel(t,"modelValue",n),{disabled:i,readonly:a,vertical:f,valid:d,invalid:c}=e.toRefs(t);me({key:we,modelValue:l,disabled:i,readonly:a,valid:d,invalid:c});const{getOptionLabel:p,getOptionValue:u}=de(t),{bemCssClasses:b}=N("vv-radio-group",{disabled:i,readonly:a,horizontal:e.computed(()=>!f.value),valid:d,invalid:c}),g=(m,V)=>({id:`${t.name}_opt${V}`,name:t.name,label:p(m),value:u(m)}),{HintSlot:h}=ee(t,r);return(m,V)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(b))},[m.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(m.label)},null,8,Xo)):e.createCommentVNode("",!0),e.createElementVNode("div",Zo,[m.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.options,(E,S)=>(e.openBlock(),e.createBlock(Xe,e.mergeProps({key:S},g(E,S)),null,16))),128)):e.renderSlot(m.$slots,"default",{key:1})]),e.createVNode(e.unref(h),{class:"vv-radio-group__hint"})],2))}}),Qo={hard:"hard",soft:"soft"},en={true:!0,false:!1,default:"default"},tn=["update:modelValue","focus","blur","keyup"],on={...Le,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:Qo.soft},spellcheck:{type:[Boolean,String],default:en.default},resizable:Boolean},nn=["for"],ln={class:"vv-textarea__wrapper"},rn=["id"],an={key:0,class:"vv-textarea__limit"},sn={name:"VvTextarea"},cn=e.defineComponent({...sn,props:on,emits:tn,setup(o,{emit:n}){const t=o,r=e.useSlots(),l=e.ref(),{icon:i,iconPosition:a,label:f,modelValue:d,count:c,valid:s,invalid:p,loading:u}=e.toRefs(t),b=e.computed(()=>String(t.id||U.nanoid())),g=e.computed(()=>`${b.value}-hint`),h=e.computed(()=>t.floating&&H(t.placeholder)?" ":t.placeholder),m=Fe(d,n,t.debounce),{hasIcon:V,hasIconLeft:E,hasIconRight:S}=ye(i,a),{focused:w}=Ve(l,n),k=L.useElementVisibility(l);e.watch(k,T=>{T&&t.autofocus&&(w.value=!0)});const{formatted:D}=Ke(m,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),G=e.computed(()=>!t.disabled&&!t.readonly),P=e.computed(()=>G.value?t.tabindex:-1),I=e.computed(()=>!H(d)),z=e.computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:K,hasHint:W,hasInvalid:v}=ee(t,r),{bemCssClasses:oe}=N("vv-textarea",{modifiers:t.modifiers,valid:s,invalid:p,loading:u,disabled:t.disabled,readonly:t.readonly,iconLeft:E,iconRight:S,floating:t.floating&&!H(t.label),dirty:I,focused:w,resizable:t.resizable}),q=e.computed(()=>({name:t.name,placeholder:h.value,tabindex:P.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":z.value,"aria-describedby":!v.value&&W.value?g.value:void 0,"aria-errormessage":v.value?g.value:void 0})),X=e.computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,hintLabel:t.hintLabel,maxlength:t.maxlength,minlength:t.minlength,clear:Z})),Z=()=>{m.value=void 0};return(T,C)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(oe))},[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(b),class:"vv-textarea__label"},e.toDisplayString(e.unref(f)),9,nn)):e.createCommentVNode("",!0),e.createElementVNode("div",ln,[e.renderSlot(T.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(X))),()=>[e.unref(E)?(e.openBlock(),e.createBlock(R,e.mergeProps({key:0,class:"vv-textarea__icon-left"},e.unref(V)),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(b),ref_key:"textarea",ref:l,"onUpdate:modelValue":C[0]||(C[0]=x=>e.isRef(m)?m.value=x:null)},e.unref(q),{onKeyup:C[1]||(C[1]=x=>n("keyup",x))}),null,16,rn),[[e.vModelText,e.unref(m)]]),e.renderSlot(T.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(X))),()=>[e.unref(S)?(e.openBlock(),e.createBlock(R,e.normalizeProps(e.mergeProps({key:0},e.unref(V))),null,16)):e.createCommentVNode("",!0)]),e.unref(c)?(e.openBlock(),e.createElementBlock("span",an,[e.renderSlot(T.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(X))),()=>[e.createTextVNode(e.toDisplayString(e.unref(D)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(K),{id:e.unref(g),class:"vv-textarea__hint"},null,8,["id"])],2))}});B.VvAccordion=De,B.VvAccordionGroup=dt,B.VvBadge=bt,B.VvBreadcrumb=St,B.VvButton=wt,B.VvButtonGroup=It,B.VvCard=Ht,B.VvCheckbox=ve,B.VvCheckboxGroup=Yt,B.VvCombobox=ko,B.VvDialog=wo,B.VvDropdown=Ue,B.VvIcon=R,B.VvInputText=xo,B.VvProgress=Go,B.VvRadio=Xe,B.VvRadioGroup=Jo,B.VvSelect=je,B.VvTextarea=cn,Object.defineProperty(B,Symbol.toStringTag,{value:"Module"})});
1
+ (function(E,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("nanoid"),require("@iconify/vue")):typeof define=="function"&&define.amd?define(["exports","vue","nanoid","@iconify/vue"],e):(E=typeof globalThis<"u"?globalThis:E||self,e(E.components={},E.vue,E.nanoid,E.vue$1))})(this,function(E,e,G,Z){"use strict";const ge="VV_BUTTON_GROUP",he="VV_RADIO_GROUP",ye="VV_CHECK_GROUP",Ve="VV_ACCORDION_GROUP",Le={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},Me=["update:modelValue"];function He(o,l){const{group:t,isInGroup:r,getGroupOrLocalRef:n}=useInjectedGroupState(Ve),{title:d,content:s}=toRefs(o),f=n("modelValue",o,l),p=n("disabled",o),i=n("collapse",o),a=n("modifiers",o);return{modelValue:f,disabled:p,isInGroup:r,group:t,collapse:i,modifiers:a,title:d,content:s}}const xe=["id","open"],Ge=["aria-controls","aria-expanded"],ze=["aria-hidden"],Ue={name:"VvAccordion"},Se=e.defineComponent({...Ue,props:Le,emits:Me,setup(o,{emit:l}){const t=o,r=useAttrs(),n=t.name||(r==null?void 0:r.id)||G.nanoid(),{modifiers:d,title:s,content:f,disabled:p,collapse:i,modelValue:a,isInGroup:u}=He(t,l),c=ref(!1),b=computed({get:()=>u.value?i.value&&Array.isArray(a.value)?a.value.includes(n):a.value===n:a.value===void 0?c.value:a.value,set:m=>{if(u.value){if(i.value&&Array.isArray(a.value)){if(m){a.value.push(n);return}a.value=a.value.filter(S=>S!==n);return}a.value=m?n:null;return}if(a.value===void 0&&typeof m=="boolean"){c.value=m;return}a.value=m}}),{bemCssClasses:g}=useBemModifiers("vv-accordion",{modifiers:d,disabled:p}),y=useToggle(b);return(m,S)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(n),class:e.normalizeClass(e.unref(g)),open:e.unref(b),onClick:S[0]||(S[0]=e.withModifiers(v=>e.unref(y)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(n),"aria-expanded":e.unref(b),class:"vv-collapse__summary"},[e.renderSlot(m.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(b)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(s)),1)])],8,Ge),e.createElementVNode("div",{"aria-hidden":!e.unref(b),class:"vv-collapse__content"},[e.renderSlot(m.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(b)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(f)),1)])],8,ze)],10,xe))}}),Fe={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},qe=["update:modelValue"],je={name:"VvAccordionGroup"},Ke=e.defineComponent({...je,props:Fe,emits:qe,setup(o,{emit:l}){const t=o,{disabled:r,collapse:n,modifiers:d,itemModifiers:s,items:f}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&n.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const p=ref([]),i=computed({get:()=>{var c;return t.modelValue!==void 0?n.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:n.value?p.value:(c=p.value)==null?void 0:c[0]},set:c=>{if(t.modelValue!==void 0)return(Array.isArray(t.modelValue)||n.value)&&!Array.isArray(c)&&(c=[c]),l("update:modelValue",c);p.value=Array.isArray(c)?c:[c]}}),a={key:Ve,modelValue:i,disabled:r,collapse:n,modifiers:s};useProvideGroupState(a);const{bemCssClasses:u}=useBemModifiers("vv-accordion-group",{modifiers:d,disabled:r});return(c,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(u))},[e.renderSlot(c.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),g=>(e.openBlock(),e.createBlock(Se,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content}),{header:e.withCtx(y=>[e.renderSlot(c.$slots,`header::${g.name}`,e.normalizeProps(e.guardReactiveProps(y)))]),details:e.withCtx(y=>[e.renderSlot(c.$slots,`details::${g.name}`,e.normalizeProps(e.guardReactiveProps(y)))]),_:2},1040))),128))])],2))}}),te={valid:Boolean,validLabel:[String,Array]},oe={invalid:Boolean,invalidLabel:[String,Array]},de={loading:Boolean,loadingLabel:String},X={disabled:Boolean},ne={readonly:Boolean},z={modifiers:[String,Array]},le={hintLabel:{type:String,default:""}},re={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"}},We={count:{type:[Boolean,String],default:!1,validator:o=>[!0,!1,"limit","countdown"].includes(o)}},Xe={debounce:[Number,String]},_e={LEFT:"left",RIGHT:"right"},ue={icon:{type:[String,Object]},iconPosition:{type:String,validation:o=>Object.values(_e).includes(o),default:_e.RIGHT}},se={tabindex:{type:[String,Number],default:0}},pe={floating:Boolean},ie={unselectable:{type:Boolean,default:!0}},ae={id:[String,Number],name:{type:String,required:!0}},ke={autofocus:Boolean},Ce={autocomplete:{type:String,default:"off"}},Be={...ae,...ke,...Ce,...se,...X,...ne,...te,...oe,...le,...de,...z,...We,...Xe,...ue,...pe,minlength:Number,maxlength:Number,placeholder:String,required:Boolean,label:String},ve={...ae,...se,...te,...oe,...le,...X,...ne,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String},Ee={...te,...oe,...re,...le,...X,...ne,modelValue:[String,Array],label:String,name:{type:String,required:!0},vertical:Boolean},Ye={...z,value:[String,Number]},Je={name:"VvBadge"},Qe=e.defineComponent({...Je,props:Ye,setup(o){const l=o,{bemCssClasses:t}=useBemModifiers("vv-badge",{modifiers:l.modifiers});return(r,n)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(t)),role:"status"},[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])],2))}});function Ze(o,l){const t={[`${o}`]:!0};return{bemCssClasses:computed(()=>Object.keys(l).reduce((n,d)=>{const s=unref(l[d])||!1;if(!s)return n;if(d==="modifiers"){const f=Array.isArray(s)?s:s.split(" ");return{...n,...f.reduce((p,i)=>({...p,[`${o}--${kebabCase(i)}`]:!0}),{})}}else return{...n,[`${o}--${kebabCase(d)}`]:s}},t)||{})}}const et={...z,routes:Array},tt={class:"vv-breadcrumb__list"},ot=["content"],nt={name:"VvBreadcrumb"},lt=e.defineComponent({...nt,props:et,setup(o){const l=o,{bemCssClasses:t}=Ze("vv-breadcrumb",{modifiers:l.modifiers});return(r,n)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(t)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",tt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.routes,(d,s)=>{var f,p,i,a;return e.openBlock(),e.createElementBlock("li",{key:`${d.label}-${s}`,class:e.normalizeClass({"vv-breadcrumb__item":s<Number((f=r.routes)==null?void 0:f.length)-1,"vv-breadcrumb__item-active":s===Number((p=r.routes)==null?void 0:p.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d.to?"router-link":d.href?"a":"span"),e.mergeProps(d,{class:{"vv-breadcrumb__link":s<Number((i=r.routes)==null?void 0:i.length)-1},"aria-current":s===Number((a=r.routes)==null?void 0:a.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:d,index:s})),()=>[e.createTextVNode(e.toDisplayString(d.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${s+1}`},null,8,ot)],2)}),128))])],2))}}),Pe="ds",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]}},rt={name:"VvIcon"},w=e.defineComponent({...rt,props:at,setup(o){const l=o,t=ref(!0),{modifiers:r}=toRefs(l),n=inject(Pe),{bemCssClasses:d}=useBemModifiers("vv-icon",{modifiers:r}),s=computed(()=>l.provider||(n==null?void 0:n.provider)),f=computed(()=>{const a=l.name??"",u=`@${s.value}:${l.prefix}:${l.name}`;return Z.iconExists(a)?a:Z.iconExists(u)?u:(n==null?void 0:n.iconsCollections.find(c=>{const b=`@${s.value}:${c.prefix}:${a}`;if(Z.iconExists(b))return b}))||a});function p(a){let u=null;if(typeof window>"u"){const{JSDOM:y}=require("jsdom");u=new y().window}return(u?new u.DOMParser:new window.DOMParser).parseFromString(a,"text/html").querySelector("svg")}function i(a){const u=p(a),c=(u==null?void 0:u.innerHTML.trim())||"";u&&c&&Z.addIcon(`@${s.value}:${l.prefix}:${l.name}`,{body:c,height:u.viewBox.baseVal.height,width:u.viewBox.baseVal.width})}return n&&(l.src&&!Z.iconExists(`@${s.value}:${l.prefix}:${l.name}`)?(t.value=!1,n.fetchIcon(l.src).then(a=>{a&&(i(a),t.value=!0)}).catch(a=>{throw new Error(`During fetch icon: ${a==null?void 0:a.message}`)})):l.svg&&i(l.svg)),(a,u)=>e.unref(t)?(e.openBlock(),e.createBlock(e.unref(Z.Icon),e.mergeProps({key:0,class:e.unref(d)},{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(f)}),null,16,["class"])):e.createCommentVNode("",!0)}});var ee=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(ee||{}),$e=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))($e||{}),U=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(U||{}),Ae=(o=>(o._blank="_blank",o._self="_self",o._parent="_parent",o._top="_top",o))(Ae||{});const st=["update:modelValue"],it={...z,...X,...ie,icon:{type:[String,Object],default:""},iconPosition:{type:String,default:"left",validator:o=>o in ee},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=>o in Ae},active:Boolean,pressed:Boolean,rel:{type:String,default:"noopener noreferrer"},type:{type:String,default:"button",validator:o=>o in $e},toggle:{type:Boolean,default:!1},modelValue:String};function ct(o,l){var m;const{group:t,isInGroup:r,getGroupOrLocalRef:n}=useInjectedGroupState(ge),{iconPosition:d,icon:s,label:f,pressed:p,modifiers:i}=toRefs(o),a=n("modelValue",o,l),u=n("disabled",o),c=n("toggle",o),b=n("unselectable",o),g=((m=t==null?void 0:t.value)==null?void 0:m.multiple)??ref(!1),y=computed(()=>{var _;const S=i!=null&&i.value?Array.isArray(i.value)?i.value:[i.value]:[],v=(_=t==null?void 0:t.value.itemModifiers)!=null&&_.value?Array.isArray(t.value.itemModifiers.value)?t.value.itemModifiers.value:[t.value.itemModifiers.value]:[];return[...S,...v]});return{group:t,isInGroup:r,modelValue:a,disabled:u,toggle:c,unselectable:b,multiple:g,modifiers:y,pressed:p,iconPosition:d,icon:s,label:f}}const dt={key:1,class:"vv-button__label"},ut={key:1,class:"vv-button__label"},pt={name:"VvButton"},mt=e.defineComponent({...pt,props:it,emits:st,setup(o,{emit:l}){const t=o,r=useAttrs(),n=useSlots(),d=(r==null?void 0:r.name)||G.nanoid(),{modifiers:s,iconPosition:f,icon:p,label:i,modelValue:a,disabled:u,toggle:c,unselectable:b}=ct(t,l),g=inject(Pe),y=computed(()=>{switch(!0){case u.value:return U.button;case t.to!==void 0:return g!=null&&g.nuxt?U.nuxtLink:U.routerLink;case t.href!==void 0:return U.a;default:return U.button}}),m=computed(()=>c.value?Array.isArray(a.value)?contains(d,a.value):equals(d,a.value):t.pressed),{bemCssClasses:S}=useBemModifiers("vv-button",{modifiers:s,active:t.active,pressed:m,disabled:u,reverse:computed(()=>[ee.right,ee.bottom].includes(f.value)),column:computed(()=>[ee.top,ee.bottom].includes(f.value)),iconOnly:computed(()=>(p==null?void 0:p.value)&&!(i!=null&&i.value)&&!n.default)}),v=computed(()=>typeof(p==null?void 0:p.value)=="string"?{name:p==null?void 0:p.value}:p==null?void 0:p.value),_=computed(()=>{const k={class:S.value,"aria-pressed":m.value?!0:void 0};switch(y.value){case U.a:return{...k,role:"button",href:t.href,target:t.target,rel:t.rel};case U.routerLink:case U.nuxtLink:return{...k,role:"button",to:t.to,target:t.target};default:return{...k,type:t.type,disabled:u.value}}}),N=()=>{if(c.value){if(Array.isArray(a.value)){if(contains(d,a.value)){b.value&&(a.value=a.value.filter(k=>k!==d));return}a.value.push(d);return}if(equals(d,a.value)&&b.value){a.value=void 0;return}a.value=d}};return(k,R)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)),e.mergeProps(e.unref(_),{onClickPassive:N}),{default:e.withCtx(()=>[e.renderSlot(k.$slots,"default",{},()=>[k.loading?e.renderSlot(k.$slots,"loading",{key:0},()=>[k.loadingIcon?(e.openBlock(),e.createBlock(w,{key:0,class:"vv-button__loading-icon",name:k.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),k.loadingLabel?(e.openBlock(),e.createElementBlock("span",dt,e.toDisplayString(k.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(k.$slots,"before"),e.unref(p)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(v)),null,16)):e.createCommentVNode("",!0),e.unref(i)?(e.openBlock(),e.createElementBlock("span",ut,[e.renderSlot(k.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(i)),1)])])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"after")],64))])]),_:3},16))}}),ft={...z,...X,...ie,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},bt=["update:modelValue"],gt={name:"VvButtonGroup"},ht=e.defineComponent({...gt,props:ft,emits:bt,setup(o,{emit:l}){const t=o,{disabled:r,toggle:n,modifiers:d,multiple:s,unselectable:f,itemModifiers:p}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&s.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const i=computed({get:()=>s.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue,set:c=>(c!==void 0&&(Array.isArray(t.modelValue)||s.value)&&!Array.isArray(c)&&(c=[c]),l("update:modelValue",c))}),a={key:ge,modelValue:i,disabled:r,toggle:n,multiple:s,unselectable:f,itemModifiers:p};useProvideGroupState(a);const{bemCssClasses:u}=useBemModifiers("vv-button-group",{modifiers:d});return(c,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(u)),role:"group"},[e.renderSlot(c.$slots,"default")],2))}}),yt={title:String,modifiers:[String,Array]},Vt={key:0,class:"vv-card__header"},St={key:1,class:"vv-card__content"},_t={key:2,class:"vv-card__footer"},kt={name:"VvCard"},Ct=e.defineComponent({...kt,props:yt,setup(o){const l=o,{bemCssClasses:t}=useBemModifiers("vv-card",{modifiers:l.modifiers});return(r,n)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(t))},[r.$slots.header||r.title?(e.openBlock(),e.createElementBlock("header",Vt,[e.renderSlot(r.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(r.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default"),r.$slots.content?(e.openBlock(),e.createElementBlock("div",St,[e.renderSlot(r.$slots,"content")])):e.createCommentVNode("",!0),r.$slots.footer?(e.openBlock(),e.createElementBlock("footer",_t,[e.renderSlot(r.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Bt={...ve,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean},vt=["click","update:modelValue","change","blur"];function Et(o,l){const{group:t,isInGroup:r,getGroupOrLocalRef:n}=useInjectedGroupState(ye),{switch:d,indeterminate:s}=toRefs(o),f=n("modelValue",o,l),p=n("readonly",o),i=n("disabled",o),a=n("valid",o),u=n("invalid",o);return{propsSwitch:d,indeterminate:s,group:t,isInGroup:r,modelValue:f,readonly:p,disabled:i,valid:a,invalid:u}}function ce(o){return Array.isArray(o)?o.filter(l=>isString(l)).join(" "):o}function Y(o,l){const{invalid:t,valid:r,hint:n,loading:d}=l,{hintLabel:s,modelValue:f,valid:p,validLabel:i,invalid:a,invalidLabel:u,...c}=toRefs(o),b=resolveFieldData(c,"loading"),g=resolveFieldData(c,"loadingLabel"),y=computed(()=>a.value?!!(a.value&&t||u!=null&&u.value&&Array.isArray(u.value)&&u.value.length>0||u!=null&&u.value&&!isEmpty(u)):!1),m=computed(()=>!!(s&&s.value||n)),S=computed(()=>!!(i&&i.value||r)),v=computed(()=>!!(b!=null&&b.value&&d||b!=null&&b.value&&(g!=null&&g.value))),_=computed(()=>m.value||S.value||y.value||v.value);return{hasInvalid:y,hasHint:m,hasValid:S,hasLoading:v,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(N){const k=computed(()=>{const R=toReactive({hintLabel:s,modelValue:f,valid:p,validLabel:i,invalid:a,invalidLabel:u,loading:b,loadingLabel:g,...N.params});return a!=null&&a.value?(t==null?void 0:t(R))||ce(u==null?void 0:u.value)||(s==null?void 0:s.value):p!=null&&p.value?(r==null?void 0:r(R))||ce(i==null?void 0:i.value)||(s==null?void 0:s.value):b!=null&&b.value?(d==null?void 0:d(R))||ce(g==null?void 0:g.value)||(s==null?void 0:s.value):(n==null?void 0:n(R))||ce(s==null?void 0:s.value)||(s==null?void 0:s.value)});return{isVisible:_,hasInvalid:y,hasValid:S,hintContent:k}},render(){if(this.isVisible)return h("small",{role:this.hasInvalid||this.hasValid?"alert":void 0},this.hintContent)}}}}const Pt=["for"],$t=["id","name","disabled","value","tabindex","aria-invalid"],At={name:"VvCheckbox"},Ne=e.defineComponent({...At,props:Bt,emits:vt,setup(o,{emit:l}){const t=o,r=useSlots(),{disabled:n,readonly:d,valid:s,invalid:f,propsSwitch:p,modelValue:i,indeterminate:a,isInGroup:u}=Et(t,l),c=computed(()=>String(t.id||G.nanoid())),b=computed(()=>m.value?-1:t.tabindex),g=ref(),y=computed(()=>t.uncheckedValue!==void 0&&!u.value),m=computed(()=>n.value||d.value),S=computed(()=>{if(f.value===!0)return!0;if(s.value===!0)return!1}),v=computed(()=>y.value?i.value===t.value:Array.isArray(i.value)?contains(t.value,i.value):equals(t.value,i.value)),_=computed(()=>!!(a.value||!v.value&&y.value&&t.uncheckedValue!==i.value)),N=computed(()=>{if(!y.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),k=computed({get(){return v.value},set($){if(y.value)i.value=$?t.value:t.uncheckedValue;else if(Array.isArray(i.value)||u.value){const D=new Set(Array.isArray(i.value)?i.value:i.value!==void 0?[i.value]:[]);$?D.add(t.value):D.delete(t.value),i.value=[...D]}else i.value=$?t.value:void 0;l("change",$)}}),{bemCssClasses:R}=useBemModifiers("vv-checkbox",{switch:p,valid:s,invalid:f,disabled:n,readonly:d,indeterminate:a});watchEffect(()=>{y.value&&Array.isArray(i.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),watch(()=>_.value,$=>{$?g.value.indeterminate=!0:g.value.indeterminate=!1}),onMounted(()=>{_.value&&(g.value.indeterminate=!0)});const{HintSlot:M}=Y(t,r);return($,D)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(R)),for:e.unref(c)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(c),ref_key:"input",ref:g,"onUpdate:modelValue":D[0]||(D[0]=H=>e.isRef(k)?k.value=H:null),type:"checkbox",class:"vv-checkbox__input",name:$.name,disabled:e.unref(m),value:e.unref(N),tabindex:e.unref(b),"aria-invalid":e.unref(S)},null,8,$t),[[e.vModelCheckbox,e.unref(k)]]),e.renderSlot($.$slots,"default",{value:e.unref(i)},()=>[e.createTextVNode(e.toDisplayString($.label),1)]),e.createVNode(e.unref(M),{class:"vv-checkbox__hint",params:{value:e.unref(i)}},null,8,["params"])],10,Pt))}}),Nt=Ee,wt=["update:modelValue","change"],Rt=["textContent"],Dt={class:"vv-checkbox-group__wrapper"},It={name:"VvCheckboxGroup"},Ot=e.defineComponent({...It,props:Nt,emits:wt,setup(o,{emit:l}){const t=o,r=useSlots(),n=useVModel(t,"modelValue",l),{disabled:d,readonly:s,vertical:f,valid:p,invalid:i}=toRefs(t),a={key:ye,modelValue:n,disabled:d,readonly:s,valid:p,invalid:i};useProvideGroupState(a);const{getOptionLabel:u,getOptionValue:c}=useOptions(t),{bemCssClasses:b}=useBemModifiers("vv-checkbox-group",{disabled:d,readonly:s,horizontal:computed(()=>!f.value),valid:p,invalid:i}),g=(m,S)=>({id:`${t.name}_opt${S}`,name:t.name,label:u(m),value:c(m)}),{HintSlot:y}=Y(t,r);return(m,S)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(b))},[m.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(m.label)},null,8,Rt)):e.createCommentVNode("",!0),e.createElementVNode("div",Dt,[m.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.options,(v,_)=>(e.openBlock(),e.createBlock(Ne,e.mergeProps({key:_},g(v,_)),null,16))),128)):e.renderSlot(m.$slots,"default",{key:1})]),e.createVNode(e.unref(y),{class:"vv-checkbox-group__hint"})],2))}}),Tt={...ae,...re,...X,...z,modelValue:{type:[String,Number,Boolean,Object,Array]},labelNoResults:{type:String,default:"No results"},multiple:Boolean,maxValues:[Number,String],unselectable:{type:Boolean,default:!0}},Lt=["id"],Mt={key:0,role:"option"},Ht=["aria-selected"],xt=["for","onClick"],Gt=["id","type","value","checked","disabled","name"],zt={name:"VvDropdown"},we=e.defineComponent({...zt,props:Tt,emits:["update:modelValue"],setup(o,{emit:l}){const t=o,r=computed(()=>String(t.id||G.nanoid())),{modifiers:n,disabled:d}=toRefs(t),{getOptionLabel:s,getOptionValue:f}=useOptions(t),{bemCssClasses:p}=useBemModifiers("vv-dropdown",{modifiers:n,disabled:d});function i(c){return Array.isArray(t.modelValue)?contains(c,t.modelValue)||contains(f(c),t.modelValue):equals(c,t.modelValue)||equals(f(c),t.modelValue)}function a(c){return typeof c=="string"||c.disabled===void 0?d.value:c.disabled}function u(c){var g;if(t.disabled)return;let b=c;if(t.multiple)if(Array.isArray(t.modelValue)){if(t.maxValues!==void 0&&t.maxValues>=0&&((g=t.modelValue)==null?void 0:g.length)>=t.maxValues&&!contains(c,t.modelValue))return;b=contains(c,t.modelValue)?removeFromList(c,t.modelValue):[...t.modelValue,c]}else b=[c];else t.unselectable&&c===t.modelValue&&(b=void 0);l("update:modelValue",b)}return(c,b)=>{var g;return e.openBlock(),e.createElementBlock("ul",{id:e.unref(r),class:e.normalizeClass(e.unref(p)),role:"listbox"},[(g=c.options)!=null&&g.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Mt,[e.createElementVNode("label",null,e.toDisplayString(c.labelNoResults),1)])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.options,(y,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,role:"option","aria-selected":i(y)},[e.createElementVNode("label",{for:`dropdown-${m}-${e.unref(r)}`,onClick:e.withModifiers(S=>u(e.unref(f)(y)),["prevent"])},[e.createElementVNode("input",{id:`dropdown-${m}-${e.unref(r)}`,type:c.multiple?"checkbox":"radio",value:e.unref(f)(y),checked:i(y),disabled:a(y),name:c.name,tabindex:"-1","aria-hidden":"true"},null,8,Gt),e.createTextVNode(" "+e.toDisplayString(e.unref(s)(y)),1)],8,xt)],8,Ht))),128))],10,Lt)}}}),Ut={...ae,...ke,...Ce,...se,...te,...oe,...le,...de,...X,...ne,...z,...re,...ue,...pe,...ie,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,placeholder:String},Ft=["update:modelValue","focus","blur"],qt=["for"],jt={class:"vv-select__wrapper"},Kt=["id"],Wt=["disabled","hidden"],Xt=["disabled","value"],Yt={name:"VvSelect"},Re=e.defineComponent({...Yt,props:Ut,emits:Ft,setup(o,{emit:l}){const t=o,r=useSlots(),n=ref(),{HintSlot:d,hasHint:s,hasInvalid:f}=Y(t,r),{modifiers:p,disabled:i,readonly:a,loading:u,icon:c,iconPosition:b,invalid:g,valid:y,floating:m,multiple:S}=toRefs(t),v=computed(()=>String(t.id||G.nanoid())),_=computed(()=>`${v.value}-hint`),{focused:N}=useComponentFocus(n,l),k=useElementVisibility(n);watch(k,B=>{B&&t.autofocus&&(N.value=!0)});const{hasIcon:R,hasIconLeft:M,hasIconRight:$}=useComponentIcon(c,b),D=computed(()=>!isEmpty(t.modelValue)),H=computed(()=>t.disabled||t.readonly),F=computed(()=>H.value?-1:t.tabindex),q=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{bemCssClasses:x}=useBemModifiers("vv-select",{modifiers:p,valid:y,invalid:g,loading:u,disabled:i,readonly:a,iconLeft:M,iconRight:$,dirty:D,focus:N,floating:m,multiple:S}),Q=computed(()=>({name:t.name,tabindex:F.value,disabled:H.value,required:t.required,size:t.size,autocomplete:t.autocomplete,multiple:t.multiple,"aria-invalid":q.value,"aria-describedby":!f.value&&s.value?_.value:void 0,"aria-errormessage":f.value?_.value:void 0})),{getOptionLabel:j,getOptionValue:K}=useOptions(t);function W(B){return typeof B=="string"||B.disabled===void 0?i.value:B.disabled}const O=computed({get:()=>t.modelValue,set:B=>{Array.isArray(B)&&(B=B.filter(T=>T!==void 0)),l("update:modelValue",B)}});return(B,T)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(x))},[B.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(v)},e.toDisplayString(B.label),9,qt)):e.createCommentVNode("",!0),e.createElementVNode("div",jt,[e.renderSlot(B.$slots,"before",{},()=>[e.unref(M)?(e.openBlock(),e.createBlock(w,e.normalizeProps(e.mergeProps({key:0},e.unref(R))),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref(v),ref_key:"select",ref:n,"onUpdate:modelValue":T[0]||(T[0]=C=>e.isRef(O)?O.value=C:null)},e.unref(Q)),[B.placeholder?(e.openBlock(),e.createElementBlock("option",{key:0,value:void 0,disabled:!B.unselectable,hidden:!B.unselectable},e.toDisplayString(B.placeholder),9,Wt)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.options,(C,A)=>(e.openBlock(),e.createElementBlock("option",{key:A,disabled:W(C),value:e.unref(K)(C)},e.toDisplayString(e.unref(j)(C)),9,Xt))),128))],16,Kt),[[e.vModelSelect,e.unref(O)]]),e.renderSlot(B.$slots,"after",{},()=>[e.unref($)?(e.openBlock(),e.createBlock(w,e.normalizeProps(e.mergeProps({key:0},e.unref(R))),null,16)):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(d),{id:e.unref(_),class:"vv-select__hint"},null,8,["id"])],2))}}),Jt=["update:modelValue","change:search","focus","blur"],Qt={...ae,...se,...te,...oe,...le,...de,...X,...ne,...z,...re,...ue,...pe,...ie,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,labelNoResults:{type:String,default:"No results"},placeholder:String,searchable:Boolean,searchPlaceholder:String,debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean},Zt=["id"],eo=["id","for"],to=["tabindex"],oo=["id","placeholder"],no={name:"VvCombobox"},lo=e.defineComponent({...no,props:Qt,emits:Jt,setup(o,{emit:l}){const t=o,r=useSlots(),{HintSlot:n}=Y(t,r),d=ref(),s=ref(),{focused:f}=useComponentFocus(d,l),p=computed(()=>String(t.id||G.nanoid())),i=ref(""),a=refDebounced(i,Number(t.debounceSearch)),u=ref(!1),{icon:c,iconPosition:b,modifiers:g,disabled:y,readonly:m,loading:S,valid:v,invalid:_,floating:N}=toRefs(t);watch(a,()=>l("change:search",a.value));const{hasIcon:k,hasIconLeft:R,hasIconRight:M}=useComponentIcon(c,b),$=computed(()=>!isEmpty(t.modelValue)),D=computed(()=>y.value||m.value?-1:t.tabindex),{bemCssClasses:H}=useBemModifiers("vv-select",{modifiers:g,disabled:y,loading:S,readonly:m,iconLeft:R,iconRight:M,valid:v,invalid:_,dirty:$,focus:f,floating:N}),F=computed(()=>t.searchable?Q.value:t.options),{getOptionLabel:q,getOptionValue:x}=useOptions(t),Q=computed(()=>{var C;return(C=t.options)==null?void 0:C.filter(A=>q(A).toLowerCase().includes(a.value.toLowerCase().trim()))}),j=computed(()=>{let C=[];return Array.isArray(t.modelValue)?C=t.modelValue:t.modelValue&&(C=[t.modelValue]),t.options.filter(A=>C.includes(x(A)))}),K=computed(()=>j.value.map(C=>q(C)).join(t.separator));onClickOutside(d,()=>{d.value.open=!1});function W(C){const A=C.target;u.value=A.open}function O(C){d.value&&!t.multiple&&(d.value.open=!1),l("update:modelValue",C)}const B=computed(()=>({name:t.name,options:F.value,labelKey:t.labelKey,valueKey:t.valueKey,disabled:t.disabled,labelNoResults:t.labelNoResults,multiple:t.multiple,maxValues:t.maxValues,modelValue:t.modelValue,unselectable:t.unselectable})),T=computed(()=>({id:p.value,name:t.name,tabindex:D.value,valid:v.value,validLabel:t.validLabel,invalid:_.value,invalidLabel:t.invalidLabel,hintLabel:t.hintLabel,loading:S.value,loadingLabel:t.loadingLabel,disabled:y.value,readonly:m.value,modifiers:t.modifiers,options:F.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}));return(C,A)=>C.native?(e.openBlock(),e.createBlock(Re,e.mergeProps({key:1},e.unref(T),{"onUpdate:modelValue":A[4]||(A[4]=L=>l("update:modelValue",L))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(p),class:e.normalizeClass(e.unref(H))},[C.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:`${e.unref(p)}-label`,for:C.searchable&&e.unref(u)?`${e.unref(p)}-input`:void 0},e.toDisplayString(C.label),9,eo)):e.createCommentVNode("",!0),e.createElementVNode("details",{ref_key:"dropdown",ref:d,class:"vv-select__wrapper",onClick:A[2]||(A[2]=L=>e.unref(y)||e.unref(m)?L.preventDefault():null),onKeyup:A[3]||(A[3]=e.withKeys(L=>e.unref(d).open=!1,["esc"])),onToggle:W},[e.createElementVNode("summary",{class:"vv-select__input",tabindex:e.unref(D),onKeyup:A[1]||(A[1]=e.withKeys(L=>C.searchable?L.preventDefault():null,["space"]))},[e.renderSlot(C.$slots,"before",{},()=>[e.unref(R)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-select__icon-left"},e.unref(k)),null,16)):e.createCommentVNode("",!0)]),C.searchable&&e.unref(u)?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:`${e.unref(p)}-input`,ref_key:"inputSearch",ref:s,"onUpdate:modelValue":A[0]||(A[0]=L=>e.isRef(i)?i.value=L:null),role:"combobox",type:"search",placeholder:C.searchPlaceholder},null,8,oo)),[[e.vModelText,e.unref(i)]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(K)||C.placeholder),1)],64)),e.renderSlot(C.$slots,"after",{},()=>[e.unref(M)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-select__icon-right"},e.unref(k)),null,16)):e.createCommentVNode("",!0)])],40,to),e.createVNode(we,e.mergeProps({id:`${e.unref(p)}-dropdown`},e.unref(B),{"onUpdate:modelValue":O}),null,16,["id"])],544),e.createVNode(e.unref(n),{class:"vv-select__hint"})],10,Zt))}}),ao=["open","close","update:modelValue"],ro={id:{type:String,required:!0},title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},so={key:0,class:"vv-dialog__header"},io=["onClick"],co={class:"vv-dialog__content"},uo={key:1,class:"vv-dialog__footer"},po={name:"VvDialog"},mo=e.defineComponent({...po,props:ro,emits:ao,setup(o,{emit:l}){const t=o,r=useVModel(t,"modelValue",l),n=ref(!0),d=ref(null),s=computed(()=>{const{id:u}=t;return{id:u,open:n.value}}),f=computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),p=computed(()=>`vv-dialog--${t.transition}`),i={"before-enter":()=>{n.value=!0,l("open")},"after-leave":()=>{n.value=!1,l("close")}};onClickOutside(d,()=>{t.autoClose&&(r.value=!1)});function a(){r.value=!1}return(u,c)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(p)},e.toHandlers(i)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(s),{class:e.unref(f)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:d,class:"vv-dialog__wrapper"},[u.$slots.header||u.title?(e.openBlock(),e.createElementBlock("header",so,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(u.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClick:e.withModifiers(a,["prevent"])},[e.createVNode(w,{name:"close"})],8,io)])])):e.createCommentVNode("",!0),e.createElementVNode("div",co,[e.renderSlot(u.$slots,"default")]),u.$slots.footer?(e.openBlock(),e.createElementBlock("footer",uo,[e.renderSlot(u.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(r)]])]),_: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"},J={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},fo=["update:modelValue","focus","blur","keyup"],bo={...Be,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:J.PASSWORD_SHOW},iconHidePassword:{type:String,default:J.PASSWORD_HIDE},iconClear:{type:String,default:J.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"}},De=defineComponent({components:{VvIcon:w},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:J.PASSWORD_SHOW},iconHide:{type:String,default:J.PASSWORD_HIDE}},emits:["toggle-password"],setup(o,{emit:l}){const t=ref(!1),r=computed(()=>t.value?o.iconHide:o.iconShow);function n(d){d==null||d.stopPropagation(),o.disabled||(t.value=!t.value,l("toggle-password",t.value))}return{active:t,activeIcon:r,onClick:n}},render(){const o=h(w,{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)}}),me=defineComponent({components:{VvIcon:w},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:l}){const t=computed(()=>o.mode==="up");return{isUp:t,onClick:n=>{n==null||n.stopPropagation(),o.disabled||l(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})}}),Ie=defineComponent({components:{VvIcon:w},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup(o,{emit:l}){function t(r){r==null||r.stopPropagation(),o.disabled||l("clear")}return{onClick:t}},render(){const o=h(w,{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 fe(o,l){return{name:"VvInputTextActions",components:{VvIcon:w,VvInputPasswordAction:De,VvInputStepAction:me,VvInputClearAction:Ie},setup(){return{isDisabled:computed(()=>l.disabled||l.readonly),labelStepUp:l.labelStepUp,labelStepDown:l.labelStepDown,labelShowPassword:l.labelShowPassword,labelHidePassword:l.labelHidePassword,labelClear:l.labelClear,iconShowPassword:l.iconShowPassword,iconHidePassword:l.iconHidePassword}},render(){let t=null;switch(o){case V.SEARCH:{const{onClear:r}=this.$attrs;t=[h(Ie,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:r})];break}case V.PASSWORD:{const{onTogglePassword:r}=this.$attrs;t=[h(De,{disabled:this.isDisabled,onTogglePassword:r,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case V.NUMBER:{const{onStepUp:r,onStepDown:n}=this.$attrs;t=[h(me,{mode:"up",disabled:this.isDisabled||l.max!==void 0&&l.modelValue===l.max,label:this.labelStepUp,onStepUp:r,onStepDown:n}),h(me,{mode:"down",disabled:this.isDisabled||l.min!==void 0&&l.modelValue===l.min,label:this.labelStepDown,onStepUp:r,onStepDown:n})];break}}return Array.isArray(t)?h("div",{class:"vv-input-text__actions-group"},t):t}}}const go=["for"],ho={class:"vv-input-text__wrapper"},yo=["id"],Vo={key:0,class:"vv-input-text__limit"},So={name:"VvInputText"},_o=e.defineComponent({...So,props:bo,emits:fo,setup(o,{emit:l}){const t=o,r=useSlots(),n=ref(),{icon:d,iconPosition:s,label:f,modelValue:p,count:i,valid:a,invalid:u,loading:c}=toRefs(t),b=computed(()=>String(t.id||G.nanoid())),g=computed(()=>`${b.value}-hint`),y=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),m=useDebouncedInput(p,l,t.debounce),{focused:S}=useComponentFocus(n,l),v=useElementVisibility(n);watch(v,P=>{P&&t.autofocus&&(S.value=!0)});const _=ref(!1),N=computed(()=>t.type===V.PASSWORD),k=()=>{_.value=!_.value},R=computed(()=>t.type===V.TIME||t.type===V.DATETIME_LOCAL||t.type===V.DATE||t.type===V.WEEK||t.type===V.MONTH),M=computed(()=>t.type===V.NUMBER),$=()=>{W.value&&(n.value.stepUp(),m.value=unref(n).value)},D=()=>{W.value&&(n.value.stepDown(),m.value=unref(n).value)},H=computed(()=>t.type===V.SEARCH),F=()=>{m.value=void 0},{hasIconLeft:q,hasIconRight:x,hasIcon:Q}=useComponentIcon(d,s),j=computed(()=>{switch(t.type){case V.COLOR:return{name:J.COLOR};case V.DATE:case V.DATETIME_LOCAL:case V.WEEK:case V.MONTH:return{name:J.DATE};case V.TIME:return{name:J.TIME};default:return""}}),{formatted:K}=useTextCount(m,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),W=computed(()=>!t.disabled&&!t.readonly),O=computed(()=>W.value?t.tabindex:-1),B=computed(()=>!isEmpty(p)),T=computed(()=>{if(u.value===!0)return!0;if(a.value===!0)return!1}),{bemCssClasses:C}=useBemModifiers("vv-input-text",{modifiers:t.modifiers,valid:a,invalid:u,loading:c,disabled:t.disabled,readonly:t.readonly,iconLeft:q,iconRight:x.value||!isEmpty(j),floating:t.floating&&!isEmpty(t.label),dirty:B,focus:S}),A=computed(()=>{const P=(()=>N.value&&_.value||R.value&&!B.value&&!S.value?V.TEXT:t.type)(),I={type:P,name:t.name,tabindex:O.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,"aria-invalid":T.value,"aria-describedby":!Te.value&&Wo.value?g.value:void 0,"aria-errormessage":Te.value?g.value:void 0};return(P===V.DATE||P===V.MONTH||P===V.WEEK||P===V.TIME||P===V.DATETIME_LOCAL||P===V.NUMBER)&&(I.step=t.step,I.max=String(t.max),I.min=String(t.min)),(P===V.TEXT||P===V.SEARCH||P===V.URL||P===V.TEL||P===V.EMAIL||P===V.PASSWORD||P===V.NUMBER)&&(I.placeholder=y.value),(P===V.TEXT||P===V.SEARCH||P===V.URL||P===V.TEL||P===V.EMAIL||P===V.PASSWORD)&&(I.minlength=t.minlength,I.maxlength=t.maxlength,I.pattern=t.pattern),P===V.EMAIL&&(I.multiple=t.multiple),I}),L=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,togglePassword:k,stepUp:$,stepDown:D,clear:F})),{HintSlot:Ko,hasHint:Wo,hasInvalid:Te}=Y(t,r),Xo=fe(V.PASSWORD,t),Yo=fe(V.NUMBER,t),Jo=fe(V.SEARCH,t);return(P,I)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(C))},[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(b),class:"vv-input-text__label"},e.toDisplayString(e.unref(f)),9,go)):e.createCommentVNode("",!0),e.createElementVNode("div",ho,[e.renderSlot(P.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(L))),()=>[e.unref(q)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-input-text__icon-left"},e.unref(Q)),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(b),ref_key:"input",ref:n,"onUpdate:modelValue":I[0]||(I[0]=be=>e.isRef(m)?m.value=be:null)},e.unref(A),{onKeyup:I[1]||(I[1]=be=>l("keyup",be))}),null,16,yo),[[e.vModelDynamic,e.unref(m)]]),e.renderSlot(P.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(L))),()=>[e.unref(x)||e.unref(j)?(e.openBlock(),e.createBlock(w,e.normalizeProps(e.mergeProps({key:0},e.unref(x)?e.unref(Q):e.unref(j))),null,16)):e.unref(N)?(e.openBlock(),e.createBlock(e.unref(Xo),{key:1,onTogglePassword:k})):e.unref(M)?(e.openBlock(),e.createBlock(e.unref(Yo),{key:2,onStepUp:$,onStepDown:D})):e.unref(H)?(e.openBlock(),e.createBlock(e.unref(Jo),{key:3,onClear:F})):e.createCommentVNode("",!0)]),e.unref(i)?(e.openBlock(),e.createElementBlock("span",Vo,[e.renderSlot(P.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(L))),()=>[e.createTextVNode(e.toDisplayString(e.unref(K)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(Ko),{id:e.unref(g),class:"vv-input-text__hint"},null,8,["id"])],2))}}),ko={...z,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},Co={name:"VvProgress"},Bo=e.defineComponent({...Co,props:ko,setup(o){const l=o,{value:t,max:r,label:n}=toRefs(l),d=computed(()=>l.value===void 0),{bemCssClasses:s}=useBemModifiers("vv-progress",{modifiers:l.modifiers,indeterminate:d});return(f,p)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(s),ariaLabel:e.unref(n),max:e.unref(r),value:e.unref(t)}),null,16))}}),vo=ve,Eo=["click","update:modelValue","change","blur"];function Po(o,l){const{group:t,isInGroup:r,getGroupOrLocalRef:n}=useInjectedGroupState(he),d=n("modelValue",o,l),s=n("readonly",o),f=n("disabled",o),p=n("valid",o),i=n("invalid",o);return{group:t,isInGroup:r,modelValue:d,readonly:s,disabled:f,valid:p,invalid:i}}const $o=["for"],Ao=["id","name","disabled","value","tabindex","aria-invalid"],No={name:"VvRadio"},Oe=e.defineComponent({...No,props:vo,emits:Eo,setup(o,{emit:l}){const t=o,r=useSlots(),{disabled:n,readonly:d,modelValue:s,valid:f,invalid:p}=Po(t,l),i=computed(()=>String(t.id||G.nanoid())),a=computed(()=>c.value?-1:t.tabindex),u=ref(),c=computed(()=>n.value||d.value),b=computed(()=>{if(p.value===!0)return!0;if(f.value===!0)return!1}),g=computed(()=>Array.isArray(s.value)?contains(t.value,s.value):equals(t.value,s.value)),y=computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),m=computed({get(){return g.value?y.value:null},set(_){Array.isArray(s.value)?s.value=[t.value]:s.value=t.value,l("change",_)}}),{bemCssClasses:S}=useBemModifiers("vv-radio",{valid:f,invalid:p,disabled:n,readonly:d}),{HintSlot:v}=Y(t,r);return(_,N)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(S)),for:e.unref(i)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(i),ref_key:"input",ref:u,"onUpdate:modelValue":N[0]||(N[0]=k=>e.isRef(m)?m.value=k:null),type:"radio",class:"vv-radio__input",name:_.name,disabled:e.unref(c),value:e.unref(y),tabindex:e.unref(a),"aria-invalid":e.unref(b)},null,8,Ao),[[e.vModelRadio,e.unref(m)]]),e.renderSlot(_.$slots,"default",{value:e.unref(s)},()=>[e.createTextVNode(e.toDisplayString(_.label),1)]),e.createVNode(e.unref(v),{class:"vv-radio__hint",params:{value:e.unref(s)}},null,8,["params"])],10,$o))}}),wo=Ee,Ro=["update:modelValue","change"],Do=["textContent"],Io={class:"vv-radio-group__wrapper"},Oo={name:"VvRadioGroup"},To=e.defineComponent({...Oo,props:wo,emits:Ro,setup(o,{emit:l}){const t=o,r=useSlots(),n=useVModel(t,"modelValue",l),{disabled:d,readonly:s,vertical:f,valid:p,invalid:i}=toRefs(t),a={key:he,modelValue:n,disabled:d,readonly:s,valid:p,invalid:i};useProvideGroupState(a);const{getOptionLabel:u,getOptionValue:c}=useOptions(t),{bemCssClasses:b}=useBemModifiers("vv-radio-group",{disabled:d,readonly:s,horizontal:computed(()=>!f.value),valid:p,invalid:i}),g=(m,S)=>({id:`${t.name}_opt${S}`,name:t.name,label:u(m),value:c(m)}),{HintSlot:y}=Y(t,r);return(m,S)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(b))},[m.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(m.label)},null,8,Do)):e.createCommentVNode("",!0),e.createElementVNode("div",Io,[m.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.options,(v,_)=>(e.openBlock(),e.createBlock(Oe,e.mergeProps({key:_},g(v,_)),null,16))),128)):e.renderSlot(m.$slots,"default",{key:1})]),e.createVNode(e.unref(y),{class:"vv-radio-group__hint"})],2))}}),Lo={hard:"hard",soft:"soft"},Mo={true:!0,false:!1,default:"default"},Ho=["update:modelValue","focus","blur","keyup"],xo={...Be,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:Lo.soft},spellcheck:{type:[Boolean,String],default:Mo.default},resizable:Boolean},Go=["for"],zo={class:"vv-textarea__wrapper"},Uo=["id"],Fo={key:0,class:"vv-textarea__limit"},qo={name:"VvTextarea"},jo=e.defineComponent({...qo,props:xo,emits:Ho,setup(o,{emit:l}){const t=o,r=useSlots(),n=ref(),{icon:d,iconPosition:s,label:f,modelValue:p,count:i,valid:a,invalid:u,loading:c}=toRefs(t),b=computed(()=>String(t.id||G.nanoid())),g=computed(()=>`${b.value}-hint`),y=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),m=useDebouncedInput(p,l,t.debounce),{hasIcon:S,hasIconLeft:v,hasIconRight:_}=useComponentIcon(d,s),{focused:N}=useComponentFocus(n,l),k=useElementVisibility(n);watch(k,O=>{O&&t.autofocus&&(N.value=!0)});const{formatted:R}=useTextCount(m,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),M=computed(()=>!t.disabled&&!t.readonly),$=computed(()=>M.value?t.tabindex:-1),D=computed(()=>!isEmpty(p)),H=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:F,hasHint:q,hasInvalid:x}=Y(t,r),{bemCssClasses:Q}=useBemModifiers("vv-textarea",{modifiers:t.modifiers,valid:a,invalid:u,loading:c,disabled:t.disabled,readonly:t.readonly,iconLeft:v,iconRight:_,floating:t.floating&&!isEmpty(t.label),dirty:D,focused:N,resizable:t.resizable}),j=computed(()=>({name:t.name,placeholder:y.value,tabindex:$.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":H.value,"aria-describedby":!x.value&&q.value?g.value:void 0,"aria-errormessage":x.value?g.value:void 0})),K=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,hintLabel:t.hintLabel,maxlength:t.maxlength,minlength:t.minlength,clear:W})),W=()=>{m.value=void 0};return(O,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(Q))},[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(b),class:"vv-textarea__label"},e.toDisplayString(e.unref(f)),9,Go)):e.createCommentVNode("",!0),e.createElementVNode("div",zo,[e.renderSlot(O.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(K))),()=>[e.unref(v)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-textarea__icon-left"},e.unref(S)),null,16)):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(b),ref_key:"textarea",ref:n,"onUpdate:modelValue":B[0]||(B[0]=T=>e.isRef(m)?m.value=T:null)},e.unref(j),{onKeyup:B[1]||(B[1]=T=>l("keyup",T))}),null,16,Uo),[[e.vModelText,e.unref(m)]]),e.renderSlot(O.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(K))),()=>[e.unref(_)?(e.openBlock(),e.createBlock(w,e.normalizeProps(e.mergeProps({key:0},e.unref(S))),null,16)):e.createCommentVNode("",!0)]),e.unref(i)?(e.openBlock(),e.createElementBlock("span",Fo,[e.renderSlot(O.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(K))),()=>[e.createTextVNode(e.toDisplayString(e.unref(R)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(F),{id:e.unref(g),class:"vv-textarea__hint"},null,8,["id"])],2))}});E.VvAccordion=Se,E.VvAccordionGroup=Ke,E.VvBadge=Qe,E.VvBreadcrumb=lt,E.VvButton=mt,E.VvButtonGroup=ht,E.VvCard=Ct,E.VvCheckbox=Ne,E.VvCheckboxGroup=Ot,E.VvCombobox=lo,E.VvDialog=mo,E.VvDropdown=we,E.VvIcon=w,E.VvInputText=_o,E.VvProgress=Bo,E.VvRadio=Oe,E.VvRadioGroup=To,E.VvSelect=Re,E.VvTextarea=jo,Object.defineProperty(E,Symbol.toStringTag,{value:"Module"})});
@@ -1,4 +1,4 @@
1
- import { type Ref } from 'vue';
1
+ import type { Ref } from 'vue';
2
2
  import type IGroupState from '@/composables/group/types/IGroupState';
3
3
  /**
4
4
  * Injects a group state
@@ -1,4 +1,4 @@
1
- import { type MaybeElement, type MaybeElementRef } from '@vueuse/core';
1
+ import type { MaybeElement, MaybeElementRef } from '@vueuse/core';
2
2
  export declare function useComponentFocus(inputTemplateRef: MaybeElementRef<MaybeElement>, emit: (event: 'focus' | 'blur', value: unknown) => void): {
3
3
  focused: import("vue").Ref<boolean>;
4
4
  };
@@ -1,4 +1,4 @@
1
- import { type Slot, type Ref } from 'vue';
1
+ import type { Slot, Ref } from 'vue';
2
2
  interface ComponentIconProps {
3
3
  icon: Ref<string>;
4
4
  iconPosition: Ref<string>;
@@ -1,2 +1,2 @@
1
- import { type Ref } from 'vue';
1
+ import type { Ref } from 'vue';
2
2
  export declare function useDebouncedInput(modelValue: Ref | undefined, emit: (event: string, value: unknown) => void, ms?: string | number): Ref;
@@ -1,4 +1,4 @@
1
- import { type Ref } from 'vue';
1
+ import type { Ref } from 'vue';
2
2
  interface IBemModifiers {
3
3
  [key: string]: Ref<boolean> | Ref<string | unknown[] | undefined> | boolean | string | string[] | undefined | unknown[];
4
4
  modifiers?: Ref<string | unknown[] | undefined> | undefined | string[] | string | unknown[];
@@ -1,4 +1,4 @@
1
- import { type Ref } from 'vue';
1
+ import type { Ref } from 'vue';
2
2
  export declare function useTextCount(text: Ref<string | undefined | null> | string, options?: {
3
3
  mode?: string | boolean;
4
4
  upperLimit?: number;
package/dist/icons.es.js CHANGED
@@ -601,11 +601,11 @@ const t = {
601
601
  }
602
602
  }, o = 24, e = 24, l = {
603
603
  prefix: r,
604
- lastModified: 1674122148,
604
+ lastModified: 1674221084,
605
605
  icons: t,
606
606
  width: o,
607
607
  height: e
608
- }, n = "detailed", i = 1674122148, a = {
608
+ }, n = "detailed", i = 1674221084, a = {
609
609
  add: {
610
610
  body: '<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M4 15.999h24m-12-12v24"/>'
611
611
  },
@@ -1209,7 +1209,7 @@ const t = {
1209
1209
  icons: a,
1210
1210
  width: c,
1211
1211
  height: h
1212
- }, d = "simple", k = 1674122148, m = {
1212
+ }, d = "simple", k = 1674221084, m = {
1213
1213
  add: {
1214
1214
  body: '<path fill="none" stroke="currentColor" stroke-linecap="round" d="M.5 8h15M8 .5v15"/>'
1215
1215
  },