@volverjs/ui-vue 0.0.10-beta.14 → 0.0.10-beta.16

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 (154) hide show
  1. package/README.md +96 -2
  2. package/auto-imports.d.ts +2 -0
  3. package/dist/components/VvAccordion/VvAccordion.es.js +33 -9
  4. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  5. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +9 -2
  6. package/dist/components/VvAccordion/index.d.ts +4 -1
  7. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +33 -9
  8. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  9. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +9 -2
  10. package/dist/components/VvAccordionGroup/index.d.ts +4 -1
  11. package/dist/components/VvAction/VvAction.es.js +29 -8
  12. package/dist/components/VvAction/VvAction.umd.js +1 -1
  13. package/dist/components/VvAction/VvAction.vue.d.ts +44 -10
  14. package/dist/components/VvAction/index.d.ts +21 -5
  15. package/dist/components/VvAlert/VvAlert.es.js +91 -107
  16. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  17. package/dist/components/VvAlert/VvAlert.vue.d.ts +14 -4
  18. package/dist/components/VvAlert/index.d.ts +7 -3
  19. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +91 -107
  20. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  21. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +9 -2
  22. package/dist/components/VvAlertGroup/index.d.ts +6 -2
  23. package/dist/components/VvAvatar/VvAvatar.es.js +33 -9
  24. package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
  25. package/dist/components/VvAvatar/VvAvatar.vue.d.ts +11 -3
  26. package/dist/components/VvAvatar/index.d.ts +4 -1
  27. package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +33 -9
  28. package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
  29. package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +9 -2
  30. package/dist/components/VvAvatarGroup/index.d.ts +4 -1
  31. package/dist/components/VvBadge/VvBadge.es.js +33 -9
  32. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  33. package/dist/components/VvBadge/VvBadge.vue.d.ts +11 -3
  34. package/dist/components/VvBadge/index.d.ts +4 -1
  35. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +33 -9
  36. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  37. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +11 -3
  38. package/dist/components/VvBreadcrumb/index.d.ts +4 -1
  39. package/dist/components/VvButton/VvButton.es.js +100 -119
  40. package/dist/components/VvButton/VvButton.umd.js +1 -1
  41. package/dist/components/VvButton/VvButton.vue.d.ts +78 -20
  42. package/dist/components/VvButton/index.d.ts +34 -12
  43. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +33 -9
  44. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  45. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +17 -4
  46. package/dist/components/VvButtonGroup/index.d.ts +8 -2
  47. package/dist/components/VvCard/VvCard.es.js +33 -9
  48. package/dist/components/VvCard/VvCard.umd.js +1 -1
  49. package/dist/components/VvCard/VvCard.vue.d.ts +11 -3
  50. package/dist/components/VvCard/index.d.ts +4 -1
  51. package/dist/components/VvCheckbox/VvCheckbox.es.js +56 -17
  52. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  53. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +94 -22
  54. package/dist/components/VvCheckbox/index.d.ts +44 -11
  55. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +64 -19
  56. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  57. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +93 -22
  58. package/dist/components/VvCheckboxGroup/index.d.ts +44 -11
  59. package/dist/components/VvCombobox/VvCombobox.es.js +108 -165
  60. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  61. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +97 -24
  62. package/dist/components/VvCombobox/index.d.ts +42 -11
  63. package/dist/components/VvDialog/VvDialog.es.js +51 -103
  64. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  65. package/dist/components/VvDropdown/VvDropdown.es.js +33 -9
  66. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  67. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +14 -2
  68. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +61 -12
  69. package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +11 -3
  70. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +25 -6
  71. package/dist/components/VvDropdown/index.d.ts +6 -1
  72. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +33 -9
  73. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  74. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +29 -8
  75. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
  76. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +37 -10
  77. package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
  78. package/dist/components/VvIcon/VvIcon.es.js +22 -95
  79. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  80. package/dist/components/VvIcon/VvIcon.vue.d.ts +81 -44
  81. package/dist/components/VvIcon/index.d.ts +21 -48
  82. package/dist/components/VvInputFile/VvInputFile.es.js +108 -124
  83. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
  84. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +52 -12
  85. package/dist/components/VvInputFile/index.d.ts +24 -6
  86. package/dist/components/VvInputText/VvInputText.es.js +115 -147
  87. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  88. package/dist/components/VvInputText/VvInputText.vue.d.ts +141 -34
  89. package/dist/components/VvInputText/index.d.ts +71 -26
  90. package/dist/components/VvNav/VvNav.es.js +33 -9
  91. package/dist/components/VvNav/VvNav.umd.js +1 -1
  92. package/dist/components/VvNav/VvNav.vue.d.ts +9 -2
  93. package/dist/components/VvNav/index.d.ts +4 -1
  94. package/dist/components/VvNavItem/VvNavItem.es.js +29 -8
  95. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  96. package/dist/components/VvProgress/VvProgress.es.js +33 -9
  97. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  98. package/dist/components/VvProgress/VvProgress.vue.d.ts +9 -2
  99. package/dist/components/VvProgress/index.d.ts +4 -1
  100. package/dist/components/VvRadio/VvRadio.es.js +56 -17
  101. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  102. package/dist/components/VvRadio/VvRadio.vue.d.ts +94 -22
  103. package/dist/components/VvRadio/index.d.ts +44 -11
  104. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +64 -19
  105. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  106. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +93 -22
  107. package/dist/components/VvRadioGroup/index.d.ts +44 -11
  108. package/dist/components/VvSelect/VvSelect.es.js +95 -138
  109. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  110. package/dist/components/VvSelect/VvSelect.vue.d.ts +97 -24
  111. package/dist/components/VvSelect/index.d.ts +46 -12
  112. package/dist/components/VvTab/VvTab.es.js +33 -9
  113. package/dist/components/VvTab/VvTab.umd.js +1 -1
  114. package/dist/components/VvTab/VvTab.vue.d.ts +9 -2
  115. package/dist/components/VvTab/index.d.ts +4 -1
  116. package/dist/components/VvTextarea/VvTextarea.es.js +109 -143
  117. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  118. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +141 -34
  119. package/dist/components/VvTextarea/index.d.ts +66 -17
  120. package/dist/components/VvTooltip/VvTooltip.es.js +33 -9
  121. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  122. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +9 -2
  123. package/dist/components/VvTooltip/index.d.ts +4 -1
  124. package/dist/components/index.es.js +179 -233
  125. package/dist/components/index.umd.js +1 -1
  126. package/dist/composables/useComponentIcon.d.ts +9 -8
  127. package/dist/directives/index.es.js +33 -9
  128. package/dist/directives/index.umd.js +1 -1
  129. package/dist/directives/v-tooltip.es.js +33 -9
  130. package/dist/directives/v-tooltip.umd.js +1 -1
  131. package/dist/icons.es.js +3 -3
  132. package/dist/icons.umd.js +1 -1
  133. package/dist/props/index.d.ts +251 -61
  134. package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +15 -4
  135. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +77 -22
  136. package/dist/stories/Icon/Icon.settings.d.ts +1 -0
  137. package/package.json +33 -33
  138. package/src/assets/icons/detailed.json +1 -1
  139. package/src/assets/icons/normal.json +1 -1
  140. package/src/assets/icons/simple.json +1 -1
  141. package/src/components/VvAlert/index.ts +1 -3
  142. package/src/components/VvAlertGroup/index.ts +2 -1
  143. package/src/components/VvButton/VvButton.vue +6 -6
  144. package/src/components/VvButton/index.ts +2 -4
  145. package/src/components/VvCombobox/VvCombobox.vue +5 -8
  146. package/src/components/VvIcon/VvIcon.vue +2 -2
  147. package/src/components/VvIcon/index.ts +22 -48
  148. package/src/components/VvInputFile/VvInputFile.vue +1 -1
  149. package/src/components/VvInputText/VvInputText.vue +11 -12
  150. package/src/components/VvSelect/VvSelect.vue +5 -8
  151. package/src/components/VvTextarea/VvTextarea.vue +5 -8
  152. package/src/composables/useComponentIcon.ts +15 -14
  153. package/src/props/index.ts +89 -25
  154. package/src/stories/Icon/Icon.settings.ts +3 -3
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@iconify/vue"),require("uid")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue","uid"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvButton=t(e.vue,e.vue$1,e.uid)}(this,(function(e,t,o){"use strict";const n={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}};var r=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(r||{}),l=(e=>(e.before="before",e.after="after",e))(l||{}),i=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(i||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{}),u=(e=>(e._blank="_blank",e._self="_self",e._parent="_parent",e._top="_top",e))(u||{});const s=Symbol.for("volver"),c=Symbol.for("buttonGroup"),d=Symbol.for("dropdownTrigger"),f=Symbol.for("dropdownAction");function v(){return e.inject(s)}function p(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}))}const m=e.defineComponent({name:"VvIcon",props:n,setup(o){const n=o,r=e.computed((()=>"string"==typeof n.rotate?parseFloat(n.rotate):n.rotate)),l=e.ref(!0),i=v(),{modifiers:a}=e.toRefs(n),u=p("vv-icon",a),s=e.computed((()=>n.provider||(null==i?void 0:i.iconsProvider))),c=e.computed((()=>{const e=n.name??"",o=`@${s.value}:${n.prefix}:${e}`;if(t.iconExists(o))return o;const r=null==i?void 0:i.iconsCollections.find((o=>{const n=`@${s.value}:${o.prefix}:${e}`;return t.iconExists(n)}));return r?`@${s.value}:${r.prefix}:${e}`:e}));function d(e){const o=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),r=(null==o?void 0:o.innerHTML.trim())||"";o&&r&&t.addIcon(`@${s.value}:${n.prefix}:${n.name}`,{body:r,height:o.viewBox.baseVal.height,width:o.viewBox.baseVal.width})}return i&&n.src&&!t.iconExists(`@${s.value}:${n.prefix}:${n.name}`)&&(l.value=!1,i.fetchIcon(n.src).then((e=>{e&&(d(e),l.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),n.svg&&d(n.svg),(o,n)=>e.unref(l)?(e.openBlock(),e.createBlock(e.unref(t.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:o.inline,width:o.width,height:o.height,horizontalFlip:o.horizontalFlip,verticalFlip:o.verticalFlip,flip:o.flip,rotate:e.unref(r),color:o.color,onLoad:o.onLoad,icon:e.unref(c)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}}),g={to:{type:[String,Object]},href:String,target:{type:String,validator:e=>Object.values(u).includes(e)},rel:{type:String,default:"noopener noreferrer"}},b={loading:Boolean,loadingLabel:{type:String,default:"Loading..."}},y={disabled:Boolean},h={active:Boolean},S={current:Boolean},k={pressed:Boolean},B={label:[String,Number]},$={modifiers:[String,Array]};l.before;const x={unselectable:{type:Boolean,default:!0}},w={id:[String,Number]};r.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const A={...y,...B,...k,...h,...S,...g,type:{type:String,default:i.button,validator:e=>Object.values(i).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},L=A;const j=e.defineComponent({name:"VvAction",props:L,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:n}){const r=t,l=v(),i=e.ref(null);o({$el:i});const{reference:u,bus:s,aria:c,expanded:p}=e.inject(d,{});e.watch((()=>i.value),(e=>{u&&(u.value=e)}));const m=e.computed((()=>r.pressed||(null==p?void 0:p.value))),{role:g}=e.inject(f,{}),b=e.computed((()=>{switch(!0){case r.disabled:return a.button;case void 0!==r.to:return(null==l?void 0:l.nuxt)?a.nuxtLink:a.routerLink;case void 0!==r.href:return a.a;default:return r.defaultTag}})),y=e.computed((()=>{const e={...null==c?void 0:c.value,ariaPressed:!!m.value||void 0,ariaLabel:r.ariaLabel,role:null==g?void 0:g.value};switch(b.value){case a.a:return{...e,href:r.href,target:r.target,rel:r.rel};case a.routerLink:case a.nuxtLink:return{...e,to:r.to,target:r.target};case a.button:return{...e,type:r.type,disabled:r.disabled};default:return e}})),h=e=>{r.disabled?e.preventDefault():(null==s||s.emit("click",e),n("click",e))},S=e=>{null==s||s.emit("mouseover",e),n("mouseover",e)},k=e=>{null==s||s.emit("mouseleave",e),n("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(b)),e.mergeProps(e.unref(y),{ref_key:"element",ref:i,class:{active:t.active,pressed:e.unref(m),disabled:t.disabled,current:t.current},onClickPassive:h,onMouseoverPassive:S,onMouseleavePassive:k}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}});function V(e,t,o){return o?O(e,o)===O(t,o):_(e,t)}function _(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){const o=Array.isArray(e),n=Array.isArray(t);let r,l,i;if(o&&n){if(l=e.length,l!=t.length)return!1;for(r=l;0!=r--;)if(!_(e[r],t[r]))return!1;return!0}if(o!=n)return!1;const a=e instanceof Date,u=t instanceof Date;if(a!=u)return!1;if(a&&u)return e.getTime()==t.getTime();const s=e instanceof RegExp,c=t instanceof RegExp;if(s!=c)return!1;if(s&&c)return e.toString()==t.toString();const d=Object.keys(e);if(l=d.length,l!==Object.keys(t).length)return!1;for(r=l;0!=r--;)if(!Object.prototype.hasOwnProperty.call(t,d[r]))return!1;for(r=l;0!=r--;)if(i=d[r],!_(e[i],t[i]))return!1;return!0}return e!=e&&t!=t}function O(e,t){if(e&&Object.keys(e).length&&t){if(-1===t.indexOf("."))return e[t];{const o=t.split(".");let n=e;for(let t=0,r=o.length;t<r;++t){if(null==e)return null;n=n[o[t]]}return n}}return null}function P(e,t){if(null!=e&&t&&t.length)for(const o of t)if(V(e,o))return!0;return!1}function N(t){const o=e.inject(t,void 0),n=e.computed((()=>{return t=o,!(null==(n=e.unref(t))||""===n||Array.isArray(n)&&0===n.length||!(n instanceof Date)&&"object"==typeof n&&0===Object.keys(n).length);var t,n}));return{group:o,isInGroup:n,getGroupOrLocalRef:function(t,n,r){if(null==o?void 0:o.value){const n=e.unref(o.value)[t];return e.computed({get:()=>null==n?void 0:n.value,set(e){n.value=e}})}const l=e.toRef(n,t);return e.computed({get:()=>l.value,set(e){r&&r(`update:${t}`,e)}})}}}const C={...A,...w,...$,...x,...b,icon:[String,Object],iconPosition:{type:String,default:r.left,validator:e=>Object.values(r).includes(e)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};const E={key:1,class:"vv-button__label"},D={key:1,class:"vv-button__label"};return e.defineComponent({name:"VvButton",props:C,emits:["update:modelValue"],setup(t,{expose:n,emit:l}){const i=t,a=e.useAttrs(),u=e.useSlots(),{id:s,modifiers:d,iconPosition:f,icon:v,label:g,modelValue:b,disabled:y,toggle:h,unselectable:S}=function(t,o){const{group:n,isInGroup:r,getGroupOrLocalRef:l}=N(c),{id:i,iconPosition:a,icon:u,label:s,pressed:d}=e.toRefs(t),f=l("modelValue",t,o),v=l("toggle",t),p=l("unselectable",t),m=e.computed((()=>(null==n?void 0:n.value.multiple.value)??!1)),g=e.computed((()=>{let e=t.modifiers,o=null==n?void 0:n.value.modifiers.value;const r=new Set;return e&&(Array.isArray(e)||(e=e.split(" ")),e.forEach((e=>r.add(e)))),o&&(Array.isArray(o)||(o=o.split(" ")),o.forEach((e=>r.add(e)))),Array.from(r)})),b=e.computed((()=>{var e;return Boolean(t.disabled||(null==(e=null==n?void 0:n.value)?void 0:e.disabled.value))}));return{group:n,isInGroup:r,modelValue:f,toggle:v,unselectable:p,multiple:m,modifiers:g,disabled:b,id:i,pressed:d,iconPosition:a,icon:u,label:s}}(i,l),k=(t=>e.computed((()=>String((null==t?void 0:t.value)||o.uid()))))(s),B=e.computed((()=>(null==a?void 0:a.name)||k.value)),$=e.ref(null);n({$el:e.computed((()=>{var e;return null==(e=$.value)?void 0:e.$el}))});const x=e.computed((()=>h.value?Array.isArray(b.value)?P(B.value,b.value):V(B.value,b.value):i.pressed)),w=p("vv-button",d,e.computed((()=>({reverse:[r.right,r.bottom].includes(f.value),column:[r.top,r.bottom].includes(f.value),"icon-only":Boolean((null==v?void 0:v.value)&&!(null==g?void 0:g.value)&&!u.default)})))),A=e.computed((()=>"string"==typeof(null==v?void 0:v.value)?{name:null==v?void 0:v.value}:null==v?void 0:v.value)),L=e.computed((()=>void 0!==i.value?i.value:B.value)),_=()=>{if(h.value){if(Array.isArray(b.value))return P(L.value,b.value)?void(S.value&&(b.value=b.value.filter((e=>e!==L.value)))):void b.value.push(L.value);if(L.value===b.value&&S.value)return void(b.value=i.uncheckedValue);b.value=L.value}};return(t,o)=>(e.openBlock(),e.createBlock(j,e.mergeProps({disabled:e.unref(y),pressed:e.unref(x),active:t.active,type:t.type,to:t.to,href:t.href,target:t.target,rel:t.rel,ariaLabel:t.ariaLabel},{id:e.unref(k),ref_key:"element",ref:$,class:e.unref(w),onClick:_}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[t.loading?e.renderSlot(t.$slots,"loading",{key:0},(()=>[t.loadingIcon?(e.openBlock(),e.createBlock(m,{key:0,class:"vv-button__loading-icon",name:t.loadingIcon},null,8,["name"])):e.createCommentVNode("v-if",!0),t.loadingLabel?(e.openBlock(),e.createElementBlock("span",E,e.toDisplayString(t.loadingLabel),1)):e.createCommentVNode("v-if",!0)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(t.$slots,"before"),e.unref(v)?(e.openBlock(),e.createBlock(m,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(A)),null,16)):e.createCommentVNode("v-if",!0),e.unref(g)?(e.openBlock(),e.createElementBlock("span",D,[e.renderSlot(t.$slots,"label",{},(()=>[e.createTextVNode(e.toDisplayString(e.unref(g)),1)]))])):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"after")],64))]))])),_:3},16,["id","class"]))}})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@iconify/vue"),require("uid")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue","uid"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvButton=t(e.vue,e.vue$1,e.uid)}(this,(function(e,t,o){"use strict";var n=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(n||{}),l=(e=>(e.before="before",e.after="after",e))(l||{}),r=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(r||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{}),u=(e=>(e._blank="_blank",e._self="_self",e._parent="_parent",e._top="_top",e))(u||{});const i=Symbol.for("volver"),s=Symbol.for("buttonGroup"),d=Symbol.for("dropdownTrigger"),c=Symbol.for("dropdownAction");function v(){return e.inject(i)}function f(t,o,n){return e.computed((()=>{const l={[t]:!0},r="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return r&&Array.isArray(r)&&r.forEach((e=>{e&&(l[`${t}--${e}`]=!0)})),n&&Object.keys(n.value).forEach((o=>{l[`${t}--${o}`]=e.unref(n.value[o])})),l}))}const p=e.defineComponent({name:"VvIcon",props:e.mergeDefaults({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},{prefix:"normal"}),setup(o){const n=o,l=e.computed((()=>"string"==typeof n.rotate?parseFloat(n.rotate):n.rotate)),r=e.ref(!0),a=v(),{modifiers:u}=e.toRefs(n),i=f("vv-icon",u),s=e.computed((()=>n.provider||(null==a?void 0:a.iconsProvider))),d=e.computed((()=>{const e=n.name??"",o=`@${s.value}:${n.prefix}:${e}`;if(t.iconExists(o))return o;const l=null==a?void 0:a.iconsCollections.find((o=>{const n=`@${s.value}:${o.prefix}:${e}`;return t.iconExists(n)}));return l?`@${s.value}:${l.prefix}:${e}`:e}));function c(e){const o=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=(null==o?void 0:o.innerHTML.trim())||"";o&&l&&t.addIcon(`@${s.value}:${n.prefix}:${n.name}`,{body:l,height:o.viewBox.baseVal.height,width:o.viewBox.baseVal.width})}return a&&n.src&&!t.iconExists(`@${s.value}:${n.prefix}:${n.name}`)&&(r.value=!1,a.fetchIcon(n.src).then((e=>{e&&(c(e),r.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),n.svg&&c(n.svg),(o,n)=>e.unref(r)?(e.openBlock(),e.createBlock(e.unref(t.Icon),e.mergeProps({key:0,class:e.unref(i)},{inline:o.inline,width:o.width,height:o.height,horizontalFlip:o.horizontalFlip,verticalFlip:o.verticalFlip,flip:o.flip,rotate:e.unref(l),color:o.color,onLoad:o.onLoad,icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}}),m={to:{type:[String,Object]},href:String,target:{type:String,default:void 0,validator:e=>Object.values(u).includes(e)},rel:{type:String,default:"noopener noreferrer"}},g={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},b={disabled:{type:Boolean,default:!1}},y={active:{type:Boolean,default:!1}},h={current:{type:Boolean,default:!1}},k={pressed:{type:Boolean,default:!1}},B={label:{type:[String,Number],default:void 0}},S={modifiers:{type:[String,Array],default:void 0}},$={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:l.before,validation:e=>Object.values(l).includes(e)}},x={unselectable:{type:Boolean,default:!0}},w={id:[String,Number]};n.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const A={...b,...B,...k,...y,...h,...m,type:{type:String,default:r.button,validator:e=>Object.values(r).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},L=A;const j=e.defineComponent({name:"VvAction",props:L,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:n}){const l=t,r=v(),u=e.ref(null);o({$el:u});const{reference:i,bus:s,aria:f,expanded:p}=e.inject(d,{});e.watch((()=>u.value),(e=>{i&&(i.value=e)}));const m=e.computed((()=>l.pressed||(null==p?void 0:p.value))),{role:g}=e.inject(c,{}),b=e.computed((()=>{switch(!0){case l.disabled:return a.button;case void 0!==l.to:return(null==r?void 0:r.nuxt)?a.nuxtLink:a.routerLink;case void 0!==l.href:return a.a;default:return l.defaultTag}})),y=e.computed((()=>{const e={...null==f?void 0:f.value,ariaPressed:!!m.value||void 0,ariaLabel:l.ariaLabel,role:null==g?void 0:g.value};switch(b.value){case a.a:return{...e,href:l.href,target:l.target,rel:l.rel};case a.routerLink:case a.nuxtLink:return{...e,to:l.to,target:l.target};case a.button:return{...e,type:l.type,disabled:l.disabled};default:return e}})),h=e=>{l.disabled?e.preventDefault():(null==s||s.emit("click",e),n("click",e))},k=e=>{null==s||s.emit("mouseover",e),n("mouseover",e)},B=e=>{null==s||s.emit("mouseleave",e),n("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(b)),e.mergeProps(e.unref(y),{ref_key:"element",ref:u,class:{active:t.active,pressed:e.unref(m),disabled:t.disabled,current:t.current},onClickPassive:h,onMouseoverPassive:k,onMouseleavePassive:B}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}});function V(e,t,o){return o?O(e,o)===O(t,o):_(e,t)}function _(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){const o=Array.isArray(e),n=Array.isArray(t);let l,r,a;if(o&&n){if(r=e.length,r!=t.length)return!1;for(l=r;0!=l--;)if(!_(e[l],t[l]))return!1;return!0}if(o!=n)return!1;const u=e instanceof Date,i=t instanceof Date;if(u!=i)return!1;if(u&&i)return e.getTime()==t.getTime();const s=e instanceof RegExp,d=t instanceof RegExp;if(s!=d)return!1;if(s&&d)return e.toString()==t.toString();const c=Object.keys(e);if(r=c.length,r!==Object.keys(t).length)return!1;for(l=r;0!=l--;)if(!Object.prototype.hasOwnProperty.call(t,c[l]))return!1;for(l=r;0!=l--;)if(a=c[l],!_(e[a],t[a]))return!1;return!0}return e!=e&&t!=t}function O(e,t){if(e&&Object.keys(e).length&&t){if(-1===t.indexOf("."))return e[t];{const o=t.split(".");let n=e;for(let t=0,l=o.length;t<l;++t){if(null==e)return null;n=n[o[t]]}return n}}return null}function I(e,t){if(null!=e&&t&&t.length)for(const o of t)if(V(e,o))return!0;return!1}function P(t){const o=e.inject(t,void 0),n=e.computed((()=>{return t=o,!(null==(n=e.unref(t))||""===n||Array.isArray(n)&&0===n.length||!(n instanceof Date)&&"object"==typeof n&&0===Object.keys(n).length);var t,n}));return{group:o,isInGroup:n,getGroupOrLocalRef:function(t,n,l){if(null==o?void 0:o.value){const n=e.unref(o.value)[t];return e.computed({get:()=>null==n?void 0:n.value,set(e){n.value=e}})}const r=e.toRef(n,t);return e.computed({get:()=>r.value,set(e){l&&l(`update:${t}`,e)}})}}}const C={...A,...w,...S,...x,...g,...$,iconPosition:{type:String,default:n.left,validator:e=>Object.values(n).includes(e)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};const E={key:1,class:"vv-button__label"},D={key:1,class:"vv-button__label"};return e.defineComponent({name:"VvButton",props:C,emits:["update:modelValue"],setup(t,{expose:r,emit:a}){const u=t,i=e.useAttrs(),d=e.useSlots(),{id:c,modifiers:v,iconPosition:m,icon:g,label:b,modelValue:y,disabled:h,toggle:k,unselectable:B}=function(t,o){const{group:n,isInGroup:l,getGroupOrLocalRef:r}=P(s),{id:a,iconPosition:u,icon:i,label:d,pressed:c}=e.toRefs(t),v=r("modelValue",t,o),f=r("toggle",t),p=r("unselectable",t),m=e.computed((()=>(null==n?void 0:n.value.multiple.value)??!1)),g=e.computed((()=>{let e=t.modifiers,o=null==n?void 0:n.value.modifiers.value;const l=new Set;return e&&(Array.isArray(e)||(e=e.split(" ")),e.forEach((e=>l.add(e)))),o&&(Array.isArray(o)||(o=o.split(" ")),o.forEach((e=>l.add(e)))),Array.from(l)})),b=e.computed((()=>{var e;return Boolean(t.disabled||(null==(e=null==n?void 0:n.value)?void 0:e.disabled.value))}));return{group:n,isInGroup:l,modelValue:v,toggle:f,unselectable:p,multiple:m,modifiers:g,disabled:b,id:a,pressed:c,iconPosition:u,icon:i,label:d}}(u,a),S=(t=>e.computed((()=>String((null==t?void 0:t.value)||o.uid()))))(c),$=e.computed((()=>(null==i?void 0:i.name)||S.value)),x=e.ref(null);r({$el:e.computed((()=>{var e;return null==(e=x.value)?void 0:e.$el}))});const w=e.computed((()=>k.value?Array.isArray(y.value)?I($.value,y.value):V($.value,y.value):u.pressed)),A=f("vv-button",v,e.computed((()=>({reverse:[n.right,n.bottom].includes(m.value),column:[n.top,n.bottom].includes(m.value),"icon-only":Boolean((null==g?void 0:g.value)&&!(null==b?void 0:b.value)&&!d.default)})))),{hasIcon:L}=function(t,o){const r=e.computed((()=>"string"==typeof(null==t?void 0:t.value)?{name:null==t?void 0:t.value}:null==t?void 0:t.value)),a=e.computed((()=>(null==o?void 0:o.value)===l.before?r.value:void 0)),u=e.computed((()=>(null==o?void 0:o.value)===l.after?r.value:void 0)),i=e.computed((()=>(null==o?void 0:o.value)===n.left?r.value:void 0)),s=e.computed((()=>(null==o?void 0:o.value)===n.right?r.value:void 0)),d=e.computed((()=>(null==o?void 0:o.value)===n.top?r.value:void 0)),c=e.computed((()=>(null==o?void 0:o.value)===n.bottom?r.value:void 0));return{hasIcon:r,hasIconLeft:i,hasIconRight:s,hasIconTop:d,hasIconBottom:c,hasIconBefore:a,hasIconAfter:u}}(g),_=e.computed((()=>void 0!==u.value?u.value:$.value)),O=()=>{if(k.value){if(Array.isArray(y.value))return I(_.value,y.value)?void(B.value&&(y.value=y.value.filter((e=>e!==_.value)))):void y.value.push(_.value);if(_.value===y.value&&B.value)return void(y.value=u.uncheckedValue);y.value=_.value}};return(t,o)=>(e.openBlock(),e.createBlock(j,e.mergeProps({disabled:e.unref(h),pressed:e.unref(w),active:t.active,type:t.type,to:t.to,href:t.href,target:t.target,rel:t.rel,ariaLabel:t.ariaLabel},{id:e.unref(S),ref_key:"element",ref:x,class:e.unref(A),onClick:O}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[t.loading?e.renderSlot(t.$slots,"loading",{key:0},(()=>[t.loadingIcon?(e.openBlock(),e.createBlock(p,{key:0,class:"vv-button__loading-icon",name:t.loadingIcon},null,8,["name"])):e.createCommentVNode("v-if",!0),t.loadingLabel?(e.openBlock(),e.createElementBlock("span",E,e.toDisplayString(t.loadingLabel),1)):e.createCommentVNode("v-if",!0)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(t.$slots,"before"),e.unref(L)?(e.openBlock(),e.createBlock(p,e.mergeProps({key:0},e.unref(L),{class:"vv-button__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.unref(b)?(e.openBlock(),e.createElementBlock("span",D,[e.renderSlot(t.$slots,"label",{},(()=>[e.createTextVNode(e.toDisplayString(e.unref(b)),1)]))])):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"after")],64))]))])),_:3},16,["id","class"]))}})}));
@@ -1,6 +1,5 @@
1
1
  import { Side } from '../../constants';
2
2
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
3
- icon: (ObjectConstructor | StringConstructor)[];
4
3
  iconPosition: {
5
4
  type: globalThis.PropType<"left" | "right" | "top" | "bottom">;
6
5
  default: Side;
@@ -26,7 +25,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
26
25
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
27
26
  default: undefined;
28
27
  };
29
- loading: BooleanConstructor;
28
+ icon: {
29
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
30
+ default: undefined;
31
+ };
32
+ loading: {
33
+ type: BooleanConstructor;
34
+ default: boolean;
35
+ };
30
36
  loadingLabel: {
31
37
  type: StringConstructor;
32
38
  default: string;
@@ -35,7 +41,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
35
41
  type: BooleanConstructor;
36
42
  default: boolean;
37
43
  };
38
- modifiers: globalThis.PropType<string | string[]>;
44
+ modifiers: {
45
+ type: globalThis.PropType<string | string[]>;
46
+ default: undefined;
47
+ };
39
48
  id: (StringConstructor | NumberConstructor)[];
40
49
  type: {
41
50
  type: globalThis.PropType<"button" | "submit" | "reset">;
@@ -56,25 +65,42 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
56
65
  href: StringConstructor;
57
66
  target: {
58
67
  type: globalThis.PropType<"_blank" | "_self" | "_parent" | "_top">;
68
+ default: undefined;
59
69
  validator: (value: import("../../constants").AnchorTarget) => boolean;
60
70
  };
71
+ /**
72
+ * @description The component pressed state by prop or group.
73
+ * @returns {string} The component tag.
74
+ */
61
75
  rel: {
62
76
  type: StringConstructor;
63
77
  default: string;
64
78
  };
65
- current: BooleanConstructor;
66
- active: BooleanConstructor;
67
- pressed: BooleanConstructor;
68
- label: (StringConstructor | NumberConstructor)[]; /**
69
- * @description Catch click event
70
- */
71
- disabled: BooleanConstructor;
79
+ current: {
80
+ type: BooleanConstructor;
81
+ default: boolean;
82
+ };
83
+ active: {
84
+ type: BooleanConstructor;
85
+ default: boolean;
86
+ };
87
+ pressed: {
88
+ type: BooleanConstructor;
89
+ default: boolean;
90
+ };
91
+ label: {
92
+ type: (StringConstructor | NumberConstructor)[];
93
+ default: undefined;
94
+ };
95
+ disabled: {
96
+ type: BooleanConstructor;
97
+ default: boolean;
98
+ };
72
99
  }, {
73
100
  $el: globalThis.ComputedRef<HTMLElement | undefined>;
74
101
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
75
102
  [x: string]: (...args: any[]) => void;
76
103
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
77
- icon: (ObjectConstructor | StringConstructor)[];
78
104
  iconPosition: {
79
105
  type: globalThis.PropType<"left" | "right" | "top" | "bottom">;
80
106
  default: Side;
@@ -100,7 +126,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
100
126
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
101
127
  default: undefined;
102
128
  };
103
- loading: BooleanConstructor;
129
+ icon: {
130
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
131
+ default: undefined;
132
+ };
133
+ loading: {
134
+ type: BooleanConstructor;
135
+ default: boolean;
136
+ };
104
137
  loadingLabel: {
105
138
  type: StringConstructor;
106
139
  default: string;
@@ -109,7 +142,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
109
142
  type: BooleanConstructor;
110
143
  default: boolean;
111
144
  };
112
- modifiers: globalThis.PropType<string | string[]>;
145
+ modifiers: {
146
+ type: globalThis.PropType<string | string[]>;
147
+ default: undefined;
148
+ };
113
149
  id: (StringConstructor | NumberConstructor)[];
114
150
  type: {
115
151
  type: globalThis.PropType<"button" | "submit" | "reset">;
@@ -130,32 +166,54 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
130
166
  href: StringConstructor;
131
167
  target: {
132
168
  type: globalThis.PropType<"_blank" | "_self" | "_parent" | "_top">;
169
+ default: undefined;
133
170
  validator: (value: import("../../constants").AnchorTarget) => boolean;
134
171
  };
172
+ /**
173
+ * @description The component pressed state by prop or group.
174
+ * @returns {string} The component tag.
175
+ */
135
176
  rel: {
136
177
  type: StringConstructor;
137
178
  default: string;
138
179
  };
139
- current: BooleanConstructor;
140
- active: BooleanConstructor;
141
- pressed: BooleanConstructor;
142
- label: (StringConstructor | NumberConstructor)[]; /**
143
- * @description Catch click event
144
- */
145
- disabled: BooleanConstructor;
180
+ current: {
181
+ type: BooleanConstructor;
182
+ default: boolean;
183
+ };
184
+ active: {
185
+ type: BooleanConstructor;
186
+ default: boolean;
187
+ };
188
+ pressed: {
189
+ type: BooleanConstructor;
190
+ default: boolean;
191
+ };
192
+ label: {
193
+ type: (StringConstructor | NumberConstructor)[];
194
+ default: undefined;
195
+ };
196
+ disabled: {
197
+ type: BooleanConstructor;
198
+ default: boolean;
199
+ };
146
200
  }>>, {
147
201
  disabled: boolean;
148
202
  modelValue: string | number | boolean;
149
203
  toggle: boolean;
150
204
  unselectable: boolean;
205
+ modifiers: string | string[];
206
+ label: string | number;
151
207
  value: string | number | boolean;
152
208
  type: "button" | "submit" | "reset";
209
+ target: "_blank" | "_self" | "_parent" | "_top";
153
210
  ariaLabel: string;
154
211
  defaultTag: string;
155
212
  rel: string;
156
213
  current: boolean;
157
214
  active: boolean;
158
215
  pressed: boolean;
216
+ icon: string | import("../VvIcon").VvIconProps;
159
217
  iconPosition: "left" | "right" | "top" | "bottom";
160
218
  loadingIcon: string;
161
219
  uncheckedValue: string | number | boolean;
@@ -3,10 +3,6 @@ import type { ButtonGroupState } from '../../types/group';
3
3
  import { Side } from '../../constants';
4
4
  export declare const VvButtonEvents: string[];
5
5
  export declare const VvButtonProps: {
6
- /**
7
- * Button icon
8
- */
9
- icon: (ObjectConstructor | StringConstructor)[];
10
6
  /**
11
7
  * Button icon position
12
8
  */
@@ -50,7 +46,14 @@ export declare const VvButtonProps: {
50
46
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
51
47
  default: undefined;
52
48
  };
53
- loading: BooleanConstructor;
49
+ icon: {
50
+ type: PropType<string | import("../VvIcon").VvIconProps>;
51
+ default: undefined;
52
+ };
53
+ loading: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
54
57
  loadingLabel: {
55
58
  type: StringConstructor;
56
59
  default: string;
@@ -59,7 +62,10 @@ export declare const VvButtonProps: {
59
62
  type: BooleanConstructor;
60
63
  default: boolean;
61
64
  };
62
- modifiers: PropType<string | string[]>;
65
+ modifiers: {
66
+ type: PropType<string | string[]>;
67
+ default: undefined;
68
+ };
63
69
  id: (StringConstructor | NumberConstructor)[];
64
70
  type: {
65
71
  type: PropType<"button" | "submit" | "reset">;
@@ -80,17 +86,33 @@ export declare const VvButtonProps: {
80
86
  href: StringConstructor;
81
87
  target: {
82
88
  type: PropType<"_blank" | "_self" | "_parent" | "_top">;
89
+ default: undefined;
83
90
  validator: (value: import("../../constants").AnchorTarget) => boolean;
84
91
  };
85
92
  rel: {
86
93
  type: StringConstructor;
87
94
  default: string;
88
95
  };
89
- current: BooleanConstructor;
90
- active: BooleanConstructor;
91
- pressed: BooleanConstructor;
92
- label: (StringConstructor | NumberConstructor)[];
93
- disabled: BooleanConstructor;
96
+ current: {
97
+ type: BooleanConstructor;
98
+ default: boolean;
99
+ };
100
+ active: {
101
+ type: BooleanConstructor;
102
+ default: boolean;
103
+ };
104
+ pressed: {
105
+ type: BooleanConstructor;
106
+ default: boolean;
107
+ };
108
+ label: {
109
+ type: (StringConstructor | NumberConstructor)[];
110
+ default: undefined;
111
+ };
112
+ disabled: {
113
+ type: BooleanConstructor;
114
+ default: boolean;
115
+ };
94
116
  };
95
117
  export type VvButtonPropsTypes = ExtractPropTypes<typeof VvButtonProps>;
96
118
  /**
@@ -108,6 +130,6 @@ export declare function useGroupProps(props: VvButtonPropsTypes, emit: (event: (
108
130
  id: Ref<string | number | undefined> | undefined;
109
131
  pressed: Ref<boolean>;
110
132
  iconPosition: Ref<"left" | "right" | "top" | "bottom">;
111
- icon: Ref<string | Record<string, any> | undefined> | undefined;
133
+ icon: Ref<string | import("../VvIcon").VvIconProps | undefined> | undefined;
112
134
  label: Ref<string | number | undefined> | undefined;
113
135
  };
@@ -65,6 +65,7 @@ const LinkProps = {
65
65
  */
66
66
  target: {
67
67
  type: String,
68
+ default: void 0,
68
69
  validator: (value) => Object.values(AnchorTarget).includes(value)
69
70
  },
70
71
  /**
@@ -79,44 +80,65 @@ const DisabledProps = {
79
80
  /**
80
81
  * Whether the form control is disabled
81
82
  */
82
- disabled: Boolean
83
+ disabled: {
84
+ type: Boolean,
85
+ default: false
86
+ }
83
87
  };
84
88
  const ActiveProps = {
85
89
  /**
86
90
  * Whether the item is active
87
91
  */
88
- active: Boolean
92
+ active: {
93
+ type: Boolean,
94
+ default: false
95
+ }
89
96
  };
90
97
  const CurrentProps = {
91
98
  /**
92
99
  * Whether the item is current
93
100
  */
94
- current: Boolean
101
+ current: {
102
+ type: Boolean,
103
+ default: false
104
+ }
95
105
  };
96
106
  const PressedProps = {
97
107
  /**
98
108
  * Whether the item is pressed
99
109
  */
100
- pressed: Boolean
110
+ pressed: {
111
+ type: Boolean,
112
+ default: false
113
+ }
101
114
  };
102
115
  const LabelProps = {
103
116
  /**
104
117
  * The item label
105
118
  */
106
- label: [String, Number]
119
+ label: {
120
+ type: [String, Number],
121
+ default: void 0
122
+ }
107
123
  };
108
124
  const ModifiersProps = {
109
125
  /**
110
126
  * Component BEM modifiers
111
127
  */
112
- modifiers: [String, Array]
128
+ modifiers: {
129
+ type: [String, Array],
130
+ default: void 0
131
+ }
113
132
  };
114
133
  ({
115
134
  /**
116
135
  * VvIcon name or props
117
136
  * @see VVIcon
118
137
  */
119
- icon: { type: [String, Object] },
138
+ icon: {
139
+ type: [String, Object],
140
+ default: void 0
141
+ },
120
142
  /**
121
143
  * VvIcon position
122
144
  */
@@ -153,7 +175,8 @@ const UnselectableProps = {
153
175
  * Dropdown show / hide transition name
154
176
  */
155
177
  transitionName: {
156
- type: String
178
+ type: String,
179
+ default: void 0
157
180
  },
158
181
  /**
159
182
  * Offset of the dropdown from the trigger
@@ -221,7 +244,8 @@ const UnselectableProps = {
221
244
  * Set dropdown width to the same as the trigger
222
245
  */
223
246
  triggerWidth: {
224
- type: Boolean
247
+ type: Boolean,
248
+ default: false
225
249
  }
226
250
  });
227
251
  ({
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue")):"function"==typeof define&&define.amd?define(["vue"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvButtonGroup=o(e.vue)}(this,(function(e){"use strict";var o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),t=(e=>(e.before="before",e.after="after",e))(t||{}),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 u=Symbol.for("buttonGroup"),n={disabled:Boolean},a=(Boolean,Boolean,Boolean,{modifiers:[String,Array]});t.before;const i={unselectable:{type:Boolean,default:!0}};o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,l.button,r.button;const s={...a,...n,...i,itemModifiers:{type:[String,Array],default:""},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Array],default:void 0}};return e.defineComponent({name:"VvButtonGroup",props:s,emits:["update:modelValue"],setup(o,{emit:t}){const l=o,{disabled:r,toggle:n,modifiers:a,multiple:i,unselectable:s,itemModifiers:d}=e.toRefs(l);e.watchEffect((()=>{"string"==typeof l.modelValue&&i.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")}));const f=e.computed({get:()=>i.value?l.modelValue:Array.isArray(l.modelValue)?l.modelValue[0]:l.modelValue,set:e=>void 0===e||!Array.isArray(l.modelValue)&&!i.value||Array.isArray(e)?t("update:modelValue",e):t("update:modelValue",[e])});!function(o){if(Object.keys(o).some((t=>"key"!==t&&!e.isRef(o[t]))))throw Error("One or more groupState props aren't ref.");e.provide(o.key,e.computed((()=>o)))}({key:u,modelValue:f,disabled:r,toggle:n,multiple:i,unselectable:s,modifiers:d});const m=function(o,t,l){return e.computed((()=>{const r={[o]:!0},u="string"==typeof(null==t?void 0:t.value)?t.value.split(" "):null==t?void 0:t.value;return u&&Array.isArray(u)&&u.forEach((e=>{e&&(r[`${o}--${e}`]=!0)})),l&&Object.keys(l.value).forEach((t=>{r[`${o}--${t}`]=e.unref(l.value[t])})),r}))}("vv-button-group",a);return(o,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(m)),role:"group"},[e.renderSlot(o.$slots,"default")],2))}})}));
1
+ !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue")):"function"==typeof define&&define.amd?define(["vue"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvButtonGroup=o(e.vue)}(this,(function(e){"use strict";var o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),t=(e=>(e.before="before",e.after="after",e))(t||{}),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 u=Symbol.for("buttonGroup"),n={disabled:{type:Boolean,default:!1}},a=(Boolean,Boolean,Boolean,{modifiers:{type:[String,Array],default:void 0}});t.before;const i={unselectable:{type:Boolean,default:!0}};o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,l.button,r.button;const s={...a,...n,...i,itemModifiers:{type:[String,Array],default:""},toggle:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Array],default:void 0}};return e.defineComponent({name:"VvButtonGroup",props:s,emits:["update:modelValue"],setup(o,{emit:t}){const l=o,{disabled:r,toggle:n,modifiers:a,multiple:i,unselectable:s,itemModifiers:d}=e.toRefs(l);e.watchEffect((()=>{"string"==typeof l.modelValue&&i.value&&console.warn("[VvButtonGroup]: modelValue is a string but multiple is true.")}));const f=e.computed({get:()=>i.value?l.modelValue:Array.isArray(l.modelValue)?l.modelValue[0]:l.modelValue,set:e=>void 0===e||!Array.isArray(l.modelValue)&&!i.value||Array.isArray(e)?t("update:modelValue",e):t("update:modelValue",[e])});!function(o){if(Object.keys(o).some((t=>"key"!==t&&!e.isRef(o[t]))))throw Error("One or more groupState props aren't ref.");e.provide(o.key,e.computed((()=>o)))}({key:u,modelValue:f,disabled:r,toggle:n,multiple:i,unselectable:s,modifiers:d});const p=function(o,t,l){return e.computed((()=>{const r={[o]:!0},u="string"==typeof(null==t?void 0:t.value)?t.value.split(" "):null==t?void 0:t.value;return u&&Array.isArray(u)&&u.forEach((e=>{e&&(r[`${o}--${e}`]=!0)})),l&&Object.keys(l.value).forEach((t=>{r[`${o}--${t}`]=e.unref(l.value[t])})),r}))}("vv-button-group",a);return(o,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(p)),role:"group"},[e.renderSlot(o.$slots,"default")],2))}})}));
@@ -19,8 +19,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
19
19
  type: BooleanConstructor;
20
20
  default: boolean;
21
21
  };
22
- disabled: BooleanConstructor;
23
- modifiers: globalThis.PropType<string | string[]>;
22
+ disabled: {
23
+ type: BooleanConstructor;
24
+ default: boolean;
25
+ };
26
+ modifiers: {
27
+ type: globalThis.PropType<string | string[]>;
28
+ default: undefined;
29
+ };
24
30
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
25
31
  [x: string]: (...args: any[]) => void;
26
32
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -44,14 +50,21 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
44
50
  type: BooleanConstructor;
45
51
  default: boolean;
46
52
  };
47
- disabled: BooleanConstructor;
48
- modifiers: globalThis.PropType<string | string[]>;
53
+ disabled: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
57
+ modifiers: {
58
+ type: globalThis.PropType<string | string[]>;
59
+ default: undefined;
60
+ };
49
61
  }>>, {
50
62
  disabled: boolean;
51
63
  modelValue: string | number | boolean | (string | number | boolean)[] | undefined;
52
64
  toggle: boolean;
53
65
  multiple: boolean;
54
66
  unselectable: boolean;
67
+ modifiers: string | string[];
55
68
  itemModifiers: string | string[];
56
69
  }, {}>, {
57
70
  default?(_: {}): any;
@@ -22,7 +22,13 @@ export declare const VvButtonGroupProps: {
22
22
  type: BooleanConstructor;
23
23
  default: boolean;
24
24
  };
25
- disabled: BooleanConstructor;
26
- modifiers: globalThis.PropType<string | string[]>;
25
+ disabled: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ modifiers: {
30
+ type: globalThis.PropType<string | string[]>;
31
+ default: undefined;
32
+ };
27
33
  };
28
34
  export declare const VvButtonGroupEvents: string[];
@@ -64,6 +64,7 @@ const LinkProps = {
64
64
  */
65
65
  target: {
66
66
  type: String,
67
+ default: void 0,
67
68
  validator: (value) => Object.values(AnchorTarget).includes(value)
68
69
  },
69
70
  /**
@@ -78,44 +79,65 @@ const DisabledProps = {
78
79
  /**
79
80
  * Whether the form control is disabled
80
81
  */
81
- disabled: Boolean
82
+ disabled: {
83
+ type: Boolean,
84
+ default: false
85
+ }
82
86
  };
83
87
  const ActiveProps = {
84
88
  /**
85
89
  * Whether the item is active
86
90
  */
87
- active: Boolean
91
+ active: {
92
+ type: Boolean,
93
+ default: false
94
+ }
88
95
  };
89
96
  const CurrentProps = {
90
97
  /**
91
98
  * Whether the item is current
92
99
  */
93
- current: Boolean
100
+ current: {
101
+ type: Boolean,
102
+ default: false
103
+ }
94
104
  };
95
105
  const PressedProps = {
96
106
  /**
97
107
  * Whether the item is pressed
98
108
  */
99
- pressed: Boolean
109
+ pressed: {
110
+ type: Boolean,
111
+ default: false
112
+ }
100
113
  };
101
114
  const LabelProps = {
102
115
  /**
103
116
  * The item label
104
117
  */
105
- label: [String, Number]
118
+ label: {
119
+ type: [String, Number],
120
+ default: void 0
121
+ }
106
122
  };
107
123
  const ModifiersProps = {
108
124
  /**
109
125
  * Component BEM modifiers
110
126
  */
111
- modifiers: [String, Array]
127
+ modifiers: {
128
+ type: [String, Array],
129
+ default: void 0
130
+ }
112
131
  };
113
132
  ({
114
133
  /**
115
134
  * VvIcon name or props
116
135
  * @see VVIcon
117
136
  */
118
- icon: { type: [String, Object] },
137
+ icon: {
138
+ type: [String, Object],
139
+ default: void 0
140
+ },
119
141
  /**
120
142
  * VvIcon position
121
143
  */
@@ -146,7 +168,8 @@ const ModifiersProps = {
146
168
  * Dropdown show / hide transition name
147
169
  */
148
170
  transitionName: {
149
- type: String
171
+ type: String,
172
+ default: void 0
150
173
  },
151
174
  /**
152
175
  * Offset of the dropdown from the trigger
@@ -214,7 +237,8 @@ const ModifiersProps = {
214
237
  * Set dropdown width to the same as the trigger
215
238
  */
216
239
  triggerWidth: {
217
- type: Boolean
240
+ type: Boolean,
241
+ default: false
218
242
  }
219
243
  });
220
244
  ({
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue")):"function"==typeof define&&define.amd?define(["vue"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvCard=o(e.vue)}(this,(function(e){"use strict";var o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),t=(e=>(e.before="before",e.after="after",e))(t||{}),n=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(n||{}),r=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(r||{});Boolean,Boolean,Boolean,Boolean;const l={modifiers:[String,Array]};t.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,n.button,r.button;const a={...l,title:String};const s={key:0,class:"vv-card__header"},i={key:1,class:"vv-card__content"},c={key:2,class:"vv-card__footer"};return e.defineComponent({name:"VvCard",props:a,setup(o){const t=o,{modifiers:n}=e.toRefs(t),r=function(o,t,n){return e.computed((()=>{const r={[o]:!0},l="string"==typeof(null==t?void 0:t.value)?t.value.split(" "):null==t?void 0:t.value;return l&&Array.isArray(l)&&l.forEach((e=>{e&&(r[`${o}--${e}`]=!0)})),n&&Object.keys(n.value).forEach((t=>{r[`${o}--${t}`]=e.unref(n.value[t])})),r}))}("vv-card",n);return(o,t)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(r))},[o.$slots.header||o.title?(e.openBlock(),e.createElementBlock("header",s,[e.renderSlot(o.$slots,"header",{},(()=>[e.createTextVNode(e.toDisplayString(o.title),1)]))])):e.createCommentVNode("v-if",!0),e.renderSlot(o.$slots,"default"),o.$slots.content?(e.openBlock(),e.createElementBlock("div",i,[e.renderSlot(o.$slots,"content")])):e.createCommentVNode("v-if",!0),o.$slots.footer?(e.openBlock(),e.createElementBlock("footer",c,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("v-if",!0)],2))}})}));
1
+ !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue")):"function"==typeof define&&define.amd?define(["vue"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvCard=o(e.vue)}(this,(function(e){"use strict";var o=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(o||{}),t=(e=>(e.before="before",e.after="after",e))(t||{}),n=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(n||{}),r=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(r||{});Boolean,Boolean,Boolean,Boolean;const l={modifiers:{type:[String,Array],default:void 0}};t.before,o.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,n.button,r.button;const a={...l,title:String};const s={key:0,class:"vv-card__header"},i={key:1,class:"vv-card__content"},c={key:2,class:"vv-card__footer"};return e.defineComponent({name:"VvCard",props:a,setup(o){const t=o,{modifiers:n}=e.toRefs(t),r=function(o,t,n){return e.computed((()=>{const r={[o]:!0},l="string"==typeof(null==t?void 0:t.value)?t.value.split(" "):null==t?void 0:t.value;return l&&Array.isArray(l)&&l.forEach((e=>{e&&(r[`${o}--${e}`]=!0)})),n&&Object.keys(n.value).forEach((t=>{r[`${o}--${t}`]=e.unref(n.value[t])})),r}))}("vv-card",n);return(o,t)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(r))},[o.$slots.header||o.title?(e.openBlock(),e.createElementBlock("header",s,[e.renderSlot(o.$slots,"header",{},(()=>[e.createTextVNode(e.toDisplayString(o.title),1)]))])):e.createCommentVNode("v-if",!0),e.renderSlot(o.$slots,"default"),o.$slots.content?(e.openBlock(),e.createElementBlock("div",i,[e.renderSlot(o.$slots,"content")])):e.createCommentVNode("v-if",!0),o.$slots.footer?(e.openBlock(),e.createElementBlock("footer",c,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("v-if",!0)],2))}})}));
@@ -1,10 +1,18 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
2
  title: StringConstructor;
3
- modifiers: globalThis.PropType<string | string[]>;
3
+ modifiers: {
4
+ type: globalThis.PropType<string | string[]>;
5
+ default: undefined;
6
+ };
4
7
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
5
8
  title: StringConstructor;
6
- modifiers: globalThis.PropType<string | string[]>;
7
- }>>, {}, {}>, {
9
+ modifiers: {
10
+ type: globalThis.PropType<string | string[]>;
11
+ default: undefined;
12
+ };
13
+ }>>, {
14
+ modifiers: string | string[];
15
+ }, {}>, {
8
16
  header?(_: {}): any;
9
17
  default?(_: {}): any;
10
18
  content?(_: {}): any;
@@ -1,4 +1,7 @@
1
1
  export declare const VvCardProps: {
2
2
  title: StringConstructor;
3
- modifiers: globalThis.PropType<string | string[]>;
3
+ modifiers: {
4
+ type: globalThis.PropType<string | string[]>;
5
+ default: undefined;
6
+ };
4
7
  };