@volverjs/ui-vue 0.0.3 → 0.0.5-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +54 -15
- package/auto-imports.d.ts +12 -3
- package/bin/icons.cjs +1 -73
- package/dist/Volver.d.ts +23 -11
- package/dist/components/VvAccordion/VvAccordion.es.js +180 -74
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +4 -1
- package/dist/components/VvAccordion/index.d.ts +8 -3
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +280 -122
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +15 -12
- package/dist/components/VvAccordionGroup/index.d.ts +8 -0
- package/dist/components/VvAction/VvAction.es.js +338 -0
- package/dist/components/VvAction/VvAction.umd.js +1 -0
- package/dist/components/VvAction/VvAction.vue.d.ts +63 -0
- package/dist/components/VvAction/index.d.ts +24 -0
- package/dist/components/VvBadge/VvBadge.es.js +251 -22
- package/dist/components/VvBadge/VvBadge.umd.js +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +2 -2
- package/dist/components/VvBadge/index.d.ts +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +280 -62
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +11 -11
- package/dist/components/VvBreadcrumb/index.d.ts +1 -1
- package/dist/components/VvButton/VvButton.es.js +720 -261
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +54 -54
- package/dist/components/VvButton/index.d.ts +30 -75
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +296 -49
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +2 -2
- package/dist/components/VvButtonGroup/index.d.ts +1 -1
- package/dist/components/VvCard/VvCard.es.js +60 -28
- package/dist/components/VvCard/VvCard.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +630 -172
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +4 -4
- package/dist/components/VvCheckbox/index.d.ts +6 -6
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +736 -228
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +9 -9
- package/dist/components/VvCheckboxGroup/index.d.ts +4 -4
- package/dist/components/VvCombobox/VvCombobox.es.js +1673 -768
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +159 -61
- package/dist/components/VvCombobox/index.d.ts +54 -23
- package/dist/components/VvDialog/VvDialog.es.js +426 -115
- package/dist/components/VvDialog/VvDialog.umd.js +1 -1
- package/dist/components/VvDialog/VvDialog.vue.d.ts +12 -3
- package/dist/components/VvDialog/index.d.ts +4 -1
- package/dist/components/VvDropdown/VvDropdown.es.js +504 -190
- package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +114 -42
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +61 -0
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +52 -0
- package/dist/components/VvDropdown/index.d.ts +35 -14
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +454 -0
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -0
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +48 -18
- package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +361 -0
- package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -0
- package/dist/components/VvIcon/VvIcon.es.js +116 -52
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +7 -7
- package/dist/components/VvIcon/index.d.ts +2 -2
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +2 -2
- package/dist/components/VvInputText/VvInputStepAction.d.ts +1 -1
- package/dist/components/VvInputText/VvInputText.es.js +1054 -376
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +107 -20
- package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
- package/dist/components/VvInputText/index.d.ts +67 -3
- package/dist/components/VvProgress/VvProgress.es.js +254 -23
- package/dist/components/VvProgress/VvProgress.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +2 -2
- package/dist/components/VvProgress/index.d.ts +1 -1
- package/dist/components/VvRadio/VvRadio.es.js +568 -137
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +4 -4
- package/dist/components/VvRadio/index.d.ts +6 -6
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +674 -193
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +9 -9
- package/dist/components/VvRadioGroup/index.d.ts +4 -4
- package/dist/components/VvSelect/VvSelect.es.js +703 -251
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +24 -17
- package/dist/components/VvSelect/index.d.ts +8 -8
- package/dist/components/VvTextarea/VvTextarea.es.js +747 -272
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +21 -14
- package/dist/components/VvTextarea/index.d.ts +7 -7
- package/dist/components/VvTooltip/VvTooltip.es.js +252 -24
- package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +7 -7
- package/dist/components/VvTooltip/index.d.ts +2 -2
- package/dist/components/index.es.js +3676 -2007
- package/dist/components/index.umd.js +1 -1
- package/dist/composables/dropdown/useInjectDropdown.d.ts +1 -1
- package/dist/composables/dropdown/useProvideDropdown.d.ts +3 -3
- package/dist/composables/group/useInjectedGroupState.d.ts +2 -2
- package/dist/composables/group/useProvideGroupState.d.ts +1 -1
- package/dist/composables/useComponentFocus.d.ts +1 -1
- package/dist/composables/useComponentIcon.d.ts +7 -7
- package/dist/composables/useDebouncedInput.d.ts +4 -1
- package/dist/composables/useDefaults.d.ts +2 -0
- package/dist/composables/useModifiers.d.ts +1 -1
- package/dist/composables/useOptions.d.ts +2 -2
- package/dist/composables/useTextCount.d.ts +3 -3
- package/dist/composables/useUniqueId.d.ts +1 -1
- package/dist/composables/useVolver.d.ts +1 -1
- package/dist/constants.d.ts +30 -0
- package/dist/directives/index.es.js +288 -0
- package/dist/directives/index.umd.js +1 -0
- package/dist/directives/v-tooltip.es.js +285 -0
- package/dist/directives/v-tooltip.umd.js +1 -0
- package/dist/icons.es.js +38 -23
- package/dist/icons.umd.js +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.es.js +115 -3269
- package/dist/index.umd.js +1 -1
- package/dist/props/index.d.ts +215 -23
- package/dist/resolvers/unplugin.d.ts +14 -8
- package/dist/resolvers/unplugin.es.js +94 -33
- package/dist/resolvers/unplugin.umd.js +1 -1
- package/dist/stories/Combobox/Combobox.settings.d.ts +44 -0
- package/dist/stories/Dropdown/Dropdown.settings.d.ts +3 -2
- package/dist/stories/InputText/InputText.settings.d.ts +53 -0
- package/dist/stories/argTypes.d.ts +1 -1
- package/package.json +167 -63
- package/src/Volver.ts +60 -26
- package/src/assets/icons/detailed.json +1 -1
- package/src/assets/icons/normal.json +1 -1
- package/src/assets/icons/simple.json +1 -1
- package/src/components/VvAccordion/VvAccordion.vue +19 -22
- package/src/components/VvAccordion/index.ts +12 -4
- package/src/components/VvAccordionGroup/VvAccordionGroup.vue +19 -10
- package/src/components/VvAccordionGroup/index.ts +8 -0
- package/src/components/VvAction/VvAction.vue +144 -0
- package/src/components/VvAction/index.ts +5 -0
- package/src/components/VvBadge/VvBadge.vue +2 -2
- package/src/components/VvBadge/index.ts +1 -1
- package/src/components/VvBreadcrumb/VvBreadcrumb.vue +3 -3
- package/src/components/VvButton/VvButton.vue +41 -124
- package/src/components/VvButton/index.ts +16 -88
- package/src/components/VvButtonGroup/VvButtonGroup.vue +4 -7
- package/src/components/VvButtonGroup/index.ts +1 -1
- package/src/components/VvCard/VvCard.vue +2 -2
- package/src/components/VvCheckbox/VvCheckbox.vue +3 -7
- package/src/components/VvCheckbox/index.ts +11 -7
- package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +7 -10
- package/src/components/VvCheckboxGroup/index.ts +1 -1
- package/src/components/VvCombobox/VvCombobox.vue +85 -57
- package/src/components/VvCombobox/index.ts +12 -10
- package/src/components/VvDialog/VvDialog.vue +28 -11
- package/src/components/VvDialog/index.ts +5 -2
- package/src/components/VvDropdown/VvDropdown.vue +6 -5
- package/src/components/VvDropdown/VvDropdownAction.vue +46 -0
- package/src/components/VvDropdown/VvDropdownOption.vue +72 -0
- package/src/components/VvDropdown/index.ts +6 -11
- package/src/components/VvIcon/VvIcon.vue +3 -3
- package/src/components/VvIcon/index.ts +3 -3
- package/src/components/VvInputText/VvInputClearAction.ts +2 -2
- package/src/components/VvInputText/VvInputPasswordAction.ts +3 -4
- package/src/components/VvInputText/VvInputStepAction.ts +3 -2
- package/src/components/VvInputText/VvInputText.vue +128 -35
- package/src/components/VvInputText/VvInputTextActions.ts +5 -8
- package/src/components/VvInputText/index.ts +62 -1
- package/src/components/VvProgress/VvProgress.vue +2 -2
- package/src/components/VvProgress/index.ts +1 -1
- package/src/components/VvRadio/VvRadio.vue +3 -7
- package/src/components/VvRadio/index.ts +11 -7
- package/src/components/VvRadioGroup/VvRadioGroup.vue +7 -10
- package/src/components/VvRadioGroup/index.ts +1 -1
- package/src/components/VvSelect/VvSelect.vue +4 -4
- package/src/components/VvSelect/index.ts +3 -5
- package/src/components/VvTextarea/VvTextarea.vue +4 -4
- package/src/components/VvTextarea/index.ts +1 -1
- package/src/components/VvTooltip/VvTooltip.vue +2 -2
- package/src/components/VvTooltip/index.ts +3 -3
- package/src/composables/dropdown/useInjectDropdown.ts +2 -2
- package/src/composables/dropdown/useProvideDropdown.ts +9 -11
- package/src/composables/group/useInjectedGroupState.ts +1 -1
- package/src/composables/group/useProvideGroupState.ts +1 -1
- package/src/composables/useComponentIcon.ts +1 -1
- package/src/composables/useDebouncedInput.ts +10 -3
- package/src/composables/useDefaults.ts +89 -0
- package/src/composables/useModifiers.ts +8 -9
- package/src/composables/useOptions.ts +1 -1
- package/src/composables/useVolver.ts +2 -2
- package/src/constants.ts +36 -0
- package/src/directives/index.ts +1 -1
- package/src/directives/v-tooltip.ts +2 -2
- package/src/index.ts +0 -2
- package/src/props/index.ts +111 -19
- package/src/resolvers/unplugin.ts +96 -49
- package/src/stories/Accordion/Accordion.stories.mdx +8 -2
- package/src/stories/Accordion/Accordion.test.ts +21 -15
- package/src/stories/Accordion/AccordionSlots.stories.mdx +8 -8
- package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +17 -1
- package/src/stories/AccordionGroup/AccordionGroup.test.ts +18 -12
- package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +3 -2
- package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +2 -1
- package/src/stories/Button/Button.stories.mdx +4 -2
- package/src/stories/Button/Button.test.ts +3 -1
- package/src/stories/Button/ButtonModifiers.stories.mdx +2 -2
- package/src/stories/Button/ButtonSlots.stories.mdx +8 -7
- package/src/stories/Button/ButtonState.stories.mdx +2 -11
- package/src/stories/Card/Card.stories.mdx +2 -1
- package/src/stories/Checkbox/Checkbox.stories.mdx +2 -1
- package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +2 -1
- package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +2 -1
- package/src/stories/Combobox/Combobox.settings.ts +44 -0
- package/src/stories/Combobox/Combobox.stories.mdx +40 -1
- package/src/stories/Dialog/Dialog.stories.mdx +2 -1
- package/src/stories/Dropdown/Dropdown.settings.ts +3 -2
- package/src/stories/Dropdown/Dropdown.stories.mdx +14 -12
- package/src/stories/Dropdown/DropdownMultilevel.stories.mdx +56 -0
- package/src/stories/Dropdown/DropdownSlots.stories.mdx +14 -13
- package/src/stories/Icon/Icon.stories.mdx +2 -1
- package/src/stories/Icon/IconsCollection.stories.mdx +2 -1
- package/src/stories/InputText/InputText.settings.ts +53 -0
- package/src/stories/InputText/InputText.stories.mdx +42 -1
- package/src/stories/InputText/InputText.test.ts +5 -2
- package/src/stories/Progress/Progress.stories.mdx +2 -1
- package/src/stories/Radio/Radio.stories.mdx +2 -1
- package/src/stories/RadioGroup/RadioGroup.stories.mdx +2 -1
- package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +2 -1
- package/src/stories/Select/Select.stories.mdx +2 -1
- package/src/stories/Textarea/Textarea.stories.mdx +2 -1
- package/src/stories/Tooltip/Tooltip.stories.mdx +2 -1
- package/src/stories/Tooltip/TooltipDirective.stories.mdx +2 -1
- package/src/stories/argTypes.ts +2 -2
- package/src/types/group.d.ts +5 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(A,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("nanoid"),require("@iconify/vue"),require("@floating-ui/vue")):typeof define=="function"&&define.amd?define(["exports","vue","nanoid","@iconify/vue","@floating-ui/vue"],e):(A=typeof globalThis<"u"?globalThis:A||self,e(A.components={},A.vue,A.nanoid,A.vue$1,A.vue$2))})(this,function(A,e,et,de,K){"use strict";var oe=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(oe||{}),De=(o=>(o.topStart="top-start",o.topEnd="top-end",o.bottomStart="bottom-start",o.bottomEnd="bottom-end",o.leftStart="left-start",o.leftEnd="left-end",o.rightStart="right-start",o.rightEnd="right-end",o))(De||{}),Se=(o=>(o.before="before",o.after="after",o))(Se||{});const Ie=Symbol.for("buttonGroup"),Re=Symbol.for("radioGroup"),Oe=Symbol.for("checkGroup"),Te=Symbol.for("accordionGroup"),tt={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},ot=["update:modelValue"];function lt(o,r){const{group:t,isInGroup:s,getGroupOrLocalRef:l}=useInjectedGroupState(Te),{title:d,content:i}=toRefs(o),u=l("modelValue",o,r),m=l("disabled",o),c=l("collapse",o),n=l("modifiers",o);return{modelValue:u,disabled:m,isInGroup:s,group:t,collapse:c,modifiers:n,title:d,content:i}}const nt=["id","open"],at=["aria-controls","aria-expanded"],rt=["aria-hidden"],st={name:"VvAccordion"},xe=e.defineComponent({...st,props:tt,emits:ot,setup(o,{emit:r}){const t=o,s=useAttrs(),l=computed(()=>t.name||(s==null?void 0:s.id)||et.nanoid()),{modifiers:d,title:i,content:u,disabled:m,collapse:c,modelValue:n,isInGroup:a}=lt(t,r),p=ref(!1),g=computed({get:()=>a.value?c.value&&Array.isArray(n.value)?n.value.includes(l.value):n.value===l.value:n.value===void 0?p.value:n.value,set:b=>{if(a.value){if(c.value&&Array.isArray(n.value)){if(b){n.value.push(l.value);return}n.value=n.value.filter(_=>_!==l.value);return}n.value=b?l.value:null;return}if(n.value===void 0&&typeof b=="boolean"){p.value=b;return}n.value=b}}),v=useBemModifiers("vv-accordion",d,computed(()=>({disabled:m.value}))),V=useToggle(g);return(b,_)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(l),class:e.normalizeClass(e.unref(v)),open:e.unref(g),onClick:_[0]||(_[0]=e.withModifiers(C=>e.unref(V)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(l),"aria-expanded":e.unref(g),class:"vv-collapse__summary"},[e.renderSlot(b.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(i)),1)])],8,at),e.createElementVNode("div",{"aria-hidden":!e.unref(g),class:"vv-collapse__content"},[e.renderSlot(b.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(g)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(u)),1)])],8,rt)],10,nt))}}),it={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},ct=["update:modelValue"],dt={name:"VvAccordionGroup"},ut=e.defineComponent({...dt,props:it,emits:ct,setup(o,{emit:r}){const t=o,{disabled:s,collapse:l,modifiers:d,itemModifiers:i,items:u}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&l.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const m=ref([]),c=computed({get:()=>{var a;return t.modelValue!==void 0?l.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:l.value?m.value:(a=m.value)==null?void 0:a[0]},set:a=>{if(t.modelValue!==void 0)return(Array.isArray(t.modelValue)||l.value)&&!Array.isArray(a)&&(a=[a]),r("update:modelValue",a);m.value=Array.isArray(a)?a:[a]}});useProvideGroupState({key:Te,modelValue:c,disabled:s,collapse:l,modifiers:i});const n=useBemModifiers("vv-accordion-group",d,computed(()=>({disabled:s.value})));return(a,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(n))},[e.renderSlot(a.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),g=>(e.openBlock(),e.createBlock(xe,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content}),{header:e.withCtx(v=>[e.renderSlot(a.$slots,`header::${g.name}`,e.normalizeProps(e.guardReactiveProps(v)))]),details:e.withCtx(v=>[e.renderSlot(a.$slots,`details::${g.name}`,e.normalizeProps(e.guardReactiveProps(v)))]),_:2},1040))),128))])],2))}}),pe={valid:Boolean,validLabel:[String,Array]},fe={invalid:Boolean,invalidLabel:[String,Array]},Ve={loading:Boolean,loadingLabel:String},ie={disabled:Boolean},me={readonly:Boolean},Q={modifiers:[String,Array]},be={hintLabel:{type:String,default:""}},Be={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},pt={count:{type:[Boolean,String],default:!1,validator:o=>[!0,!1,"limit","countdown"].includes(o)}},ft={debounce:[Number,String]},Ce={icon:{type:[String,Object]},iconPosition:{type:String,default:Se.before,validation:o=>Object.values(Se).includes(o)}},he={tabindex:{type:[String,Number],default:0}},Ee={floating:Boolean},ye={unselectable:{type:Boolean,default:!0}},_e={id:[String,Number]},Pe={placement:{type:String,default:oe.bottom,validator:o=>Object.values(oe).includes(o)||Object.values(De).includes(o)},transitionName:{type:String},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},autoClose:{type:Boolean,default:!0},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean}},ke={..._e,name:{type:String,required:!0}},Me={autofocus:Boolean},Le={autocomplete:{type:String,default:"off"}},ze={...ke,...Me,...Le,...he,...ie,...me,...pe,...fe,...be,...Ve,...Q,...pt,...ft,...Ce,...Ee,minlength:Number,maxlength:Number,placeholder:String,required:Boolean,label:String},He={...ke,...he,...pe,...fe,...be,...ie,...me,...Q,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String},Ge={...pe,...fe,...Be,...be,...ie,...me,...Q,modelValue:[String,Array],label:String,name:{type:String,required:!0},vertical:Boolean},mt={...Q,value:[String,Number]},bt={name:"VvBadge"},Fe=e.defineComponent({...bt,props:mt,setup(o){const r=o,{modifiers:t}=toRefs(r),s=useBemModifiers("vv-badge",t);return(l,d)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(s)),role:"status"},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(l.value),1)])],2))}});function gt(o,r,t){return computed(()=>{const s={[o]:!0};let l=unref(r);return l&&(!Array.isArray(l)&&typeof l=="string"&&(l=l.split(" ")),Array.isArray(l)&&l.forEach(d=>{s[`${o}--${d}`]=!0})),t&&Object.keys(t.value).forEach(d=>{s[`${o}--${d}`]=unref(t.value[d])}),s})}const ht={...Q,routes:Array},yt={class:"vv-breadcrumb__list"},_t=["content"],kt={name:"VvBreadcrumb"},vt=e.defineComponent({...kt,props:ht,setup(o){const r=o,{modifiers:t}=toRefs(r),s=gt("vv-breadcrumb",t);return(l,d)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(s)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",yt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.routes,(i,u)=>{var m,c,n,a;return e.openBlock(),e.createElementBlock("li",{key:`${i.label}-${u}`,class:e.normalizeClass({"vv-breadcrumb__item":u<Number((m=l.routes)==null?void 0:m.length)-1,"vv-breadcrumb__item-active":u===Number((c=l.routes)==null?void 0:c.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":u<Number((n=l.routes)==null?void 0:n.length)-1},"aria-current":u===Number((a=l.routes)==null?void 0:a.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:i,index:u})),()=>[e.createTextVNode(e.toDisplayString(i.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${u+1}`},null,8,_t)],2)}),128))])],2))}}),St={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]}},Vt={name:"VvIcon"},M=e.defineComponent({...Vt,props:St,setup(o){const r=o,t=ref(!0),s=useVolver(),{modifiers:l}=toRefs(r),d=useBemModifiers("vv-icon",l),i=computed(()=>r.provider||(s==null?void 0:s.provider)),u=computed(()=>{const n=r.name??"",a=`@${i.value}:${r.prefix}:${r.name}`;return de.iconExists(n)?n:de.iconExists(a)?a:(s==null?void 0:s.iconsCollections.find(p=>{const g=`@${i.value}:${p.prefix}:${n}`;if(de.iconExists(g))return g}))||n});function m(n){let a=null;if(typeof window>"u"){const{JSDOM:V}=require("jsdom");a=new V().window}return(a?new a.DOMParser:new window.DOMParser).parseFromString(n,"text/html").querySelector("svg")}function c(n){const a=m(n),p=(a==null?void 0:a.innerHTML.trim())||"";a&&p&&de.addIcon(`@${i.value}:${r.prefix}:${r.name}`,{body:p,height:a.viewBox.baseVal.height,width:a.viewBox.baseVal.width})}return s&&(r.src&&!de.iconExists(`@${i.value}:${r.prefix}:${r.name}`)?(t.value=!1,s.fetchIcon(r.src).then(n=>{n&&(c(n),t.value=!0)}).catch(n=>{throw new Error(`During fetch icon: ${n==null?void 0:n.message}`)})):r.svg&&c(r.svg)),(n,a)=>e.unref(t)?(e.openBlock(),e.createBlock(e.unref(de.Icon),e.mergeProps({key:0,class:e.unref(d)},{inline:n.inline,width:n.width,height:n.height,horizontalFlip:n.horizontalFlip,verticalFlip:n.verticalFlip,flip:n.flip,rotate:n.rotate,color:n.color,onLoad:n.onLoad,icon:e.unref(u)}),null,16,["class"])):e.createCommentVNode("",!0)}});var Ue=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(Ue||{}),le=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(le||{}),We=(o=>(o._blank="_blank",o._self="_self",o._parent="_parent",o._top="_top",o))(We||{});const Bt=["update:modelValue"],Ct={..._e,...Q,...ie,...ye,icon:[String,Object],iconPosition:{type:String,default:oe.left,validator:o=>Object.values(oe).includes(o)},label:[String,Number],loading:Boolean,loadingIcon:{type:String,default:"eos-icons:bubble-loading"},loadingLabel:{type:String,default:"Loading..."},to:{type:[String,Object]},href:String,target:{type:String,validator:o=>Object.values(We).includes(o)},active:Boolean,pressed:Boolean,rel:{type:String,default:"noopener noreferrer"},type:{type:String,default:"button",validator:o=>Object.values(Ue).includes(o)},toggle:{type:Boolean,default:!1},modelValue:String};function Et(o,r){var _;const{group:t,isInGroup:s,getGroupOrLocalRef:l}=useInjectedGroupState(Ie),{id:d,iconPosition:i,icon:u,label:m,pressed:c,modifiers:n}=toRefs(o),a=l("modelValue",o,r),p=l("disabled",o),g=l("toggle",o),v=l("unselectable",o),V=((_=t==null?void 0:t.value)==null?void 0:_.multiple)??ref(!1),b=computed(()=>{var B;const C=n!=null&&n.value?Array.isArray(n.value)?n.value:[n.value]:[],$=(B=t==null?void 0:t.value.itemModifiers)!=null&&B.value?Array.isArray(t.value.itemModifiers.value)?t.value.itemModifiers.value:[t.value.itemModifiers.value]:[];return[...C,...$]});return{group:t,isInGroup:s,modelValue:a,disabled:p,toggle:g,unselectable:v,multiple:V,id:d,modifiers:b,pressed:c,iconPosition:i,icon:u,label:m}}const Pt={key:1,class:"vv-button__label"},wt={key:1,class:"vv-button__label"},$t={name:"VvButton"},Nt=e.defineComponent({...$t,props:Ct,emits:Bt,setup(o,{expose:r,emit:t}){const s=o,l=useAttrs(),d=useSlots(),{id:i,modifiers:u,iconPosition:m,icon:c,label:n,modelValue:a,disabled:p,toggle:g,unselectable:v}=Et(s,t),V=useUniqueId(i),b=computed(()=>(l==null?void 0:l.name)||V.value),_=useVolver(),C=ref(null);r({$el:C});const{reference:$,bus:B,aria:P}=useInjectedDropdownTrigger();watch(()=>C.value,S=>{$&&($.value=S)});const{role:R}=useInjectedDropdownAction(),x=computed(()=>{switch(!0){case p.value:return le.button;case s.to!==void 0:return _!=null&&_.nuxt?le.nuxtLink:le.routerLink;case s.href!==void 0:return le.a;default:return le.button}}),G=computed(()=>g.value?Array.isArray(a.value)?contains(b.value,a.value):equals(b.value,a.value):s.pressed),E=useBemModifiers("vv-button",u,computed(()=>({active:s.active,pressed:G.value,disabled:p.value,reverse:[oe.right,oe.bottom].includes(m.value),column:[oe.top,oe.bottom].includes(m.value),iconOnly:Boolean((c==null?void 0:c.value)&&!(n!=null&&n.value)&&!d.default)}))),D=computed(()=>typeof(c==null?void 0:c.value)=="string"?{name:c==null?void 0:c.value}:c==null?void 0:c.value),T=computed(()=>{const S={...P==null?void 0:P.value,"aria-pressed":G.value?!0:void 0,class:E.value,role:R};switch(x.value){case le.a:return{...S,role:S.role??"button",href:s.href,target:s.target,rel:s.rel};case le.routerLink:case le.nuxtLink:return{...S,role:S.role??"button",to:s.to,target:s.target};default:return{...S,type:s.type,disabled:p.value}}}),F=S=>{if(B==null||B.emit("click",S),g.value){if(Array.isArray(a.value)){if(contains(b.value,a.value)){v.value&&(a.value=a.value.filter(U=>U!==b.value));return}a.value.push(b.value);return}if(equals(b,a.value)&&v.value){a.value=void 0;return}a.value=b.value}},X=S=>{B==null||B.emit("mouseover",S)},Y=S=>{B==null||B.emit("mouseleave",S)};return(S,U)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(x)),e.mergeProps(e.unref(T),{id:e.unref(V),ref_key:"$el",ref:C,onClickPassive:F,onMouseoverPassive:X,onMouseleavePassive:Y}),{default:e.withCtx(()=>[e.renderSlot(S.$slots,"default",{},()=>[S.loading?e.renderSlot(S.$slots,"loading",{key:0},()=>[S.loadingIcon?(e.openBlock(),e.createBlock(M,{key:0,class:"vv-button__loading-icon",name:S.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),S.loadingLabel?(e.openBlock(),e.createElementBlock("span",Pt,e.toDisplayString(S.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(S.$slots,"before"),e.unref(c)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(D)),null,16)):e.createCommentVNode("",!0),e.unref(n)?(e.openBlock(),e.createElementBlock("span",wt,[e.renderSlot(S.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(n)),1)])])):e.createCommentVNode("",!0),e.renderSlot(S.$slots,"after")],64))])]),_:3},16,["id"]))}}),At={...Q,...ie,...ye,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},Dt=["update:modelValue"],It={name:"VvButtonGroup"},Rt=e.defineComponent({...It,props:At,emits:Dt,setup(o,{emit:r}){const t=o,{disabled:s,toggle:l,modifiers:d,multiple:i,unselectable:u,itemModifiers:m}=toRefs(t);watchEffect(()=>{typeof t.modelValue=="string"&&i.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")});const c=computed({get:()=>i.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue,set:a=>(a!==void 0&&(Array.isArray(t.modelValue)||i.value)&&!Array.isArray(a)&&(a=[a]),r("update:modelValue",a))});useProvideGroupState({key:Ie,modelValue:c,disabled:s,toggle:l,multiple:i,unselectable:u,itemModifiers:m});const n=useBemModifiers("vv-button-group",d);return(a,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(n)),role:"group"},[e.renderSlot(a.$slots,"default")],2))}}),Ot={title:String,modifiers:[String,Array]},Tt={key:0,class:"vv-card__header"},xt={key:1,class:"vv-card__content"},Mt={key:2,class:"vv-card__footer"},Lt={name:"VvCard"},zt=e.defineComponent({...Lt,props:Ot,setup(o){const r=o,{modifiers:t}=toRefs(r),s=useBemModifiers("vv-card",t);return(l,d)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(s))},[l.$slots.header||l.title?(e.openBlock(),e.createElementBlock("header",Tt,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.content?(e.openBlock(),e.createElementBlock("div",xt,[e.renderSlot(l.$slots,"content")])):e.createCommentVNode("",!0),l.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Mt,[e.renderSlot(l.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Ht={...He,...Q,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean},Gt=["click","update:modelValue","change","blur"];function Ft(o,r){const{group:t,isInGroup:s,getGroupOrLocalRef:l}=useInjectedGroupState(Oe),{id:d,switch:i,indeterminate:u}=toRefs(o),m=l("modelValue",o,r),c=l("readonly",o),n=l("disabled",o),a=l("valid",o),p=l("invalid",o);return{id:d,propsSwitch:i,indeterminate:u,group:t,isInGroup:s,modelValue:m,readonly:c,disabled:n,valid:a,invalid:p}}function ve(o){return Array.isArray(o)?o.filter(r=>isString(r)).join(" "):o}function re(o,r){const{invalid:t,valid:s,hint:l,loading:d}=r,{hintLabel:i,modelValue:u,valid:m,validLabel:c,invalid:n,invalidLabel:a,...p}=toRefs(o),g=resolveFieldData(p,"loading"),v=resolveFieldData(p,"loadingLabel"),V=computed(()=>n.value?!!(n.value&&t||a!=null&&a.value&&Array.isArray(a.value)&&a.value.length>0||a!=null&&a.value&&!isEmpty(a)):!1),b=computed(()=>!!(i&&i.value||l)),_=computed(()=>!!(c&&c.value||s)),C=computed(()=>!!(g!=null&&g.value&&d||g!=null&&g.value&&(v!=null&&v.value))),$=computed(()=>b.value||_.value||V.value||C.value);return{hasInvalid:V,hasHint:b,hasValid:_,hasLoading:C,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(B){const P=computed(()=>{const R=toReactive({hintLabel:i,modelValue:u,valid:m,validLabel:c,invalid:n,invalidLabel:a,loading:g,loadingLabel:v,...B.params});return n!=null&&n.value?(t==null?void 0:t(R))||ve(a==null?void 0:a.value)||(i==null?void 0:i.value):m!=null&&m.value?(s==null?void 0:s(R))||ve(c==null?void 0:c.value)||(i==null?void 0:i.value):g!=null&&g.value?(d==null?void 0:d(R))||ve(v==null?void 0:v.value)||(i==null?void 0:i.value):(l==null?void 0:l(R))||ve(i==null?void 0:i.value)||(i==null?void 0:i.value)});return{isVisible:$,hasInvalid:V,hasValid:_,hintContent:P}},render(){if(this.isVisible)return h("small",{role:this.hasInvalid?"alert":this.hasValid?"status":void 0},this.hintContent)}}}}const Ut=["for"],Wt=["id","name","disabled","value","tabindex","aria-invalid"],jt={name:"VvCheckbox"},je=e.defineComponent({...jt,props:Ht,emits:Gt,setup(o,{emit:r}){const t=o,s=useSlots(),{id:l,disabled:d,readonly:i,valid:u,invalid:m,propsSwitch:c,modelValue:n,indeterminate:a,isInGroup:p}=Ft(t,r),g=useUniqueId(l),v=computed(()=>_.value?-1:t.tabindex),V=ref(),b=computed(()=>t.uncheckedValue!==void 0&&!p.value),_=computed(()=>d.value||i.value),C=computed(()=>{if(m.value===!0)return!0;if(u.value===!0)return!1}),$=computed(()=>b.value?n.value===t.value:Array.isArray(n.value)?contains(t.value,n.value):equals(t.value,n.value)),B=computed(()=>!!(a.value||!$.value&&b.value&&t.uncheckedValue!==n.value)),P=computed(()=>{if(!b.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),R=computed({get(){return $.value},set(D){if(b.value)n.value=D?t.value:t.uncheckedValue;else if(Array.isArray(n.value)||p.value){const T=new Set(Array.isArray(n.value)?n.value:n.value!==void 0?[n.value]:[]);D?T.add(t.value):T.delete(t.value),n.value=[...T]}else n.value=D?t.value:void 0;r("change",D)}}),{modifiers:x}=toRefs(t),G=useBemModifiers("vv-checkbox",x,computed(()=>({switch:c.value,valid:u.value,invalid:m.value,disabled:d.value,readonly:i.value,indeterminate:a.value})));watchEffect(()=>{b.value&&Array.isArray(n.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")}),watch(()=>B.value,D=>{D?V.value.indeterminate=!0:V.value.indeterminate=!1}),onMounted(()=>{B.value&&(V.value.indeterminate=!0)});const{HintSlot:E}=re(t,s);return(D,T)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(G)),for:e.unref(g)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(g),ref_key:"input",ref:V,"onUpdate:modelValue":T[0]||(T[0]=F=>e.isRef(R)?R.value=F:null),type:"checkbox",class:"vv-checkbox__input",name:D.name,disabled:e.unref(_),value:e.unref(P),tabindex:e.unref(v),"aria-invalid":e.unref(C)},null,8,Wt),[[e.vModelCheckbox,e.unref(R)]]),e.renderSlot(D.$slots,"default",{value:e.unref(n)},()=>[e.createTextVNode(e.toDisplayString(D.label),1)]),e.createVNode(e.unref(E),{class:"vv-checkbox__hint",params:{value:e.unref(n)}},null,8,["params"])],10,Ut))}}),qt=Ge,Kt=["update:modelValue","change"],Xt=["textContent"],Yt={class:"vv-checkbox-group__wrapper"},Jt={name:"VvCheckboxGroup"},Qt=e.defineComponent({...Jt,props:qt,emits:Kt,setup(o,{emit:r}){const t=o,s=useSlots(),l=useVModel(t,"modelValue",r),{disabled:d,readonly:i,vertical:u,valid:m,invalid:c,modifiers:n}=toRefs(t);useProvideGroupState({key:Oe,modelValue:l,disabled:d,readonly:i,valid:m,invalid:c});const{getOptionLabel:a,getOptionValue:p}=useOptions(t),g=useBemModifiers("vv-checkbox-group",n,computed(()=>({disabled:d.value,readonly:i.value,horizontal:!u.value,valid:m.value,invalid:c.value}))),v=(b,_)=>({id:`${t.name}_opt${_}`,name:t.name,label:a(b),value:p(b)}),{HintSlot:V}=re(t,s);return(b,_)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[b.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(b.label)},null,8,Xt)):e.createCommentVNode("",!0),e.createElementVNode("div",Yt,[b.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(b.options,(C,$)=>(e.openBlock(),e.createBlock(je,e.mergeProps({key:$},v(C,$)),null,16))),128)):e.renderSlot(b.$slots,"default",{key:1})]),e.createVNode(e.unref(V),{class:"vv-checkbox-group__hint"})],2))}}),Zt=["update:modelValue","change:search","focus","blur"],eo={...ke,...he,...pe,...fe,...be,...Ve,...ie,...me,...Q,...Be,...Ce,...Ee,...ye,...Pe,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,noResultsLabel:{type:String,default:"No results"},selectedLabel:{type:String,default:"Selected"},deselectLabel:{type:String,default:"Deselect"},pressToSelectLabel:{type:String,default:"Press enter to select"},pressToDeselectLabel:{type:String,default:"Press enter to remove"},placeholder:String,searchable:Boolean,searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...Pe.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array]},autoOpen:Boolean,autoClose:Boolean},qe=["listbox","menu"],to={..._e,...Q,...Pe,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:qe[1],validator:o=>qe.includes(o)}},oo=["id","tabindex","role","aria-labelledby"],lo={name:"VvDropdown",inheritAttrs:!1},we=e.defineComponent({...lo,props:to,emits:["update:modelValue"],setup(o,{emit:r}){const t=o,{id:s}=toRefs(t),l=useUniqueId(s),d=useAttrs(),i=ref("auto"),u=ref("auto"),m=ref(null),c=ref(null),n=ref(null),a=ref(null),p=computed({get:()=>t.reference??m.value,set:f=>{m.value=f}}),g=computed(()=>{const f=[];if(t.autoPlacement?typeof t.autoPlacement=="boolean"?f.push(K.autoPlacement()):f.push(K.autoPlacement(t.autoPlacement)):t.flip&&(typeof t.flip=="boolean"?f.push(K.flip()):f.push(K.flip(t.flip))),t.shift&&(typeof t.shift=="boolean"?f.push(K.shift()):f.push(K.shift(t.shift))),t.size){const I=({availableWidth:J,availableHeight:ae})=>{i.value=`${J}px`,u.value=`${ae}px`};typeof t.size=="boolean"?f.push(K.size({apply:I})):f.push(K.size({...t.size,apply:I}))}return t.offset&&(f.push(K.offset(Number(t.offset))),["string","number"].includes(typeof t.offset)?f.push(K.offset(Number(t.offset))):f.push(K.offset(t.offset))),t.arrow&&f.push(K.arrow({element:n})),f}),{x:v,y:V,strategy:b,middlewareData:_,placement:C}=K.useFloating(p,c,{whileElementsMounted:K.autoUpdate,placement:t.placement,middleware:g}),$=computed(()=>({position:b.value,top:`${V.value??0}px`,left:`${v.value??0}px`,maxWidth:i.value,maxHeight:u.value,width:t.triggerWidth&&p.value?`${p.value.offsetWidth}px`:void 0})),B=computed(()=>C.value.split("-")[0]),P=computed(()=>({top:"bottom",right:"left",bottom:"top",left:"right"})[B.value]??"bottom"),R=computed(()=>{var f,I,J,ae;return["bottom","top"].includes(P.value)?{right:`${((f=_.value.arrow)==null?void 0:f.x)??0}px`,[P.value]:`${-(((I=n.value)==null?void 0:I.offsetWidth)??0)/2}px`}:{top:`${((J=_.value.arrow)==null?void 0:J.y)??0}px`,[P.value]:`${-(((ae=n.value)==null?void 0:ae.offsetWidth)??0)/2}px`}}),x=useVModel(t,"modelValue",r),G=ref(!1),E=computed({get:()=>x.value??G.value,set:f=>{if(x.value===void 0){G.value=f;return}x.value=f}}),D=()=>{E.value=!0},T=()=>{E.value=!1},F=()=>{E.value=!E.value},X=f=>{p.value=f};watch(E,f=>{f&&t.autofocusFirst&&nextTick(()=>{const I=W(c.value);I.length>0&&I[0].focus()})}),onClickOutside(c,()=>{t.autoClose&&(E.value=!1)},{ignore:[p]});const Y=computed(()=>{var f;return((f=p.value)==null?void 0:f.getAttribute("id"))??void 0}),S=computed(()=>({"aria-controls":l.value,"aria-haspopup":!0,"aria-expanded":E.value})),{component:U,bus:ee}=useProvideDropdownTrigger({reference:p,id:l,expanded:E,aria:S});ee.on("click",F);const{role:q,modifiers:ne}=toRefs(t),{itemRole:L}=useProvideDropdownItem({role:q,expanded:E}),N=useBemModifiers("vv-dropdown",ne,computed(()=>({arrow:t.arrow}))),{focused:z}=useFocusWithin(c);function W(f){return f?[...f.querySelectorAll('a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])')].filter(I=>!I.hasAttribute("disabled")&&!I.getAttribute("aria-hidden")):[]}const te=()=>{nextTick(()=>{if(z.value){const f=W(c.value);if(f.length===0||!document.activeElement)return;const I=f.indexOf(document.activeElement);I<f.length-1?f[I+1].focus():f[0].focus()}})},Z=()=>{nextTick(()=>{if(z.value){const f=W(c.value);if(f.length===0||!document.activeElement)return;const I=f.indexOf(document.activeElement);I>0?f[I-1].focus():f[f.length-1].focus()}})};return onKeyStroke("Escape",f=>{E.value&&(f.preventDefault(),T())}),onKeyStroke("ArrowDown",f=>{E.value&&z.value&&(f.preventDefault(),te())}),onKeyStroke("ArrowUp",f=>{E.value&&z.value&&(f.preventDefault(),Z())}),onKeyStroke([" ","Enter"],f=>{E.value&&z.value&&(f.preventDefault(),document.activeElement.click())}),(f,I)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(U),null,{default:e.withCtx(()=>[e.renderSlot(f.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:X,show:D,hide:T,toggle:F,expanded:e.unref(E),aria:e.unref(S)})))]),_:3}),e.createVNode(e.Transition,{name:f.transitionName},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:c,style:e.normalizeStyle(e.unref($)),class:e.normalizeClass(e.unref(N))},[t.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:n,style:e.normalizeStyle(e.unref(R)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(E)}))),e.createElementVNode("ul",e.mergeProps(e.unref(d),{id:e.unref(l),ref_key:"listEl",ref:a,tabindex:e.unref(E)?void 0:-1,role:e.unref(q),"aria-labelledby":e.unref(Y),class:"vv-dropdown__list"}),[e.renderSlot(f.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(L)})))],16,oo),e.renderSlot(f.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(E)})))],6),[[e.vShow,e.unref(E)]])]),_:3},8,["name"])],64))}}),no={name:"VvDropdownItem"},Ke=e.defineComponent({...no,setup(o){const{role:r,expanded:t}=useInjectedDropdownItem(),s=ref(null);useProvideDropdownAction({expanded:t});const l=useElementHover(s),{focused:d}=useFocus(s),{focused:i}=useFocusWithin(s);return watch(l,u=>{u&&(d.value=!0)}),(u,m)=>(e.openBlock(),e.createElementBlock("li",e.mergeProps({role:e.unref(r)},{ref_key:"element",ref:s,class:["vv-dropdown__item",{"focus-visible":e.unref(d)||e.unref(i)}]}),[e.renderSlot(u.$slots,"default")],16))}}),ao={...ke,...Me,...Le,...he,...pe,...fe,...be,...Ve,...ie,...me,...Q,...Be,...Ce,...Ee,...ye,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,placeholder:String},ro=["update:modelValue","focus","blur"],so=["for"],io={class:"vv-select__wrapper"},co={key:0,class:"vv-select__input-before"},uo={class:"vv-select__inner"},po=["id"],fo=["disabled","hidden"],mo=["disabled","value"],bo={key:1,class:"vv-select__input-after"},go={name:"VvSelect"},Xe=e.defineComponent({...go,props:ao,emits:ro,setup(o,{emit:r}){const t=o,s=useSlots(),l=ref(),{HintSlot:d,hasHint:i,hasInvalid:u}=re(t,s),{id:m,modifiers:c,disabled:n,readonly:a,loading:p,icon:g,iconPosition:v,invalid:V,valid:b,floating:_,multiple:C}=toRefs(t),$=useUniqueId(m),B=computed(()=>`${$.value}-hint`),{focused:P}=useComponentFocus(l,r),R=useElementVisibility(l);watch(R,N=>{N&&t.autofocus&&(P.value=!0)});const{hasIcon:x,hasIconBefore:G,hasIconAfter:E}=useComponentIcon(g,v),D=computed(()=>!isEmpty(t.modelValue)),T=computed(()=>t.disabled||t.readonly),F=computed(()=>T.value?-1:t.tabindex),X=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),Y=useBemModifiers("vv-select",c,computed(()=>({valid:b.value,invalid:V.value,loading:p.value,disabled:n.value,readonly:a.value,"icon-before":G.value,"icon-after":E.value,dirty:D.value,focus:P.value,floating:_.value,multiple:C.value}))),S=computed(()=>({name:t.name,tabindex:F.value,disabled:T.value,required:t.required,size:t.size,autocomplete:t.autocomplete,multiple:t.multiple,"aria-invalid":X.value,"aria-describedby":!u.value&&i.value?B.value:void 0,"aria-errormessage":u.value?B.value:void 0})),U=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue})),{getOptionLabel:ee,getOptionValue:q,getOptionDisabled:ne}=useOptions(t),L=computed({get:()=>t.modelValue,set:N=>{Array.isArray(N)&&(N=N.filter(z=>z!==void 0)),r("update:modelValue",N)}});return(N,z)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(Y))},[N.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref($)},e.toDisplayString(N.label),9,so)):e.createCommentVNode("",!0),e.createElementVNode("div",io,[N.$slots.before?(e.openBlock(),e.createElementBlock("div",co,[e.renderSlot(N.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(U))))])):e.createCommentVNode("",!0),e.createElementVNode("div",uo,[e.unref(G)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(x)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref($),ref_key:"select",ref:l,"onUpdate:modelValue":z[0]||(z[0]=W=>e.isRef(L)?L.value=W:null)},e.unref(S)),[N.placeholder?(e.openBlock(),e.createElementBlock("option",{key:0,value:void 0,disabled:!N.unselectable,hidden:!N.unselectable},e.toDisplayString(N.placeholder),9,fo)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.options,(W,te)=>(e.openBlock(),e.createElementBlock("option",{key:te,disabled:e.unref(ne)(W),value:e.unref(q)(W)},e.toDisplayString(e.unref(ee)(W)),9,mo))),128))],16,po),[[e.vModelSelect,e.unref(L)]]),e.unref(E)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(x)),null,16)):e.createCommentVNode("",!0)]),N.$slots.after?(e.openBlock(),e.createElementBlock("div",bo,[e.renderSlot(N.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(U))))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(d),{id:e.unref(B),class:"vv-select__hint"},null,8,["id"])],2))}}),ho=["id"],yo=["id","for"],_o=["id","aria-controls","aria-labelledby","aria-describedby","placeholder"],ko={key:0,class:"vv-select__input-before"},vo={class:"vv-select__inner"},So=["aria-labelledby","tabindex"],Vo=["aria-label","onClick"],Bo={key:1,class:"vv-select__input-after"},Co={class:"vv-dropdown-action__hint"},Eo={name:"VvCombobox",components:{VvDropdown:we,VvDropdownItem:Ke}},Po=e.defineComponent({...Eo,props:eo,emits:Zt,setup(o,{emit:r}){const t=o,s=useSlots(),{HintSlot:l}=re(t,s),d=ref(null),i=ref(null),u=ref(null),{focused:m}=useComponentFocus(d,r),{focused:c}=useFocusWithin(u);watch(m,y=>{if(t.autoOpen){if(y&&!p.value){v();return}!y&&p.value&&!c.value&&V()}}),watch(c,y=>{!m.value&&!y&&p.value&&V()});const n=ref(""),a=refDebounced(n,Number(t.debounceSearch));watch(a,()=>r("change:search",a.value));const p=ref(!1),g=()=>{t.disabled||t.readonly||(p.value=!p.value)},v=()=>{t.disabled||t.readonly||p.value||(p.value=!0)},V=()=>{t.disabled||t.readonly||!p.value||(p.value=!1)};watch(p,y=>{D.value&&nextTick(()=>{if(y){i.value&&i.value.focus();return}n.value=""})});const{id:b,icon:_,iconPosition:C,modifiers:$,disabled:B,readonly:P,loading:R,valid:x,invalid:G,floating:E,searchable:D}=toRefs(t),T=useUniqueId(b),F=computed(()=>`${T.value}-hint`),X=computed(()=>`${T.value}-dropdown`),Y=computed(()=>`${T.value}-search`),S=computed(()=>`${T.value}-label`),{hasIcon:U,hasIconBefore:ee,hasIconAfter:q}=useComponentIcon(_,C),ne=computed(()=>!isEmpty(t.modelValue)),L=computed(()=>B.value||P.value?-1:t.tabindex),N=useBemModifiers("vv-select",$,computed(()=>({disabled:B.value,loading:R.value,readonly:P.value,"icon-before":Boolean(ee.value),"icon-after":Boolean(q.value),valid:x.value,invalid:G.value,dirty:ne.value,focus:m.value,floating:E.value}))),z=computed(()=>t.searchable?f.value:t.options),{getOptionLabel:W,getOptionValue:te,getOptionDisabled:Z}=useOptions(t),f=computed(()=>{var y;return(y=t.options)==null?void 0:y.filter(H=>W(H).toLowerCase().includes(a.value.toLowerCase().trim()))});function I(y){return Array.isArray(t.modelValue)?contains(y,t.modelValue)||contains(te(y),t.modelValue):equals(y,t.modelValue)||equals(te(y),t.modelValue)}const J=computed(()=>{let y=[];return Array.isArray(t.modelValue)?y=t.modelValue:t.modelValue&&(y=[t.modelValue]),t.options.filter(H=>y.includes(te(H)))}),ae=computed(()=>J.value.map(y=>W(y)).join(t.separator));watch(J,()=>{!t.multiple&&t.autoClose&&V()});const Ae=()=>{t.autoOpen?v():g()},ge=y=>{var ce;if(t.disabled||t.readonly)return;const H=te(y);let O=H;if(t.multiple)if(Array.isArray(t.modelValue)){if(t.maxValues!==void 0&&t.maxValues>=0&&((ce=t.modelValue)==null?void 0:ce.length)>=t.maxValues&&!contains(H,t.modelValue))return;O=contains(H,t.modelValue)?removeFromList(H,t.modelValue):[...t.modelValue,H]}else O=[H];else t.unselectable&&H===t.modelValue&&(O=void 0);r("update:modelValue",O)},w=computed(()=>({id:T.value,name:t.name,tabindex:L.value,valid:x.value,validLabel:t.validLabel,invalid:G.value,invalidLabel:t.invalidLabel,hintLabel:t.hintLabel,loading:R.value,loadingLabel:t.loadingLabel,disabled:B.value,readonly:P.value,modifiers:t.modifiers,options:z.value,labelKey:t.labelKey,valueKey:t.valueKey,icon:t.icon,iconPosition:t.iconPosition,floating:t.floating,unselectable:t.unselectable,multiple:t.multiple,label:t.label,placeholder:t.placeholder,modelValue:t.modelValue})),j=computed(()=>({id:X.value,reference:u.value,placement:t.placement,transitionName:t.transitionName,offset:t.offset,shift:t.shift,flip:t.flip,autoPlacement:t.autoPlacement,arrow:t.arrow,autoClose:t.autoClose,autofocusFirst:D.value?!1:t.autofocusFirst,triggerWidth:t.triggerWidth,modifiers:t.dropdownModifiers})),ue=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue}));return onKeyStroke([" ","Enter"],y=>{t.autoOpen||!p.value&&m.value&&(y.preventDefault(),y.stopImmediatePropagation(),g())}),(y,H)=>y.native?(e.openBlock(),e.createBlock(Xe,e.mergeProps({key:1},e.unref(w),{"onUpdate:modelValue":H[2]||(H[2]=O=>r("update:modelValue",O))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(T),class:e.normalizeClass(e.unref(N))},[y.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:e.unref(S),for:e.unref(D)?e.unref(Y):void 0},e.toDisplayString(y.label),9,yo)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:u,class:"vv-select__wrapper"},[e.createVNode(we,e.mergeProps({modelValue:e.unref(p),"onUpdate:modelValue":H[1]||(H[1]=O=>e.isRef(p)?p.value=O:null)},e.unref(j),{role:"listbox"}),e.createSlots({default:e.withCtx(({aria:O})=>[y.$slots.before?(e.openBlock(),e.createElementBlock("div",ko,[e.renderSlot(y.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(ue))))])):e.createCommentVNode("",!0),e.createElementVNode("div",vo,[e.unref(ee)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:0,class:"vv-select__icon"},e.unref(U)),null,16)):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({ref_key:"inputEl",ref:d},O,{"aria-labelledby":e.unref(S),class:"vv-select__input",role:"combobox",tabindex:e.unref(L),onClickPassive:Ae}),[e.renderSlot(y.$slots,"value",e.normalizeProps(e.guardReactiveProps({selectedOptions:e.unref(J),onInput:ge})),()=>[e.unref(ae)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[y.badges?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(J),(ce,Ze)=>(e.openBlock(),e.createBlock(Fe,{key:Ze,modifiers:y.badgeModifiers,class:"vv-select__badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(W)(ce))+" ",1),y.unselectable&&!e.unref(P)&&!e.unref(B)?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-label":y.deselectLabel,onClick:e.withModifiers(kl=>ge(ce),["stop"])},[e.createVNode(M,{name:"close"})],8,Vo)):e.createCommentVNode("",!0)]),_:2},1032,["modifiers"]))),128)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(e.unref(ae)),1)],64))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y.placeholder),1)],64))])],16,So),e.unref(q)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},e.unref(U)),null,16)):e.createCommentVNode("",!0)]),y.$slots.after?(e.openBlock(),e.createElementBlock("div",Bo,[e.renderSlot(y.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(ue))))])):e.createCommentVNode("",!0)]),items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(O,ce)=>(e.openBlock(),e.createBlock(Ke,{key:ce,class:e.normalizeClass(["vv-dropdown-action",{disabled:e.unref(Z)(O),selected:I(O),"vv-dropdown-action--unselectable":y.unselectable&&I(O)}]),tabindex:e.unref(Z)(O)?-1:0,"aria-selected":I(O),"aria-disabled":e.unref(Z)(O),onClickPassive:Ze=>ge(O)},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"option",e.normalizeProps(e.guardReactiveProps({option:O,selectedOptions:e.unref(J),selected:I(O),disabled:e.unref(Z)(O)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(W)(O))+" ",1),e.createElementVNode("span",Co,[I(O)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(y.unselectable?y.pressToDeselectLabel:y.selectedLabel),1)],64)):e.unref(Z)(O)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y.pressToSelectLabel),1)],64))])])]),_:2},1032,["tabindex","class","aria-selected","aria-disabled","onClickPassive"]))),128))]),_:2},[e.unref(D)?{name:"before",fn:e.withCtx(()=>[e.unref(D)?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:e.unref(Y),ref_key:"inputSearchEl",ref:i,"onUpdate:modelValue":H[0]||(H[0]=O=>e.isRef(n)?n.value=O:null),"aria-autocomplete":"list","aria-controls":e.unref(X),"aria-labelledby":e.unref(S),"aria-describedby":e.unref(F),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:y.searchPlaceholder},null,8,_o)),[[e.vShow,e.unref(p)],[e.vModelText,e.unref(n)]]):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1040,["modelValue"])],512),e.createVNode(e.unref(l),{id:e.unref(F),class:"vv-select__hint"},null,8,["id"])],10,ho))}}),wo=["open","close","update:modelValue"],$o={..._e,title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},No={key:0,class:"vv-dialog__header"},Ao={class:"vv-dialog__content"},Do={key:1,class:"vv-dialog__footer"},Io={name:"VvDialog"},Ro=e.defineComponent({...Io,props:$o,emits:wo,setup(o,{emit:r}){const t=o,s=useVModel(t,"modelValue",r),l=ref(!0),d=ref(null),i=computed(()=>{const{id:a}=t;return{id:a,open:l.value}}),u=computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),m=computed(()=>`vv-dialog--${t.transition}`),c={"before-enter":()=>{l.value=!0,r("open")},"after-leave":()=>{l.value=!1,r("close")}};onClickOutside(d,()=>{t.autoClose&&(s.value=!1)});function n(){s.value=!1}return onKeyStroke("Escape",a=>{s.value&&(a.preventDefault(),n())}),(a,p)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(m)},e.toHandlers(c)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(i),{class:e.unref(u)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:d,class:"vv-dialog__wrapper"},[a.$slots.header||a.title?(e.openBlock(),e.createElementBlock("header",No,[e.renderSlot(a.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(a.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClickPassive:n},[e.createVNode(M,{name:"close"})],32)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ao,[e.renderSlot(a.$slots,"default")]),a.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Do,[e.renderSlot(a.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(s)]])]),_:3},16,["name"]))}}),k={TEXT:"text",PASSWORD:"password",NUMBER:"number",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",DATE:"date",TIME:"time",DATETIME_LOCAL:"datetime-local",MONTH:"month",WEEK:"week"},se={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},Oo=["update:modelValue","focus","blur","keyup"],To={...ze,modelValue:[String,Number],type:{type:String,default:k.TEXT,validator:o=>Object.values(k).includes(o)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:se.PASSWORD_SHOW},iconHidePassword:{type:String,default:se.PASSWORD_HIDE},iconClear:{type:String,default:se.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"}},Ye=defineComponent({components:{VvIcon:M},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:se.PASSWORD_SHOW},iconHide:{type:String,default:se.PASSWORD_HIDE}},emits:["toggle-password"],setup(o,{emit:r}){const t=ref(!1),s=computed(()=>t.value?o.iconHide:o.iconShow);function l(d){d==null||d.stopPropagation(),o.disabled||(t.value=!t.value,r("toggle-password",t.value))}return{active:t,activeIcon:s,onClick:l}},render(){const o=h(M,{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)}}),$e=defineComponent({components:{VvIcon:M},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:r}){const t=computed(()=>o.mode==="up");return{isUp:t,onClick:l=>{l==null||l.stopPropagation(),o.disabled||r(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})}}),Je=defineComponent({components:{VvIcon:M},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup(o,{emit:r}){function t(s){s==null||s.stopPropagation(),o.disabled||r("clear")}return{onClick:t}},render(){const o=h(M,{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 Ne(o,r){return{name:"VvInputTextActions",components:{VvIcon:M,VvInputPasswordAction:Ye,VvInputStepAction:$e,VvInputClearAction:Je},setup(){return{isDisabled:computed(()=>r.disabled||r.readonly),labelStepUp:r.labelStepUp,labelStepDown:r.labelStepDown,labelShowPassword:r.labelShowPassword,labelHidePassword:r.labelHidePassword,labelClear:r.labelClear,iconShowPassword:r.iconShowPassword,iconHidePassword:r.iconHidePassword}},render(){let t=null;switch(o){case k.SEARCH:{const{onClear:s}=this.$attrs;t=[h(Je,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:s})];break}case k.PASSWORD:{const{onTogglePassword:s}=this.$attrs;t=[h(Ye,{disabled:this.isDisabled,onTogglePassword:s,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case k.NUMBER:{const{onStepUp:s,onStepDown:l}=this.$attrs;t=[h($e,{mode:"up",disabled:this.isDisabled||r.max!==void 0&&r.modelValue===r.max,label:this.labelStepUp,onStepUp:s,onStepDown:l}),h($e,{mode:"down",disabled:this.isDisabled||r.min!==void 0&&r.modelValue===r.min,label:this.labelStepDown,onStepUp:s,onStepDown:l})];break}}return Array.isArray(t)?h("div",{class:"vv-input-text__actions-group"},t):t}}}const xo=["for"],Mo={class:"vv-input-text__wrapper"},Lo={key:0,class:"vv-input-text__input-before"},zo={class:"vv-input-text__inner"},Ho=["id"],Go={key:1,class:"vv-input-text__input-after"},Fo={key:2,class:"vv-input-text__limit"},Uo={name:"VvInputText"},Wo=e.defineComponent({...Uo,props:To,emits:Oo,setup(o,{emit:r}){const t=o,s=useSlots(),l=ref(),{id:d,icon:i,iconPosition:u,label:m,modelValue:c,count:n,valid:a,invalid:p,loading:g}=toRefs(t),v=useUniqueId(d),V=computed(()=>`${v.value}-hint`),b=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),_=useDebouncedInput(c,r,t.debounce),{focused:C}=useComponentFocus(l,r),$=useElementVisibility(l);watch($,w=>{w&&t.autofocus&&(C.value=!0)});const B=ref(!1),P=computed(()=>t.type===k.PASSWORD),R=()=>{B.value=!B.value},x=computed(()=>t.type===k.TIME||t.type===k.DATETIME_LOCAL||t.type===k.DATE||t.type===k.WEEK||t.type===k.MONTH),G=computed(()=>t.type===k.NUMBER),E=()=>{q.value&&(l.value.stepUp(),_.value=unref(l).value)},D=()=>{q.value&&(l.value.stepDown(),_.value=unref(l).value)},T=computed(()=>t.type===k.SEARCH),F=()=>{_.value=void 0},{hasIcon:X,hasIconBefore:Y,hasIconAfter:S}=useComponentIcon(i,u),U=computed(()=>{switch(t.type){case k.COLOR:return{name:se.COLOR};case k.DATE:case k.DATETIME_LOCAL:case k.WEEK:case k.MONTH:return{name:se.DATE};case k.TIME:return{name:se.TIME};default:return""}}),{formatted:ee}=useTextCount(_,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),q=computed(()=>!t.disabled&&!t.readonly),ne=computed(()=>q.value?t.tabindex:-1),L=computed(()=>!isEmpty(c)),N=computed(()=>{if(p.value===!0)return!0;if(a.value===!0)return!1}),{modifiers:z}=toRefs(t),W=useBemModifiers("vv-input-text",z,computed(()=>({valid:a.value,invalid:p.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":Y.value,"icon-after":S.value||!isEmpty(U),floating:t.floating&&!isEmpty(t.label),dirty:L.value,focus:C.value}))),te=computed(()=>{const w=(()=>P.value&&B.value||x.value&&!L.value&&!C.value?k.TEXT:t.type)(),j={type:w,name:t.name,tabindex:ne.value,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,"aria-invalid":N.value,"aria-describedby":!J.value&&I.value?V.value:void 0,"aria-errormessage":J.value?V.value:void 0};return(w===k.DATE||w===k.MONTH||w===k.WEEK||w===k.TIME||w===k.DATETIME_LOCAL||w===k.NUMBER)&&(j.step=t.step,j.max=String(t.max),j.min=String(t.min)),(w===k.TEXT||w===k.SEARCH||w===k.URL||w===k.TEL||w===k.EMAIL||w===k.PASSWORD||w===k.NUMBER)&&(j.placeholder=b.value),(w===k.TEXT||w===k.SEARCH||w===k.URL||w===k.TEL||w===k.EMAIL||w===k.PASSWORD)&&(j.minlength=t.minlength,j.maxlength=t.maxlength,j.pattern=t.pattern),w===k.EMAIL&&(j.multiple=t.multiple),j}),Z=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,togglePassword:R,stepUp:E,stepDown:D,clear:F})),{HintSlot:f,hasHint:I,hasInvalid:J}=re(t,s),ae=Ne(k.PASSWORD,t),Ae=Ne(k.NUMBER,t),ge=Ne(k.SEARCH,t);return(w,j)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(W))},[e.unref(m)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(v),class:"vv-input-text__label"},e.toDisplayString(e.unref(m)),9,xo)):e.createCommentVNode("",!0),e.createElementVNode("div",Mo,[w.$slots.before?(e.openBlock(),e.createElementBlock("div",Lo,[e.renderSlot(w.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])):e.createCommentVNode("",!0),e.createElementVNode("div",zo,[e.unref(Y)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:0,class:"vv-input-text__icon"},e.unref(X)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(v),ref_key:"input",ref:l,"onUpdate:modelValue":j[0]||(j[0]=ue=>e.isRef(_)?_.value=ue:null)},e.unref(te),{onKeyup:j[1]||(j[1]=ue=>r("keyup",ue))}),null,16,Ho),[[e.vModelDynamic,e.unref(_)]]),e.unref(S)||e.unref(U)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:1,class:"vv-input-text__icon vv-input-text__icon-after"},e.unref(S)?e.unref(X):e.unref(U)),null,16)):e.unref(P)?(e.openBlock(),e.createBlock(e.unref(ae),{key:2,onTogglePassword:R})):e.unref(G)?(e.openBlock(),e.createBlock(e.unref(Ae),{key:3,onStepUp:E,onStepDown:D})):e.unref(T)?(e.openBlock(),e.createBlock(e.unref(ge),{key:4,onClear:F})):e.createCommentVNode("",!0)]),w.$slots.after?(e.openBlock(),e.createElementBlock("div",Go,[e.renderSlot(w.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])):e.createCommentVNode("",!0),e.unref(n)?(e.openBlock(),e.createElementBlock("span",Fo,[e.renderSlot(w.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(Z))),()=>[e.createTextVNode(e.toDisplayString(e.unref(ee)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(f),{id:e.unref(V),class:"vv-input-text__hint"},null,8,["id"])],2))}}),jo={...Q,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},qo={name:"VvProgress"},Ko=e.defineComponent({...qo,props:jo,setup(o){const r=o,{value:t,max:s,label:l}=toRefs(r),d=computed(()=>r.value===void 0),{modifiers:i}=toRefs(r),u=useBemModifiers("vv-progress",i,computed(()=>({indeterminate:d.value})));return(m,c)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(u),ariaLabel:e.unref(l),max:e.unref(s),value:e.unref(t)}),null,16))}}),Xo=He,Yo=["click","update:modelValue","change","blur"];function Jo(o,r){const{id:t}=toRefs(o),{group:s,isInGroup:l,getGroupOrLocalRef:d}=useInjectedGroupState(Re),i=d("modelValue",o,r),u=d("readonly",o),m=d("disabled",o),c=d("valid",o),n=d("invalid",o);return{id:t,group:s,isInGroup:l,modelValue:i,readonly:u,disabled:m,valid:c,invalid:n}}const Qo=["for"],Zo=["id","name","disabled","value","tabindex","aria-invalid"],el={name:"VvRadio"},Qe=e.defineComponent({...el,props:Xo,emits:Yo,setup(o,{emit:r}){const t=o,s=useSlots(),{id:l,disabled:d,readonly:i,modelValue:u,valid:m,invalid:c}=Jo(t,r),n=useUniqueId(l),a=computed(()=>g.value?-1:t.tabindex),p=ref(),g=computed(()=>d.value||i.value),v=computed(()=>{if(c.value===!0)return!0;if(m.value===!0)return!1}),V=computed(()=>Array.isArray(u.value)?contains(t.value,u.value):equals(t.value,u.value)),b=computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),_=computed({get(){return V.value?b.value:null},set(P){Array.isArray(u.value)?u.value=[t.value]:u.value=t.value,r("change",P)}}),{modifiers:C}=toRefs(t),$=useBemModifiers("vv-radio",C,computed(()=>({valid:m.value,invalid:c.value,disabled:d.value,readonly:i.value}))),{HintSlot:B}=re(t,s);return(P,R)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref($)),for:e.unref(n)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(n),ref_key:"input",ref:p,"onUpdate:modelValue":R[0]||(R[0]=x=>e.isRef(_)?_.value=x:null),type:"radio",class:"vv-radio__input",name:P.name,disabled:e.unref(g),value:e.unref(b),tabindex:e.unref(a),"aria-invalid":e.unref(v)},null,8,Zo),[[e.vModelRadio,e.unref(_)]]),e.renderSlot(P.$slots,"default",{value:e.unref(u)},()=>[e.createTextVNode(e.toDisplayString(P.label),1)]),e.createVNode(e.unref(B),{class:"vv-radio__hint",params:{value:e.unref(u)}},null,8,["params"])],10,Qo))}}),tl=Ge,ol=["update:modelValue","change"],ll=["textContent"],nl={class:"vv-radio-group__wrapper"},al={name:"VvRadioGroup"},rl=e.defineComponent({...al,props:tl,emits:ol,setup(o,{emit:r}){const t=o,s=useSlots(),l=useVModel(t,"modelValue",r),{disabled:d,readonly:i,vertical:u,valid:m,invalid:c,modifiers:n}=toRefs(t);useProvideGroupState({key:Re,modelValue:l,disabled:d,readonly:i,valid:m,invalid:c});const{getOptionLabel:a,getOptionValue:p}=useOptions(t),g=useBemModifiers("vv-radio-group",n,computed(()=>({disabled:d.value,readonly:i.value,horizontal:!u.value,valid:m.value,invalid:c.value}))),v=(b,_)=>({id:`${t.name}_opt${_}`,name:t.name,label:a(b),value:p(b)}),{HintSlot:V}=re(t,s);return(b,_)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[b.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(b.label)},null,8,ll)):e.createCommentVNode("",!0),e.createElementVNode("div",nl,[b.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(b.options,(C,$)=>(e.openBlock(),e.createBlock(Qe,e.mergeProps({key:$},v(C,$)),null,16))),128)):e.renderSlot(b.$slots,"default",{key:1})]),e.createVNode(e.unref(V),{class:"vv-radio-group__hint"})],2))}}),sl={hard:"hard",soft:"soft"},il={true:!0,false:!1,default:"default"},cl=["update:modelValue","focus","blur","keyup"],dl={...ze,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:sl.soft},spellcheck:{type:[Boolean,String],default:il.default},resizable:Boolean},ul=["for"],pl={class:"vv-textarea__wrapper"},fl={key:0,class:"vv-textarea__input-before"},ml={class:"vv-textarea__inner"},bl=["id"],gl={key:1,class:"vv-textarea__input-after"},hl={key:2,class:"vv-textarea__limit"},yl={name:"VvTextarea"},_l=e.defineComponent({...yl,props:dl,emits:cl,setup(o,{emit:r}){const t=o,s=useSlots(),l=ref(),{id:d,icon:i,iconPosition:u,label:m,modelValue:c,count:n,valid:a,invalid:p,loading:g,modifiers:v}=toRefs(t),V=useUniqueId(d),b=computed(()=>`${V.value}-hint`),_=computed(()=>t.floating&&isEmpty(t.placeholder)?" ":t.placeholder),C=useDebouncedInput(c,r,t.debounce),{hasIcon:$,hasIconBefore:B,hasIconAfter:P}=useComponentIcon(i,u),{focused:R}=useComponentFocus(l,r),x=useElementVisibility(l);watch(x,L=>{L&&t.autofocus&&(R.value=!0)});const{formatted:G}=useTextCount(C,{mode:t.count,upperLimit:t.maxlength,lowerLimit:t.minlength}),E=computed(()=>!t.disabled&&!t.readonly),D=computed(()=>E.value?t.tabindex:-1),T=computed(()=>!isEmpty(c)),F=computed(()=>{if(t.invalid===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:X,hasHint:Y,hasInvalid:S}=re(t,s),U=useBemModifiers("vv-textarea",v,computed(()=>({valid:a.value,invalid:p.value,loading:g.value,disabled:t.disabled,readonly:t.readonly,"icon-before":B.value,"icon-after":P.value,floating:t.floating&&!isEmpty(t.label),dirty:T.value,focused:R.value,resizable:t.resizable}))),ee=computed(()=>({name:t.name,placeholder:_.value,tabindex:D.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":F.value,"aria-describedby":!S.value&&Y.value?b.value:void 0,"aria-errormessage":S.value?b.value:void 0})),q=computed(()=>({valid:t.valid,invalid:t.invalid,modelValue:t.modelValue,hintLabel:t.hintLabel,maxlength:t.maxlength,minlength:t.minlength,clear:ne})),ne=()=>{C.value=void 0};return(L,N)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(U))},[e.unref(m)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(V),class:"vv-textarea__label"},e.toDisplayString(e.unref(m)),9,ul)):e.createCommentVNode("",!0),e.createElementVNode("div",pl,[L.$slots.before?(e.openBlock(),e.createElementBlock("div",fl,[e.renderSlot(L.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(q))))])):e.createCommentVNode("",!0),e.createElementVNode("div",ml,[e.unref(B)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:0,class:"vv-textarea__icon"},e.unref($)),null,16)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(V),ref_key:"textarea",ref:l,"onUpdate:modelValue":N[0]||(N[0]=z=>e.isRef(C)?C.value=z:null)},e.unref(ee),{onKeyup:N[1]||(N[1]=z=>r("keyup",z))}),null,16,bl),[[e.vModelText,e.unref(C)]]),e.unref(P)?(e.openBlock(),e.createBlock(M,e.mergeProps({key:1,class:"vv-textarea__icon vv-textarea__icon-after"},e.unref($)),null,16)):e.createCommentVNode("",!0)]),L.$slots.after?(e.openBlock(),e.createElementBlock("div",gl,[e.renderSlot(L.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(q))))])):e.createCommentVNode("",!0),e.unref(n)?(e.openBlock(),e.createElementBlock("span",hl,[e.renderSlot(L.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(q))),()=>[e.createTextVNode(e.toDisplayString(e.unref(G)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(X),{id:e.unref(b),class:"vv-textarea__hint"},null,8,["id"])],2))}});A.VvAccordion=xe,A.VvAccordionGroup=ut,A.VvBadge=Fe,A.VvBreadcrumb=vt,A.VvButton=Nt,A.VvButtonGroup=Rt,A.VvCard=zt,A.VvCheckbox=je,A.VvCheckboxGroup=Qt,A.VvCombobox=Po,A.VvDialog=Ro,A.VvDropdown=we,A.VvIcon=M,A.VvInputText=Wo,A.VvProgress=Ko,A.VvRadio=Qe,A.VvRadioGroup=rl,A.VvSelect=Xe,A.VvTextarea=_l,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("nanoid"),require("@vueuse/core"),require("@iconify/vue"),require("@floating-ui/vue"),require("mitt"),require("maska")):"function"==typeof define&&define.amd?define(["exports","vue","nanoid","@vueuse/core","@iconify/vue","@floating-ui/vue","mitt","maska"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).components={},e.vue,e.nanoid,e.core,e.vue$1,e.vue$2,e.mitt,e.maska)}(this,(function(e,t,l,o,a,n,r,i){"use strict";var u=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(u||{}),d=(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(d||{}),s=(e=>(e.before="before",e.after="after",e))(s||{}),c=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(c||{}),v=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(v||{}),p=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(p||{}),m=(e=>(e.listbox="listbox",e.menu="menu",e))(m||{}),f=(e=>(e.option="option",e.presentation="presentation",e))(f||{}),b=(e=>(e._blank="_blank",e._self="_self",e._parent="_parent",e._top="_top",e))(b||{});const g=Symbol.for("volver"),y=Symbol.for("buttonGroup"),h=Symbol.for("radioGroup"),k=Symbol.for("checkGroup"),S=Symbol.for("accordionGroup"),V=Symbol.for("dropdownTrigger"),B=Symbol.for("dropdownItem"),w=Symbol.for("dropdownAction");function x(e,t,l){return l?E(e,l)===E(t,l):_(e,t)}function _(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){const l=Array.isArray(e),o=Array.isArray(t);let a,n,r;if(l&&o){if(n=e.length,n!=t.length)return!1;for(a=n;0!=a--;)if(!_(e[a],t[a]))return!1;return!0}if(l!=o)return!1;const i=e instanceof Date,u=t instanceof Date;if(i!=u)return!1;if(i&&u)return e.getTime()==t.getTime();const d=e instanceof RegExp,s=t instanceof RegExp;if(d!=s)return!1;if(d&&s)return e.toString()==t.toString();const c=Object.keys(e);if(n=c.length,n!==Object.keys(t).length)return!1;for(a=n;0!=a--;)if(!Object.prototype.hasOwnProperty.call(t,c[a]))return!1;for(a=n;0!=a--;)if(r=c[a],!_(e[r],t[r]))return!1;return!0}return e!=e&&t!=t}function E(e,t){if(e&&Object.keys(e).length&&t){if(-1===t.indexOf("."))return e[t];{const l=t.split(".");let o=e;for(let t=0,a=l.length;t<a;++t){if(null==e)return null;o=o[l[t]]}return o}}return null}function C(e,t){if(null!=e&&t&&t.length)for(const l of t)if(x(e,l))return!0;return!1}function N(e){return null==(l=t.unref(e))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function P(e,t){const l=function(e,t){let l=-1;if(t)for(let o=0;o<t.length;o++)if(x(t[o],e)){l=o;break}return l}(e,t);return l>-1?t.filter(((e,t)=>t!==l)):t}function A(e){const l=t.inject(e,void 0),o=t.computed((()=>!N(l)));return{group:l,isInGroup:o,getGroupOrLocalRef:function(e,o,a){if(null==l?void 0:l.value){const o=t.unref(l.value)[e];return t.computed({get:()=>null==o?void 0:o.value,set(e){o.value=e}})}const n=t.toRef(o,e);return t.computed({get:()=>n.value,set(t){a&&a(`update:${e}`,t)}})}}}const $={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean,not:Boolean};function L(e,l,o){return t.computed((()=>{const a={[e]:!0},n="string"==typeof(null==l?void 0:l.value)?l.value.split(" "):null==l?void 0:l.value;return n&&Array.isArray(n)&&n.forEach((t=>{t&&(a[`${e}--${t}`]=!0)})),o&&Object.keys(o.value).forEach((l=>{a[`${e}--${l}`]=t.unref(o.value[l])})),a}))}const R=["id","open"],D=["aria-controls","aria-expanded"],T=["aria-hidden"],O=t.defineComponent({name:"VvAccordion",props:$,emits:["update:modelValue"],setup(e,{emit:a}){const n=e,r=t.useAttrs(),i=t.computed((()=>n.name||(null==r?void 0:r.id)||l.nanoid())),{modifiers:u,title:d,content:s,disabled:c,collapse:v,modelValue:p,isInGroup:m,not:f}=function(e,l){const{group:o,isInGroup:a,getGroupOrLocalRef:n}=A(S),{title:r,content:i}=t.toRefs(e),u=n("modelValue",e,l),d=n("not",e),s=n("collapse",e),c=n("modifiers",e),v=t.computed((()=>{var t;return Boolean(e.disabled||(null==(t=null==o?void 0:o.value)?void 0:t.disabled.value))}));return{modelValue:u,not:d,isInGroup:a,group:o,collapse:s,modifiers:c,disabled:v,title:r,content:i}}(n,a),b=t.ref(!1),g=t.computed({get:()=>{let e=p.value;return m.value?e=v.value&&Array.isArray(p.value)?p.value.includes(i.value):p.value===i.value:void 0===p.value&&(e=b.value),f.value?!e:e},set:e=>{if(f.value&&(e=!e),m.value)return v.value&&Array.isArray(p.value)?e?void p.value.push(i.value):void(p.value=p.value.filter((e=>e!==i.value))):void(p.value=e?i.value:null);void 0!==p.value||"boolean"!=typeof e?p.value=e:b.value=e}}),y=L("vv-accordion",u,t.computed((()=>({disabled:c.value})))),h=o.useToggle(g);return(e,l)=>(t.openBlock(),t.createElementBlock("details",{id:t.unref(i),class:t.normalizeClass(t.unref(y)),open:t.unref(g)},[t.createElementVNode("summary",{"aria-controls":t.unref(i),"aria-expanded":t.unref(g),class:"vv-accordion__summary",onClick:l[0]||(l[0]=t.withModifiers((e=>t.unref(h)()),["prevent"]))},[t.renderSlot(e.$slots,"summary",t.normalizeProps(t.guardReactiveProps({open:t.unref(g)})),(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)),1)]))],8,D),t.createElementVNode("div",{"aria-hidden":!t.unref(g),class:"vv-accordion__content"},[t.renderSlot(e.$slots,"default",t.normalizeProps(t.guardReactiveProps({open:t.unref(g)})),(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)),1)]))],8,T)],10,R))}}),I={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean,not:Boolean,storeKey:String};function z(e){if(Object.keys(e).some((l=>"key"!==l&&!t.isRef(e[l]))))throw Error("One or more groupState props aren't ref.");t.provide(e.key,t.computed((()=>e)))}const H=t.defineComponent({name:"VvAccordionGroup",props:I,emits:["update:modelValue"],setup(e,{emit:l}){const a=e,{disabled:n,collapse:r,modifiers:i,itemModifiers:u,items:d,not:s}=t.toRefs(a);t.watchEffect((()=>{"string"==typeof a.modelValue&&r.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")}));let c=t.ref([]);t.watch((()=>a.storeKey),(e=>{c=e?o.useStorage(e,c.value):t.ref([])}),{immediate:!0});const v=t.computed({get:()=>{var e;return void 0!==a.modelValue?r.value?a.modelValue:Array.isArray(a.modelValue)?a.modelValue[0]:a.modelValue:r.value?c.value:null==(e=c.value)?void 0:e[0]},set:e=>{if(void 0!==a.modelValue)return!Array.isArray(a.modelValue)&&!r.value||Array.isArray(e)||(e=[e]),l("update:modelValue",e);c.value=Array.isArray(e)?e:[e]}});z({key:S,modelValue:v,disabled:n,collapse:r,modifiers:u,not:s});const p=L("vv-accordion-group",i,t.computed((()=>({disabled:n.value}))));return(e,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(p))},[t.renderSlot(e.$slots,"default",{},(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(d),(l=>(t.openBlock(),t.createBlock(O,t.mergeProps({key:l.title},{name:l.name,title:l.title,content:l.content}),{header:t.withCtx((o=>[t.renderSlot(e.$slots,`header::${l.name}`,t.normalizeProps(t.guardReactiveProps(o)))])),details:t.withCtx((o=>[t.renderSlot(e.$slots,`details::${l.name}`,t.normalizeProps(t.guardReactiveProps(o)))])),_:2},1040)))),128))]))],2))}}),M={to:{type:[String,Object]},href:String,target:{type:String,validator:e=>Object.values(b).includes(e)},rel:{type:String,default:"noopener noreferrer"}},j={valid:Boolean,validLabel:[String,Array]},F={invalid:Boolean,invalidLabel:[String,Array]},U={loading:Boolean,loadingLabel:{type:String,default:"Loading..."}},G={disabled:Boolean},W={selected:Boolean},K={active:Boolean},q={pressed:Boolean},X={label:[String,Number]},J={readonly:Boolean},Q={modifiers:[String,Array]},Y={hintLabel:{type:String,default:""}},Z={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},ee={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},te={debounce:[Number,String]},le={icon:{type:[String,Object]},iconPosition:{type:String,default:s.before,validation:e=>Object.values(s).includes(e)}},oe={tabindex:{type:[String,Number],default:0}},ae={floating:Boolean},ne={unselectable:{type:Boolean,default:!0}},re={id:[String,Number]},ie={placement:{type:String,default:u.bottom,validator:e=>Object.values(u).includes(e)||Object.values(d).includes(e)},transitionName:{type:String},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},autoClose:{type:Boolean,default:!0},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean}},ue={...re,name:{type:String,required:!0}},de={autofocus:Boolean},se={autocomplete:{type:String,default:"off"}},ce={...ue,...de,...se,...oe,...G,...J,...j,...F,...Y,...U,...Q,...ee,...te,...le,...ae,...X,minlength:Number,maxlength:Number,placeholder:String,required:Boolean},ve={...ue,...oe,...j,...F,...Y,...G,...J,...Q,...X,value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String]},pe={...j,...F,...Z,...Y,...G,...J,...Q,...X,modelValue:[String,Array,Boolean,Number,Symbol],name:{type:String,required:!0},vertical:Boolean},me={...G,...X,...q,...K,...M,type:{type:String,default:c.button,validator:e=>Object.values(c).includes(e)}},fe={...Q,value:[String,Number]},be=t.defineComponent({name:"VvBadge",props:fe,setup(e){const l=e,{modifiers:o}=t.toRefs(l),a=L("vv-badge",o);return(e,l)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(t.unref(a)),role:"status"},[t.renderSlot(e.$slots,"default",{},(()=>[t.createTextVNode(t.toDisplayString(e.value),1)]))],2))}}),ge={...Q,routes:Array},ye={class:"vv-breadcrumb__list"},he=["content"],ke=t.defineComponent({name:"VvBreadcrumb",props:ge,setup(e){const l=e,{modifiers:o}=t.toRefs(l),a=L("vv-breadcrumb",o);return(e,l)=>(t.openBlock(),t.createElementBlock("nav",{class:t.normalizeClass(t.unref(a)),"aria-label":"breadcrumbs"},[t.createElementVNode("ol",ye,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.routes,((l,o)=>{var a,n,r,i;return t.openBlock(),t.createElementBlock("li",{key:`${l.label}-${o}`,class:t.normalizeClass({"vv-breadcrumb__item":o<Number(null==(a=e.routes)?void 0:a.length)-1,"vv-breadcrumb__item-active":o===Number(null==(n=e.routes)?void 0:n.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l.to?"router-link":l.href?"a":"span"),t.mergeProps(l,{class:{"vv-breadcrumb__link":o<Number(null==(r=e.routes)?void 0:r.length)-1},"aria-current":o===Number(null==(i=e.routes)?void 0:i.length)-1?"page":void 0,itemprop:"item"}),{default:t.withCtx((()=>[t.renderSlot(e.$slots,"label",t.normalizeProps(t.guardReactiveProps({route:l,index:o})),(()=>[t.createTextVNode(t.toDisplayString(l.label),1)]))])),_:2},1040,["class","aria-current"])),t.createElementVNode("meta",{itemprop:"position",content:`${o+1}`},null,8,he)],2)})),128))])],2))}}),Se={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}};function Ve(){return t.inject(g)}const Be=t.defineComponent({name:"VvIcon",props:Se,setup(e){const l=e,o=t.ref(!0),n=Ve(),{modifiers:r}=t.toRefs(l),i=L("vv-icon",r),u=t.computed((()=>l.provider||(null==n?void 0:n.iconsProvider))),d=t.computed((()=>{const e=l.name??"",t=`@${u.value}:${l.prefix}:${l.name}`;return a.iconExists(e)?e:a.iconExists(t)?t:(null==n?void 0:n.iconsCollections.find((t=>{const l=`@${u.value}:${t.prefix}:${e}`;if(a.iconExists(l))return l})))||e}));function s(e){const t=function(e){let t=null;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),o=(null==t?void 0:t.innerHTML.trim())||"";t&&o&&a.addIcon(`@${u.value}:${l.prefix}:${l.name}`,{body:o,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return n&&(l.src&&!a.iconExists(`@${u.value}:${l.prefix}:${l.name}`)?(o.value=!1,n.fetchIcon(l.src).then((e=>{e&&(s(e),o.value=!0)})).catch((e=>{throw new Error(`During fetch icon: ${null==e?void 0:e.message}`)}))):l.svg&&s(l.svg)),(e,l)=>t.unref(o)?(t.openBlock(),t.createBlock(t.unref(a.Icon),t.mergeProps({key:0,class:t.unref(i)},{inline:e.inline,width:e.width,height:e.height,horizontalFlip:e.horizontalFlip,verticalFlip:e.verticalFlip,flip:e.flip,rotate:e.rotate,color:e.color,onLoad:e.onLoad,icon:t.unref(d)}),null,16,["class"])):t.createCommentVNode("",!0)}}),we=me;const xe=t.defineComponent({name:"VvAction",props:we,emits:["click","mouseover","mouseleave"],setup(e,{expose:l,emit:o}){const a=e,n=Ve(),r=t.ref(null);l({$el:r});const{reference:i,bus:u,aria:d,expanded:s}=t.inject(V,{});t.watch((()=>r.value),(e=>{i&&(i.value=e)}));const c=t.computed((()=>a.pressed||(null==s?void 0:s.value))),{role:p}=t.inject(w,{}),m=t.computed((()=>{switch(!0){case a.disabled:return v.button;case void 0!==a.to:return(null==n?void 0:n.nuxt)?v.nuxtLink:v.routerLink;case void 0!==a.href:return v.a;default:return v.button}})),f=t.computed((()=>{const e={...null==d?void 0:d.value,"aria-pressed":!!c.value||void 0,role:p};switch(m.value){case v.a:return{...e,href:a.href,target:a.target,rel:a.rel};case v.routerLink:case v.nuxtLink:return{...e,to:a.to,target:a.target};default:return{...e,type:a.type,disabled:a.disabled}}})),b=e=>{a.disabled?e.preventDefault():(null==u||u.emit("click",e),o("click",e))},g=e=>{null==u||u.emit("mouseover",e),o("mouseover",e)},y=e=>{null==u||u.emit("mouseleave",e),o("mouseleave",e)};return(e,l)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(m)),t.mergeProps(t.unref(f),{ref_key:"element",ref:r,class:{active:e.active,pressed:t.unref(c),disabled:e.disabled},onClickPassive:b,onMouseoverPassive:g,onMouseleavePassive:y}),{default:t.withCtx((()=>[t.renderSlot(e.$slots,"default",{},(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]))])),_:3},16,["class"]))}}),_e={...me,...re,...Q,...ne,...U,icon:[String,Object],iconPosition:{type:String,default:u.left,validator:e=>Object.values(u).includes(e)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},modelValue:String};const Ee=e=>t.computed((()=>String((null==e?void 0:e.value)||l.nanoid()))),Ce={key:1,class:"vv-button__label"},Ne={key:1,class:"vv-button__label"},Pe=t.defineComponent({name:"VvButton",props:_e,emits:["update:modelValue"],setup(e,{expose:l,emit:o}){const a=e,n=t.useAttrs(),r=t.useSlots(),{id:i,modifiers:d,iconPosition:s,icon:c,label:v,modelValue:p,disabled:m,toggle:f,unselectable:b}=function(e,l){const{group:o,isInGroup:a,getGroupOrLocalRef:n}=A(y),{id:r,iconPosition:i,icon:u,label:d,pressed:s,modifiers:c}=t.toRefs(e),v=n("modelValue",e,l),p=n("toggle",e),m=n("unselectable",e),f=t.computed((()=>(null==o?void 0:o.value.multiple.value)??!1)),b=t.computed((()=>{var e;return[...(null==c?void 0:c.value)?Array.isArray(c.value)?c.value:c.value.split(" "):[],...(null==(e=null==o?void 0:o.value.itemModifiers)?void 0:e.value)?Array.isArray(o.value.itemModifiers.value)?o.value.itemModifiers.value:o.value.itemModifiers.value.split(" "):[]]})),g=t.computed((()=>{var t;return Boolean(e.disabled||(null==(t=null==o?void 0:o.value)?void 0:t.disabled.value))}));return{group:o,isInGroup:a,modelValue:v,toggle:p,unselectable:m,multiple:f,modifiers:b,disabled:g,id:r,pressed:s,iconPosition:i,icon:u,label:d}}(a,o),g=Ee(i),h=t.computed((()=>(null==n?void 0:n.name)||g.value)),k=t.ref(null);l({$el:t.computed((()=>{var e;return null==(e=k.value)?void 0:e.$el}))});const S=t.computed((()=>f.value?Array.isArray(p.value)?C(h.value,p.value):x(h.value,p.value):a.pressed)),V=L("vv-button",d,t.computed((()=>({reverse:[u.right,u.bottom].includes(s.value),column:[u.top,u.bottom].includes(s.value),"icon-only":Boolean((null==c?void 0:c.value)&&!(null==v?void 0:v.value)&&!r.default)})))),B=t.computed((()=>"string"==typeof(null==c?void 0:c.value)?{name:null==c?void 0:c.value}:null==c?void 0:c.value)),w=()=>{if(f.value){if(Array.isArray(p.value))return C(h.value,p.value)?void(b.value&&(p.value=p.value.filter((e=>e!==h.value)))):void p.value.push(h.value);if(x(h.value,p.value)&&b.value)return void(p.value=void 0);p.value=h.value}};return(e,l)=>(t.openBlock(),t.createBlock(xe,t.mergeProps({disabled:t.unref(m),pressed:t.unref(S),active:e.active,type:e.type,to:e.to,href:e.href,target:e.target,rel:e.rel},{id:t.unref(g),ref_key:"element",ref:k,class:t.unref(V),onClick:w}),{default:t.withCtx((()=>[t.renderSlot(e.$slots,"default",{},(()=>[e.loading?t.renderSlot(e.$slots,"loading",{key:0},(()=>[e.loadingIcon?(t.openBlock(),t.createBlock(Be,{key:0,class:"vv-button__loading-icon",name:e.loadingIcon},null,8,["name"])):t.createCommentVNode("",!0),e.loadingLabel?(t.openBlock(),t.createElementBlock("span",Ce,t.toDisplayString(e.loadingLabel),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.renderSlot(e.$slots,"before"),t.unref(c)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:0,class:"vv-button__icon"},t.unref(B)),null,16)):t.createCommentVNode("",!0),t.unref(v)?(t.openBlock(),t.createElementBlock("span",Ne,[t.renderSlot(e.$slots,"label",{},(()=>[t.createTextVNode(t.toDisplayString(t.unref(v)),1)]))])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"after")],64))]))])),_:3},16,["id","class"]))}}),Ae={...Q,...G,...ne,itemModifiers:{type:[String,Array],default:void 0},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:void 0}},$e=t.defineComponent({name:"VvButtonGroup",props:Ae,emits:["update:modelValue"],setup(e,{emit:l}){const o=e,{disabled:a,toggle:n,modifiers:r,multiple:i,unselectable:u,itemModifiers:d}=t.toRefs(o);t.watchEffect((()=>{"string"==typeof o.modelValue&&i.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")}));const s=t.computed({get:()=>i.value?o.modelValue:Array.isArray(o.modelValue)?o.modelValue[0]:o.modelValue,set:e=>(void 0===e||!Array.isArray(o.modelValue)&&!i.value||Array.isArray(e)||(e=[e]),l("update:modelValue",e))});z({key:y,modelValue:s,disabled:a,toggle:n,multiple:i,unselectable:u,itemModifiers:d});const c=L("vv-button-group",r);return(e,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(c)),role:"group"},[t.renderSlot(e.$slots,"default")],2))}}),Le={title:String,modifiers:[String,Array]},Re={key:0,class:"vv-card__header"},De={key:1,class:"vv-card__content"},Te={key:2,class:"vv-card__footer"},Oe=t.defineComponent({name:"VvCard",props:Le,setup(e){const l=e,{modifiers:o}=t.toRefs(l),a=L("vv-card",o);return(e,l)=>(t.openBlock(),t.createElementBlock("article",{class:t.normalizeClass(t.unref(a))},[e.$slots.header||e.title?(t.openBlock(),t.createElementBlock("header",Re,[t.renderSlot(e.$slots,"header",{},(()=>[t.createTextVNode(t.toDisplayString(e.title),1)]))])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"default"),e.$slots.content?(t.openBlock(),t.createElementBlock("div",De,[t.renderSlot(e.$slots,"content")])):t.createCommentVNode("",!0),e.$slots.footer?(t.openBlock(),t.createElementBlock("footer",Te,[t.renderSlot(e.$slots,"footer")])):t.createCommentVNode("",!0)],2))}}),Ie={...ve,...Q,indeterminate:Boolean,uncheckedValue:[String,Number,Boolean],switch:Boolean};function ze(e){return Array.isArray(e)?e.filter((e=>{return"string"==typeof(t=e)||t instanceof String;var t})).join(" "):e}function He(e,l){const{invalid:a,valid:n,hint:r,loading:i}=l,{hintLabel:u,modelValue:d,valid:s,validLabel:c,invalid:v,invalidLabel:p,...m}=t.toRefs(e),f=E(m,"loading"),b=E(m,"loadingLabel"),g=t.computed((()=>!!v.value&&(!(!v.value||!a)||(!!((null==p?void 0:p.value)&&Array.isArray(p.value)&&p.value.length>0)||!(!(null==p?void 0:p.value)||N(p)))))),y=t.computed((()=>!!(u&&u.value||r))),h=t.computed((()=>!!(c&&c.value||n))),k=t.computed((()=>!!((null==f?void 0:f.value)&&i||(null==f?void 0:f.value)&&(null==b?void 0:b.value)))),S=t.computed((()=>y.value||h.value||g.value||k.value));return{hasInvalid:g,hasHint:y,hasValid:h,hasLoading:k,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(e){const l=t.computed((()=>{const t=o.toReactive({hintLabel:u,modelValue:d,valid:s,validLabel:c,invalid:v,invalidLabel:p,loading:f,loadingLabel:b,...e.params});return(null==v?void 0:v.value)?(null==a?void 0:a(t))||ze(null==p?void 0:p.value)||(null==u?void 0:u.value):(null==s?void 0:s.value)?(null==n?void 0:n(t))||ze(null==c?void 0:c.value)||(null==u?void 0:u.value):(null==f?void 0:f.value)?(null==i?void 0:i(t))||ze(null==b?void 0:b.value)||(null==u?void 0:u.value):(null==r?void 0:r(t))||ze(null==u?void 0:u.value)||(null==u?void 0:u.value)}));return{isVisible:S,hasInvalid:g,hasValid:h,hintContent:l}},render(){if(this.isVisible)return t.h("small",{role:this.hasInvalid?"alert":this.hasValid?"status":void 0},this.hintContent)}}}}const Me=["for"],je=["id","name","disabled","value","tabindex","aria-invalid"],Fe=t.defineComponent({name:"VvCheckbox",props:Ie,emits:["click","update:modelValue","change","blur"],setup(e,{emit:l}){const o=e,a=t.useSlots(),{id:n,disabled:r,readonly:i,valid:u,invalid:d,propsSwitch:s,modelValue:c,indeterminate:v,isInGroup:p}=function(e,l){const{group:o,isInGroup:a,getGroupOrLocalRef:n}=A(k),{id:r,switch:i,indeterminate:u}=t.toRefs(e),d=n("modelValue",e,l),s=n("valid",e),c=n("invalid",e),v=t.computed((()=>{var t;return Boolean(e.readonly||(null==(t=null==o?void 0:o.value)?void 0:t.disabled.value))})),p=t.computed((()=>{var t;return Boolean(e.disabled||(null==(t=null==o?void 0:o.value)?void 0:t.disabled.value))}));return{id:r,propsSwitch:i,indeterminate:u,group:o,isInGroup:a,modelValue:d,valid:s,invalid:c,readonly:v,disabled:p}}(o,l),m=Ee(n),f=t.computed((()=>y.value?-1:o.tabindex)),b=t.ref(),g=t.computed((()=>void 0!==o.uncheckedValue&&!p.value)),y=t.computed((()=>r.value||i.value)),h=t.computed((()=>!0===d.value||!0!==u.value&&void 0)),S=t.computed((()=>g.value?c.value===o.value:Array.isArray(c.value)?C(o.value,c.value):x(o.value,c.value))),V=t.computed((()=>!!v.value||!(S.value||!g.value||o.uncheckedValue===c.value))),B=t.computed((()=>{if(!g.value)return!["string","number","boolean"].includes(typeof o.value)||o.value})),w=t.computed({get:()=>S.value,set(e){if(g.value)c.value=e?o.value:o.uncheckedValue;else if(Array.isArray(c.value)||p.value){const t=new Set(Array.isArray(c.value)?c.value:void 0!==c.value?[c.value]:[]);e?t.add(o.value):t.delete(o.value),c.value=[...t]}else c.value=e?o.value:void 0;l("change",e)}}),{modifiers:_}=t.toRefs(o),E=L("vv-checkbox",_,t.computed((()=>({switch:s.value,valid:u.value,invalid:d.value,disabled:r.value,readonly:i.value,indeterminate:v.value}))));t.watchEffect((()=>{g.value&&Array.isArray(c.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")})),t.watch((()=>V.value),(e=>{b.value.indeterminate=!!e})),t.onMounted((()=>{V.value&&(b.value.indeterminate=!0)}));const{HintSlot:N}=He(o,a);return(e,l)=>(t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(t.unref(E)),for:t.unref(m)},[t.withDirectives(t.createElementVNode("input",{id:t.unref(m),ref_key:"input",ref:b,"onUpdate:modelValue":l[0]||(l[0]=e=>t.isRef(w)?w.value=e:null),type:"checkbox",class:"vv-checkbox__input",name:e.name,disabled:t.unref(y),value:t.unref(B),tabindex:t.unref(f),"aria-invalid":t.unref(h)},null,8,je),[[t.vModelCheckbox,t.unref(w)]]),t.renderSlot(e.$slots,"default",{value:t.unref(c)},(()=>[t.createTextVNode(t.toDisplayString(e.label),1)])),t.createVNode(t.unref(N),{class:"vv-checkbox__hint",params:{value:t.unref(c)}},null,8,["params"])],10,Me))}}),Ue=pe;function Ge(e){const{options:l,labelKey:o,valueKey:a,disabledKey:n}=t.toRefs(e);return{options:l,getOptionLabel:e=>"object"!=typeof e&&null!==e?e:"function"==typeof o.value?o.value(e):e[o.value],getOptionValue:e=>"object"!=typeof e&&null!==e?e:"function"==typeof a.value?a.value(e):e[a.value],getOptionDisabled:e=>("object"==typeof e||null===e)&&("function"==typeof n.value?n.value(e):e[n.value])}}const We=["textContent"],Ke={class:"vv-checkbox-group__wrapper"},qe=t.defineComponent({name:"VvCheckboxGroup",props:Ue,emits:["update:modelValue","change"],setup(e,{emit:l}){const a=e,n=t.useSlots(),r=o.useVModel(a,"modelValue",l),{disabled:i,readonly:u,vertical:d,valid:s,invalid:c,modifiers:v}=t.toRefs(a);z({key:k,modelValue:r,disabled:i,readonly:u,valid:s,invalid:c});const{getOptionLabel:p,getOptionValue:m}=Ge(a),f=L("vv-checkbox-group",v,t.computed((()=>({disabled:i.value,readonly:u.value,horizontal:!d.value,valid:s.value,invalid:c.value})))),{HintSlot:b}=He(a,n);return(e,l)=>(t.openBlock(),t.createElementBlock("fieldset",{class:t.normalizeClass(t.unref(f))},[e.label?(t.openBlock(),t.createElementBlock("legend",{key:0,textContent:t.toDisplayString(e.label)},null,8,We)):t.createCommentVNode("",!0),t.createElementVNode("div",Ke,[e.options.length>0?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.options,((e,l)=>(t.openBlock(),t.createBlock(Fe,t.mergeProps({key:l},((e,t)=>({id:`${a.name}_opt${t}`,name:a.name,label:p(e),value:m(e)}))(e,l)),null,16)))),128)):t.renderSlot(e.$slots,"default",{key:1})]),t.createVNode(t.unref(b),{class:"vv-checkbox-group__hint"})],2))}}),Xe={...ue,...oe,...j,...F,...Y,...U,...G,...J,...Q,...Z,...le,...ae,...ne,...ie,...X,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},selectedHintLabel:{type:String,default:"Selected"},deselectActionLabel:{type:String,default:"Deselect"},selectHintLabel:{type:String,default:"Press enter to select"},deselectHintLabel:{type:String,default:"Press enter to remove"},placeholder:String,searchable:Boolean,searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...ie.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array]},autoOpen:Boolean,autoClose:Boolean},Je={...re,...Q,...ie,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:m.menu,validator:e=>Object.values(m).includes(e)}};const Qe=["id","tabindex","role","aria-labelledby"],Ye=t.defineComponent({name:"VvDropdown",inheritAttrs:!1,props:Je,emits:["update:modelValue"],setup(e,{emit:l}){const a=e,{id:i}=t.toRefs(a),u=Ee(i),d=t.useAttrs(),s=t.ref("auto"),c=t.ref("auto"),v=t.ref(null),p=t.ref(null),b=t.ref(null),g=t.ref(null),y=t.computed({get:()=>a.reference??v.value,set:e=>{v.value=e}}),h=t.computed((()=>{const e=[];if(a.autoPlacement?"boolean"==typeof a.autoPlacement?e.push(n.autoPlacement()):e.push(n.autoPlacement(a.autoPlacement)):a.flip&&("boolean"==typeof a.flip?e.push(n.flip()):e.push(n.flip(a.flip))),a.shift&&("boolean"==typeof a.shift?e.push(n.shift()):e.push(n.shift(a.shift))),a.size){const t=({availableWidth:e,availableHeight:t})=>{s.value=`${e}px`,c.value=`${t}px`};"boolean"==typeof a.size?e.push(n.size({apply:t})):e.push(n.size({...a.size,apply:t}))}return a.offset&&(e.push(n.offset(Number(a.offset))),["string","number"].includes(typeof a.offset)?e.push(n.offset(Number(a.offset))):e.push(n.offset(a.offset))),a.arrow&&e.push(n.arrow({element:b})),e})),{x:k,y:S,strategy:w,middlewareData:x,placement:_}=n.useFloating(y,p,{whileElementsMounted:n.autoUpdate,placement:a.placement,middleware:h}),E=t.computed((()=>({position:w.value,top:`${S.value??0}px`,left:`${k.value??0}px`,maxWidth:s.value,maxHeight:c.value,width:a.triggerWidth&&y.value?`${y.value.offsetWidth}px`:void 0}))),C=t.computed((()=>_.value.split("-")[0])),N=t.computed((()=>({top:"bottom",right:"left",bottom:"top",left:"right"}[C.value]??"bottom"))),P=t.computed((()=>{var e,t,l,o;return["bottom","top"].includes(N.value)?{right:`${(null==(e=x.value.arrow)?void 0:e.x)??0}px`,[N.value]:-((null==(t=b.value)?void 0:t.offsetWidth)??0)/2+"px"}:{top:`${(null==(l=x.value.arrow)?void 0:l.y)??0}px`,[N.value]:-((null==(o=b.value)?void 0:o.offsetWidth)??0)/2+"px"}})),A=o.useVModel(a,"modelValue",l),$=t.ref(!1),R=t.computed({get:()=>A.value??$.value,set:e=>{void 0!==A.value?A.value=e:$.value=e}}),D=()=>{R.value=!0},T=()=>{R.value=!1},O=()=>{R.value=!R.value},I=e=>{y.value=e};t.watch(R,(e=>{e&&a.autofocusFirst&&t.nextTick((()=>{const e=q(p.value);e.length>0&&e[0].focus()}))})),o.onClickOutside(p,(()=>{a.autoClose&&(R.value=!1)}),{ignore:[y]});const z=t.computed((()=>{var e,t;return(null==(t=null==(e=y.value)?void 0:e.getAttribute)?void 0:t.call(e,"id"))??void 0})),H=t.computed((()=>({"aria-controls":u.value,"aria-haspopup":!0,"aria-expanded":R.value}))),{component:M,bus:j}=function({reference:e,id:l,expanded:o,aria:a}){const n=r(),i=t.defineComponent({name:"VvDropdownTriggerProvider",provide:()=>({[V]:{reference:e,id:l,expanded:o,aria:a,bus:n}}),setup:()=>({}),render(){var e,l;return t.h(t.Fragment,{},null==(l=(e=this.$slots).default)?void 0:l.call(e))}});return{bus:n,component:i}}({reference:y,id:u,expanded:R,aria:H});j.on("click",O);const{role:F,modifiers:U}=t.toRefs(a),{itemRole:G}=function({role:e,expanded:l}){const o=t.computed((()=>e.value===m.listbox?f.option:f.presentation));return t.provide(B,{role:o,expanded:l}),{itemRole:o}}({role:F,expanded:R}),W=L("vv-dropdown",U,t.computed((()=>({arrow:a.arrow})))),{focused:K}=o.useFocusWithin(p);function q(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])')].filter((e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden"))):[]}return o.onKeyStroke("Escape",(e=>{R.value&&(e.preventDefault(),T())})),o.onKeyStroke("ArrowDown",(e=>{R.value&&K.value&&(e.preventDefault(),t.nextTick((()=>{if(K.value){const e=q(p.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus():e[0].focus()}})))})),o.onKeyStroke("ArrowUp",(e=>{R.value&&K.value&&(e.preventDefault(),t.nextTick((()=>{if(K.value){const e=q(p.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus():e[e.length-1].focus()}})))})),o.onKeyStroke([" ","Enter"],(e=>{if(R.value&&K.value){e.preventDefault();document.activeElement.click()}})),(e,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(M),null,{default:t.withCtx((()=>[t.renderSlot(e.$slots,"default",t.normalizeProps(t.guardReactiveProps({init:I,show:D,hide:T,toggle:O,expanded:t.unref(R),aria:t.unref(H)})))])),_:3}),t.createVNode(t.Transition,{name:e.transitionName},{default:t.withCtx((()=>[t.withDirectives(t.createElementVNode("div",{ref_key:"floatingEl",ref:p,style:t.normalizeStyle(t.unref(E)),class:t.normalizeClass(t.unref(W))},[a.arrow?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:b,style:t.normalizeStyle(t.unref(P)),class:"vv-dropdown__arrow"},null,4)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"before",t.normalizeProps(t.guardReactiveProps({expanded:t.unref(R)}))),t.createElementVNode("ul",t.mergeProps(t.unref(d),{id:t.unref(u),ref_key:"listEl",ref:g,tabindex:t.unref(R)?void 0:-1,role:t.unref(F),"aria-labelledby":t.unref(z),class:"vv-dropdown__list"}),[t.renderSlot(e.$slots,"items",t.normalizeProps(t.guardReactiveProps({role:t.unref(G)})))],16,Qe),t.renderSlot(e.$slots,"after",t.normalizeProps(t.guardReactiveProps({expanded:t.unref(R)})))],6),[[t.vShow,t.unref(R)]])])),_:3},8,["name"])],64))}}),Ze=t.defineComponent({name:"VvDropdownItem",setup(e){const{role:l,expanded:a}=t.inject(B,{}),n=t.ref(null);!function({expanded:e}){t.provide(w,{role:p.menuitem,expanded:e})}({expanded:a});const r=o.useElementHover(n),{focused:i}=o.useFocus(n),{focused:u}=o.useFocusWithin(n);return t.watch(r,(e=>{e&&(i.value=!0)})),(e,o)=>(t.openBlock(),t.createElementBlock("li",t.mergeProps({role:t.unref(l)},{ref_key:"element",ref:n,class:["vv-dropdown__item",{"focus-visible":t.unref(i)||t.unref(u)}]}),[t.renderSlot(e.$slots,"default")],16))}}),et=["title"],tt=t.defineComponent({name:"VvDropdownOption",props:{...G,...W,...ne,...Q,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String}},setup(e){const l=e,{modifiers:o}=t.toRefs(l),a=L("vv-dropdown-option",o,t.computed((()=>({disabled:l.disabled,selected:l.selected,unselectable:l.unselectable&&l.selected})))),n=t.computed((()=>l.selected?l.unselectable?l.deselectHintLabel:l.selectedHintLabel:l.disabled?void 0:l.selectHintLabel));return(e,l)=>(t.openBlock(),t.createBlock(Ze,{class:t.normalizeClass(t.unref(a)),tabindex:e.disabled?-1:0,"aria-selected":e.selected,"aria-disabled":e.disabled},{default:t.withCtx((()=>[t.renderSlot(e.$slots,"default"),t.createElementVNode("span",{class:"vv-dropdown-option__hint",title:t.unref(n)},[t.renderSlot(e.$slots,"hint",t.normalizeProps(t.guardReactiveProps({disabled:e.disabled,selected:e.selected,unselectable:e.unselectable})),(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)),1)]))],8,et)])),_:3},8,["class","tabindex","aria-selected","aria-disabled"]))}}),lt={...ue,...de,...se,...oe,...j,...F,...Y,...U,...G,...J,...Q,...Z,...le,...ae,...ne,...X,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},placeholder:String};function ot(e,l){const{focused:a}=o.useFocus(e);return t.watch(a,(o=>{l(o?"focus":"blur",t.unref(e))})),{focused:a}}function at(e,l){const o=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===s.before))),a=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===s.after))),n=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===u.left))),r=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===u.right))),i=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===u.top))),d=t.computed((()=>Boolean((null==e?void 0:e.value)&&l.value===u.bottom)));return{hasIcon:t.computed((()=>"string"==typeof(null==e?void 0:e.value)?{name:null==e?void 0:e.value}:null==e?void 0:e.value)),hasIconLeft:n,hasIconRight:r,hasIconTop:i,hasIconBottom:d,hasIconBefore:o,hasIconAfter:a}}const nt=["for"],rt={class:"vv-select__wrapper"},it={key:0,class:"vv-select__input-before"},ut={class:"vv-select__inner"},dt=["id"],st=["disabled","hidden"],ct=["disabled","value"],vt={key:1,class:"vv-select__input-after"},pt=t.defineComponent({name:"VvSelect",props:lt,emits:["update:modelValue","focus","blur"],setup(e,{emit:l}){const a=e,n=t.useSlots(),r=t.ref(),{HintSlot:i,hasHint:u,hasInvalid:d}=He(a,n),{id:s,modifiers:c,disabled:v,readonly:p,loading:m,icon:f,iconPosition:b,invalid:g,valid:y,floating:h,multiple:k}=t.toRefs(a),S=Ee(s),V=t.computed((()=>`${S.value}-hint`)),{focused:B}=ot(r,l),w=o.useElementVisibility(r);t.watch(w,(e=>{e&&a.autofocus&&(B.value=!0)}));const{hasIcon:x,hasIconBefore:_,hasIconAfter:E}=at(f,b),C=t.computed((()=>!N(a.modelValue))),P=t.computed((()=>a.disabled||a.readonly)),A=t.computed((()=>P.value?-1:a.tabindex)),$=t.computed((()=>!0===a.invalid||!0!==a.valid&&void 0)),R=L("vv-select",c,t.computed((()=>({valid:y.value,invalid:g.value,loading:m.value,disabled:v.value,readonly:p.value,"icon-before":_.value,"icon-after":E.value,dirty:C.value,focus:B.value,floating:h.value,multiple:k.value})))),D=t.computed((()=>({name:a.name,tabindex:A.value,disabled:P.value,required:a.required,size:a.size,autocomplete:a.autocomplete,multiple:a.multiple,"aria-invalid":$.value,"aria-describedby":!d.value&&u.value?V.value:void 0,"aria-errormessage":d.value?V.value:void 0}))),T=t.computed((()=>({valid:a.valid,invalid:a.invalid,modelValue:a.modelValue}))),{getOptionLabel:O,getOptionValue:I,getOptionDisabled:z}=Ge(a),H=t.computed({get:()=>a.modelValue,set:e=>{Array.isArray(e)&&(e=e.filter((e=>void 0!==e))),l("update:modelValue",e)}});return(e,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(R))},[e.label?(t.openBlock(),t.createElementBlock("label",{key:0,for:t.unref(S)},t.toDisplayString(e.label),9,nt)):t.createCommentVNode("",!0),t.createElementVNode("div",rt,[e.$slots.before?(t.openBlock(),t.createElementBlock("div",it,[t.renderSlot(e.$slots,"before",t.normalizeProps(t.guardReactiveProps(t.unref(T))))])):t.createCommentVNode("",!0),t.createElementVNode("div",ut,[t.unref(_)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:0,class:"vv-select__icon"},t.unref(x)),null,16)):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("select",t.mergeProps({id:t.unref(S),ref_key:"select",ref:r,"onUpdate:modelValue":l[0]||(l[0]=e=>t.isRef(H)?H.value=e:null)},t.unref(D)),[e.placeholder?(t.openBlock(),t.createElementBlock("option",{key:0,value:void 0,disabled:!e.unselectable,hidden:!e.unselectable},t.toDisplayString(e.placeholder),9,st)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.options,((e,l)=>(t.openBlock(),t.createElementBlock("option",{key:l,disabled:t.unref(z)(e),value:t.unref(I)(e)},t.toDisplayString(t.unref(O)(e)),9,ct)))),128))],16,dt),[[t.vModelSelect,t.unref(H)]]),t.unref(E)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},t.unref(x)),null,16)):t.createCommentVNode("",!0)]),e.$slots.after?(t.openBlock(),t.createElementBlock("div",vt,[t.renderSlot(e.$slots,"after",t.normalizeProps(t.guardReactiveProps(t.unref(T))))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(i),{id:t.unref(V),class:"vv-select__hint"},null,8,["id"])],2))}});const mt=["id"],ft=["id","for"],bt=["id","aria-controls","aria-labelledby","aria-describedby","placeholder"],gt={key:0,class:"vv-select__input-before"},yt={class:"vv-select__inner"},ht=["aria-labelledby","tabindex"],kt=["aria-label","onClick"],St={key:1,class:"vv-select__input-after"},Vt={name:"VvCombobox",components:{VvDropdown:Ye,VvDropdownOption:tt}},Bt=t.defineComponent({...Vt,props:Xe,emits:["update:modelValue","change:search","focus","blur"],setup(e,{emit:l}){const a=e,n=t.useSlots(),r=function(e,l,o){const a=Ve(),n=t.computed((()=>{var t;if(a&&(null==(t=a.defaults.value)?void 0:t[e]))return a.defaults.value[e]}));return t.computed((()=>{if(void 0===n.value)return o;const e=n.value,t=l,a=o;return Object.keys(t).reduce(((l,o)=>{const n=a[o];if(l[o]=n,o in e){if(Array.isArray(t[o])){const a=t[o];a.length&&a[0]===n&&(l[o]=e[o])}if("function"==typeof t[o]&&(0,t[o])()===n&&(l[o]=e[o]),"object"==typeof t[o]){let a=t[o].default;"function"==typeof a&&(a=a()),"object"==typeof a?JSON.stringify(a)===JSON.stringify(n)&&(l[o]=e[o]):a===n&&(l[o]=e[o])}}return l}),{})}))}("VvCombobox",Xe,a),{HintSlot:i}=He(a,n),u=t.ref(null),d=t.ref(null),s=t.ref(null),{focused:c}=ot(u,l),{focused:v}=o.useFocusWithin(s);t.watch(c,(e=>{a.autoOpen&&(!e||b.value?e||!b.value||v.value||h():y())})),t.watch(v,(e=>{c.value||e||!b.value||h()}));const p=t.ref(""),f=o.refDebounced(p,Number(a.debounceSearch));t.watch(f,(()=>l("change:search",f.value)));const b=t.ref(!1),g=()=>{a.disabled||a.readonly||(b.value=!b.value)},y=()=>{a.disabled||a.readonly||b.value||(b.value=!0)},h=()=>{a.disabled||a.readonly||!b.value||(b.value=!1)};t.watch(b,(e=>{D.value&&t.nextTick((()=>{e?d.value&&d.value.focus():p.value=""}))}));const{id:k,icon:S,iconPosition:V,modifiers:B,disabled:w,readonly:_,loading:E,valid:A,invalid:$,floating:R,searchable:D}=t.toRefs(a),T=Ee(k),O=t.computed((()=>`${T.value}-hint`)),I=t.computed((()=>`${T.value}-dropdown`)),z=t.computed((()=>`${T.value}-search`)),H=t.computed((()=>`${T.value}-label`)),{hasIcon:M,hasIconBefore:j,hasIconAfter:F}=at(S,V),U=t.computed((()=>!N(a.modelValue))),G=t.computed((()=>w.value||_.value?-1:a.tabindex)),W=L("vv-select",B,t.computed((()=>({disabled:w.value,loading:E.value,readonly:_.value,"icon-before":Boolean(j.value),"icon-after":Boolean(F.value),valid:A.value,invalid:$.value,dirty:U.value,focus:c.value,floating:R.value})))),K=t.computed((()=>a.searchable?Q.value:a.options)),{getOptionLabel:q,getOptionValue:X,getOptionDisabled:J}=Ge(a),Q=t.computed((()=>{var e;return null==(e=a.options)?void 0:e.filter((e=>q(e).toLowerCase().includes(f.value.toLowerCase().trim())))}));function Y(e){return Array.isArray(a.modelValue)?C(e,a.modelValue)||C(X(e),a.modelValue):x(e,a.modelValue)||x(X(e),a.modelValue)}const Z=t.computed((()=>{let e=[];return Array.isArray(a.modelValue)?e=a.modelValue:a.modelValue&&(e=[a.modelValue]),a.options.filter((t=>e.includes(X(t))))})),ee=t.computed((()=>Z.value.map((e=>q(e))).join(a.separator)));t.watch(Z,(()=>{!a.multiple&&a.autoClose&&h()}));const te=()=>{a.autoOpen?y():g()},le=e=>{var t;if(a.disabled||a.readonly)return;const o=X(e);let n=o;if(a.multiple)if(Array.isArray(a.modelValue)){if(void 0!==a.maxValues&&a.maxValues>=0&&(null==(t=a.modelValue)?void 0:t.length)>=a.maxValues&&!C(o,a.modelValue))return;n=C(o,a.modelValue)?P(o,a.modelValue):[...a.modelValue,o]}else n=[o];else a.autoClose&&h(),a.unselectable&&o===a.modelValue&&(n=void 0);l("update:modelValue",n)},oe=t.computed((()=>({id:T.value,name:a.name,tabindex:G.value,valid:A.value,validLabel:r.value.validLabel,invalid:$.value,invalidLabel:r.value.invalidLabel,hintLabel:r.value.hintLabel,loading:E.value,loadingLabel:r.value.loadingLabel,disabled:w.value,readonly:_.value,modifiers:a.modifiers,options:K.value,labelKey:a.labelKey,valueKey:a.valueKey,icon:a.icon,iconPosition:a.iconPosition,floating:a.floating,unselectable:a.unselectable,multiple:a.multiple,label:a.label,placeholder:a.placeholder,modelValue:a.modelValue}))),ae=t.computed((()=>({id:I.value,reference:s.value,placement:a.placement,transitionName:a.transitionName,offset:a.offset,shift:a.shift,flip:a.flip,autoPlacement:a.autoPlacement,arrow:a.arrow,autoClose:a.autoClose,autofocusFirst:!D.value&&a.autofocusFirst,triggerWidth:a.triggerWidth,modifiers:a.dropdownModifiers}))),ne=t.computed((()=>({valid:a.valid,invalid:a.invalid,modelValue:a.modelValue})));return o.onKeyStroke([" ","Enter"],(e=>{a.autoOpen||!b.value&&c.value&&(e.preventDefault(),e.stopImmediatePropagation(),g())})),(e,o)=>e.native?(t.openBlock(),t.createBlock(pt,t.mergeProps({key:1},t.unref(oe),{"onUpdate:modelValue":o[2]||(o[2]=e=>l("update:modelValue",e))}),null,16)):(t.openBlock(),t.createElementBlock("div",{key:0,id:t.unref(T),class:t.normalizeClass(t.unref(W))},[e.label?(t.openBlock(),t.createElementBlock("label",{key:0,id:t.unref(H),for:t.unref(D)?t.unref(z):void 0},t.toDisplayString(e.label),9,ft)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"wrapperEl",ref:s,class:"vv-select__wrapper"},[t.createVNode(Ye,t.mergeProps({modelValue:t.unref(b),"onUpdate:modelValue":o[1]||(o[1]=e=>t.isRef(b)?b.value=e:null)},t.unref(ae),{role:t.unref(m).listbox}),t.createSlots({default:t.withCtx((({aria:l})=>[e.$slots.before?(t.openBlock(),t.createElementBlock("div",gt,[t.renderSlot(e.$slots,"before",t.normalizeProps(t.guardReactiveProps(t.unref(ne))))])):t.createCommentVNode("",!0),t.createElementVNode("div",yt,[t.unref(j)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:0,class:"vv-select__icon"},t.unref(M)),null,16)):t.createCommentVNode("",!0),t.createElementVNode("div",t.mergeProps({ref_key:"inputEl",ref:u},l,{"aria-labelledby":t.unref(H),class:"vv-select__input",role:"combobox",tabindex:t.unref(G),onClickPassive:te}),[t.renderSlot(e.$slots,"value",t.normalizeProps(t.guardReactiveProps({selectedOptions:t.unref(Z),onInput:le})),(()=>[t.unref(ee)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.badges?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(t.unref(Z),((l,o)=>(t.openBlock(),t.createBlock(be,{key:o,modifiers:e.badgeModifiers,class:"vv-select__badge"},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(t.unref(q)(l))+" ",1),!e.unselectable||t.unref(_)||t.unref(w)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("button",{key:0,"aria-label":t.unref(r).deselectActionLabel,onClick:t.withModifiers((e=>le(l)),["stop"])},[t.createVNode(Be,{name:"close"})],8,kt))])),_:2},1032,["modifiers"])))),128)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(t.toDisplayString(t.unref(ee)),1)],64))],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(e.placeholder),1)],64))]))],16,ht),t.unref(F)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:1,class:"vv-select__icon vv-select__icon-after"},t.unref(M)),null,16)):t.createCommentVNode("",!0)]),e.$slots.after?(t.openBlock(),t.createElementBlock("div",St,[t.renderSlot(e.$slots,"after",t.normalizeProps(t.guardReactiveProps(t.unref(ne))))])):t.createCommentVNode("",!0)])),items:t.withCtx((()=>[t.unref(Q).length?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(Q),((l,o)=>(t.openBlock(),t.createBlock(tt,t.mergeProps({disabled:t.unref(J)(l),selected:Y(l),unselectable:e.unselectable,deselectHintLabel:t.unref(r).deselectHintLabel,selectHintLabel:t.unref(r).selectHintLabel,selectedHintLabel:t.unref(r).selectedHintLabel},{key:o,class:"vv-dropdown-option",onClickPassive:e=>le(l)}),{default:t.withCtx((()=>[t.renderSlot(e.$slots,"option",t.normalizeProps(t.guardReactiveProps({option:l,selectedOptions:t.unref(Z),selected:Y(l),disabled:t.unref(J)(l)})),(()=>[t.createTextVNode(t.toDisplayString(t.unref(q)(l)),1)]))])),_:2},1040,["onClickPassive"])))),128)):e.options.length?(t.openBlock(),t.createBlock(tt,{key:2,modifiers:"inert"},{default:t.withCtx((()=>[t.renderSlot(e.$slots,"no-results",{},(()=>[t.createTextVNode(t.toDisplayString(t.unref(r).noResultsLabel),1)]))])),_:3})):(t.openBlock(),t.createBlock(tt,{key:1,modifiers:"inert"},{default:t.withCtx((()=>[t.renderSlot(e.$slots,"no-options",{},(()=>[t.createTextVNode(t.toDisplayString(t.unref(r).noOptionsLabel),1)]))])),_:3}))])),_:2},[t.unref(D)||e.$slots["dropdown::before"]?{name:"before",fn:t.withCtx((()=>[t.renderSlot(e.$slots,"dropdown::before"),t.unref(D)?t.withDirectives((t.openBlock(),t.createElementBlock("input",{key:0,id:t.unref(z),ref_key:"inputSearchEl",ref:d,"onUpdate:modelValue":o[0]||(o[0]=e=>t.isRef(p)?p.value=e:null),"aria-autocomplete":"list","aria-controls":t.unref(I),"aria-labelledby":t.unref(H),"aria-describedby":t.unref(O),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:t.unref(r).searchPlaceholder},null,8,bt)),[[t.vShow,t.unref(b)],[t.vModelText,t.unref(p)]]):t.createCommentVNode("",!0)])),key:"0"}:void 0,e.$slots["dropdown::after"]?{name:"after",fn:t.withCtx((()=>[t.renderSlot(e.$slots,"dropdown::after")])),key:"1"}:void 0]),1040,["modelValue","role"])],512),t.createVNode(t.unref(i),{id:t.unref(O),class:"vv-select__hint"},null,8,["id"])],10,mt))}}),wt={...re,title:String,modelValue:{type:Boolean,default:void 0},transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},xt={key:0,class:"vv-dialog__header"},_t={class:"vv-dialog__content"},Et={key:1,class:"vv-dialog__footer"},Ct=t.defineComponent({name:"VvDialog",props:wt,emits:["open","close","update:modelValue"],setup(e,{expose:l,emit:a}){const n=e,r=t.ref(!1),i=t.computed({get:()=>n.modelValue??r.value,set(e){void 0===n.modelValue&&(r.value=e),a("update:modelValue",e)}}),u=t.ref(!0),d=t.ref(null),s=t.computed((()=>{const{id:e}=n;return{id:e,open:u.value}})),c=t.computed((()=>n.size?["vv-dialog",`vv-dialog--${n.size}`]:"vv-dialog")),v=t.computed((()=>`vv-dialog--${n.transition}`)),p={"before-enter":()=>{u.value=!0,a("open")},"after-leave":()=>{u.value=!1,a("close")}};function m(){i.value=!1}return o.onClickOutside(d,(()=>{n.autoClose&&(i.value=!1)})),l({close:m,open:function(){i.value=!0}}),o.onKeyStroke("Escape",(e=>{i.value&&(e.preventDefault(),m())})),(e,l)=>(t.openBlock(),t.createBlock(t.Transition,t.mergeProps({name:t.unref(v)},t.toHandlers(p)),{default:t.withCtx((()=>[t.withDirectives(t.createElementVNode("dialog",t.mergeProps(t.unref(s),{class:t.unref(c)}),[t.createElementVNode("article",{ref_key:"modalWrapper",ref:d,class:"vv-dialog__wrapper"},[e.$slots.header||e.title?(t.openBlock(),t.createElementBlock("header",xt,[t.renderSlot(e.$slots,"header",{},(()=>[t.createTextVNode(t.toDisplayString(e.title)+" ",1),t.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClickPassive:m},[t.createVNode(Be,{name:"close"})],32)]))])):t.createCommentVNode("",!0),t.createElementVNode("div",_t,[t.renderSlot(e.$slots,"default")]),e.$slots.footer?(t.openBlock(),t.createElementBlock("footer",Et,[t.renderSlot(e.$slots,"footer")])):t.createCommentVNode("",!0)],512)],16),[[t.vShow,t.unref(i)]])])),_:3},16,["name"]))}}),Nt={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"},Pt="eye-on",At="eye-off",$t="calendar",Lt="time",Rt="color",Dt="close",Tt={...ce,modelValue:[String,Number],type:{type:String,default:Nt.TEXT,validator:e=>Object.values(Nt).includes(e)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:Pt},iconHidePassword:{type:String,default:At},iconClear:{type:String,default:Dt},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"},mask:{type:String,default:void 0},maskEager:{type:Boolean,default:!1},maskReversed:{type:Boolean,default:!1},maskTokens:{type:Object,default:void 0},maskTokensReplace:{type:Boolean,default:!1},autoWidth:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},unit:{type:String}},Ot=t.defineComponent({components:{VvIcon:Be},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:Pt},iconHide:{type:String,default:At}},emits:["toggle-password"],setup(e,{emit:l}){const o=t.ref(!1),a=t.computed((()=>o.value?e.iconHide:e.iconShow));return{active:o,activeIcon:a,onClick:function(t){null==t||t.stopPropagation(),e.disabled||(o.value=!o.value,l("toggle-password",o.value))}}},render(){const e=t.h(Be,{name:this.activeIcon,class:"vv-input-text__icon"});return t.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},e)}}),It=t.defineComponent({components:{VvIcon:Be},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:e=>["up","down"].includes(e),default:"up"}},emits:["step-up","step-down"],setup(e,{emit:l}){const o=t.computed((()=>"up"===e.mode));return{isUp:o,onClick:t=>{null==t||t.stopPropagation(),e.disabled||l(o.value?"step-up":"step-down")}}},render(){return t.h("button",{class:["vv-input-text__action vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,type:"button",onClick:this.onClick})}}),zt=t.defineComponent({components:{VvIcon:Be},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup:(e,{emit:t})=>({onClick:function(l){null==l||l.stopPropagation(),e.disabled||t("clear")}}),render(){const e=t.h(Be,{name:this.icon,class:"vv-input-text__icon"});return t.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},e)}});function Ht(e,l){return{name:"VvInputTextActions",components:{VvIcon:Be,VvInputPasswordAction:Ot,VvInputStepAction:It,VvInputClearAction:zt},setup:()=>({isDisabled:t.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 o=null;switch(e){case Nt.SEARCH:{const{onClear:e}=this.$attrs;o=[t.h(zt,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:e})];break}case Nt.PASSWORD:{const{onTogglePassword:e}=this.$attrs;o=[t.h(Ot,{disabled:this.isDisabled,onTogglePassword:e,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case Nt.NUMBER:{const{onStepUp:e,onStepDown:a}=this.$attrs;o=[t.h(It,{mode:"up",disabled:this.isDisabled||void 0!==l.max&&l.modelValue===l.max,label:this.labelStepUp,onStepUp:e,onStepDown:a}),t.h(It,{mode:"down",disabled:this.isDisabled||void 0!==l.min&&l.modelValue===l.min,label:this.labelStepDown,onStepUp:e,onStepDown:a})];break}}return Array.isArray(o)?t.h("div",{class:"vv-input-text__actions-group"},o):o}}}function Mt(e,l,o=0,{getter:a=(e=>e),setter:n=(e=>e)}={}){let r;return"string"==typeof o&&(o=parseInt(o)),t.computed({get:()=>a(null==e?void 0:e.value),set:e=>{r&&clearTimeout(r),r=setTimeout((()=>{l("update:modelValue",n(e))}),o)}})}function jt(e,l){const o=t.computed((()=>(t.unref(e)??"").length)),a=t.computed((()=>void 0!==(null==l?void 0:l.lowerLimit)&&o.value<(null==l?void 0:l.lowerLimit)?o.value-l.lowerLimit:void 0!==(null==l?void 0:l.upperLimit)&&o.value<(null==l?void 0:l.upperLimit)?l.upperLimit-o.value:0)),n=t.computed((()=>{if(!1===(null==l?void 0:l.mode))return"";if("limit"===(null==l?void 0:l.mode)&&(null==l?void 0:l.upperLimit))return`${o.value} / ${l.lowerLimit?`${l.lowerLimit}-`:""}${l.upperLimit}`;if("countdown"===(null==l?void 0:l.mode)){if(0===a.value)return;return a}return o.value}));return{length:o,gap:a,formatted:n}}const Ft=["for"],Ut={class:"vv-input-text__wrapper"},Gt={key:0,class:"vv-input-text__input-before"},Wt=["onClick"],Kt=["id"],qt={key:1,class:"vv-input-text__unit"},Xt={key:5,class:"vv-input-text__input-after"},Jt={key:6,class:"vv-input-text__limit"},Qt=t.defineComponent({name:"VvInputText",props:Tt,emits:["update:modelValue","focus","blur","keyup"],setup(e,{expose:l,emit:a}){const n=e,r=t.useSlots(),u=t.ref(),d=t.ref();l({$inner:d});const{id:s,icon:c,iconPosition:v,label:p,modelValue:m,count:f,valid:b,invalid:g,loading:y}=t.toRefs(n),h=Ee(s),k=t.computed((()=>`${h.value}-hint`)),S=t.computed((()=>n.floating&&N(n.placeholder)?" ":n.placeholder)),V=Mt(m,a,n.debounce,{getter:e=>le.value?le.value.masked(e??""):e,setter:e=>(le.value&&(e=le.value.unmasked(e)),n.type===Nt.NUMBER?Number(e):e)}),{focused:B}=ot(u,a),w=t.computed((()=>B.value&&!n.disabled&&!n.readonly)),x=o.useElementVisibility(u);t.watch(x,(e=>{e&&n.autofocus&&!n.disabled&&!n.readonly&&(B.value=!0)}));const _=t.ref(!1),E=t.computed((()=>n.type===Nt.PASSWORD)),C=()=>{_.value=!_.value},P=t.computed((()=>n.type===Nt.TIME||n.type===Nt.DATETIME_LOCAL||n.type===Nt.DATE||n.type===Nt.WEEK||n.type===Nt.MONTH)),A=t.computed((()=>n.type===Nt.NUMBER)),$=()=>{j.value&&(u.value.stepUp(),V.value=t.unref(u).value)},R=()=>{j.value&&(u.value.stepDown(),V.value=t.unref(u).value)},D=t.computed((()=>n.type===Nt.SEARCH)),T=()=>{V.value=void 0},{hasIcon:O,hasIconBefore:I,hasIconAfter:z}=at(c,v),H=t.computed((()=>{switch(n.type){case Nt.COLOR:return{name:Rt};case Nt.DATE:case Nt.DATETIME_LOCAL:case Nt.WEEK:case Nt.MONTH:return{name:$t};case Nt.TIME:return{name:Lt};default:return""}})),{formatted:M}=jt(V,{mode:n.count,upperLimit:n.maxlength,lowerLimit:n.minlength}),j=t.computed((()=>!n.disabled&&!n.readonly)),F=t.computed((()=>j.value?n.tabindex:-1)),U=t.computed((()=>!N(m))),G=t.computed((()=>!0===g.value||!0!==b.value&&void 0)),{modifiers:W}=t.toRefs(n),K=L("vv-input-text",W,t.computed((()=>({valid:b.value,invalid:g.value,loading:y.value,disabled:n.disabled,readonly:n.readonly,"icon-before":I.value,"icon-after":z.value||!N(H),floating:n.floating&&!N(n.label),dirty:U.value,focus:w.value,"auto-width":n.autoWidth})))),q=t.computed((()=>{const e=E.value&&_.value?Nt.TEXT:!P.value||U.value||B.value?n.type:Nt.TEXT,t={type:e,name:n.name,tabindex:F.value,disabled:n.disabled,readonly:n.readonly,required:n.required,autocomplete:n.autocomplete,"aria-invalid":G.value,"aria-describedby":!Y.value&&Q.value?k.value:void 0,"aria-errormessage":Y.value?k.value:void 0};return e!==Nt.DATE&&e!==Nt.MONTH&&e!==Nt.WEEK&&e!==Nt.TIME&&e!==Nt.DATETIME_LOCAL&&e!==Nt.NUMBER||(t.step=n.step,t.max=void 0!==n.max?String(n.max):void 0,t.min=void 0!==n.min?String(n.min):void 0),e!==Nt.TEXT&&e!==Nt.SEARCH&&e!==Nt.URL&&e!==Nt.TEL&&e!==Nt.EMAIL&&e!==Nt.PASSWORD&&e!==Nt.NUMBER||(t.placeholder=S.value),e!==Nt.TEXT&&e!==Nt.SEARCH&&e!==Nt.URL&&e!==Nt.TEL&&e!==Nt.EMAIL&&e!==Nt.PASSWORD||(t.minlength=n.minlength,t.maxlength=n.maxlength,t.pattern=n.pattern),e===Nt.EMAIL&&(t.multiple=n.multiple),t})),X=t.computed((()=>({valid:n.valid,invalid:n.invalid,modelValue:n.modelValue,togglePassword:C,stepUp:$,stepDown:R,clear:T}))),{HintSlot:J,hasHint:Q,hasInvalid:Y}=He(n,r),Z=Ht(Nt.PASSWORD,n),ee=Ht(Nt.NUMBER,n),te=Ht(Nt.SEARCH,n),le=t.ref();t.watch([()=>n.mask,()=>n.type,()=>n.maskEager,()=>n.maskReversed,()=>n.maskTokens,()=>n.maskTokensReplace],(([e,t,l,o,a,n])=>{e&&t===Nt.TEXT?le.value=new i.Mask({mask:e,eager:l,reversed:o,tokens:a,tokensReplace:n}):le.value=void 0}),{immediate:!0});const oe=()=>{j.value&&(B.value=!0)},ae=t.computed((()=>{if(n.autoWidth)return{width:void 0!==V.value?`${String(V.value).length+1}ch`:void 0}}));return(e,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(K))},[t.unref(p)?(t.openBlock(),t.createElementBlock("label",{key:0,for:t.unref(h),class:"vv-input-text__label"},t.toDisplayString(t.unref(p)),9,Ft)):t.createCommentVNode("",!0),t.createElementVNode("div",Ut,[e.$slots.before?(t.openBlock(),t.createElementBlock("div",Gt,[t.renderSlot(e.$slots,"before",t.normalizeProps(t.guardReactiveProps(t.unref(X))))])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"innerEl",ref:d,class:"vv-input-text__inner",onClick:t.withModifiers(oe,["stop"])},[t.unref(I)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:0,class:"vv-input-text__icon"},t.unref(O)),null,16)):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("input",t.mergeProps({id:t.unref(h),ref_key:"inputEl",ref:u,"onUpdate:modelValue":l[0]||(l[0]=e=>t.isRef(V)?V.value=e:null)},t.unref(q),{style:t.unref(ae),onKeyup:l[1]||(l[1]=e=>a("keyup",e))}),null,16,Kt),[[t.vModelDynamic,t.unref(V)]]),(e.unit||e.$slots.unit)&&t.unref(U)?(t.openBlock(),t.createElementBlock("div",qt,[t.renderSlot(e.$slots,"default",t.normalizeProps(t.guardReactiveProps(t.unref(X))),(()=>[t.createTextVNode(t.toDisplayString(e.unit),1)]))])):t.createCommentVNode("",!0)],8,Wt),t.unref(z)||t.unref(H)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:1,class:"vv-input-text__icon vv-input-text__icon-after"},t.unref(z)?t.unref(O):t.unref(H)),null,16)):t.unref(E)&&!e.hideActions&&t.unref(j)?(t.openBlock(),t.createBlock(t.unref(Z),{key:2,onTogglePassword:C})):t.unref(A)&&!e.hideActions&&t.unref(j)?(t.openBlock(),t.createBlock(t.unref(ee),{key:3,onStepUp:$,onStepDown:R})):t.unref(D)&&!e.hideActions&&t.unref(j)?(t.openBlock(),t.createBlock(t.unref(te),{key:4,onClear:T})):t.createCommentVNode("",!0),e.$slots.after?(t.openBlock(),t.createElementBlock("div",Xt,[t.renderSlot(e.$slots,"after",t.normalizeProps(t.guardReactiveProps(t.unref(X))))])):t.createCommentVNode("",!0),t.unref(f)?(t.openBlock(),t.createElementBlock("span",Jt,[t.renderSlot(e.$slots,"count",t.normalizeProps(t.guardReactiveProps(t.unref(X))),(()=>[t.createTextVNode(t.toDisplayString(t.unref(M)),1)]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(J),{id:t.unref(k),class:"vv-input-text__hint"},null,8,["id"])],2))}}),Yt={...Q,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},label:{type:String,required:!0}},Zt=t.defineComponent({name:"VvProgress",props:Yt,setup(e){const l=e,{value:o,max:a,label:n}=t.toRefs(l),r=t.computed((()=>void 0===l.value)),{modifiers:i}=t.toRefs(l),u=L("vv-progress",i,t.computed((()=>({indeterminate:r.value}))));return(e,l)=>(t.openBlock(),t.createElementBlock("progress",t.mergeProps({role:"progressbar"},{class:t.unref(u),ariaLabel:t.unref(n),max:t.unref(a),value:t.unref(o)}),null,16))}}),el=ve;const tl=["for"],ll=["id","name","disabled","value","tabindex","aria-invalid"],ol=t.defineComponent({name:"VvRadio",props:el,emits:["click","update:modelValue","change","blur"],setup(e,{emit:l}){const o=e,a=t.useSlots(),{id:n,disabled:r,readonly:i,modelValue:u,valid:d,invalid:s}=function(e,l){const{id:o}=t.toRefs(e),{group:a,isInGroup:n,getGroupOrLocalRef:r}=A(h),i=r("modelValue",e,l),u=r("valid",e),d=r("invalid",e),s=t.computed((()=>{var t;return Boolean(e.readonly||(null==(t=null==a?void 0:a.value)?void 0:t.disabled.value))})),c=t.computed((()=>{var t;return Boolean(e.disabled||(null==(t=null==a?void 0:a.value)?void 0:t.disabled.value))}));return{id:o,group:a,isInGroup:n,modelValue:i,valid:u,invalid:d,readonly:s,disabled:c}}(o,l),c=Ee(n),v=t.computed((()=>m.value?-1:o.tabindex)),p=t.ref(),m=t.computed((()=>r.value||i.value)),f=t.computed((()=>!0===s.value||!0!==d.value&&void 0)),b=t.computed((()=>Array.isArray(u.value)?C(o.value,u.value):x(o.value,u.value))),g=t.computed((()=>!["string","number","boolean"].includes(typeof o.value)||o.value)),y=t.computed({get:()=>b.value?g.value:null,set(e){Array.isArray(u.value)?u.value=[o.value]:u.value=o.value,l("change",e)}}),{modifiers:k}=t.toRefs(o),S=L("vv-radio",k,t.computed((()=>({valid:d.value,invalid:s.value,disabled:r.value,readonly:i.value})))),{HintSlot:V}=He(o,a);return(e,l)=>(t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(t.unref(S)),for:t.unref(c)},[t.withDirectives(t.createElementVNode("input",{id:t.unref(c),ref_key:"input",ref:p,"onUpdate:modelValue":l[0]||(l[0]=e=>t.isRef(y)?y.value=e:null),type:"radio",class:"vv-radio__input",name:e.name,disabled:t.unref(m),value:t.unref(g),tabindex:t.unref(v),"aria-invalid":t.unref(f)},null,8,ll),[[t.vModelRadio,t.unref(y)]]),t.renderSlot(e.$slots,"default",{value:t.unref(u)},(()=>[t.createTextVNode(t.toDisplayString(e.label),1)])),t.createVNode(t.unref(V),{class:"vv-radio__hint",params:{value:t.unref(u)}},null,8,["params"])],10,tl))}}),al=pe,nl=["textContent"],rl={class:"vv-radio-group__wrapper"},il=t.defineComponent({name:"VvRadioGroup",props:al,emits:["update:modelValue","change"],setup(e,{emit:l}){const a=e,n=t.useSlots(),r=o.useVModel(a,"modelValue",l),{disabled:i,readonly:u,vertical:d,valid:s,invalid:c,modifiers:v}=t.toRefs(a);z({key:h,modelValue:r,disabled:i,readonly:u,valid:s,invalid:c});const{getOptionLabel:p,getOptionValue:m}=Ge(a),f=L("vv-radio-group",v,t.computed((()=>({disabled:i.value,readonly:u.value,horizontal:!d.value,valid:s.value,invalid:c.value})))),{HintSlot:b}=He(a,n);return(e,l)=>(t.openBlock(),t.createElementBlock("fieldset",{class:t.normalizeClass(t.unref(f))},[e.label?(t.openBlock(),t.createElementBlock("legend",{key:0,textContent:t.toDisplayString(e.label)},null,8,nl)):t.createCommentVNode("",!0),t.createElementVNode("div",rl,[e.options.length>0?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.options,((e,l)=>(t.openBlock(),t.createBlock(ol,t.mergeProps({key:l},((e,t)=>({id:`${a.name}_opt${t}`,name:a.name,label:p(e),value:m(e)}))(e,l)),null,16)))),128)):t.renderSlot(e.$slots,"default",{key:1})]),t.createVNode(t.unref(b),{class:"vv-radio-group__hint"})],2))}}),ul={...ce,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},resizable:Boolean},dl=["for"],sl={class:"vv-textarea__wrapper"},cl={key:0,class:"vv-textarea__input-before"},vl={class:"vv-textarea__inner"},pl=["id"],ml={key:1,class:"vv-textarea__input-after"},fl={key:2,class:"vv-textarea__limit"},bl=t.defineComponent({name:"VvTextarea",props:ul,emits:["update:modelValue","focus","blur","keyup"],setup(e,{emit:l}){const a=e,n=t.useSlots(),r=t.ref(),{id:i,icon:u,iconPosition:d,label:s,modelValue:c,count:v,valid:p,invalid:m,loading:f,modifiers:b}=t.toRefs(a),g=Ee(i),y=t.computed((()=>`${g.value}-hint`)),h=t.computed((()=>a.floating&&N(a.placeholder)?" ":a.placeholder)),k=Mt(c,l,a.debounce),{hasIcon:S,hasIconBefore:V,hasIconAfter:B}=at(u,d),{focused:w}=ot(r,l),x=o.useElementVisibility(r);t.watch(x,(e=>{e&&a.autofocus&&(w.value=!0)}));const{formatted:_}=jt(k,{mode:a.count,upperLimit:a.maxlength,lowerLimit:a.minlength}),E=t.computed((()=>!a.disabled&&!a.readonly)),C=t.computed((()=>E.value?a.tabindex:-1)),P=t.computed((()=>!N(c))),A=t.computed((()=>!0===a.invalid||!0!==a.valid&&void 0)),{HintSlot:$,hasHint:R,hasInvalid:D}=He(a,n),T=L("vv-textarea",b,t.computed((()=>({valid:p.value,invalid:m.value,loading:f.value,disabled:a.disabled,readonly:a.readonly,"icon-before":V.value,"icon-after":B.value,floating:a.floating&&!N(a.label),dirty:P.value,focused:w.value,resizable:a.resizable})))),O=t.computed((()=>({name:a.name,placeholder:h.value,tabindex:C.value,disabled:a.disabled,readonly:a.readonly,required:a.required,autocomplete:a.autocomplete,minlength:a.minlength,maxlength:a.maxlength,cols:a.cols,rows:a.rows,wrap:a.wrap,spellcheck:a.spellcheck,"aria-invalid":A.value,"aria-describedby":!D.value&&R.value?y.value:void 0,"aria-errormessage":D.value?y.value:void 0}))),I=t.computed((()=>({valid:a.valid,invalid:a.invalid,modelValue:a.modelValue,hintLabel:a.hintLabel,maxlength:a.maxlength,minlength:a.minlength,clear:z}))),z=()=>{k.value=void 0};return(e,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(T))},[t.unref(s)?(t.openBlock(),t.createElementBlock("label",{key:0,for:t.unref(g),class:"vv-textarea__label"},t.toDisplayString(t.unref(s)),9,dl)):t.createCommentVNode("",!0),t.createElementVNode("div",sl,[e.$slots.before?(t.openBlock(),t.createElementBlock("div",cl,[t.renderSlot(e.$slots,"before",t.normalizeProps(t.guardReactiveProps(t.unref(I))))])):t.createCommentVNode("",!0),t.createElementVNode("div",vl,[t.unref(V)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:0,class:"vv-textarea__icon"},t.unref(S)),null,16)):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("textarea",t.mergeProps({id:t.unref(g),ref_key:"textarea",ref:r,"onUpdate:modelValue":o[0]||(o[0]=e=>t.isRef(k)?k.value=e:null)},t.unref(O),{onKeyup:o[1]||(o[1]=e=>l("keyup",e))}),null,16,pl),[[t.vModelText,t.unref(k)]]),t.unref(B)?(t.openBlock(),t.createBlock(Be,t.mergeProps({key:1,class:"vv-textarea__icon vv-textarea__icon-after"},t.unref(S)),null,16)):t.createCommentVNode("",!0)]),e.$slots.after?(t.openBlock(),t.createElementBlock("div",ml,[t.renderSlot(e.$slots,"after",t.normalizeProps(t.guardReactiveProps(t.unref(I))))])):t.createCommentVNode("",!0),t.unref(v)?(t.openBlock(),t.createElementBlock("span",fl,[t.renderSlot(e.$slots,"count",t.normalizeProps(t.guardReactiveProps(t.unref(I))),(()=>[t.createTextVNode(t.toDisplayString(t.unref(_)),1)]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref($),{id:t.unref(y),class:"vv-textarea__hint"},null,8,["id"])],2))}});e.VvAccordion=O,e.VvAccordionGroup=H,e.VvBadge=be,e.VvBreadcrumb=ke,e.VvButton=Pe,e.VvButtonGroup=$e,e.VvCard=Oe,e.VvCheckbox=Fe,e.VvCheckboxGroup=qe,e.VvCombobox=Bt,e.VvDialog=Ct,e.VvDropdown=Ye,e.VvIcon=Be,e.VvInputText=Qt,e.VvProgress=Zt,e.VvRadio=ol,e.VvRadioGroup=il,e.VvSelect=pt,e.VvTextarea=bl,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
2
|
import type { Emitter, EventType } from 'mitt';
|
|
3
|
-
import type
|
|
3
|
+
import { type DropdownItemRole } from '../../constants';
|
|
4
4
|
/**
|
|
5
5
|
* Injects dropdown reference and the event bus
|
|
6
6
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Ref } from 'vue';
|
|
2
|
-
import {
|
|
2
|
+
import { DropdownRole, DropdownItemRole } from '../../constants';
|
|
3
3
|
/**
|
|
4
4
|
* Share the dropdown reference and the event bus with all its children.
|
|
5
5
|
* @param {Ref<HTMLElement | null>} reference the dropdown reference
|
|
@@ -22,10 +22,10 @@ export declare function useProvideDropdownTrigger({ reference, id, expanded, ari
|
|
|
22
22
|
* @param {Ref<string>} role the dropdown item role
|
|
23
23
|
*/
|
|
24
24
|
export declare function useProvideDropdownItem({ role, expanded, }: {
|
|
25
|
-
role: Ref
|
|
25
|
+
role: Ref<`${DropdownRole}`>;
|
|
26
26
|
expanded: Ref<boolean>;
|
|
27
27
|
}): {
|
|
28
|
-
itemRole:
|
|
28
|
+
itemRole: globalThis.ComputedRef<DropdownItemRole>;
|
|
29
29
|
};
|
|
30
30
|
/**
|
|
31
31
|
* Share the dropdown item role with all its children.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
import type GroupState from '
|
|
2
|
+
import type GroupState from '../../types/group';
|
|
3
3
|
/**
|
|
4
4
|
* Injects a group state
|
|
5
5
|
*/
|
|
6
6
|
export declare function useInjectedGroupState<GroupStateType extends GroupState>(groupKey: string | symbol): {
|
|
7
7
|
group: Ref<GroupStateType> | undefined;
|
|
8
|
-
isInGroup:
|
|
8
|
+
isInGroup: globalThis.ComputedRef<boolean>;
|
|
9
9
|
getGroupOrLocalRef: <PropsType extends object>(propName: keyof GroupStateType, props: PropsType, emit?: ((event: string, ...args: unknown[]) => void) | undefined) => import("vue").WritableComputedRef<unknown>;
|
|
10
10
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
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
|
-
focused:
|
|
3
|
+
focused: globalThis.Ref<boolean>;
|
|
4
4
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
2
|
export declare function useComponentIcon(icon: Ref<string | object | undefined> | undefined, iconPosition: Ref<string>): {
|
|
3
|
-
hasIcon:
|
|
4
|
-
hasIconLeft:
|
|
5
|
-
hasIconRight:
|
|
6
|
-
hasIconTop:
|
|
7
|
-
hasIconBottom:
|
|
8
|
-
hasIconBefore:
|
|
9
|
-
hasIconAfter:
|
|
3
|
+
hasIcon: globalThis.ComputedRef<object | undefined>;
|
|
4
|
+
hasIconLeft: globalThis.ComputedRef<boolean>;
|
|
5
|
+
hasIconRight: globalThis.ComputedRef<boolean>;
|
|
6
|
+
hasIconTop: globalThis.ComputedRef<boolean>;
|
|
7
|
+
hasIconBottom: globalThis.ComputedRef<boolean>;
|
|
8
|
+
hasIconBefore: globalThis.ComputedRef<boolean>;
|
|
9
|
+
hasIconAfter: globalThis.ComputedRef<boolean>;
|
|
10
10
|
};
|
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
export declare function useDebouncedInput(modelValue: Ref | undefined, emit: (event: string, value:
|
|
2
|
+
export declare function useDebouncedInput(modelValue: Ref | undefined, emit: (event: string, value: string | number) => void, ms?: string | number, { getter, setter, }?: {
|
|
3
|
+
getter?: (value: string | number) => string | number;
|
|
4
|
+
setter?: (value: string | number) => string | number;
|
|
5
|
+
}): Ref;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function useModifiers(prefix: string, modifiers?: Ref<string | string[] | unknown | unknown[] | undefined>, others?: Ref<Record<string, boolean>>): globalThis.ComputedRef<Record<string, boolean>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Option } from '
|
|
1
|
+
import type { Option } from '../types/generic';
|
|
2
2
|
export declare function useOptions(props: any): {
|
|
3
|
-
options:
|
|
3
|
+
options: globalThis.Ref<any>;
|
|
4
4
|
getOptionLabel: (option: string | Option) => any;
|
|
5
5
|
getOptionValue: (option: string | Option) => any;
|
|
6
6
|
getOptionDisabled: (option: string | Option) => any;
|
|
@@ -4,7 +4,7 @@ export declare function useTextCount(text: Ref<string | undefined | null> | stri
|
|
|
4
4
|
upperLimit?: number;
|
|
5
5
|
lowerLimit?: number;
|
|
6
6
|
}): {
|
|
7
|
-
length:
|
|
8
|
-
gap:
|
|
9
|
-
formatted:
|
|
7
|
+
length: globalThis.ComputedRef<number>;
|
|
8
|
+
gap: globalThis.ComputedRef<number>;
|
|
9
|
+
formatted: globalThis.ComputedRef<string | number | globalThis.ComputedRef<number> | undefined>;
|
|
10
10
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
export declare const useUniqueId: (id?: Ref<string | number | undefined>) =>
|
|
2
|
+
export declare const useUniqueId: (id?: Ref<string | number | undefined>) => globalThis.ComputedRef<string>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { VolverInterface } from '
|
|
1
|
+
import type { VolverInterface } from '../Volver';
|
|
2
2
|
export declare function useVolver(): VolverInterface | undefined;
|
package/dist/constants.d.ts
CHANGED
|
@@ -19,6 +19,36 @@ export declare enum Position {
|
|
|
19
19
|
before = "before",
|
|
20
20
|
after = "after"
|
|
21
21
|
}
|
|
22
|
+
export declare enum ButtonType {
|
|
23
|
+
button = "button",
|
|
24
|
+
submit = "submit",
|
|
25
|
+
reset = "reset"
|
|
26
|
+
}
|
|
27
|
+
export declare enum ActionTag {
|
|
28
|
+
nuxtLink = "nuxt-link",
|
|
29
|
+
routerLink = "router-link",
|
|
30
|
+
a = "a",
|
|
31
|
+
button = "button"
|
|
32
|
+
}
|
|
33
|
+
export declare enum ActionRoles {
|
|
34
|
+
button = "button",
|
|
35
|
+
link = "link",
|
|
36
|
+
menuitem = "menuitem"
|
|
37
|
+
}
|
|
38
|
+
export declare enum DropdownRole {
|
|
39
|
+
listbox = "listbox",
|
|
40
|
+
menu = "menu"
|
|
41
|
+
}
|
|
42
|
+
export declare enum DropdownItemRole {
|
|
43
|
+
option = "option",
|
|
44
|
+
presentation = "presentation"
|
|
45
|
+
}
|
|
46
|
+
export declare enum AnchorTarget {
|
|
47
|
+
_blank = "_blank",
|
|
48
|
+
_self = "_self",
|
|
49
|
+
_parent = "_parent",
|
|
50
|
+
_top = "_top"
|
|
51
|
+
}
|
|
22
52
|
export declare const INJECTION_KEY_VOLVER: unique symbol;
|
|
23
53
|
export declare const INJECTION_KEY_BUTTON_GROUP: unique symbol;
|
|
24
54
|
export declare const INJECTION_KEY_RADIO_GROUP: unique symbol;
|