@volverjs/ui-vue 0.0.10-beta.27 → 0.0.10-beta.29

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 (89) hide show
  1. package/README.md +8 -7
  2. package/dist/components/VvAction/VvAction.es.js +17 -4
  3. package/dist/components/VvAction/VvAction.umd.js +1 -1
  4. package/dist/components/VvAlert/VvAlert.es.js +13 -11
  5. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  6. package/dist/components/VvAlert/VvAlert.vue.d.ts +17 -17
  7. package/dist/components/VvAlert/index.d.ts +12 -8
  8. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +13 -2
  9. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  10. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +3 -3
  11. package/dist/components/VvAlertGroup/index.d.ts +2 -14
  12. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +17 -4
  13. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  14. package/dist/components/VvButton/VvButton.es.js +30 -7
  15. package/dist/components/VvButton/VvButton.umd.js +1 -1
  16. package/dist/components/VvButton/VvButton.vue.d.ts +3 -3
  17. package/dist/components/VvCombobox/VvCombobox.es.js +31 -7
  18. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  19. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +5 -5
  20. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +1 -1
  21. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +6 -6
  22. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +17 -4
  23. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  24. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +1 -0
  25. package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
  26. package/dist/components/VvIcon/VvIcon.vue.d.ts +11 -11
  27. package/dist/components/VvInputFile/VvInputFile.es.js +30 -7
  28. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
  29. package/dist/components/VvInputText/VvInputText.es.js +1 -0
  30. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  31. package/dist/components/VvInputText/VvInputText.vue.d.ts +1 -1
  32. package/dist/components/VvNav/VvNav.es.js +17 -4
  33. package/dist/components/VvNav/VvNav.umd.js +1 -1
  34. package/dist/components/VvNav/VvNav.vue.d.ts +3 -3
  35. package/dist/components/VvNavItem/VvNavItem.es.js +17 -4
  36. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  37. package/dist/components/VvSelect/VvSelect.vue.d.ts +8 -8
  38. package/dist/components/VvTab/VvTab.es.js +17 -4
  39. package/dist/components/VvTab/VvTab.umd.js +1 -1
  40. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +1 -1
  41. package/dist/components/index.es.js +44 -9
  42. package/dist/components/index.umd.js +1 -1
  43. package/dist/composables/alert/useAlert.d.ts +80 -18
  44. package/dist/composables/index.es.js +6 -4
  45. package/dist/composables/index.umd.js +1 -1
  46. package/dist/composables/usePersistence.d.ts +1 -1
  47. package/dist/constants.d.ts +5 -2
  48. package/dist/icons.es.js +226 -226
  49. package/dist/icons.umd.js +1 -1
  50. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +8 -8
  51. package/dist/test/expect.d.ts +1 -1
  52. package/dist/types/alert.d.ts +9 -7
  53. package/package.json +43 -53
  54. package/src/assets/icons/detailed.json +1 -1
  55. package/src/assets/icons/normal.json +1 -1
  56. package/src/assets/icons/simple.json +1 -1
  57. package/src/components/VvAction/VvAction.vue +13 -3
  58. package/src/components/VvAlert/index.ts +13 -6
  59. package/src/components/VvAlertGroup/index.ts +3 -16
  60. package/src/components/VvButton/VvButton.vue +11 -1
  61. package/src/components/VvDropdown/VvDropdownOption.vue +1 -0
  62. package/src/composables/alert/useAlert.ts +12 -9
  63. package/src/constants.ts +7 -2
  64. package/src/stories/Accordion/Accordion.test.ts +1 -1
  65. package/src/stories/AccordionGroup/AccordionGroup.test.ts +1 -1
  66. package/src/stories/Alert/Alert.test.ts +1 -1
  67. package/src/stories/AlertGroup/AlertGroup.test.ts +1 -1
  68. package/src/stories/Avatar/Avatar.test.ts +1 -1
  69. package/src/stories/AvatarGroup/AvatarGroup.test.ts +1 -1
  70. package/src/stories/Badge/Badge.test.ts +1 -1
  71. package/src/stories/Button/Button.test.ts +1 -1
  72. package/src/stories/ButtonGroup/ButtonGroup.test.ts +1 -1
  73. package/src/stories/Card/Card.test.ts +1 -1
  74. package/src/stories/Checkbox/Checkbox.test.ts +1 -1
  75. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +1 -1
  76. package/src/stories/Combobox/Combobox.test.ts +1 -1
  77. package/src/stories/Dialog/Dialog.test.ts +2 -2
  78. package/src/stories/Dropdown/Dropdown.test.ts +1 -1
  79. package/src/stories/InputText/InputText.test.ts +1 -1
  80. package/src/stories/Nav/Nav.test.ts +1 -1
  81. package/src/stories/Progress/Progress.test.ts +1 -1
  82. package/src/stories/Radio/Radio.test.ts +1 -1
  83. package/src/stories/RadioGroup/RadioGroup.test.ts +1 -1
  84. package/src/stories/Select/Select.test.ts +1 -1
  85. package/src/stories/Tab/Tab.test.ts +1 -1
  86. package/src/stories/Textarea/Textarea.test.ts +1 -1
  87. package/src/stories/Tooltip/Tooltip.test.ts +1 -1
  88. package/src/test/expect.ts +2 -4
  89. package/src/types/alert.ts +11 -7
@@ -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).VvNav=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||{}),l=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(l||{});const a=Symbol.for("volver"),i=Symbol.for("dropdownTrigger"),s=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}},v={current:{type:Boolean,default:!1}},f={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}},m={modifiers:{type:[String,Array],default:void 0}};r.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const b={...d,...p,...f,...c,...v,...u,type:{type:String,default:n.button,validator:e=>Object.values(n).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:l.button}},y={items:{type:Array,default:()=>[]}};t.local;const g={...m,...y},k=b;const B=e.defineComponent({name:"VvAction",props:k,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const n=t,u=r,d=e.inject(a),c=e.ref(null);o({$el:c});const{reference:v,bus:f,aria:p,expanded:m}=e.inject(i,{});e.watch((()=>c.value),(e=>{v&&(v.value=e)}));const b=e.computed((()=>n.pressed||(null==m?void 0:m.value))),{role:y}=e.inject(s,{}),g=e.computed((()=>{switch(!0){case n.disabled:return l.button;case void 0!==n.to:return(null==d?void 0:d.nuxt)?l.nuxtLink:l.routerLink;case void 0!==n.href:return l.a;default:return n.defaultTag}})),k=e.computed((()=>{const e={...null==p?void 0:p.value,ariaPressed:!!b.value||void 0,ariaLabel:n.ariaLabel,role:null==y?void 0:y.value};switch(g.value){case l.a:return{...e,href:n.href,target:n.target,rel:n.rel};case l.routerLink:case l.nuxtLink:return{...e,to:n.to,target:n.target};case l.button:return{...e,type:n.type,disabled:n.disabled};default:return e}})),B=e=>{n.disabled?e.preventDefault():(null==f||f.emit("click",e),u("click",e))},h=e=>{null==f||f.emit("mouseover",e),u("mouseover",e)},x=e=>{null==f||f.emit("mouseleave",e),u("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),e.mergeProps(e.unref(k),{ref_key:"element",ref:c,class:{active:t.active,pressed:e.unref(b),disabled:t.disabled,current:t.current},onClickPassive:B,onMouseoverPassive:h,onMouseleavePassive:x}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),h={class:"vv-nav__item",role:"presentation"},x=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",h,[e.createVNode(B,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))});return e.defineComponent({__name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const r=t,{modifiers:n}=e.toRefs(r),l=o,a=e=>{var t;const o=e.target;if(null==o?void 0:o.dataset.index){const e=parseInt(o.dataset.index),n=null==(t=r.items)?void 0:t[e];if(!n||(null==n?void 0:n.disabled))return;l("click",n)}},i=function(t,o,r){return e.computed((()=>{const n={[t]:!0},l="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return l&&Array.isArray(l)&&l.forEach((e=>{e&&(n[`${t}--${e}`]=!0)})),r&&Object.keys(r.value).forEach((o=>{n[`${t}--${o}`]=e.unref(r.value[o])})),n}))}("vv-nav",n);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(i))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu","aria-busy":"true",onClick:e.withModifiers(a,["stop"])},[e.renderSlot(t.$slots,"default",{},(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(({on:o={},data:r,...n},l)=>(e.openBlock(),e.createBlock(x,e.mergeProps({key:l,"data-index":l},n,e.toHandlers(o)),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.normalizeProps(e.guardReactiveProps({item:n,data:r,index:l})))])),_:2},1040,["data-index"])))),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).VvNav=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||{}),n=(e=>(e.before="before",e.after="after",e))(n||{}),r=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(r||{}),l=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(l||{});const a=Symbol.for("volver"),i=Symbol.for("dropdownTrigger"),s=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}},v={current:{type:Boolean,default:!1}},f={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}},m={modifiers:{type:[String,Array],default:void 0}};n.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const b={...d,...p,...f,...c,...v,...u,type:{type:String,default:r.button,validator:e=>Object.values(r).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:l.button}},y={items:{type:Array,default:()=>[]}};t.local;const g={...m,...y},k=b;const B=e.defineComponent({name:"VvAction",props:k,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:n}){const r=t,u=n,d=e.getCurrentInstance(),c=e.inject(a),v=e.ref(null);o({$el:v});const{reference:f,bus:p,aria:m,expanded:b}=e.inject(i,{});e.watch((()=>v.value),(e=>{f&&(f.value=e)}));const y=e.computed((()=>r.pressed||(null==b?void 0:b.value))),{role:g}=e.inject(s,{}),k=e.computed((()=>{switch(!0){case r.disabled:return l.button;case void 0!==r.to:return(null==c?void 0:c.nuxt)?l.nuxtLink:l.routerLink;case void 0!==r.href:return l.a;default:return r.defaultTag}})),B=e.computed((()=>{const e={...null==m?void 0:m.value,ariaPressed:!!y.value||void 0,ariaLabel:r.ariaLabel,role:null==g?void 0:g.value};switch(k.value){case l.a:return{...e,href:r.href,target:r.target,rel:r.rel};case l.routerLink:case l.nuxtLink:return{...e,to:r.to,target:r.target};case l.button:return{...e,type:r.type,disabled:r.disabled};default:return e}})),h=e=>{var t;r.disabled?e.preventDefault():(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onClick)?u("click",e):null==p||p.emit("click",e)},x=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseover)?u("mouseover",e):null==p||p.emit("mouseover",e)},S=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseleave)?u("mouseleave",e):null==p||p.emit("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(k)),e.mergeProps(e.unref(B),{ref_key:"element",ref:v,class:{active:t.active,pressed:e.unref(y),disabled:t.disabled,current:t.current},onClickPassive:h,onMouseoverPassive:x,onMouseleavePassive:S}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),h={class:"vv-nav__item",role:"presentation"},x=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",h,[e.createVNode(B,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))});return e.defineComponent({__name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const n=t,{modifiers:r}=e.toRefs(n),l=o,a=e=>{var t;const o=e.target;if(null==o?void 0:o.dataset.index){const e=parseInt(o.dataset.index),r=null==(t=n.items)?void 0:t[e];if(!r||(null==r?void 0:r.disabled))return;l("click",r)}},i=function(t,o,n){return e.computed((()=>{const r={[t]:!0},l="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return l&&Array.isArray(l)&&l.forEach((e=>{e&&(r[`${t}--${e}`]=!0)})),n&&Object.keys(n.value).forEach((o=>{r[`${t}--${o}`]=e.unref(n.value[o])})),r}))}("vv-nav",r);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(i))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu","aria-busy":"true",onClick:e.withModifiers(a,["stop"])},[e.renderSlot(t.$slots,"default",{},(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(({on:o={},data:n,...r},l)=>(e.openBlock(),e.createBlock(x,e.mergeProps({key:l,"data-index":l},r,e.toHandlers(o)),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.normalizeProps(e.guardReactiveProps({item:r,data:n,index:l})))])),_:2},1040,["data-index"])))),128))]))])],2))}})}));
@@ -1,6 +1,6 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
2
  items: {
3
- type: globalThis.PropType<import("../..").NavItem[]>;
3
+ type: globalThis.PropType<import("../../index.js").NavItem[]>;
4
4
  default: () => never[];
5
5
  };
6
6
  modifiers: {
@@ -11,7 +11,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
11
11
  [x: string]: (...args: any[]) => void;
12
12
  }, string, import("vue").PublicProps, Readonly<globalThis.ExtractPropTypes<{
13
13
  items: {
14
- type: globalThis.PropType<import("../..").NavItem[]>;
14
+ type: globalThis.PropType<import("../../index.js").NavItem[]>;
15
15
  default: () => never[];
16
16
  };
17
17
  modifiers: {
@@ -20,7 +20,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
20
20
  };
21
21
  }>>, {
22
22
  modifiers: string | string[];
23
- items: import("../..").NavItem[];
23
+ items: import("../../index.js").NavItem[];
24
24
  }, {}>, {
25
25
  default?(_: {}): any;
26
26
  item?(_: {
@@ -1,4 +1,4 @@
1
- import { inject, defineComponent, ref, watch, computed, openBlock, createBlock, resolveDynamicComponent, unref, mergeProps, withCtx, renderSlot, createTextVNode, toDisplayString, createElementBlock, createVNode } from "vue";
1
+ import { inject, defineComponent, getCurrentInstance, ref, watch, computed, openBlock, createBlock, resolveDynamicComponent, unref, mergeProps, withCtx, renderSlot, createTextVNode, toDisplayString, createElementBlock, createVNode } from "vue";
2
2
  var StorageType = /* @__PURE__ */ ((StorageType2) => {
3
3
  StorageType2["local"] = "local";
4
4
  StorageType2["session"] = "session";
@@ -292,6 +292,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
292
292
  setup(__props, { expose: __expose, emit: __emit }) {
293
293
  const props = __props;
294
294
  const emit = __emit;
295
+ const instance = getCurrentInstance();
295
296
  const volver = useVolver();
296
297
  const element = ref(null);
297
298
  __expose({ $el: element });
@@ -358,20 +359,32 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
358
359
  }
359
360
  });
360
361
  const onClick = (e) => {
362
+ var _a;
361
363
  if (props.disabled) {
362
364
  e.preventDefault();
363
365
  return;
364
366
  }
367
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onClick) {
368
+ emit("click", e);
369
+ return;
370
+ }
365
371
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("click", e);
366
- emit("click", e);
367
372
  };
368
373
  const onMouseover = (e) => {
374
+ var _a;
375
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseover) {
376
+ emit("mouseover", e);
377
+ return;
378
+ }
369
379
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseover", e);
370
- emit("mouseover", e);
371
380
  };
372
381
  const onMouseleave = (e) => {
382
+ var _a;
383
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseleave) {
384
+ emit("mouseleave", e);
385
+ return;
386
+ }
373
387
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseleave", e);
374
- emit("mouseleave", e);
375
388
  };
376
389
  return (_ctx, _cache) => {
377
390
  return openBlock(), createBlock(resolveDynamicComponent(unref(hasTag)), mergeProps(unref(hasProps), {
@@ -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).VvNavItem=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||{}),n=(e=>(e.before="before",e.after="after",e))(n||{}),r=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(r||{}),l=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(l||{});const a=Symbol.for("volver"),u=Symbol.for("dropdownTrigger"),i=Symbol.for("dropdownAction"),s={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}},v={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}};n.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const m={...d,...p,...v,...c,...f,...s,type:{type:String,default:r.button,validator:e=>Object.values(r).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:l.button}};t.local;const b=m;const g=e.defineComponent({name:"VvAction",props:b,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:n}){const r=t,s=n,d=e.inject(a),c=e.ref(null);o({$el:c});const{reference:f,bus:v,aria:p,expanded:m}=e.inject(u,{});e.watch((()=>c.value),(e=>{f&&(f.value=e)}));const b=e.computed((()=>r.pressed||(null==m?void 0:m.value))),{role:g}=e.inject(i,{}),y=e.computed((()=>{switch(!0){case r.disabled:return l.button;case void 0!==r.to:return(null==d?void 0:d.nuxt)?l.nuxtLink:l.routerLink;case void 0!==r.href:return l.a;default:return r.defaultTag}})),k=e.computed((()=>{const e={...null==p?void 0:p.value,ariaPressed:!!b.value||void 0,ariaLabel:r.ariaLabel,role:null==g?void 0:g.value};switch(y.value){case l.a:return{...e,href:r.href,target:r.target,rel:r.rel};case l.routerLink:case l.nuxtLink:return{...e,to:r.to,target:r.target};case l.button:return{...e,type:r.type,disabled:r.disabled};default:return e}})),B=e=>{r.disabled?e.preventDefault():(null==v||v.emit("click",e),s("click",e))},h=e=>{null==v||v.emit("mouseover",e),s("mouseover",e)},S=e=>{null==v||v.emit("mouseleave",e),s("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)),e.mergeProps(e.unref(k),{ref_key:"element",ref:c,class:{active:t.active,pressed:e.unref(b),disabled:t.disabled,current:t.current},onClickPassive:B,onMouseoverPassive:h,onMouseleavePassive:S}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),y={class:"vv-nav__item",role:"presentation"};return e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",y,[e.createVNode(g,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))})}));
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).VvNavItem=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||{}),n=(e=>(e.before="before",e.after="after",e))(n||{}),l=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(l||{}),r=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(r||{});const a=Symbol.for("volver"),u=Symbol.for("dropdownTrigger"),i=Symbol.for("dropdownAction"),s={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}},v={current:{type:Boolean,default:!1}},f={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}};n.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const m={...d,...p,...f,...c,...v,...s,type:{type:String,default:l.button,validator:e=>Object.values(l).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:r.button}};t.local;const b=m;const g=e.defineComponent({name:"VvAction",props:b,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:n}){const l=t,s=n,d=e.getCurrentInstance(),c=e.inject(a),v=e.ref(null);o({$el:v});const{reference:f,bus:p,aria:m,expanded:b}=e.inject(u,{});e.watch((()=>v.value),(e=>{f&&(f.value=e)}));const g=e.computed((()=>l.pressed||(null==b?void 0:b.value))),{role:y}=e.inject(i,{}),k=e.computed((()=>{switch(!0){case l.disabled:return r.button;case void 0!==l.to:return(null==c?void 0:c.nuxt)?r.nuxtLink:r.routerLink;case void 0!==l.href:return r.a;default:return l.defaultTag}})),B=e.computed((()=>{const e={...null==m?void 0:m.value,ariaPressed:!!g.value||void 0,ariaLabel:l.ariaLabel,role:null==y?void 0:y.value};switch(k.value){case r.a:return{...e,href:l.href,target:l.target,rel:l.rel};case r.routerLink:case r.nuxtLink:return{...e,to:l.to,target:l.target};case r.button:return{...e,type:l.type,disabled:l.disabled};default:return e}})),h=e=>{var t;l.disabled?e.preventDefault():(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onClick)?s("click",e):null==p||p.emit("click",e)},S=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseover)?s("mouseover",e):null==p||p.emit("mouseover",e)},x=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseleave)?s("mouseleave",e):null==p||p.emit("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(k)),e.mergeProps(e.unref(B),{ref_key:"element",ref:v,class:{active:t.active,pressed:e.unref(g),disabled:t.disabled,current:t.current},onClickPassive:h,onMouseoverPassive:S,onMouseleavePassive:x}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),y={class:"vv-nav__item",role:"presentation"};return e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",y,[e.createVNode(g,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))})}));
@@ -21,13 +21,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
21
21
  default: boolean;
22
22
  };
23
23
  icon: {
24
- type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
24
+ type: globalThis.PropType<string | import("../VvIcon/index.js").VvIconProps>;
25
25
  default: undefined;
26
26
  };
27
27
  iconPosition: {
28
28
  type: globalThis.PropType<"before" | "after">;
29
- default: import("../../constants").Position;
30
- validation: (value: import("../../constants").Position) => boolean;
29
+ default: import("../../constants.js").Position;
30
+ validation: (value: import("../../constants.js").Position) => boolean;
31
31
  };
32
32
  options: {
33
33
  type: globalThis.PropType<(string | Option)[]>;
@@ -126,13 +126,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
126
126
  default: boolean;
127
127
  };
128
128
  icon: {
129
- type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
129
+ type: globalThis.PropType<string | import("../VvIcon/index.js").VvIconProps>;
130
130
  default: undefined;
131
131
  };
132
132
  iconPosition: {
133
133
  type: globalThis.PropType<"before" | "after">;
134
- default: import("../../constants").Position;
135
- validation: (value: import("../../constants").Position) => boolean;
134
+ default: import("../../constants.js").Position;
135
+ validation: (value: import("../../constants.js").Position) => boolean;
136
136
  };
137
137
  options: {
138
138
  type: globalThis.PropType<(string | Option)[]>;
@@ -214,9 +214,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
214
214
  disabled: boolean;
215
215
  modelValue: string | number | boolean | unknown[] | Record<string, any>;
216
216
  modifiers: string | string[];
217
- required: boolean;
218
- icon: string | import("../VvIcon").VvIconProps;
217
+ icon: string | import("../VvIcon/index.js").VvIconProps;
219
218
  iconPosition: "before" | "after";
219
+ required: boolean;
220
220
  loading: boolean;
221
221
  loadingLabel: string;
222
222
  unselectable: boolean;
@@ -1,4 +1,4 @@
1
- import { inject, defineComponent, ref, watch, computed, openBlock, createBlock, resolveDynamicComponent, unref, mergeProps, withCtx, renderSlot, createTextVNode, toDisplayString, createElementBlock, createVNode, toRefs, normalizeClass, createElementVNode, withModifiers, Fragment, renderList, toHandlers, normalizeProps, guardReactiveProps, createCommentVNode } from "vue";
1
+ import { inject, defineComponent, getCurrentInstance, ref, watch, computed, openBlock, createBlock, resolveDynamicComponent, unref, mergeProps, withCtx, renderSlot, createTextVNode, toDisplayString, createElementBlock, createVNode, toRefs, normalizeClass, createElementVNode, withModifiers, Fragment, renderList, toHandlers, normalizeProps, guardReactiveProps, createCommentVNode } from "vue";
2
2
  var StorageType = /* @__PURE__ */ ((StorageType2) => {
3
3
  StorageType2["local"] = "local";
4
4
  StorageType2["session"] = "session";
@@ -327,6 +327,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
327
327
  setup(__props, { expose: __expose, emit: __emit }) {
328
328
  const props = __props;
329
329
  const emit = __emit;
330
+ const instance = getCurrentInstance();
330
331
  const volver = useVolver();
331
332
  const element = ref(null);
332
333
  __expose({ $el: element });
@@ -393,20 +394,32 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
393
394
  }
394
395
  });
395
396
  const onClick = (e) => {
397
+ var _a;
396
398
  if (props.disabled) {
397
399
  e.preventDefault();
398
400
  return;
399
401
  }
402
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onClick) {
403
+ emit("click", e);
404
+ return;
405
+ }
400
406
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("click", e);
401
- emit("click", e);
402
407
  };
403
408
  const onMouseover = (e) => {
409
+ var _a;
410
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseover) {
411
+ emit("mouseover", e);
412
+ return;
413
+ }
404
414
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseover", e);
405
- emit("mouseover", e);
406
415
  };
407
416
  const onMouseleave = (e) => {
417
+ var _a;
418
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseleave) {
419
+ emit("mouseleave", e);
420
+ return;
421
+ }
408
422
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseleave", e);
409
- emit("mouseleave", e);
410
423
  };
411
424
  return (_ctx, _cache) => {
412
425
  return openBlock(), createBlock(resolveDynamicComponent(unref(hasTag)), mergeProps(unref(hasProps), {
@@ -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||{}),a=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(a||{}),n=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(n||{});const l=Symbol.for("volver"),i=Symbol.for("dropdownTrigger"),s=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}},v={pressed:{type:Boolean,default:!1}},f={label:{type:[String,Number],default:void 0}},p={modifiers:{type:[String,Array],default:void 0}};r.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const b={...d,...f,...v,...c,...m,...u,type:{type:String,default:a.button,validator:e=>Object.values(a).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:n.button}},y={items:{type:Array,default:()=>[]}};t.local;const k={...p,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},g={...p,...y},B=b;const h=e.defineComponent({name:"VvAction",props:B,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const a=t,u=r,d=e.inject(l),c=e.ref(null);o({$el:c});const{reference:m,bus:v,aria:f,expanded:p}=e.inject(i,{});e.watch((()=>c.value),(e=>{m&&(m.value=e)}));const b=e.computed((()=>a.pressed||(null==p?void 0:p.value))),{role:y}=e.inject(s,{}),k=e.computed((()=>{switch(!0){case a.disabled:return n.button;case void 0!==a.to:return(null==d?void 0:d.nuxt)?n.nuxtLink:n.routerLink;case void 0!==a.href:return n.a;default:return a.defaultTag}})),g=e.computed((()=>{const e={...null==f?void 0:f.value,ariaPressed:!!b.value||void 0,ariaLabel:a.ariaLabel,role:null==y?void 0:y.value};switch(k.value){case n.a:return{...e,href:a.href,target:a.target,rel:a.rel};case n.routerLink:case n.nuxtLink:return{...e,to:a.to,target:a.target};case n.button:return{...e,type:a.type,disabled:a.disabled};default:return e}})),B=e=>{a.disabled?e.preventDefault():(null==v||v.emit("click",e),u("click",e))},h=e=>{null==v||v.emit("mouseover",e),u("mouseover",e)},x=e=>{null==v||v.emit("mouseleave",e),u("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(k)),e.mergeProps(e.unref(g),{ref_key:"element",ref:c,class:{active:t.active,pressed:e.unref(b),disabled:t.disabled,current:t.current},onClickPassive:B,onMouseoverPassive:h,onMouseleavePassive:x}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),x={class:"vv-nav__item",role:"presentation"},S=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",x,[e.createVNode(h,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))});function _(t,o,r){return e.computed((()=>{const a={[t]:!0},n="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return n&&Array.isArray(n)&&n.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),r&&Object.keys(r.value).forEach((o=>{a[`${t}--${o}`]=e.unref(r.value[o])})),a}))}const C=e.defineComponent({__name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const r=t,{modifiers:a}=e.toRefs(r),n=o,l=e=>{var t;const o=e.target;if(null==o?void 0:o.dataset.index){const e=parseInt(o.dataset.index),a=null==(t=r.items)?void 0:t[e];if(!a||(null==a?void 0:a.disabled))return;n("click",a)}},i=_("vv-nav",a);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(i))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu","aria-busy":"true",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,...a},n)=>(e.openBlock(),e.createBlock(S,e.mergeProps({key:n,"data-index":n},a,e.toHandlers(o)),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.normalizeProps(e.guardReactiveProps({item:a,data:r,index:n})))])),_:2},1040,["data-index"])))),128))]))])],2))}});return e.defineComponent({__name:"VvTab",props:k,emits:["update:modelValue"],setup(t,{emit:o}){const r=t,a=o,{modifiers:n,items:l}=e.toRefs(r),i=e.computed((()=>l.value.reduce(((e,t)=>(t.tab&&e.push(t.tab),e)),[]))),s=e.ref(),u=e.computed({get:()=>{var e;return r.modelValue||s.value||(null==(e=i.value)?void 0:e[0])},set:e=>{s.value=e,a("update:modelValue",e)}}),d=e.computed((()=>{var e;return["tabs",...Array.isArray(r.navModifiers)?r.navModifiers:(null==(e=r.navModifiers)?void 0:e.split(" "))??[]]})),c=e=>{e.tab&&(u.value=e.tab)},m=e.computed((()=>r.items.map((e=>({current:e.tab===u.value,...e}))))),v=_("vv-tab",n);return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(v))},[e.createVNode(C,e.mergeProps({items:e.unref(m),modifiers:e.unref(d)},{onClick:c}),{item:e.withCtx((({item:o,data:r,index:a})=>[e.renderSlot(t.$slots,"nav-item",e.normalizeProps(e.guardReactiveProps({item:o,data:r,index:a})))])),_: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||{}),a=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(a||{}),n=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(n||{});const l=Symbol.for("volver"),i=Symbol.for("dropdownTrigger"),s=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}},v={current:{type:Boolean,default:!1}},m={pressed:{type:Boolean,default:!1}},p={label:{type:[String,Number],default:void 0}},f={modifiers:{type:[String,Array],default:void 0}};r.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const b={...d,...p,...m,...c,...v,...u,type:{type:String,default:a.button,validator:e=>Object.values(a).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:n.button}},y={items:{type:Array,default:()=>[]}};t.local;const k={...f,navModifiers:{type:[String,Array]},modelValue:{type:String,default:""},items:{type:Array,default:()=>[]}},g={...f,...y},B=b;const h=e.defineComponent({name:"VvAction",props:B,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const a=t,u=r,d=e.getCurrentInstance(),c=e.inject(l),v=e.ref(null);o({$el:v});const{reference:m,bus:p,aria:f,expanded:b}=e.inject(i,{});e.watch((()=>v.value),(e=>{m&&(m.value=e)}));const y=e.computed((()=>a.pressed||(null==b?void 0:b.value))),{role:k}=e.inject(s,{}),g=e.computed((()=>{switch(!0){case a.disabled:return n.button;case void 0!==a.to:return(null==c?void 0:c.nuxt)?n.nuxtLink:n.routerLink;case void 0!==a.href:return n.a;default:return a.defaultTag}})),B=e.computed((()=>{const e={...null==f?void 0:f.value,ariaPressed:!!y.value||void 0,ariaLabel:a.ariaLabel,role:null==k?void 0:k.value};switch(g.value){case n.a:return{...e,href:a.href,target:a.target,rel:a.rel};case n.routerLink:case n.nuxtLink:return{...e,to:a.to,target:a.target};case n.button:return{...e,type:a.type,disabled:a.disabled};default:return e}})),h=e=>{var t;a.disabled?e.preventDefault():(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onClick)?u("click",e):null==p||p.emit("click",e)},x=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseover)?u("mouseover",e):null==p||p.emit("mouseover",e)},S=e=>{var t;(null==(t=null==d?void 0:d.vnode.props)?void 0:t.onMouseleave)?u("mouseleave",e):null==p||p.emit("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),e.mergeProps(e.unref(B),{ref_key:"element",ref:v,class:{active:t.active,pressed:e.unref(y),disabled:t.disabled,current:t.current},onClickPassive:h,onMouseoverPassive:x,onMouseleavePassive:S}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}}),x={class:"vv-nav__item",role:"presentation"},S=e.defineComponent({name:"VvNavItem",inheritAttrs:!1,setup:t=>(t,o)=>(e.openBlock(),e.createElementBlock("li",x,[e.createVNode(h,e.mergeProps(t.$attrs,{class:"vv-nav__item-label"}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},16)]))});function C(t,o,r){return e.computed((()=>{const a={[t]:!0},n="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return n&&Array.isArray(n)&&n.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),r&&Object.keys(r.value).forEach((o=>{a[`${t}--${o}`]=e.unref(r.value[o])})),a}))}const _=e.defineComponent({__name:"VvNav",props:g,emits:["click"],setup(t,{emit:o}){const r=t,{modifiers:a}=e.toRefs(r),n=o,l=e=>{var t;const o=e.target;if(null==o?void 0:o.dataset.index){const e=parseInt(o.dataset.index),a=null==(t=r.items)?void 0:t[e];if(!a||(null==a?void 0:a.disabled))return;n("click",a)}},i=C("vv-nav",a);return(t,o)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(i))},[e.createElementVNode("ul",{class:"vv-nav__menu",role:"menu","aria-busy":"true",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,...a},n)=>(e.openBlock(),e.createBlock(S,e.mergeProps({key:n,"data-index":n},a,e.toHandlers(o)),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.normalizeProps(e.guardReactiveProps({item:a,data:r,index:n})))])),_:2},1040,["data-index"])))),128))]))])],2))}});return e.defineComponent({__name:"VvTab",props:k,emits:["update:modelValue"],setup(t,{emit:o}){const r=t,a=o,{modifiers:n,items:l}=e.toRefs(r),i=e.computed((()=>l.value.reduce(((e,t)=>(t.tab&&e.push(t.tab),e)),[]))),s=e.ref(),u=e.computed({get:()=>{var e;return r.modelValue||s.value||(null==(e=i.value)?void 0:e[0])},set:e=>{s.value=e,a("update:modelValue",e)}}),d=e.computed((()=>{var e;return["tabs",...Array.isArray(r.navModifiers)?r.navModifiers:(null==(e=r.navModifiers)?void 0:e.split(" "))??[]]})),c=e=>{e.tab&&(u.value=e.tab)},v=e.computed((()=>r.items.map((e=>({current:e.tab===u.value,...e}))))),m=C("vv-tab",n);return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(m))},[e.createVNode(_,e.mergeProps({items:e.unref(v),modifiers:e.unref(d)},{onClick:c}),{item:e.withCtx((({item:o,data:r,index:a})=>[e.renderSlot(t.$slots,"nav-item",e.normalizeProps(e.guardReactiveProps({item:o,data:r,index:a})))])),_: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))}})}));
@@ -241,9 +241,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
241
241
  label: string | number;
242
242
  disabled: boolean;
243
243
  modifiers: string | string[];
244
- required: boolean;
245
244
  icon: string | import("../VvIcon").VvIconProps;
246
245
  iconPosition: "before" | "after";
246
+ required: boolean;
247
247
  loading: boolean;
248
248
  loadingLabel: string;
249
249
  readonly: boolean;
@@ -1,4 +1,4 @@
1
- import { inject, computed, toRef, unref, defineComponent, useAttrs, toRefs, ref, watch, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, renderSlot, normalizeProps, guardReactiveProps, createTextVNode, toDisplayString, isRef, provide, watchEffect, reactive, onMounted, nextTick, Fragment, renderList, createBlock, mergeProps, createSlots, withCtx, resolveDynamicComponent, mergeDefaults, createCommentVNode, createVNode, TransitionGroup, toHandlers, useSlots, h, withDirectives, vModelCheckbox, Transition, normalizeStyle, vShow, vModelSelect, vModelText, vModelRadio } from "vue";
1
+ import { inject, computed, toRef, unref, defineComponent, useAttrs, toRefs, ref, watch, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, renderSlot, normalizeProps, guardReactiveProps, createTextVNode, toDisplayString, isRef, provide, watchEffect, reactive, onMounted, nextTick, Fragment, renderList, createBlock, mergeProps, createSlots, withCtx, getCurrentInstance, resolveDynamicComponent, mergeDefaults, createCommentVNode, createVNode, TransitionGroup, toHandlers, useSlots, h, withDirectives, vModelCheckbox, Transition, normalizeStyle, vShow, vModelSelect, vModelText, vModelRadio } from "vue";
2
2
  import { uid } from "uid";
3
3
  import { useVModel, useStorage, useMutationObserver, onClickOutside, useFocusWithin, useElementHover, onKeyStroke, useFocus, useElementVisibility, refDebounced, computedAsync } from "@vueuse/core";
4
4
  import mitt from "mitt";
@@ -69,6 +69,11 @@ var DropdownItemRole = /* @__PURE__ */ ((DropdownItemRole2) => {
69
69
  DropdownItemRole2["presentation"] = "presentation";
70
70
  return DropdownItemRole2;
71
71
  })(DropdownItemRole || {});
72
+ var AlertRole = /* @__PURE__ */ ((AlertRole2) => {
73
+ AlertRole2["alert"] = "alert";
74
+ AlertRole2["alertdialog"] = "alertdialog";
75
+ return AlertRole2;
76
+ })(AlertRole || {});
72
77
  const INJECTION_KEY_VOLVER = Symbol.for("volver");
73
78
  const INJECTION_KEY_BUTTON_GROUP = Symbol.for(
74
79
  "buttonGroup"
@@ -1229,6 +1234,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
1229
1234
  setup(__props, { expose: __expose, emit: __emit }) {
1230
1235
  const props = __props;
1231
1236
  const emit = __emit;
1237
+ const instance = getCurrentInstance();
1232
1238
  const volver = useVolver();
1233
1239
  const element = ref(null);
1234
1240
  __expose({ $el: element });
@@ -1295,20 +1301,32 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
1295
1301
  }
1296
1302
  });
1297
1303
  const onClick = (e) => {
1304
+ var _a;
1298
1305
  if (props.disabled) {
1299
1306
  e.preventDefault();
1300
1307
  return;
1301
1308
  }
1309
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onClick) {
1310
+ emit("click", e);
1311
+ return;
1312
+ }
1302
1313
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("click", e);
1303
- emit("click", e);
1304
1314
  };
1305
1315
  const onMouseover = (e) => {
1316
+ var _a;
1317
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseover) {
1318
+ emit("mouseover", e);
1319
+ return;
1320
+ }
1306
1321
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseover", e);
1307
- emit("mouseover", e);
1308
1322
  };
1309
1323
  const onMouseleave = (e) => {
1324
+ var _a;
1325
+ if ((_a = instance == null ? void 0 : instance.vnode.props) == null ? void 0 : _a.onMouseleave) {
1326
+ emit("mouseleave", e);
1327
+ return;
1328
+ }
1310
1329
  dropdownEventBus == null ? void 0 : dropdownEventBus.emit("mouseleave", e);
1311
- emit("mouseleave", e);
1312
1330
  };
1313
1331
  return (_ctx, _cache) => {
1314
1332
  return openBlock(), createBlock(resolveDynamicComponent(unref(hasTag)), mergeProps(unref(hasProps), {
@@ -1509,8 +1527,14 @@ function useComponentIcon(icon, iconPosition) {
1509
1527
  }
1510
1528
  const VvAlertProps = {
1511
1529
  ...IdProps,
1512
- ...ModifiersProps,
1513
1530
  ...IconProps,
1531
+ /**
1532
+ * Component BEM modifiers
1533
+ */
1534
+ modifiers: {
1535
+ type: [String, Array],
1536
+ default: void 0
1537
+ },
1514
1538
  /**
1515
1539
  * The alert is dismissable
1516
1540
  * @default false
@@ -1575,7 +1599,7 @@ const VvAlertProps = {
1575
1599
  */
1576
1600
  role: {
1577
1601
  type: String,
1578
- default: "alert"
1602
+ default: AlertRole.alert
1579
1603
  }
1580
1604
  };
1581
1605
  const VvAlertEvents = ["close"];
@@ -2418,7 +2442,8 @@ const _hoisted_2$b = {
2418
2442
  class: "vv-button__label"
2419
2443
  };
2420
2444
  const __default__$j = {
2421
- name: "VvButton"
2445
+ name: "VvButton",
2446
+ inheritAttrs: false
2422
2447
  };
2423
2448
  const _sfc_main$n = /* @__PURE__ */ defineComponent({
2424
2449
  ...__default__$j,
@@ -2476,6 +2501,14 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
2476
2501
  const toggleValue = computed(() => {
2477
2502
  return props.value !== void 0 ? props.value : name.value;
2478
2503
  });
2504
+ const hasListeners = computed(() => {
2505
+ if (!toggle.value) {
2506
+ return void 0;
2507
+ }
2508
+ return {
2509
+ onClick
2510
+ };
2511
+ });
2479
2512
  const onClick = () => {
2480
2513
  if (toggle.value) {
2481
2514
  if (Array.isArray(modelValue.value)) {
@@ -2499,6 +2532,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
2499
2532
  };
2500
2533
  return (_ctx, _cache) => {
2501
2534
  return openBlock(), createBlock(_sfc_main$v, mergeProps({
2535
+ ...unref(attrs),
2536
+ ...unref(hasListeners),
2502
2537
  disabled: unref(disabled),
2503
2538
  pressed: unref(pressed),
2504
2539
  active: _ctx.active,
@@ -2512,8 +2547,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
2512
2547
  id: unref(hasId),
2513
2548
  ref_key: "element",
2514
2549
  ref: element,
2515
- class: unref(bemCssClasses),
2516
- onClick
2550
+ class: unref(bemCssClasses)
2517
2551
  }), {
2518
2552
  default: withCtx(() => [
2519
2553
  renderSlot(_ctx.$slots, "default", {}, () => [
@@ -4024,6 +4058,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
4024
4058
  if (!props.disabled) {
4025
4059
  return props.selectHintLabel;
4026
4060
  }
4061
+ return "";
4027
4062
  });
4028
4063
  return (_ctx, _cache) => {
4029
4064
  return openBlock(), createBlock(_sfc_main$h, {