@volverjs/ui-vue 0.0.12 → 0.0.13-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/components/VvAccordion/VvAccordion.es.js +1 -1
  2. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +7 -2
  3. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +1 -1
  4. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +5 -2
  5. package/dist/components/VvAction/VvAction.es.js +1 -1
  6. package/dist/components/VvAction/VvAction.umd.js +1 -1
  7. package/dist/components/VvAction/VvAction.vue.d.ts +3 -2
  8. package/dist/components/VvAlert/VvAlert.es.js +1 -1
  9. package/dist/components/VvAlert/VvAlert.vue.d.ts +3 -2
  10. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +1 -1
  11. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +3 -3
  12. package/dist/components/VvAvatar/VvAvatar.vue.d.ts +2 -2
  13. package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +2 -2
  14. package/dist/components/VvBadge/VvBadge.vue.d.ts +2 -2
  15. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +1 -1
  16. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  17. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +2 -2
  18. package/dist/components/VvButton/VvButton.es.js +1 -1
  19. package/dist/components/VvButton/VvButton.umd.js +1 -1
  20. package/dist/components/VvButton/VvButton.vue.d.ts +3 -2
  21. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +1 -1
  22. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +2 -2
  23. package/dist/components/VvCard/VvCard.vue.d.ts +2 -2
  24. package/dist/components/VvCheckbox/VvCheckbox.es.js +1 -1
  25. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +2 -2
  26. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +1 -1
  27. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +2 -2
  28. package/dist/components/VvCombobox/VvCombobox.es.js +1 -1
  29. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  30. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +9 -7
  31. package/dist/components/VvDialog/VvDialog.vue.d.ts +4 -2
  32. package/dist/components/VvDropdown/VvDropdown.es.js +1 -1
  33. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +14 -2
  34. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +2 -2
  35. package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +2 -2
  36. package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +2 -2
  37. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +2 -2
  38. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +1 -1
  39. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  40. package/dist/components/VvDropdownItem/VvDropdownItem.es.js +1 -1
  41. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +1 -1
  42. package/dist/components/VvIcon/VvIcon.es.js +1 -1
  43. package/dist/components/VvIcon/VvIcon.vue.d.ts +2 -2
  44. package/dist/components/VvInputFile/VvInputFile.es.js +1 -1
  45. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
  46. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +34 -4
  47. package/dist/components/VvInputFile/index.d.ts +7 -0
  48. package/dist/components/VvInputText/VvInputText.es.js +2 -2
  49. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  50. package/dist/components/VvInputText/VvInputText.vue.d.ts +8 -3
  51. package/dist/components/VvNav/VvNav.es.js +1 -1
  52. package/dist/components/VvNav/VvNav.umd.js +1 -1
  53. package/dist/components/VvNav/VvNav.vue.d.ts +2 -2
  54. package/dist/components/VvNav/VvNavItem.vue.d.ts +2 -2
  55. package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
  56. package/dist/components/VvNavItem/VvNavItem.es.js +1 -1
  57. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  58. package/dist/components/VvProgress/VvProgress.vue.d.ts +2 -2
  59. package/dist/components/VvRadio/VvRadio.es.js +1 -1
  60. package/dist/components/VvRadio/VvRadio.vue.d.ts +2 -2
  61. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +1 -1
  62. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +2 -2
  63. package/dist/components/VvSelect/VvSelect.es.js +1 -1
  64. package/dist/components/VvSelect/VvSelect.vue.d.ts +9 -7
  65. package/dist/components/VvTab/VvTab.es.js +1 -1
  66. package/dist/components/VvTab/VvTab.umd.js +1 -1
  67. package/dist/components/VvTab/VvTab.vue.d.ts +2 -2
  68. package/dist/components/VvTextarea/VvTextarea.es.js +1 -1
  69. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +3 -3
  70. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +2 -2
  71. package/dist/components/index.es.js +5 -5
  72. package/dist/components/index.umd.js +1 -1
  73. package/dist/icons.es.js +1 -1
  74. package/dist/icons.umd.js +1 -1
  75. package/dist/index.es.js +1 -1
  76. package/dist/props/index.d.ts +7 -0
  77. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +2 -2
  78. package/dist/stories/Avatar/Avatar.settings.d.ts +1 -1
  79. package/package.json +35 -28
@@ -1,6 +1,8 @@
1
1
  import type { Option } from '../../types/generic';
2
- declare const __VLS_export: <T extends string | Option>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
- props: __VLS_PrettifyLocal<import("vue").ExtractPublicPropTypes<{
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
4
+ declare const __VLS_export: <T extends string | Option>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
5
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<import("vue").ExtractPublicPropTypes<{
4
6
  options: {
5
7
  type: globalThis.PropType<T[]>;
6
8
  default: () => never[];
@@ -124,7 +126,7 @@ declare const __VLS_export: <T extends string | Option>(__VLS_props: NonNullable
124
126
  "onUpdate:modelValue"?: ((args_0: any) => any) | undefined;
125
127
  onBlur?: ((args_0: import("@vueuse/core").MaybeElement) => any) | undefined;
126
128
  onFocus?: ((args_0: import("@vueuse/core").MaybeElement) => any) | undefined;
127
- }> & import("vue").PublicProps & (typeof globalThis extends {
129
+ }> & (typeof globalThis extends {
128
130
  __VLS_PROPS_FALLBACK: infer P;
129
131
  } ? P : {});
130
132
  expose: (exposed: {}) => void;
@@ -174,8 +176,8 @@ declare const __VLS_export: <T extends string | Option>(__VLS_props: NonNullable
174
176
  }>) => import("vue").VNode & {
175
177
  __ctx?: Awaited<typeof __VLS_setup>;
176
178
  };
177
- declare const _default: typeof __VLS_export;
178
- export default _default;
179
- type __VLS_PrettifyLocal<T> = {
179
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
180
+ [K in keyof T]: T[K];
181
+ } : {
180
182
  [K in keyof T as K]: T[K];
181
- } & {};
183
+ }) & {};
@@ -1 +1 @@
1
- import{inject as e,defineComponent as t,getCurrentInstance as a,ref as r,watch as o,computed as s,resolveComponent as n,createBlock as l,openBlock as i,resolveDynamicComponent as u,unref as d,mergeProps as v,withCtx as c,renderSlot as f,createTextVNode as m,toDisplayString as p,createElementBlock as b,createVNode as y,toRefs as g,normalizeClass as k,createElementVNode as x,withModifiers as _,Fragment as S,renderList as $,toHandlers as h,normalizeProps as A,guardReactiveProps as L,createCommentVNode as M}from"vue";var V=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(V||{}),w=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(w||{}),B=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(B||{}),C=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(C||{}),N=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(N||{});const P=Symbol.for("volver"),T=Symbol.for("dropdownTrigger"),j=Symbol.for("dropdownAction"),I={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},O={disabled:{type:Boolean,default:!1}},D={active:{type:Boolean,default:!1}},E={current:{type:Boolean,default:!1}},q={pressed:{type:Boolean,default:!1}},z={label:{type:[String,Number],default:void 0}},F={modifiers:{type:[String,Array],default:void 0}};B.before,w.bottom;const G={...O,...z,...q,...D,...E,...I,type:{type:String,default:C.button,validator:e=>Object.values(C).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:N.button}},H={items:{type:Array,default:()=>[]}};V.local;const J={...F,...H};const K=/* @__PURE__ */t({name:"VvAction",props:G,emits:["click","mouseover","mouseleave"],setup(t,{expose:b,emit:y}){const g=t,k=y,x=a(),_=e(P,void 0),S=r(null);b({$el:S});const{reference:$,bus:h,aria:A,expanded:L}=e(T,{});o(()=>S.value,e=>{$&&($.value=e)});const M=s(()=>g.pressed||L?.value),{role:V}=e(j,{}),w=s(()=>{switch(!0){case g.disabled:return N.button;case void 0!==g.to:return _?.nuxt?n(N.nuxtLink):N.routerLink;case void 0!==g.href:return N.a;default:return g.defaultTag}}),B=s(()=>{const e={...A?.value,ariaPressed:!!M.value||void 0,ariaLabel:g.ariaLabel,role:V?.value};switch(w.value){case N.a:return{...e,href:g.href,target:g.target,rel:g.rel};case N.routerLink:case N.nuxtLink:return{...e,to:g.to,target:g.target};case N.button:return{...e,type:g.type,disabled:g.disabled};default:return e}});function C(e){g.disabled?e.preventDefault():x?.vnode.props?.onClick?k("click",e):h?.emit("click",e)}function I(e){x?.vnode.props?.onMouseover?k("mouseover",e):h?.emit("mouseover",e)}function O(e){x?.vnode.props?.onMouseleave?k("mouseleave",e):h?.emit("mouseleave",e)}return(e,t)=>(i(),l(u(d(w)),v(d(B),{ref_key:"element",ref:S,class:{active:e.active,pressed:d(M),disabled:e.disabled,current:e.current},onClickPassive:C,onMouseoverPassive:I,onMouseleavePassive:O}),{default:c(()=>[f(e.$slots,"default",{},()=>[m(p(e.label),1)])]),_:3},16,["class"]))}}),Q={class:"vv-nav__item",role:"presentation"},R=/* @__PURE__ */t({name:"VvNavItem",inheritAttrs:!1,setup:e=>(e,t)=>(i(),b("li",Q,[f(e.$slots,"before"),y(K,v(e.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:c(()=>[f(e.$slots,"default")]),_:3},16),f(e.$slots,"after")]))});function U(e,t,a){return s(()=>{const a={[e]:!0},r="string"==typeof t?.value?t.value.split(" "):t?.value;return r&&Array.isArray(r)&&r.forEach(t=>{t&&(a[`${e}--${t}`]=!0)}),a})}const W=/* @__PURE__ */t({name:"VvNav",props:J,emits:["click"],setup(e,{emit:t}){const a=e,r=t,{modifiers:o}=g(a);function s(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),o=a.items?.[e];if(!o||o?.disabled)return;r("click",o)}}const n=U("vv-nav",o);return(e,t)=>(i(),b("nav",{class:k(d(n))},[x("ul",{class:"vv-nav__menu",role:"menu",onClick:_(s,["stop"])},[f(e.$slots,"default",{},()=>[(i(!0),b(S,null,$(e.items,({on:t={},data:a,...r},o)=>(i(),l(R,v({key:o,"data-index":o},{ref_for:!0},r,h(t)),{default:c(()=>[f(e.$slots,"item",v({ref_for:!0},{item:r,data:a,index:o}))]),_:2},1040,["data-index"]))),128))])])],2))}}),X=/* @__PURE__ */t({name:"VvTab",props:{...F,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,o=t,{modifiers:n,items:l}=g(a),u=s(()=>l.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),m=r(),p=s({get:()=>a.modelValue||m.value||u.value?.[0],set:e=>{m.value=e,o("update:modelValue",e)}}),x=s(()=>["tabs",...Array.isArray(a.navModifiers)?a.navModifiers:a.navModifiers?.split(" ")??[]]);function _(e){e.tab&&(p.value=e.tab)}const h=s(()=>a.items.map(e=>({current:e.tab===p.value,...e}))),V=U("vv-tab",n);return(e,t)=>(i(),b("div",{class:k(d(V))},[y(W,v({items:d(h),modifiers:d(x)},{onClick:_}),{item:c(({item:t,data:a,index:r})=>[f(e.$slots,"nav-item",A(L({item:t,data:a,index:r})))]),_:3},16),(i(!0),b(S,null,$(d(l),(t,a)=>(i(),b(S,{key:a},[t.tab?(i(),b("article",{key:0,class:k([{target:d(p)===t.tab},"vv-tab__panel"])},[f(e.$slots,`panel::${t.tab}`)],2)):M("v-if",!0)],64))),128))],2))}});export{X as default};
1
+ import{inject as e,defineComponent as t,getCurrentInstance as a,ref as r,watch as o,computed as s,resolveComponent as n,createBlock as l,openBlock as i,resolveDynamicComponent as u,unref as d,mergeProps as v,withCtx as c,renderSlot as f,createTextVNode as m,toDisplayString as p,createElementBlock as b,createVNode as y,toRefs as g,normalizeClass as k,createElementVNode as x,withModifiers as _,Fragment as S,renderList as $,toHandlers as h,normalizeProps as A,guardReactiveProps as L,createCommentVNode as M}from"vue";var V=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(V||{}),w=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(w||{}),B=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(B||{}),C=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(C||{}),N=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(N||{});const P=/* @__PURE__ */Symbol.for("volver"),T=/* @__PURE__ */Symbol.for("dropdownTrigger"),j=/* @__PURE__ */Symbol.for("dropdownAction"),E={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},I={disabled:{type:Boolean,default:!1}},O={active:{type:Boolean,default:!1}},D={current:{type:Boolean,default:!1}},q={pressed:{type:Boolean,default:!1}},z={label:{type:[String,Number],default:void 0}},F={modifiers:{type:[String,Array],default:void 0}};B.before,w.bottom;const G={...I,...z,...q,...O,...D,...E,type:{type:String,default:C.button,validator:e=>Object.values(C).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:N.button}},H={items:{type:Array,default:()=>[]}};V.local;const J={...F,...H};const K=/* @__PURE__ */t({name:"VvAction",props:G,emits:["click","mouseover","mouseleave"],setup(t,{expose:b,emit:y}){const g=t,k=y,x=a(),_=e(P,void 0),S=r(null);b({$el:S});const{reference:$,bus:h,aria:A,expanded:L}=e(T,{});o(()=>S.value,e=>{$&&($.value=e)});const M=s(()=>g.pressed||L?.value),{role:V}=e(j,{}),w=s(()=>{switch(!0){case g.disabled:return N.button;case void 0!==g.to:return _?.nuxt?n(N.nuxtLink):N.routerLink;case void 0!==g.href:return N.a;default:return g.defaultTag}}),B=s(()=>{const e={...A?.value,ariaPressed:!!M.value||void 0,ariaLabel:g.ariaLabel,role:V?.value};switch(w.value){case N.a:return{...e,href:g.href,target:g.target,rel:g.rel};case N.routerLink:case N.nuxtLink:return{...e,to:g.to,target:g.target};case N.button:return{...e,type:g.type,disabled:g.disabled};default:return e}});function C(e){g.disabled?e.preventDefault():x?.vnode.props?.onClick?k("click",e):h?.emit("click",e)}function E(e){x?.vnode.props?.onMouseover?k("mouseover",e):h?.emit("mouseover",e)}function I(e){x?.vnode.props?.onMouseleave?k("mouseleave",e):h?.emit("mouseleave",e)}return(e,t)=>(i(),l(u(d(w)),v(d(B),{ref_key:"rootEl",ref:S,class:{active:e.active,pressed:d(M),disabled:e.disabled,current:e.current},onClickPassive:C,onMouseoverPassive:E,onMouseleavePassive:I}),{default:c(()=>[f(e.$slots,"default",{},()=>[m(p(e.label),1)])]),_:3},16,["class"]))}}),Q={class:"vv-nav__item",role:"presentation"},R=/* @__PURE__ */t({name:"VvNavItem",inheritAttrs:!1,setup:e=>(e,t)=>(i(),b("li",Q,[f(e.$slots,"before"),y(K,v(e.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:c(()=>[f(e.$slots,"default")]),_:3},16),f(e.$slots,"after")]))});function U(e,t,a){return s(()=>{const a={[e]:!0},r="string"==typeof t?.value?t.value.split(" "):t?.value;return r&&Array.isArray(r)&&r.forEach(t=>{t&&(a[`${e}--${t}`]=!0)}),a})}const W=/* @__PURE__ */t({name:"VvNav",props:J,emits:["click"],setup(e,{emit:t}){const a=e,r=t,{modifiers:o}=g(a);function s(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),o=a.items?.[e];if(!o||o?.disabled)return;r("click",o)}}const n=U("vv-nav",o);return(e,t)=>(i(),b("nav",{class:k(d(n))},[x("ul",{class:"vv-nav__menu",role:"menu",onClick:_(s,["stop"])},[f(e.$slots,"default",{},()=>[(i(!0),b(S,null,$(e.items,({on:t={},data:a,...r},o)=>(i(),l(R,v({key:o,"data-index":o},{ref_for:!0},r,h(t)),{default:c(()=>[f(e.$slots,"item",v({ref_for:!0},{item:r,data:a,index:o}))]),_:2},1040,["data-index"]))),128))])])],2))}}),X=/* @__PURE__ */t({name:"VvTab",props:{...F,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,o=t,{modifiers:n,items:l}=g(a),u=s(()=>l.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),m=r(),p=s({get:()=>a.modelValue||m.value||u.value?.[0],set:e=>{m.value=e,o("update:modelValue",e)}}),x=s(()=>["tabs",...Array.isArray(a.navModifiers)?a.navModifiers:a.navModifiers?.split(" ")??[]]);function _(e){e.tab&&(p.value=e.tab)}const h=s(()=>a.items.map(e=>({current:e.tab===p.value,...e}))),V=U("vv-tab",n);return(e,t)=>(i(),b("div",{class:k(d(V))},[y(W,v({items:d(h),modifiers:d(x)},{onClick:_}),{item:c(({item:t,data:a,index:r})=>[f(e.$slots,"nav-item",A(L({item:t,data:a,index:r})))]),_:3},16),(i(!0),b(S,null,$(d(l),(t,a)=>(i(),b(S,{key:a},[t.tab?(i(),b("article",{key:0,class:k([{target:d(p)===t.tab},"vv-tab__panel"])},[f(e.$slots,`panel::${t.tab}`)],2)):M("v-if",!0)],64))),128))],2))}});export{X as default};
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define(["vue"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTab=t(e.vue)}(this,function(e){"use strict";var t=(e=>(e.local="local",e.session="session",e))(t||{}),o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),r=(e=>(e.before="before",e.after="after",e))(r||{}),n=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(n||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{});const l=Symbol.for("volver"),s=Symbol.for("dropdownTrigger"),i=Symbol.for("dropdownAction"),u={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},d={disabled:{type:Boolean,default:!1}},c={active:{type:Boolean,default:!1}},m={current:{type:Boolean,default:!1}},f={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}},v={modifiers:{type:[String,Array],default:void 0}};r.before,o.bottom;const b={...d,...p,...f,...c,...m,...u,type:{type:String,default:n.button,validator:e=>Object.values(n).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},y={items:{type:Array,default:()=>[]}};t.local;const g={...v,...y},k=b;const S=e.defineComponent({name:"VvAction",props:k,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const n=t,u=r,d=e.getCurrentInstance(),c=e.inject(l,void 0),m=e.ref(null);o({$el:m});const{reference:f,bus:p,aria:v,expanded:b}=e.inject(s,{});e.watch(()=>m.value,e=>{f&&(f.value=e)});const y=e.computed(()=>n.pressed||b?.value),{role:g}=e.inject(i,{}),k=e.computed(()=>{switch(!0){case n.disabled:return a.button;case void 0!==n.to:return c?.nuxt?e.resolveComponent(a.nuxtLink):a.routerLink;case void 0!==n.href:return a.a;default:return n.defaultTag}}),S=e.computed(()=>{const e={...v?.value,ariaPressed:!!y.value||void 0,ariaLabel:n.ariaLabel,role:g?.value};switch(k.value){case a.a:return{...e,href:n.href,target:n.target,rel:n.rel};case a.routerLink:case a.nuxtLink:return{...e,to:n.to,target:n.target};case a.button:return{...e,type:n.type,disabled:n.disabled};default:return e}});function B(e){n.disabled?e.preventDefault():d?.vnode.props?.onClick?u("click",e):p?.emit("click",e)}function x(e){d?.vnode.props?.onMouseover?u("mouseover",e):p?.emit("mouseover",e)}function h(e){d?.vnode.props?.onMouseleave?u("mouseleave",e):p?.emit("mouseleave",e)}return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(k)),e.mergeProps(e.unref(S),{ref_key:"element",ref:m,class:{active:t.active,pressed:e.unref(y),disabled:t.disabled,current:t.current},onClickPassive:B,onMouseoverPassive:x,onMouseleavePassive:h}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])]),_:3},16,["class"]))}}),B={class:"vv-nav__item",role:"presentation"},x=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",B,[e.renderSlot(t.$slots,"before"),e.createVNode(S,e.mergeProps(t.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},16),e.renderSlot(t.$slots,"after")]))});function h(t,o,r){return e.computed(()=>{const e={[t]:!0},r="string"==typeof o?.value?o.value.split(" "):o?.value;return r&&Array.isArray(r)&&r.forEach(o=>{o&&(e[`${t}--${o}`]=!0)}),e})}const C=e.defineComponent({name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const r=t,n=o,{modifiers:a}=e.toRefs(r);function l(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),o=r.items?.[e];if(!o||o?.disabled)return;n("click",o)}}const s=h("vv-nav",a);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(s))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu",onClick:e.withModifiers(l,["stop"])},[e.renderSlot(t.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,({on:o={},data:r,...n},a)=>(e.openBlock(),e.createBlock(x,e.mergeProps({key:a,"data-index":a},{ref_for:!0},n,e.toHandlers(o)),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n,data:r,index:a}))]),_:2},1040,["data-index"]))),128))])])],2))}}),_={...v,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}};return e.defineComponent({name:"VvTab",props:_,emits:["update:modelValue"],setup(t,{emit:o}){const r=t,n=o,{modifiers:a,items:l}=e.toRefs(r),s=e.computed(()=>l.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),i=e.ref(),u=e.computed({get:()=>r.modelValue||i.value||s.value?.[0],set:e=>{i.value=e,n("update:modelValue",e)}}),d=e.computed(()=>["tabs",...Array.isArray(r.navModifiers)?r.navModifiers:r.navModifiers?.split(" ")??[]]);function c(e){e.tab&&(u.value=e.tab)}const m=e.computed(()=>r.items.map(e=>({current:e.tab===u.value,...e}))),f=h("vv-tab",a);return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(f))},[e.createVNode(C,e.mergeProps({items:e.unref(m),modifiers:e.unref(d)},{onClick:c}),{item:e.withCtx(({item:o,data:r,index:n})=>[e.renderSlot(t.$slots,"nav-item",e.normalizeProps(e.guardReactiveProps({item:o,data:r,index:n})))]),_:3},16),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),(o,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r},[o.tab?(e.openBlock(),e.createElementBlock("article",{key:0,class:e.normalizeClass([{target:e.unref(u)===o.tab},"vv-tab__panel"])},[e.renderSlot(t.$slots,`panel::${o.tab}`)],2)):e.createCommentVNode("v-if",!0)],64))),128))],2))}})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define(["vue"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTab=t(e.vue)}(this,function(e){"use strict";var t=(e=>(e.local="local",e.session="session",e))(t||{}),o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),r=(e=>(e.before="before",e.after="after",e))(r||{}),n=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(n||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{});const l=Symbol.for("volver"),s=Symbol.for("dropdownTrigger"),i=Symbol.for("dropdownAction"),u={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},d={disabled:{type:Boolean,default:!1}},c={active:{type:Boolean,default:!1}},f={current:{type:Boolean,default:!1}},m={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}},v={modifiers:{type:[String,Array],default:void 0}};r.before,o.bottom;const b={...d,...p,...m,...c,...f,...u,type:{type:String,default:n.button,validator:e=>Object.values(n).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},y={items:{type:Array,default:()=>[]}};t.local;const g={...v,...y},k=b;const S=e.defineComponent({name:"VvAction",props:k,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const n=t,u=r,d=e.getCurrentInstance(),c=e.inject(l,void 0),f=e.ref(null);o({$el:f});const{reference:m,bus:p,aria:v,expanded:b}=e.inject(s,{});e.watch(()=>f.value,e=>{m&&(m.value=e)});const y=e.computed(()=>n.pressed||b?.value),{role:g}=e.inject(i,{}),k=e.computed(()=>{switch(!0){case n.disabled:return a.button;case void 0!==n.to:return c?.nuxt?e.resolveComponent(a.nuxtLink):a.routerLink;case void 0!==n.href:return a.a;default:return n.defaultTag}}),S=e.computed(()=>{const e={...v?.value,ariaPressed:!!y.value||void 0,ariaLabel:n.ariaLabel,role:g?.value};switch(k.value){case a.a:return{...e,href:n.href,target:n.target,rel:n.rel};case a.routerLink:case a.nuxtLink:return{...e,to:n.to,target:n.target};case a.button:return{...e,type:n.type,disabled:n.disabled};default:return e}});function B(e){n.disabled?e.preventDefault():d?.vnode.props?.onClick?u("click",e):p?.emit("click",e)}function x(e){d?.vnode.props?.onMouseover?u("mouseover",e):p?.emit("mouseover",e)}function h(e){d?.vnode.props?.onMouseleave?u("mouseleave",e):p?.emit("mouseleave",e)}return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(k)),e.mergeProps(e.unref(S),{ref_key:"rootEl",ref:f,class:{active:t.active,pressed:e.unref(y),disabled:t.disabled,current:t.current},onClickPassive:B,onMouseoverPassive:x,onMouseleavePassive:h}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])]),_:3},16,["class"]))}}),B={class:"vv-nav__item",role:"presentation"},x=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",B,[e.renderSlot(t.$slots,"before"),e.createVNode(S,e.mergeProps(t.$attrs,{class:"vv-nav__item-label",role:"menuitem"}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},16),e.renderSlot(t.$slots,"after")]))});function h(t,o,r){return e.computed(()=>{const e={[t]:!0},r="string"==typeof o?.value?o.value.split(" "):o?.value;return r&&Array.isArray(r)&&r.forEach(o=>{o&&(e[`${t}--${o}`]=!0)}),e})}const C=e.defineComponent({name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const r=t,n=o,{modifiers:a}=e.toRefs(r);function l(e){const t=e.target;if(t?.dataset.index){const e=Number.parseInt(t.dataset.index),o=r.items?.[e];if(!o||o?.disabled)return;n("click",o)}}const s=h("vv-nav",a);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(s))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu",onClick:e.withModifiers(l,["stop"])},[e.renderSlot(t.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,({on:o={},data:r,...n},a)=>(e.openBlock(),e.createBlock(x,e.mergeProps({key:a,"data-index":a},{ref_for:!0},n,e.toHandlers(o)),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n,data:r,index:a}))]),_:2},1040,["data-index"]))),128))])])],2))}}),_={...v,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}};return e.defineComponent({name:"VvTab",props:_,emits:["update:modelValue"],setup(t,{emit:o}){const r=t,n=o,{modifiers:a,items:l}=e.toRefs(r),s=e.computed(()=>l.value.reduce((e,t)=>(t.tab&&e.push(t.tab),e),[])),i=e.ref(),u=e.computed({get:()=>r.modelValue||i.value||s.value?.[0],set:e=>{i.value=e,n("update:modelValue",e)}}),d=e.computed(()=>["tabs",...Array.isArray(r.navModifiers)?r.navModifiers:r.navModifiers?.split(" ")??[]]);function c(e){e.tab&&(u.value=e.tab)}const f=e.computed(()=>r.items.map(e=>({current:e.tab===u.value,...e}))),m=h("vv-tab",a);return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(m))},[e.createVNode(C,e.mergeProps({items:e.unref(f),modifiers:e.unref(d)},{onClick:c}),{item:e.withCtx(({item:o,data:r,index:n})=>[e.renderSlot(t.$slots,"nav-item",e.normalizeProps(e.guardReactiveProps({item:o,data:r,index:n})))]),_:3},16),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),(o,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r},[o.tab?(e.openBlock(),e.createElementBlock("article",{key:0,class:e.normalizeClass([{target:e.unref(u)===o.tab},"vv-tab__panel"])},[e.renderSlot(t.$slots,`panel::${o.tab}`)],2)):e.createCommentVNode("v-if",!0)],64))),128))],2))}})});
@@ -1,4 +1,6 @@
1
1
  import type { NavItemTab } from '@/types/nav';
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
2
4
  declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<globalThis.ExtractPropTypes<{
3
5
  navModifiers: {
4
6
  type: PropType<string | string[]>;
@@ -55,8 +57,6 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<global
55
57
  index: number;
56
58
  }) => any;
57
59
  }>;
58
- declare const _default: typeof __VLS_export;
59
- export default _default;
60
60
  type __VLS_WithSlots<T, S> = T & {
61
61
  new (): {
62
62
  $slots: S;
@@ -1,2 +1,2 @@
1
- import{unref as e,computed as t,isRef as l,defineComponent as a,h as o,useId as i,Fragment as n,provide as r,ref as u,toRefs as s,useAttrs as d,onMounted as v,watch as f,createElementBlock as c,openBlock as p,createVNode as m,withCtx as b,renderSlot as g,normalizeProps as h,guardReactiveProps as y,Transition as S,mergeProps as x,toHandlers as w,withDirectives as L,createElementVNode as $,normalizeClass as O,normalizeStyle as k,createCommentVNode as _,vShow as B,nextTick as E,inject as V,createBlock as I,createTextVNode as j,toDisplayString as A,mergeDefaults as N,useSlots as H,vModelText as F,createSlots as C,renderList as z,withModifiers as D}from"vue";import{autoPlacement as P,flip as T,shift as q,size as R,offset as W,arrow as M,useFloating as J,autoUpdate as K}from"@floating-ui/vue";import{useMutationObserver as U,useVModel as G,onClickOutside as Q,useFocusWithin as X,useElementHover as Y,onKeyStroke as Z,useFocus as ee,useStorage as te,useElementVisibility as le}from"@vueuse/core";import ae from"mitt";import{iconLoaded as oe,Icon as ie,addIcon as ne}from"@iconify/vue";const re={prefix:"normal"};var ue=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(ue||{}),se=/* @__PURE__ */(e=>(e.absolute="absolute",e.fixed="fixed",e))(se||{}),de=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(de||{}),ve=/* @__PURE__ */(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(ve||{}),fe=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(fe||{}),ce=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(ce||{}),pe=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(pe||{}),me=/* @__PURE__ */(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(me||{}),be=/* @__PURE__ */(e=>(e.listbox="listbox",e.menu="menu",e))(be||{}),ge=/* @__PURE__ */(e=>(e.option="option",e.presentation="presentation",e))(ge||{});const he=Symbol.for("volver"),ye=Symbol.for("dropdownTrigger"),Se=Symbol.for("dropdownItem"),xe=Symbol.for("dropdownAction"),we={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},Le={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},$e={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},Oe={disabled:{type:Boolean,default:!1}},ke={required:{type:Boolean,default:!1}},_e={selected:{type:Boolean,default:!1}},Be={label:{type:[String,Number],default:void 0}},Ee={readonly:{type:Boolean,default:!1}},Ve={modifiers:{type:[String,Array],default:void 0}},Ie={hintLabel:{type:String,default:""}},je={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},Ae={debounce:{type:[Number,String],default:void 0}},Ne={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:fe.before,validation:e=>Object.values(fe).includes(e)}},He={tabindex:{type:[String,Number],default:0}},Fe={floating:{type:Boolean,default:!1}},Ce={unselectable:{type:Boolean,default:!0}},ze={id:[String,Number]},De={placement:{type:String,default:de.bottom,validator:e=>Object.values(de).includes(e)||Object.values(ve).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(se).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},Pe={...{...ze,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},...He,...Oe,...Ee,...we,...Le,...Ie,...$e,...Ve,...je,...Ae,...Ne,...Fe,...Be,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...ke};ce.button,pe.button;const Te={...Pe,...{storageType:{type:String,default:ue.local,validator:e=>Object.values(ue).includes(e)},storageKey:String},modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},iconRemoveSuggestion:{type:[String,Object],default:"trash"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean};function qe(t){return null==(l=e(t))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function Re(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}const We={...ze,...De,...Ve,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:be.menu,validator:e=>Object.values(be).includes(e)}},Me={focusOnHover:{type:Boolean,default:!1}},Je={...Oe,..._e,...Ce,...Ve,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function Ke(e){return t(()=>String(e?.value||i()))}function Ue(l,a,o){return t(()=>{const t={[l]:!0},i="string"==typeof a?.value?a.value.split(" "):a?.value;return i&&Array.isArray(i)&&i.forEach(e=>{e&&(t[`${l}--${e}`]=!0)}),o&&Object.keys(o.value).forEach(a=>{t[`${l}--${a}`]=e(o.value[a])}),t})}const Ge=["id","tabindex","role","aria-labelledby"],Qe=/* @__PURE__ */a({name:"VvDropdown",inheritAttrs:!1,props:We,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(l,{expose:i,emit:V}){const I=l,j=V,{id:A}=s(I),N=Ke(A),H=d(),F=u("auto"),C=u("auto"),z=u(),D=u(),ee=u(),te=u(),le=t({get:()=>I.reference??z.value,set:e=>{z.value=e}}),oe=u(!1);v(()=>{U(D.value,()=>{oe.value="true"===window.getComputedStyle(D.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const ie=t(()=>{const e=[];if(I.autoPlacement?"boolean"==typeof I.autoPlacement?e.push(P()):e.push(P(I.autoPlacement)):I.flip&&("boolean"==typeof I.flip?e.push(T({fallbackStrategy:"initialPlacement"})):e.push(T(I.flip))),I.shift&&("boolean"==typeof I.shift?e.push(q()):e.push(q(I.shift))),I.size){const t=({availableWidth:e,availableHeight:t})=>{F.value=`${e}px`,C.value=`${t}px`};"boolean"==typeof I.size?e.push(R({apply:t})):e.push(R({...I.size,apply:t}))}return I.offset&&(e.push(W(Number(I.offset))),["string","number"].includes(typeof I.offset)?e.push(W(Number(I.offset))):e.push(W(I.offset))),I.arrow&&e.push(M({element:ee})),e}),{x:ne,y:re,middlewareData:ue,placement:ve,strategy:fe}=J(le,D,{whileElementsMounted:(...e)=>K(...e,{animationFrame:I.strategy===se.fixed}),placement:t(()=>I.placement),strategy:t(()=>I.strategy),middleware:ie}),ce=t(()=>{if(oe.value)return;const e=I.triggerWidth&&le.value?`${le.value?.offsetWidth}px`:void 0;return{position:fe.value,top:`${re.value??0}px`,left:`${ne.value??0}px`,maxWidth:e?void 0:F.value,maxHeight:C.value,width:e}}),pe=t(()=>ve.value.split("-")[0]),me=t(()=>{if(oe.value)return;const e={[de.top]:de.bottom,[de.right]:de.left,[de.bottom]:de.top,[de.left]:de.right}[pe.value];return{left:void 0!==ue.value.arrow?.x?`${ue.value.arrow?.x}px`:void 0,top:void 0!==ue.value.arrow?.y?`${ue.value.arrow?.y}px`:void 0,[e]:-(ee.value?.offsetWidth??0)/2+"px"}}),he=G(I,"modelValue",j),xe=u(!1),we=t({get:()=>he.value??xe.value,set:e=>{void 0!==he.value?he.value=e:xe.value=e}});function Le(){we.value=!0}function $e(){we.value=!1}function Oe(){we.value=!we.value}function ke(e){le.value=e}Q(D,()=>{!I.keepOpen&&we.value&&(we.value=!1)},{ignore:[le]});const _e=t(()=>le.value?.getAttribute?.("id")??void 0),Be=t(()=>({"aria-controls":N.value,"aria-haspopup":!0,"aria-expanded":we.value})),{component:Ee,bus:Ve}=function({reference:e,id:t,expanded:l,aria:i}){const u=ae(),s=a({name:"VvDropdownTriggerProvider",setup(){r(ye,{reference:e,id:t,expanded:l,aria:i,bus:u})},render(){return o(n,{},this.$slots.default?.())}});return{bus:u,component:s}}({reference:le,id:N,expanded:we,aria:Be});Ve.on("click",Oe);const{role:Ie,modifiers:je}=s(I),Ae=Ue("vv-dropdown",je,t(()=>({arrow:I.arrow}))),{focused:Ne}=X(D);function He(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function Fe(){E(()=>{const e=He(D.value);e.length>0&&e[0].focus({preventScroll:!0})})}function Ce(){E(()=>{if(Ne.value){const e=He(D.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function ze(){E(()=>{if(Ne.value){const e=He(D.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}f(we,e=>{e&&I.autofocusFirst&&Fe()}),i({toggle:Oe,show:Le,hide:$e,init:ke,focusFirst:Fe,focusFirstListElement:function(){E(()=>{const e=He(te.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:Ce,focusPrev:ze,customPosition:oe});const De=Y(D),{itemRole:Pe}=function({role:e,...l}){const a=t(()=>e.value===be.listbox?ge.option:ge.presentation);return r(Se,{role:a,...l}),{itemRole:a}}({role:Ie,expanded:we,focused:Ne,hovered:De});Z("Escape",e=>{we.value&&(e.preventDefault(),$e())}),Z("ArrowDown",e=>{we.value&&Ne.value&&(e.preventDefault(),Ce())}),Z("ArrowUp",e=>{we.value&&Ne.value&&(e.preventDefault(),ze())}),Z([" ","Enter"],e=>{const t=e.target;we.value&&Ne.value&&t&&t?.click()});const Te={"before-enter":()=>{j(we.value?"beforeExpand":"beforeCollapse"),j("beforeEnter")},"after-leave":()=>{j(we.value?"afterExpand":"afterCollapse"),j("afterLeave")},enter:()=>{j("enter")},"after-enter":()=>{j("afterEnter")},"enter-cancelled":()=>{j("enterCancelled")},"before-leave":()=>{j("beforeLeave")},leave:()=>{j("leave")},"leave-cancelled":()=>{j("leaveCancelled")}};return(t,l)=>(p(),c(n,null,[m(e(Ee),null,{default:b(()=>[g(t.$slots,"default",h(y({init:ke,show:Le,hide:$e,toggle:Oe,expanded:e(we),aria:e(Be)})))]),_:3}),m(S,x({name:t.transitionName},w(Te),{persisted:""}),{default:b(()=>[L($("div",{ref_key:"floatingEl",ref:D,style:k(e(ce)),class:O(e(Ae))},[I.arrow?(p(),c("div",{key:0,ref_key:"arrowEl",ref:ee,style:k(e(me)),class:"vv-dropdown__arrow"},null,4)):_("v-if",!0),g(t.$slots,"before",h(y({expanded:e(we)}))),$("div",x(e(H),{id:e(N),ref_key:"listEl",ref:te,tabindex:e(we)?void 0:-1,role:e(Ie),"aria-labelledby":e(_e),class:"vv-dropdown__list"}),[g(t.$slots,"items",h(y({role:e(Pe)})))],16,Ge),g(t.$slots,"after",h(y({expanded:e(we)})))],6),[[B,e(we)]])]),_:3},16,["name"])],64))}});const Xe=/* @__PURE__ */a({name:"VvDropdownItem",props:Me,setup(t){const l=t,{role:a,expanded:o}=V(Se,{}),i=u(null);!function({expanded:e}){r(xe,{role:u(me.menuitem),expanded:e})}({expanded:o});const n=Y(i),{focused:s}=ee(i),{focused:d}=X(i);return f(n,e=>{e&&l.focusOnHover&&(s.value=!0)}),(t,l)=>(p(),c("div",x({role:e(a)},{ref_key:"element",ref:i,class:["vv-dropdown__item",{"focus-visible":e(s)||e(d)}]}),[g(t.$slots,"default")],16))}}),Ye=["title"],Ze=/* @__PURE__ */a({name:"VvDropdownOption",props:Je,setup(l){const a=l,{modifiers:o}=s(a),i=Ue("vv-dropdown-option",o,t(()=>({disabled:a.disabled,selected:a.selected,unselectable:a.unselectable&&a.selected}))),n=t(()=>a.selected?a.unselectable?a.deselectHintLabel:a.selectedHintLabel:a.disabled?"":a.selectHintLabel);return(t,l)=>(p(),I(Xe,{class:O(e(i)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled,"focus-on-hover":t.focusOnHover},{default:b(()=>[g(t.$slots,"default"),$("span",{class:"vv-dropdown-option__hint",title:e(n)},[g(t.$slots,"hint",h(y({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),()=>[j(A(e(n)),1)])],8,Ye)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}});function et(){return V(he,void 0)}const tt=/* @__PURE__ */a({name:"VvIcon",props:/* @__PURE__ */N({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},re),setup(l){const a=l,o=t(()=>"string"==typeof a.rotate?Number.parseFloat(a.rotate):a.rotate),i=u(!0),n=et(),{modifiers:r}=s(a),d=Ue("vv-icon",r),v=t(()=>a.provider||n?.iconsProvider),f=t(()=>{const e=a.name??"",t=`@${v.value}:${a.prefix}:${e}`;if(oe(t))return t;const l=n?.iconsCollections.find(t=>{const l=`@${v.value}:${t.prefix}:${e}`;return oe(l)});return l?`@${v.value}:${l.prefix}:${e}`:e});function c(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),l=t?.innerHTML.trim()||"";t&&l&&ne(`@${v.value}:${a.prefix}:${a.name}`,{body:l,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return n&&a.src&&!oe(`@${v.value}:${a.prefix}:${a.name}`)&&(i.value=!1,n.fetchIcon(a.src).then(e=>{e&&(c(e),i.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),a.svg&&c(a.svg),(t,a)=>e(i)?(p(),I(e(ie),x({key:0,class:e(d)},{inline:l.inline,width:l.width,height:l.height,horizontalFlip:l.horizontalFlip,verticalFlip:l.verticalFlip,flip:l.flip,rotate:e(o),color:l.color,icon:e(f)},{onLoad:l.onLoad}),null,16,["class","onLoad"])):_("v-if",!0)}});function lt(e,l){const a=t(()=>"string"==typeof e?.value?{name:e?.value}:e?.value),o=t(()=>l?.value===fe.before?a.value:void 0),i=t(()=>l?.value===fe.after?a.value:void 0),n=t(()=>l?.value===de.left?a.value:void 0),r=t(()=>l?.value===de.right?a.value:void 0),u=t(()=>l?.value===de.top?a.value:void 0),s=t(()=>l?.value===de.bottom?a.value:void 0);return{hasIcon:a,hasIconLeft:n,hasIconRight:r,hasIconTop:u,hasIconBottom:s,hasIconBefore:o,hasIconAfter:i}}const at=["for"],ot={key:0,class:"vv-textarea__input-before"},it={class:"vv-textarea__inner"},nt=["id"],rt={key:1,class:"vv-textarea__input-after"},ut={key:2,class:"vv-textarea__limit"},st={class:"flex-1"},dt=["title","onClick"],vt=/* @__PURE__ */a({name:"VvTextarea",props:Te,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(i,{emit:r}){const d=i,S=r,w=H(),k=et(),B=function(e,l,a){const o=et(),i=t(()=>{if(o&&o.defaults.value?.[e])return o.defaults.value[e]});return t(()=>{if(void 0===i.value)return a;const e=i.value,t=l,o=a;return Object.keys(t).reduce((l,a)=>{const i=o[a];if(l[a]=i,a in e){if(Array.isArray(t[a])){const o=t[a];o.length&&o[0]===i&&(l[a]=e[a])}if("function"==typeof t[a]&&(0,t[a])()===i&&(l[a]=e[a]),"object"==typeof t[a]){let o=t[a].default;"function"==typeof o&&(o=o()),"object"==typeof o?JSON.stringify(o)===JSON.stringify(i)&&(l[a]=e[a]):o===i&&(l[a]=e[a])}}return l},{})})}("VvTextarea",Te,d),E=u(),V=u(),N=u(),{id:P,icon:T,iconPosition:q,iconRemoveSuggestion:R,labelRemoveSuggestion:W,label:M,modelValue:J,count:K,valid:U,invalid:G,loading:Q,modifiers:X,debounce:Y,minlength:Z,maxlength:ae,storageType:oe}=s(d),ie=Ke(P),ne=t(()=>`${ie.value}-hint`),re=t(()=>d.floating&&qe(d.placeholder)?" ":d.placeholder),se=function(e,l,a=0,{getter:o=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof a&&(a=Number.parseInt(a)),t({get:()=>o(e?.value),set:e=>{n&&clearTimeout(n),n=setTimeout(()=>{l("update:modelValue",i(e))},a)}})}(J,S,Y?.value),{hasIconBefore:de,hasIconAfter:ve}=lt(T,q),{hasIcon:fe}=lt(R),{focused:ce}=function(t,l){const{focused:a}=ee(t);return f(a,a=>{l(a?"focus":"blur",e(t))}),{focused:a}}(E,S),pe=t(()=>ce.value&&!d.disabled&&!d.readonly);f(pe,e=>{if(e&&B.value.selectOnFocus&&E.value&&E.value.select(),e&&we.value?.size)N.value?.show();else if(ye.value&&we.value){const e=d.maxSuggestions;we.value.size>=e&&!we.value.has(se.value)&&(we.value=new Set([...we.value].slice(we.value.size-e+1))),we.value.add(se.value)}});const me=le(E);f(me,e=>{e&&d.autofocus&&(ce.value=!0)});const{formatted:be}=function(l,a){const o=t(()=>(e(l)??"").length),i=t(()=>void 0!==a?.lowerLimit&&o.value<a?.lowerLimit?o.value-a.lowerLimit:void 0!==a?.upperLimit&&o.value<a?.upperLimit?a.upperLimit-o.value:0),n=t(()=>{if(!1===a?.mode)return"";if("limit"===a?.mode&&a?.upperLimit)return`${o.value} / ${a.lowerLimit?`${a.lowerLimit}-`:""}${a.upperLimit}`;if("countdown"===a?.mode){if(0===i.value)return;return i}return o.value});return{length:o,gap:i,formatted:n}}(se,{mode:K?.value,upperLimit:Number(ae?.value),lowerLimit:Number(Z?.value)}),ge=t(()=>!d.disabled&&!d.readonly),he=t(()=>ge.value?d.tabindex:-1),ye=t(()=>!qe(J)),Se=t(()=>!0===d.invalid||!0!==d.valid&&void 0),xe=t(()=>d.storageKey??(k?.experimentalFeatures.forceInputSuggestions?d.name:void 0)),we=function(t,a=ue.local,o){const i=u();let n;return o&&(i.value=o),v(()=>{t&&f(t,(t,l)=>{const o=e(a)===ue.session?sessionStorage:localStorage;if(l&&l!==t&&o.removeItem(l),t)return n=te(t,n?.value??i.value,o),void(n.value&&(i.value=n.value));n=void 0},{immediate:!0}),l(a)&&f(a,(e,l)=>{if(t?.value){if(e){const l=e===ue.session?sessionStorage:localStorage;n=te(t.value,n?.value??i.value,l)}l&&l!==e&&(l===ue.session?sessionStorage:localStorage).removeItem(t.value)}})}),f(i,e=>{n&&(n.value=e)},{deep:!0,immediate:!0}),i}(xe,oe,
1
+ import{unref as e,computed as t,isRef as l,defineComponent as a,h as o,useId as i,Fragment as n,provide as r,ref as u,toRefs as s,useAttrs as d,onMounted as v,watch as f,createElementBlock as c,openBlock as p,createVNode as m,withCtx as b,renderSlot as g,normalizeProps as h,guardReactiveProps as y,Transition as S,mergeProps as x,toHandlers as w,withDirectives as L,createElementVNode as $,normalizeClass as O,normalizeStyle as k,createCommentVNode as _,vShow as B,nextTick as E,inject as V,createBlock as I,createTextVNode as j,toDisplayString as A,mergeDefaults as N,useSlots as H,vModelText as F,createSlots as C,renderList as z,withModifiers as D}from"vue";import{autoPlacement as P,flip as T,shift as q,size as R,offset as W,arrow as M,useFloating as J,autoUpdate as K}from"@floating-ui/vue";import{useMutationObserver as U,useVModel as G,onClickOutside as Q,useFocusWithin as X,useElementHover as Y,onKeyStroke as Z,useFocus as ee,useStorage as te,useElementVisibility as le}from"@vueuse/core";import ae from"mitt";import{iconLoaded as oe,Icon as ie,addIcon as ne}from"@iconify/vue";const re={prefix:"normal"};var ue=/* @__PURE__ */(e=>(e.local="local",e.session="session",e))(ue||{}),se=/* @__PURE__ */(e=>(e.absolute="absolute",e.fixed="fixed",e))(se||{}),de=/* @__PURE__ */(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(de||{}),ve=/* @__PURE__ */(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(ve||{}),fe=/* @__PURE__ */(e=>(e.before="before",e.after="after",e))(fe||{}),ce=/* @__PURE__ */(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(ce||{}),pe=/* @__PURE__ */(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(pe||{}),me=/* @__PURE__ */(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(me||{}),be=/* @__PURE__ */(e=>(e.listbox="listbox",e.menu="menu",e))(be||{}),ge=/* @__PURE__ */(e=>(e.option="option",e.presentation="presentation",e))(ge||{});const he=/* @__PURE__ */Symbol.for("volver"),ye=/* @__PURE__ */Symbol.for("dropdownTrigger"),Se=/* @__PURE__ */Symbol.for("dropdownItem"),xe=/* @__PURE__ */Symbol.for("dropdownAction"),we={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},Le={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},$e={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},Oe={disabled:{type:Boolean,default:!1}},ke={required:{type:Boolean,default:!1}},_e={selected:{type:Boolean,default:!1}},Be={label:{type:[String,Number],default:void 0}},Ee={readonly:{type:Boolean,default:!1}},Ve={modifiers:{type:[String,Array],default:void 0}},Ie={hintLabel:{type:String,default:""}},je={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},Ae={debounce:{type:[Number,String],default:void 0}},Ne={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:fe.before,validation:e=>Object.values(fe).includes(e)}},He={tabindex:{type:[String,Number],default:0}},Fe={floating:{type:Boolean,default:!1}},Ce={unselectable:{type:Boolean,default:!0}},ze={id:[String,Number]},De={placement:{type:String,default:de.bottom,validator:e=>Object.values(de).includes(e)||Object.values(ve).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(se).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},Pe={...{...ze,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},...He,...Oe,...Ee,...we,...Le,...Ie,...$e,...Ve,...je,...Ae,...Ne,...Fe,...Be,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...ke};ce.button,pe.button;const Te={...Pe,...{storageType:{type:String,default:ue.local,validator:e=>Object.values(ue).includes(e)},storageKey:String},modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},iconRemoveSuggestion:{type:[String,Object],default:"trash"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean};function qe(t){return null==(l=e(t))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function Re(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}const We={...ze,...De,...Ve,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:be.menu,validator:e=>Object.values(be).includes(e)}},Me={focusOnHover:{type:Boolean,default:!1}},Je={...Oe,..._e,...Ce,...Ve,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function Ke(e){return t(()=>String(e?.value||i()))}function Ue(l,a,o){return t(()=>{const t={[l]:!0},i="string"==typeof a?.value?a.value.split(" "):a?.value;return i&&Array.isArray(i)&&i.forEach(e=>{e&&(t[`${l}--${e}`]=!0)}),o&&Object.keys(o.value).forEach(a=>{t[`${l}--${a}`]=e(o.value[a])}),t})}const Ge=["id","tabindex","role","aria-labelledby"],Qe=/* @__PURE__ */a({name:"VvDropdown",inheritAttrs:!1,props:We,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(l,{expose:i,emit:V}){const I=l,j=V,{id:A}=s(I),N=Ke(A),H=d(),F=u("auto"),C=u("auto"),z=u(),D=u(),ee=u(),te=u(),le=t({get:()=>I.reference??z.value,set:e=>{z.value=e}}),oe=u(!1);v(()=>{U(D.value,()=>{oe.value="true"===window.getComputedStyle(D.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const ie=t(()=>{const e=[];if(I.autoPlacement?"boolean"==typeof I.autoPlacement?e.push(P()):e.push(P(I.autoPlacement)):I.flip&&("boolean"==typeof I.flip?e.push(T({fallbackStrategy:"initialPlacement"})):e.push(T(I.flip))),I.shift&&("boolean"==typeof I.shift?e.push(q()):e.push(q(I.shift))),I.size){const t=({availableWidth:e,availableHeight:t})=>{F.value=`${e}px`,C.value=`${t}px`};"boolean"==typeof I.size?e.push(R({apply:t})):e.push(R({...I.size,apply:t}))}return I.offset&&(e.push(W(Number(I.offset))),["string","number"].includes(typeof I.offset)?e.push(W(Number(I.offset))):e.push(W(I.offset))),I.arrow&&e.push(M({element:ee})),e}),{x:ne,y:re,middlewareData:ue,placement:ve,strategy:fe}=J(le,D,{whileElementsMounted:(...e)=>K(...e,{animationFrame:I.strategy===se.fixed}),placement:t(()=>I.placement),strategy:t(()=>I.strategy),middleware:ie}),ce=t(()=>{if(oe.value)return;const e=I.triggerWidth&&le.value?`${le.value?.offsetWidth}px`:void 0;return{position:fe.value,top:`${re.value??0}px`,left:`${ne.value??0}px`,maxWidth:e?void 0:F.value,maxHeight:C.value,width:e}}),pe=t(()=>ve.value.split("-")[0]),me=t(()=>{if(oe.value)return;const e={[de.top]:de.bottom,[de.right]:de.left,[de.bottom]:de.top,[de.left]:de.right}[pe.value];return{left:void 0!==ue.value.arrow?.x?`${ue.value.arrow?.x}px`:void 0,top:void 0!==ue.value.arrow?.y?`${ue.value.arrow?.y}px`:void 0,[e]:-(ee.value?.offsetWidth??0)/2+"px"}}),he=G(I,"modelValue",j),xe=u(!1),we=t({get:()=>he.value??xe.value,set:e=>{void 0!==he.value?he.value=e:xe.value=e}});function Le(){we.value=!0}function $e(){we.value=!1}function Oe(){we.value=!we.value}function ke(e){le.value=e}Q(D,()=>{!I.keepOpen&&we.value&&(we.value=!1)},{ignore:[le]});const _e=t(()=>le.value?.getAttribute?.("id")??void 0),Be=t(()=>({"aria-controls":N.value,"aria-haspopup":!0,"aria-expanded":we.value})),{component:Ee,bus:Ve}=function({reference:e,id:t,expanded:l,aria:i}){const u=ae(),s=a({name:"VvDropdownTriggerProvider",setup(){r(ye,{reference:e,id:t,expanded:l,aria:i,bus:u})},render(){return o(n,{},this.$slots.default?.())}});return{bus:u,component:s}}({reference:le,id:N,expanded:we,aria:Be});Ve.on("click",Oe);const{role:Ie,modifiers:je}=s(I),Ae=Ue("vv-dropdown",je,t(()=>({arrow:I.arrow}))),{focused:Ne}=X(D);function He(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function Fe(){E(()=>{const e=He(D.value);e.length>0&&e[0].focus({preventScroll:!0})})}function Ce(){E(()=>{if(Ne.value){const e=He(D.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function ze(){E(()=>{if(Ne.value){const e=He(D.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}f(we,e=>{e&&I.autofocusFirst&&Fe()}),i({toggle:Oe,show:Le,hide:$e,init:ke,focusFirst:Fe,focusFirstListElement:function(){E(()=>{const e=He(te.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:Ce,focusPrev:ze,customPosition:oe});const De=Y(D),{itemRole:Pe}=function({role:e,...l}){const a=t(()=>e.value===be.listbox?ge.option:ge.presentation);return r(Se,{role:a,...l}),{itemRole:a}}({role:Ie,expanded:we,focused:Ne,hovered:De});Z("Escape",e=>{we.value&&(e.preventDefault(),$e())}),Z("ArrowDown",e=>{we.value&&Ne.value&&(e.preventDefault(),Ce())}),Z("ArrowUp",e=>{we.value&&Ne.value&&(e.preventDefault(),ze())}),Z([" ","Enter"],e=>{const t=e.target;we.value&&Ne.value&&t&&t?.click()});const Te={"before-enter":()=>{j(we.value?"beforeExpand":"beforeCollapse"),j("beforeEnter")},"after-leave":()=>{j(we.value?"afterExpand":"afterCollapse"),j("afterLeave")},enter:()=>{j("enter")},"after-enter":()=>{j("afterEnter")},"enter-cancelled":()=>{j("enterCancelled")},"before-leave":()=>{j("beforeLeave")},leave:()=>{j("leave")},"leave-cancelled":()=>{j("leaveCancelled")}};return(t,l)=>(p(),c(n,null,[m(e(Ee),null,{default:b(()=>[g(t.$slots,"default",h(y({init:ke,show:Le,hide:$e,toggle:Oe,expanded:e(we),aria:e(Be)})))]),_:3}),m(S,x({name:t.transitionName},w(Te),{persisted:""}),{default:b(()=>[L($("div",{ref_key:"floatingEl",ref:D,style:k(e(ce)),class:O(e(Ae))},[I.arrow?(p(),c("div",{key:0,ref_key:"arrowEl",ref:ee,style:k(e(me)),class:"vv-dropdown__arrow"},null,4)):_("v-if",!0),g(t.$slots,"before",h(y({expanded:e(we)}))),$("div",x(e(H),{id:e(N),ref_key:"listEl",ref:te,tabindex:e(we)?void 0:-1,role:e(Ie),"aria-labelledby":e(_e),class:"vv-dropdown__list"}),[g(t.$slots,"items",h(y({role:e(Pe)})))],16,Ge),g(t.$slots,"after",h(y({expanded:e(we)})))],6),[[B,e(we)]])]),_:3},16,["name"])],64))}});const Xe=/* @__PURE__ */a({name:"VvDropdownItem",props:Me,setup(t){const l=t,{role:a,expanded:o}=V(Se,{}),i=u(null);!function({expanded:e}){r(xe,{role:u(me.menuitem),expanded:e})}({expanded:o});const n=Y(i),{focused:s}=ee(i),{focused:d}=X(i);return f(n,e=>{e&&l.focusOnHover&&(s.value=!0)}),(t,l)=>(p(),c("div",x({role:e(a)},{ref_key:"element",ref:i,class:["vv-dropdown__item",{"focus-visible":e(s)||e(d)}]}),[g(t.$slots,"default")],16))}}),Ye=["title"],Ze=/* @__PURE__ */a({name:"VvDropdownOption",props:Je,setup(l){const a=l,{modifiers:o}=s(a),i=Ue("vv-dropdown-option",o,t(()=>({disabled:a.disabled,selected:a.selected,unselectable:a.unselectable&&a.selected}))),n=t(()=>a.selected?a.unselectable?a.deselectHintLabel:a.selectedHintLabel:a.disabled?"":a.selectHintLabel);return(t,l)=>(p(),I(Xe,{class:O(e(i)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled,"focus-on-hover":t.focusOnHover},{default:b(()=>[g(t.$slots,"default"),$("span",{class:"vv-dropdown-option__hint",title:e(n)},[g(t.$slots,"hint",h(y({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),()=>[j(A(e(n)),1)])],8,Ye)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}});function et(){return V(he,void 0)}const tt=/* @__PURE__ */a({name:"VvIcon",props:/* @__PURE__ */N({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},re),setup(l){const a=l,o=t(()=>"string"==typeof a.rotate?Number.parseFloat(a.rotate):a.rotate),i=u(!0),n=et(),{modifiers:r}=s(a),d=Ue("vv-icon",r),v=t(()=>a.provider||n?.iconsProvider),f=t(()=>{const e=a.name??"",t=`@${v.value}:${a.prefix}:${e}`;if(oe(t))return t;const l=n?.iconsCollections.find(t=>{const l=`@${v.value}:${t.prefix}:${e}`;return oe(l)});return l?`@${v.value}:${l.prefix}:${e}`:e});function c(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),l=t?.innerHTML.trim()||"";t&&l&&ne(`@${v.value}:${a.prefix}:${a.name}`,{body:l,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return n&&a.src&&!oe(`@${v.value}:${a.prefix}:${a.name}`)&&(i.value=!1,n.fetchIcon(a.src).then(e=>{e&&(c(e),i.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),a.svg&&c(a.svg),(t,a)=>e(i)?(p(),I(e(ie),x({key:0,class:e(d)},{inline:l.inline,width:l.width,height:l.height,horizontalFlip:l.horizontalFlip,verticalFlip:l.verticalFlip,flip:l.flip,rotate:e(o),color:l.color,icon:e(f)},{onLoad:l.onLoad}),null,16,["class","onLoad"])):_("v-if",!0)}});function lt(e,l){const a=t(()=>"string"==typeof e?.value?{name:e?.value}:e?.value),o=t(()=>l?.value===fe.before?a.value:void 0),i=t(()=>l?.value===fe.after?a.value:void 0),n=t(()=>l?.value===de.left?a.value:void 0),r=t(()=>l?.value===de.right?a.value:void 0),u=t(()=>l?.value===de.top?a.value:void 0),s=t(()=>l?.value===de.bottom?a.value:void 0);return{hasIcon:a,hasIconLeft:n,hasIconRight:r,hasIconTop:u,hasIconBottom:s,hasIconBefore:o,hasIconAfter:i}}const at=["for"],ot={key:0,class:"vv-textarea__input-before"},it={class:"vv-textarea__inner"},nt=["id"],rt={key:1,class:"vv-textarea__input-after"},ut={key:2,class:"vv-textarea__limit"},st={class:"flex-1"},dt=["title","onClick"],vt=/* @__PURE__ */a({name:"VvTextarea",props:Te,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(i,{emit:r}){const d=i,S=r,w=H(),k=et(),B=function(e,l,a){const o=et(),i=t(()=>{if(o&&o.defaults.value?.[e])return o.defaults.value[e]});return t(()=>{if(void 0===i.value)return a;const e=i.value,t=l,o=a;return Object.keys(t).reduce((l,a)=>{const i=o[a];if(l[a]=i,a in e){if(Array.isArray(t[a])){const o=t[a];o.length&&o[0]===i&&(l[a]=e[a])}if("function"==typeof t[a]&&(0,t[a])()===i&&(l[a]=e[a]),"object"==typeof t[a]){let o=t[a].default;"function"==typeof o&&(o=o()),"object"==typeof o?JSON.stringify(o)===JSON.stringify(i)&&(l[a]=e[a]):o===i&&(l[a]=e[a])}}return l},{})})}("VvTextarea",Te,d),E=u(),V=u(),N=u(),{id:P,icon:T,iconPosition:q,iconRemoveSuggestion:R,labelRemoveSuggestion:W,label:M,modelValue:J,count:K,valid:U,invalid:G,loading:Q,modifiers:X,debounce:Y,minlength:Z,maxlength:ae,storageType:oe}=s(d),ie=Ke(P),ne=t(()=>`${ie.value}-hint`),re=t(()=>d.floating&&qe(d.placeholder)?" ":d.placeholder),se=function(e,l,a=0,{getter:o=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof a&&(a=Number.parseInt(a)),t({get:()=>o(e?.value),set:e=>{n&&clearTimeout(n),n=setTimeout(()=>{l("update:modelValue",i(e))},a)}})}(J,S,Y?.value),{hasIconBefore:de,hasIconAfter:ve}=lt(T,q),{hasIcon:fe}=lt(R),{focused:ce}=function(t,l){const{focused:a}=ee(t);return f(a,a=>{l(a?"focus":"blur",e(t))}),{focused:a}}(E,S),pe=t(()=>ce.value&&!d.disabled&&!d.readonly);f(pe,e=>{if(e&&B.value.selectOnFocus&&E.value&&E.value.select(),e&&we.value?.size)N.value?.show();else if(ye.value&&we.value){const e=d.maxSuggestions;we.value.size>=e&&!we.value.has(se.value)&&(we.value=new Set([...we.value].slice(we.value.size-e+1))),we.value.add(se.value)}});const me=le(E);f(me,e=>{e&&d.autofocus&&(ce.value=!0)});const{formatted:be}=function(l,a){const o=t(()=>(e(l)??"").length),i=t(()=>void 0!==a?.lowerLimit&&o.value<a?.lowerLimit?o.value-a.lowerLimit:void 0!==a?.upperLimit&&o.value<a?.upperLimit?a.upperLimit-o.value:0),n=t(()=>{if(!1===a?.mode)return"";if("limit"===a?.mode&&a?.upperLimit)return`${o.value} / ${a.lowerLimit?`${a.lowerLimit}-`:""}${a.upperLimit}`;if("countdown"===a?.mode){if(0===i.value)return;return i}return o.value});return{length:o,gap:i,formatted:n}}(se,{mode:K?.value,upperLimit:Number(ae?.value),lowerLimit:Number(Z?.value)}),ge=t(()=>!d.disabled&&!d.readonly),he=t(()=>ge.value?d.tabindex:-1),ye=t(()=>!qe(J)),Se=t(()=>!0===d.invalid||!0!==d.valid&&void 0),xe=t(()=>d.storageKey??(k?.experimentalFeatures.forceInputSuggestions?d.name:void 0)),we=function(t,a=ue.local,o){const i=u();let n;return o&&(i.value=o),v(()=>{t&&f(t,(t,l)=>{const o=e(a)===ue.session?sessionStorage:localStorage;if(l&&l!==t&&o.removeItem(l),t)return n=te(t,n?.value??i.value,o),void(n.value&&(i.value=n.value));n=void 0},{immediate:!0}),l(a)&&f(a,(e,l)=>{if(t?.value){if(e){const l=e===ue.session?sessionStorage:localStorage;n=te(t.value,n?.value??i.value,l)}l&&l!==e&&(l===ue.session?sessionStorage:localStorage).removeItem(t.value)}})}),f(i,e=>{n&&(n.value=e)},{deep:!0,immediate:!0}),i}(xe,oe,
2
2
  /* @__PURE__ */new Set),Le=t(()=>we.value?[...we.value].filter(e=>qe(se.value)||`${e}`.toLowerCase().includes(`${se.value}`.toLowerCase())&&e!==se.value).reverse():[]),$e=t(()=>xe?.value&&we.value&&we.value.size>0);const{HintSlot:Oe,hasHintLabelOrSlot:ke,hasInvalidLabelOrSlot:_e,hintSlotScope:Be}=function(e,i){const n=t(()=>l(e)?e.value:e),r=t(()=>Re(n.value.invalidLabel)),u=t(()=>Re(n.value.validLabel)),s=t(()=>n.value.loadingLabel),d=t(()=>n.value.hintLabel),v=t(()=>Boolean(n.value.loading&&(i.loading||s.value))),f=t(()=>!v.value&&Boolean(n.value.invalid&&(i.invalid||r.value))),c=t(()=>!v.value&&!f.value&&Boolean(n.value.valid&&(i.valid||u.value))),p=t(()=>!v.value&&!f.value&&!c.value&&Boolean(i.hint||d.value)),m=t(()=>f.value||c.value||v.value||p.value),b=t(()=>({modelValue:n.value.modelValue,valid:n.value.valid,invalid:n.value.invalid,loading:n.value.loading})),g=a({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:m,invalidLabel:r,validLabel:u,loadingLabel:s,hintLabel:d,hasInvalidLabelOrSlot:f,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:v,hasHintLabelOrSlot:p}),render(){if(this.isVisible){let e;return this.hasInvalidLabelOrSlot&&(e="alert"),this.hasValidLabelOrSlot&&(e="status"),this.hasLoadingLabelOrSlot?o(this.tag,{role:e},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?o(this.tag,{role:e},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?o(this.tag,{role:e},this.$slots.valid?.()??this.validLabel):o(this.tag,{role:e},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:f,hasHintLabelOrSlot:p,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:v,hintSlotScope:b,HintSlot:g}}(B,w),Ee=Ue("vv-textarea",X,t(()=>({valid:U.value,invalid:G.value,loading:Q.value,disabled:d.disabled,readonly:d.readonly,required:d.required,"icon-before":void 0!==de.value,"icon-after":void 0!==ve.value,floating:d.floating&&!qe(d.label),dirty:ye.value,focus:ce.value,resizable:d.resizable}))),Ve=t(()=>({name:d.name,placeholder:re.value,tabindex:he.value,disabled:d.disabled,readonly:d.readonly,required:d.required,autocomplete:d.autocomplete,minlength:d.minlength,maxlength:d.maxlength,cols:d.cols,rows:d.rows,wrap:d.wrap,spellcheck:d.spellcheck,"aria-invalid":Se.value,"aria-describedby":ke.value?ne.value:void 0,"aria-errormessage":_e.value?ne.value:void 0})),Ie=t(()=>({valid:d.valid,invalid:d.invalid,modelValue:d.modelValue,hintLabel:d.hintLabel,maxlength:d.maxlength,minlength:d.minlength,clear:je}));function je(){se.value=void 0}return(t,a)=>(p(),c("div",{class:O(e(Ee))},[e(M)?(p(),c("label",{key:0,for:e(ie),class:"vv-textarea__label"},A(e(M)),9,at)):_("v-if",!0),$("div",{ref_key:"wrapperEl",ref:V,class:"vv-textarea__wrapper"},[t.$slots.before?(p(),c("div",ot,[g(t.$slots,"before",h(y(e(Ie))))])):_("v-if",!0),$("div",it,[e(de)?(p(),I(tt,x({key:0},e(de),{class:"vv-textarea__icon"}),null,16)):_("v-if",!0),L($("textarea",x({id:e(ie),ref_key:"textareaEl",ref:E,"onUpdate:modelValue":a[0]||(a[0]=e=>l(se)?se.value=e:null)},e(Ve),{onKeyup:a[1]||(a[1]=e=>S("keyup",e))}),null,16,nt),[[F,e(se)]]),e(ve)?(p(),I(tt,x({key:1},e(ve),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):_("v-if",!0)]),t.$slots.after?(p(),c("div",rt,[g(t.$slots,"after",h(y(e(Ie))))])):_("v-if",!0),e(K)?(p(),c("span",ut,[g(t.$slots,"count",h(y(e(Ie))),()=>[j(A(e(be)),1)])])):_("v-if",!0)],512),m(e(Oe),{id:e(ne),class:"vv-textarea__hint"},C({_:2},[t.$slots.hint?{name:"hint",fn:b(()=>[g(t.$slots,"hint",h(y(e(Be))))]),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:b(()=>[g(t.$slots,"loading",h(y(e(Be))))]),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:b(()=>[g(t.$slots,"valid",h(y(e(Be))))]),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:b(()=>[g(t.$slots,"invalid",h(y(e(Be))))]),key:"3"}:void 0]),1032,["id"]),e($e)?(p(),I(Qe,{key:1,ref_key:"suggestionsDropdownEl",ref:N,reference:e(V),"autofocus-first":!1,"trigger-width":!0},{items:b(()=>[(p(!0),c(n,null,z(e(Le),l=>(p(),I(Ze,{key:l,onClick:D(e=>{return t=l,se.value=t,N.value?.hide(),void S("suggestion:selected",t);var t},["stop"])},{default:b(()=>[$("div",st,[g(t.$slots,"suggestion",x({ref_for:!0},{value:l}),()=>[j(A(l),1)])]),e(we)&&e(fe)?(p(),c("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:e(W),onClick:D(e=>{return t=l,we.value?.delete(t),void S("suggestion:removed",t);var t},["stop"])},[m(tt,x({ref_for:!0},e(fe)),null,16)],8,dt)):_("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):_("v-if",!0)],2))}});export{vt as default};
@@ -1,3 +1,5 @@
1
+ declare const _default: typeof __VLS_export;
2
+ export default _default;
1
3
  declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<globalThis.ExtractPropTypes<{
2
4
  modelValue: StringConstructor;
3
5
  cols: {
@@ -284,7 +286,6 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<global
284
286
  disabled: boolean;
285
287
  modifiers: string | string[];
286
288
  storageType: "local" | "session";
287
- placeholder: string;
288
289
  icon: string | import("../VvIcon").VvIconProps;
289
290
  iconPosition: "before" | "after";
290
291
  required: boolean;
@@ -297,6 +298,7 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<global
297
298
  valid: boolean;
298
299
  validLabel: string | unknown[];
299
300
  tabindex: string | number;
301
+ placeholder: string;
300
302
  autocomplete: string;
301
303
  autofocus: boolean;
302
304
  spellcheck: string | boolean;
@@ -375,8 +377,6 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<global
375
377
  value: string;
376
378
  }) => any;
377
379
  }>;
378
- declare const _default: typeof __VLS_export;
379
- export default _default;
380
380
  type __VLS_WithSlots<T, S> = T & {
381
381
  new (): {
382
382
  $slots: S;
@@ -1,3 +1,5 @@
1
+ declare const _default: typeof __VLS_export;
2
+ export default _default;
1
3
  declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<globalThis.ExtractPropTypes<{
2
4
  position: {
3
5
  type: PropType<`${import("../../constants").Side}`>;
@@ -28,8 +30,6 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<global
28
30
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
29
31
  default?: (props: {}) => any;
30
32
  }>;
31
- declare const _default: typeof __VLS_export;
32
- export default _default;
33
33
  type __VLS_WithSlots<T, S> = T & {
34
34
  new (): {
35
35
  $slots: S;