@volverjs/ui-vue 0.0.10-beta.15 → 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 (153) 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 +107 -123
  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 +178 -232
  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/VvInputText/VvInputText.vue +11 -12
  149. package/src/components/VvSelect/VvSelect.vue +5 -8
  150. package/src/components/VvTextarea/VvTextarea.vue +5 -8
  151. package/src/composables/useComponentIcon.ts +15 -14
  152. package/src/props/index.ts +89 -25
  153. package/src/stories/Icon/Icon.settings.ts +3 -3
@@ -23,7 +23,10 @@ export declare const VvDropdownProps: {
23
23
  default: DropdownRole;
24
24
  validator: (value: DropdownRole) => boolean;
25
25
  };
26
- modifiers: PropType<string | string[]>;
26
+ modifiers: {
27
+ type: PropType<string | string[]>;
28
+ default: undefined;
29
+ };
27
30
  placement: {
28
31
  type: PropType<"left" | "right" | "top" | "bottom" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end">;
29
32
  default: import("../../constants").Side;
@@ -36,6 +39,7 @@ export declare const VvDropdownProps: {
36
39
  };
37
40
  transitionName: {
38
41
  type: StringConstructor;
42
+ default: undefined;
39
43
  };
40
44
  offset: {
41
45
  type: PropType<string | import("@floating-ui/core").OffsetOptions | undefined>;
@@ -181,6 +185,7 @@ export declare const VvDropdownProps: {
181
185
  };
182
186
  triggerWidth: {
183
187
  type: BooleanConstructor;
188
+ default: boolean;
184
189
  };
185
190
  id: (StringConstructor | NumberConstructor)[];
186
191
  };
@@ -82,6 +82,7 @@ const LinkProps = {
82
82
  */
83
83
  target: {
84
84
  type: String,
85
+ default: void 0,
85
86
  validator: (value) => Object.values(AnchorTarget).includes(value)
86
87
  },
87
88
  /**
@@ -96,44 +97,65 @@ const DisabledProps = {
96
97
  /**
97
98
  * Whether the form control is disabled
98
99
  */
99
- disabled: Boolean
100
+ disabled: {
101
+ type: Boolean,
102
+ default: false
103
+ }
100
104
  };
101
105
  const ActiveProps = {
102
106
  /**
103
107
  * Whether the item is active
104
108
  */
105
- active: Boolean
109
+ active: {
110
+ type: Boolean,
111
+ default: false
112
+ }
106
113
  };
107
114
  const CurrentProps = {
108
115
  /**
109
116
  * Whether the item is current
110
117
  */
111
- current: Boolean
118
+ current: {
119
+ type: Boolean,
120
+ default: false
121
+ }
112
122
  };
113
123
  const PressedProps = {
114
124
  /**
115
125
  * Whether the item is pressed
116
126
  */
117
- pressed: Boolean
127
+ pressed: {
128
+ type: Boolean,
129
+ default: false
130
+ }
118
131
  };
119
132
  const LabelProps = {
120
133
  /**
121
134
  * The item label
122
135
  */
123
- label: [String, Number]
136
+ label: {
137
+ type: [String, Number],
138
+ default: void 0
139
+ }
124
140
  };
125
141
  const ModifiersProps = {
126
142
  /**
127
143
  * Component BEM modifiers
128
144
  */
129
- modifiers: [String, Array]
145
+ modifiers: {
146
+ type: [String, Array],
147
+ default: void 0
148
+ }
130
149
  };
131
150
  ({
132
151
  /**
133
152
  * VvIcon name or props
134
153
  * @see VVIcon
135
154
  */
136
- icon: { type: [String, Object] },
155
+ icon: {
156
+ type: [String, Object],
157
+ default: void 0
158
+ },
137
159
  /**
138
160
  * VvIcon position
139
161
  */
@@ -164,7 +186,8 @@ const ModifiersProps = {
164
186
  * Dropdown show / hide transition name
165
187
  */
166
188
  transitionName: {
167
- type: String
189
+ type: String,
190
+ default: void 0
168
191
  },
169
192
  /**
170
193
  * Offset of the dropdown from the trigger
@@ -232,7 +255,8 @@ const ModifiersProps = {
232
255
  * Set dropdown width to the same as the trigger
233
256
  */
234
257
  triggerWidth: {
235
- type: Boolean
258
+ type: Boolean,
259
+ default: false
236
260
  }
237
261
  });
238
262
  const ActionProps = {
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("mitt"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","mitt","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvDropdownAction=t(e.vue,null,e.core)}(this,(function(e,t,o){"use strict";var r=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(r||{}),n=(e=>(e.before="before",e.after="after",e))(n||{}),l=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(l||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{}),u=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(u||{}),i=(e=>(e._blank="_blank",e._self="_self",e._parent="_parent",e._top="_top",e))(i||{});const s=Symbol.for("volver"),d=Symbol.for("dropdownTrigger"),c=Symbol.for("dropdownItem"),f=Symbol.for("dropdownAction"),p={to:{type:[String,Object]},href:String,target:{type:String,validator:e=>Object.values(i).includes(e)},rel:{type:String,default:"noopener noreferrer"}},v={disabled:Boolean},m={active:Boolean},b={current:Boolean},g={pressed:Boolean},y={label:[String,Number]},k={modifiers:[String,Array]};n.before,r.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const h={...v,...y,...g,...m,...b,...p,type:{type:String,default:l.button,validator:e=>Object.values(l).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},x=h;const B=e.defineComponent({name:"VvAction",props:x,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const n=t,l=e.inject(s),u=e.ref(null);o({$el:u});const{reference:i,bus:c,aria:p,expanded:v}=e.inject(d,{});e.watch((()=>u.value),(e=>{i&&(i.value=e)}));const m=e.computed((()=>n.pressed||(null==v?void 0:v.value))),{role:b}=e.inject(f,{}),g=e.computed((()=>{switch(!0){case n.disabled:return a.button;case void 0!==n.to:return(null==l?void 0:l.nuxt)?a.nuxtLink:a.routerLink;case void 0!==n.href:return a.a;default:return n.defaultTag}})),y=e.computed((()=>{const e={...null==p?void 0:p.value,ariaPressed:!!m.value||void 0,ariaLabel:n.ariaLabel,role:null==b?void 0:b.value};switch(g.value){case a.a:return{...e,href:n.href,target:n.target,rel:n.rel};case a.routerLink:case a.nuxtLink:return{...e,to:n.to,target:n.target};case a.button:return{...e,type:n.type,disabled:n.disabled};default:return e}})),k=e=>{n.disabled?e.preventDefault():(null==c||c.emit("click",e),r("click",e))},h=e=>{null==c||c.emit("mouseover",e),r("mouseover",e)},x=e=>{null==c||c.emit("mouseleave",e),r("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),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:k,onMouseoverPassive:h,onMouseleavePassive:x}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}});const S=e.defineComponent({name:"VvDropdownItem",setup(t){const{role:r,expanded:n}=e.inject(c,{}),l=e.ref(null);!function({expanded:t}){e.provide(f,{role:e.ref(u.menuitem),expanded:t})}({expanded:n});const a=o.useElementHover(l),{focused:i}=o.useFocus(l),{focused:s}=o.useFocusWithin(l);return e.watch(a,(e=>{e&&(i.value=!0)})),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(r)},{ref_key:"element",ref:l,class:["vv-dropdown__item",{"focus-visible":e.unref(i)||e.unref(s)}]}),[e.renderSlot(t.$slots,"default")],16))}});return e.defineComponent({name:"VvDropdownAction",props:{...h,...k},setup(t){const o=t,{modifiers:r}=e.toRefs(o),n=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-dropdown-action",r);return(t,o)=>(e.openBlock(),e.createBlock(S,null,{default:e.withCtx((()=>[e.createVNode(B,e.mergeProps({disabled:t.disabled,pressed:t.pressed,active:t.active,type:t.type,to:t.to,href:t.href,target:t.target,rel:t.rel},{class:e.unref(n)}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"])])),_:3}))}})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("mitt"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","mitt","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvDropdownAction=t(e.vue,null,e.core)}(this,(function(e,t,o){"use strict";var r=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(r||{}),n=(e=>(e.before="before",e.after="after",e))(n||{}),l=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(l||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{}),u=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(u||{}),i=(e=>(e._blank="_blank",e._self="_self",e._parent="_parent",e._top="_top",e))(i||{});const s=Symbol.for("volver"),d=Symbol.for("dropdownTrigger"),c=Symbol.for("dropdownItem"),f=Symbol.for("dropdownAction"),p={to:{type:[String,Object]},href:String,target:{type:String,default:void 0,validator:e=>Object.values(i).includes(e)},rel:{type:String,default:"noopener noreferrer"}},v={disabled:{type:Boolean,default:!1}},m={active:{type:Boolean,default:!1}},b={current:{type:Boolean,default:!1}},y={pressed:{type:Boolean,default:!1}},g={label:{type:[String,Number],default:void 0}},k={modifiers:{type:[String,Array],default:void 0}};n.before,r.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const h={...v,...g,...y,...m,...b,...p,type:{type:String,default:l.button,validator:e=>Object.values(l).includes(e)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:a.button}},x=h;const B=e.defineComponent({name:"VvAction",props:x,emits:["click","mouseover","mouseleave"],setup(t,{expose:o,emit:r}){const n=t,l=e.inject(s),u=e.ref(null);o({$el:u});const{reference:i,bus:c,aria:p,expanded:v}=e.inject(d,{});e.watch((()=>u.value),(e=>{i&&(i.value=e)}));const m=e.computed((()=>n.pressed||(null==v?void 0:v.value))),{role:b}=e.inject(f,{}),y=e.computed((()=>{switch(!0){case n.disabled:return a.button;case void 0!==n.to:return(null==l?void 0:l.nuxt)?a.nuxtLink:a.routerLink;case void 0!==n.href:return a.a;default:return n.defaultTag}})),g=e.computed((()=>{const e={...null==p?void 0:p.value,ariaPressed:!!m.value||void 0,ariaLabel:n.ariaLabel,role:null==b?void 0:b.value};switch(y.value){case a.a:return{...e,href:n.href,target:n.target,rel:n.rel};case a.routerLink:case a.nuxtLink:return{...e,to:n.to,target:n.target};case a.button:return{...e,type:n.type,disabled:n.disabled};default:return e}})),k=e=>{n.disabled?e.preventDefault():(null==c||c.emit("click",e),r("click",e))},h=e=>{null==c||c.emit("mouseover",e),r("mouseover",e)},x=e=>{null==c||c.emit("mouseleave",e),r("mouseleave",e)};return(t,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)),e.mergeProps(e.unref(g),{ref_key:"element",ref:u,class:{active:t.active,pressed:e.unref(m),disabled:t.disabled,current:t.current},onClickPassive:k,onMouseoverPassive:h,onMouseleavePassive:x}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"]))}});const S=e.defineComponent({name:"VvDropdownItem",setup(t){const{role:r,expanded:n}=e.inject(c,{}),l=e.ref(null);!function({expanded:t}){e.provide(f,{role:e.ref(u.menuitem),expanded:t})}({expanded:n});const a=o.useElementHover(l),{focused:i}=o.useFocus(l),{focused:s}=o.useFocusWithin(l);return e.watch(a,(e=>{e&&(i.value=!0)})),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(r)},{ref_key:"element",ref:l,class:["vv-dropdown__item",{"focus-visible":e.unref(i)||e.unref(s)}]}),[e.renderSlot(t.$slots,"default")],16))}});return e.defineComponent({name:"VvDropdownAction",props:{...h,...k},setup(t){const o=t,{modifiers:r}=e.toRefs(o),n=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-dropdown-action",r);return(t,o)=>(e.openBlock(),e.createBlock(S,null,{default:e.withCtx((()=>[e.createVNode(B,e.mergeProps({disabled:t.disabled,pressed:t.pressed,active:t.active,type:t.type,to:t.to,href:t.href,target:t.target,rel:t.rel},{class:e.unref(n)}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]))])),_:3},16,["class"])])),_:3}))}})}));
@@ -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,38 +79,56 @@ 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
  ({
108
124
  /**
109
125
  * VvIcon name or props
110
126
  * @see VVIcon
111
127
  */
112
- icon: { type: [String, Object] },
128
+ icon: {
129
+ type: [String, Object],
130
+ default: void 0
131
+ },
113
132
  /**
114
133
  * VvIcon position
115
134
  */
@@ -140,7 +159,8 @@ const LabelProps = {
140
159
  * Dropdown show / hide transition name
141
160
  */
142
161
  transitionName: {
143
- type: String
162
+ type: String,
163
+ default: void 0
144
164
  },
145
165
  /**
146
166
  * Offset of the dropdown from the trigger
@@ -208,7 +228,8 @@ const LabelProps = {
208
228
  * Set dropdown width to the same as the trigger
209
229
  */
210
230
  triggerWidth: {
211
- type: Boolean
231
+ type: Boolean,
232
+ default: false
212
233
  }
213
234
  });
214
235
  ({
@@ -1 +1 @@
1
- !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define(["vue"],e):(o="undefined"!=typeof globalThis?globalThis:o||self).VvDropdownOptgroup=e(o.vue)}(this,(function(o){"use strict";var e=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(e||{}),t=(o=>(o.before="before",o.after="after",o))(t||{}),n=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(n||{}),r=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(r||{});Boolean,Boolean,Boolean,Boolean;const l={label:[String,Number]};t.before,e.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,n.button,r.button;const u={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"};return o.defineComponent({name:"VvDropdownOptgroup",props:{...l},setup(e){const t=e;return(e,n)=>(o.openBlock(),o.createElementBlock("li",u,o.toDisplayString(t.label),1))}})}));
1
+ !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define(["vue"],e):(o="undefined"!=typeof globalThis?globalThis:o||self).VvDropdownOptgroup=e(o.vue)}(this,(function(o){"use strict";var e=(o=>(o.left="left",o.right="right",o.top="top",o.bottom="bottom",o))(e||{}),t=(o=>(o.before="before",o.after="after",o))(t||{}),n=(o=>(o.button="button",o.submit="submit",o.reset="reset",o))(n||{}),r=(o=>(o.nuxtLink="nuxt-link",o.routerLink="router-link",o.a="a",o.button="button",o))(r||{});Boolean,Boolean,Boolean,Boolean;const l={label:{type:[String,Number],default:void 0}};t.before,e.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,n.button,r.button;const u={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"};return o.defineComponent({name:"VvDropdownOptgroup",props:{...l},setup(e){const t=e;return(e,n)=>(o.openBlock(),o.createElementBlock("li",u,o.toDisplayString(t.label),1))}})}));
@@ -123,6 +123,7 @@ const LinkProps = {
123
123
  */
124
124
  target: {
125
125
  type: String,
126
+ default: void 0,
126
127
  validator: (value) => Object.values(AnchorTarget).includes(value)
127
128
  },
128
129
  /**
@@ -137,50 +138,74 @@ const DisabledProps = {
137
138
  /**
138
139
  * Whether the form control is disabled
139
140
  */
140
- disabled: Boolean
141
+ disabled: {
142
+ type: Boolean,
143
+ default: false
144
+ }
141
145
  };
142
146
  const SelectedProps = {
143
147
  /**
144
148
  * Whether the item is selected
145
149
  */
146
- selected: Boolean
150
+ selected: {
151
+ type: Boolean,
152
+ default: false
153
+ }
147
154
  };
148
155
  const ActiveProps = {
149
156
  /**
150
157
  * Whether the item is active
151
158
  */
152
- active: Boolean
159
+ active: {
160
+ type: Boolean,
161
+ default: false
162
+ }
153
163
  };
154
164
  const CurrentProps = {
155
165
  /**
156
166
  * Whether the item is current
157
167
  */
158
- current: Boolean
168
+ current: {
169
+ type: Boolean,
170
+ default: false
171
+ }
159
172
  };
160
173
  const PressedProps = {
161
174
  /**
162
175
  * Whether the item is pressed
163
176
  */
164
- pressed: Boolean
177
+ pressed: {
178
+ type: Boolean,
179
+ default: false
180
+ }
165
181
  };
166
182
  const LabelProps = {
167
183
  /**
168
184
  * The item label
169
185
  */
170
- label: [String, Number]
186
+ label: {
187
+ type: [String, Number],
188
+ default: void 0
189
+ }
171
190
  };
172
191
  const ModifiersProps = {
173
192
  /**
174
193
  * Component BEM modifiers
175
194
  */
176
- modifiers: [String, Array]
195
+ modifiers: {
196
+ type: [String, Array],
197
+ default: void 0
198
+ }
177
199
  };
178
200
  ({
179
201
  /**
180
202
  * VvIcon name or props
181
203
  * @see VVIcon
182
204
  */
183
- icon: { type: [String, Object] },
205
+ icon: {
206
+ type: [String, Object],
207
+ default: void 0
208
+ },
184
209
  /**
185
210
  * VvIcon position
186
211
  */
@@ -217,7 +242,8 @@ const UnselectableProps = {
217
242
  * Dropdown show / hide transition name
218
243
  */
219
244
  transitionName: {
220
- type: String
245
+ type: String,
246
+ default: void 0
221
247
  },
222
248
  /**
223
249
  * Offset of the dropdown from the trigger
@@ -285,7 +311,8 @@ const UnselectableProps = {
285
311
  * Set dropdown width to the same as the trigger
286
312
  */
287
313
  triggerWidth: {
288
- type: Boolean
314
+ type: Boolean,
315
+ default: false
289
316
  }
290
317
  });
291
318
  ({
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("mitt"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","mitt","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvDropdownOption=t(e.vue,null,e.core)}(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||{}),s=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(s||{}),i=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(i||{});const a=Symbol.for("dropdownItem"),d=Symbol.for("dropdownAction");const u=e.defineComponent({name:"VvDropdownItem",setup(t){const{role:n,expanded:l}=e.inject(a,{}),r=e.ref(null);!function({expanded:t}){e.provide(d,{role:e.ref(i.menuitem),expanded:t})}({expanded:l});const s=o.useElementHover(r),{focused:u}=o.useFocus(r),{focused:c}=o.useFocusWithin(r);return e.watch(s,(e=>{e&&(u.value=!0)})),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(n)},{ref_key:"element",ref:r,class:["vv-dropdown__item",{"focus-visible":e.unref(u)||e.unref(c)}]}),[e.renderSlot(t.$slots,"default")],16))}}),c={disabled:Boolean},f={selected:Boolean},b=(Boolean,Boolean,Boolean,{modifiers:[String,Array]});l.before;const p={unselectable:{type:Boolean,default:!0}};n.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,r.button,s.button;const m=["title"];return e.defineComponent({name:"VvDropdownOption",props:{...c,...f,...p,...b,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String}},setup(t){const o=t,{modifiers:n}=e.toRefs(o),l=function(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}))}("vv-dropdown-option",n,e.computed((()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected})))),r=e.computed((()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?void 0:o.selectHintLabel));return(t,o)=>(e.openBlock(),e.createBlock(u,{class:e.normalizeClass(e.unref(l)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default"),e.createElementVNode("span",{class:"vv-dropdown-option__hint",title:e.unref(r)},[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)),1)]))],8,m)])),_:3},8,["class","tabindex","aria-selected","aria-disabled"]))}})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("mitt"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","mitt","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvDropdownOption=t(e.vue,null,e.core)}(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||{}),d=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(d||{}),a=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(a||{});const i=Symbol.for("dropdownItem"),s=Symbol.for("dropdownAction");const u=e.defineComponent({name:"VvDropdownItem",setup(t){const{role:n,expanded:l}=e.inject(i,{}),r=e.ref(null);!function({expanded:t}){e.provide(s,{role:e.ref(a.menuitem),expanded:t})}({expanded:l});const d=o.useElementHover(r),{focused:u}=o.useFocus(r),{focused:c}=o.useFocusWithin(r);return e.watch(d,(e=>{e&&(u.value=!0)})),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(n)},{ref_key:"element",ref:r,class:["vv-dropdown__item",{"focus-visible":e.unref(u)||e.unref(c)}]}),[e.renderSlot(t.$slots,"default")],16))}}),c={disabled:{type:Boolean,default:!1}},f={selected:{type:Boolean,default:!1}},p=(Boolean,Boolean,Boolean,{modifiers:{type:[String,Array],default:void 0}});l.before;const b={unselectable:{type:Boolean,default:!0}};n.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,r.button,d.button;const m=["title"];return e.defineComponent({name:"VvDropdownOption",props:{...c,...f,...b,...p,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String}},setup(t){const o=t,{modifiers:n}=e.toRefs(o),l=function(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}))}("vv-dropdown-option",n,e.computed((()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected})))),r=e.computed((()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?void 0:o.selectHintLabel));return(t,o)=>(e.openBlock(),e.createBlock(u,{class:e.normalizeClass(e.unref(l)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default"),e.createElementVNode("span",{class:"vv-dropdown-option__hint",title:e.unref(r)},[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)),1)]))],8,m)])),_:3},8,["class","tabindex","aria-selected","aria-disabled"]))}})}));
@@ -1,98 +1,8 @@
1
- import { inject, computed, unref, defineComponent, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode } from "vue";
1
+ import { inject, computed, unref, defineComponent, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode } from "vue";
2
2
  import { iconExists, Icon, addIcon } from "@iconify/vue";
3
- const VvIconProps = {
4
- /**
5
- * Color
6
- */
7
- color: String,
8
- /**
9
- * Width
10
- */
11
- width: {
12
- type: [String, Number]
13
- },
14
- /**
15
- * Height
16
- */
17
- height: {
18
- type: [String, Number]
19
- },
20
- /**
21
- * Icon name
22
- * Can be the full composition of iconify name "@{provider}:{prefix}:{name}" or "{prefix}:{name}" or "{name}"
23
- * https://docs.iconify.design/api/providers.html#provider-in-icon-name
24
- */
25
- name: {
26
- type: String,
27
- required: true
28
- },
29
- /**
30
- * By default 'vv'
31
- * If custom collection is not added with "addCollection" DS class method, this prop could not be used
32
- * Icon provider: https://docs.iconify.design/api/providers.html#provider-in-icon-name
33
- */
34
- provider: {
35
- type: String
36
- },
37
- /**
38
- * The name of icon set.
39
- * Icon default options prefix: simple | normal | detailed
40
- */
41
- prefix: {
42
- type: String,
43
- default: "normal"
44
- },
45
- /**
46
- * Url remote SVG icon
47
- */
48
- src: String,
49
- /**
50
- * Horizontal flip
51
- */
52
- horizontalFlip: Boolean,
53
- /**
54
- * Vertical flip
55
- */
56
- verticalFlip: Boolean,
57
- /**
58
- * String alternative to "horizontalFlip" and "verticalFlip".
59
- * Example: https://docs.iconify.design/icon-components/vue/transform.html
60
- */
61
- flip: String,
62
- /**
63
- * Icon render mode
64
- * 'style' = 'bg' or 'mask', depending on icon content
65
- * 'bg' = span with style using `background`
66
- * 'mask' = span with style using `mask`
67
- * 'svg' = svg
68
- * Iconify doc: https://docs.iconify.design/iconify-icon/modes.html
69
- */
70
- mode: String,
71
- /**
72
- * Toggles inline or block mode
73
- * Example https://docs.iconify.design/icon-components/vue/inline.html
74
- */
75
- inline: Boolean,
76
- /**
77
- * rotates icon
78
- * Example https://docs.iconify.design/icon-components/vue/transform.html
79
- */
80
- rotate: [Number, String],
81
- /**
82
- * A callback that is called when icon data has been loaded
83
- */
84
- onLoad: Function,
85
- /**
86
- * SVG icon string
87
- */
88
- svg: String,
89
- /**
90
- * Icon modifiers: vv-icon css helper classes, value/s are concatened with prefix 'vv-icon--'
91
- * @values string | string[]
92
- */
93
- modifiers: {
94
- type: [String, Array]
95
- }
3
+ const VvIconPropsDefaults = {
4
+ prefix: "normal"
5
+ /* normal */
96
6
  };
97
7
  const INJECTION_KEY_VOLVER = Symbol.for("volver");
98
8
  function useVolver() {
@@ -126,7 +36,24 @@ const __default__ = {
126
36
  };
127
37
  const _sfc_main = /* @__PURE__ */ defineComponent({
128
38
  ...__default__,
129
- props: VvIconProps,
39
+ props: mergeDefaults({
40
+ name: {},
41
+ color: {},
42
+ width: {},
43
+ height: {},
44
+ provider: {},
45
+ prefix: {},
46
+ src: {},
47
+ horizontalFlip: { type: Boolean },
48
+ verticalFlip: { type: Boolean },
49
+ flip: {},
50
+ mode: {},
51
+ inline: { type: Boolean },
52
+ rotate: {},
53
+ onLoad: { type: Function },
54
+ svg: {},
55
+ modifiers: {}
56
+ }, VvIconPropsDefaults),
130
57
  setup(__props) {
131
58
  const props = __props;
132
59
  const hasRotate = computed(() => {
@@ -1 +1 @@
1
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("vue"),require("@iconify/vue")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue"],n):(e="undefined"!=typeof globalThis?globalThis:e||self).VvIcon=n(e.vue,e.vue$1)}(this,(function(e,n){"use strict";const o={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]}},i=Symbol.for("volver");return e.defineComponent({name:"VvIcon",props:o,setup(o){const r=o,t=e.computed((()=>"string"==typeof r.rotate?parseFloat(r.rotate):r.rotate)),l=e.ref(!0),u=e.inject(i),{modifiers:c}=e.toRefs(r),a=function(n,o,i){return e.computed((()=>{const r={[n]:!0},t="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return t&&Array.isArray(t)&&t.forEach((e=>{e&&(r[`${n}--${e}`]=!0)})),i&&Object.keys(i.value).forEach((o=>{r[`${n}--${o}`]=e.unref(i.value[o])})),r}))}("vv-icon",c),s=e.computed((()=>r.provider||(null==u?void 0:u.iconsProvider))),f=e.computed((()=>{const e=r.name??"",o=`@${s.value}:${r.prefix}:${e}`;if(n.iconExists(o))return o;const i=null==u?void 0:u.iconsCollections.find((o=>{const i=`@${s.value}:${o.prefix}:${e}`;return n.iconExists(i)}));return i?`@${s.value}:${i.prefix}:${e}`:e}));function d(e){const o=function(e){let n;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");n=(new e).window}return(n?new n.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),i=(null==o?void 0:o.innerHTML.trim())||"";o&&i&&n.addIcon(`@${s.value}:${r.prefix}:${r.name}`,{body:i,height:o.viewBox.baseVal.height,width:o.viewBox.baseVal.width})}return u&&r.src&&!n.iconExists(`@${s.value}:${r.prefix}:${r.name}`)&&(l.value=!1,u.fetchIcon(r.src).then((e=>{e&&(d(e),l.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),r.svg&&d(r.svg),(o,i)=>e.unref(l)?(e.openBlock(),e.createBlock(e.unref(n.Icon),e.mergeProps({key:0,class:e.unref(a)},{inline:o.inline,width:o.width,height:o.height,horizontalFlip:o.horizontalFlip,verticalFlip:o.verticalFlip,flip:o.flip,rotate:e.unref(t),color:o.color,onLoad:o.onLoad,icon:e.unref(f)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}})}));
1
+ !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue"),require("@iconify/vue")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvIcon=o(e.vue,e.vue$1)}(this,(function(e,o){"use strict";const n=Symbol.for("volver");return 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(i){const r=i,t=e.computed((()=>"string"==typeof r.rotate?parseFloat(r.rotate):r.rotate)),l=e.ref(!0),u=e.inject(n),{modifiers:c}=e.toRefs(r),a=function(o,n,i){return e.computed((()=>{const r={[o]:!0},t="string"==typeof(null==n?void 0:n.value)?n.value.split(" "):null==n?void 0:n.value;return t&&Array.isArray(t)&&t.forEach((e=>{e&&(r[`${o}--${e}`]=!0)})),i&&Object.keys(i.value).forEach((n=>{r[`${o}--${n}`]=e.unref(i.value[n])})),r}))}("vv-icon",c),s=e.computed((()=>r.provider||(null==u?void 0:u.iconsProvider))),f=e.computed((()=>{const e=r.name??"",n=`@${s.value}:${r.prefix}:${e}`;if(o.iconExists(n))return n;const i=null==u?void 0:u.iconsCollections.find((n=>{const i=`@${s.value}:${n.prefix}:${e}`;return o.iconExists(i)}));return i?`@${s.value}:${i.prefix}:${e}`:e}));function d(e){const n=function(e){let o;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");o=(new e).window}return(o?new o.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),i=(null==n?void 0:n.innerHTML.trim())||"";n&&i&&o.addIcon(`@${s.value}:${r.prefix}:${r.name}`,{body:i,height:n.viewBox.baseVal.height,width:n.viewBox.baseVal.width})}return u&&r.src&&!o.iconExists(`@${s.value}:${r.prefix}:${r.name}`)&&(l.value=!1,u.fetchIcon(r.src).then((e=>{e&&(d(e),l.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),r.svg&&d(r.svg),(n,i)=>e.unref(l)?(e.openBlock(),e.createBlock(e.unref(o.Icon),e.mergeProps({key:0,class:e.unref(a)},{inline:n.inline,width:n.width,height:n.height,horizontalFlip:n.horizontalFlip,verticalFlip:n.verticalFlip,flip:n.flip,rotate:e.unref(t),color:n.color,onLoad:n.onLoad,icon:e.unref(f)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}})}));
@@ -1,69 +1,106 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
- color: StringConstructor;
2
+ modifiers: {
3
+ type: globalThis.PropType<string | string[]>;
4
+ };
5
+ name: {
6
+ type: globalThis.PropType<string>;
7
+ required: true;
8
+ };
9
+ rotate: {
10
+ type: globalThis.PropType<string | number>;
11
+ };
12
+ svg: {
13
+ type: globalThis.PropType<string>;
14
+ };
15
+ onLoad: {
16
+ type: globalThis.PropType<import("@iconify/vue").IconifyIconOnLoad>;
17
+ };
18
+ color: {
19
+ type: globalThis.PropType<string>;
20
+ };
3
21
  width: {
4
- type: (StringConstructor | NumberConstructor)[];
22
+ type: globalThis.PropType<string | number>;
5
23
  };
6
24
  height: {
7
- type: (StringConstructor | NumberConstructor)[];
8
- };
9
- name: {
10
- type: StringConstructor;
11
- required: boolean;
25
+ type: globalThis.PropType<string | number>;
12
26
  };
13
27
  provider: {
14
- type: StringConstructor;
28
+ type: globalThis.PropType<string>;
15
29
  };
16
30
  prefix: {
17
31
  type: globalThis.PropType<string>;
18
- default: string;
19
- };
20
- src: StringConstructor;
21
- horizontalFlip: BooleanConstructor;
22
- verticalFlip: BooleanConstructor;
23
- flip: StringConstructor;
24
- mode: globalThis.PropType<import("@iconify/vue").IconifyRenderMode>;
25
- inline: BooleanConstructor;
26
- rotate: (StringConstructor | NumberConstructor)[];
27
- onLoad: globalThis.PropType<import("@iconify/vue").IconifyIconOnLoad>;
28
- svg: StringConstructor;
32
+ default: import(".").IconPrefix;
33
+ };
34
+ src: {
35
+ type: globalThis.PropType<string>;
36
+ };
37
+ horizontalFlip: {
38
+ type: globalThis.PropType<boolean>;
39
+ };
40
+ verticalFlip: {
41
+ type: globalThis.PropType<boolean>;
42
+ };
43
+ flip: {
44
+ type: globalThis.PropType<string>;
45
+ };
46
+ mode: {
47
+ type: globalThis.PropType<import("@iconify/vue").IconifyRenderMode>;
48
+ };
49
+ inline: {
50
+ type: globalThis.PropType<boolean>;
51
+ };
52
+ }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
29
53
  modifiers: {
30
54
  type: globalThis.PropType<string | string[]>;
31
55
  };
32
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
33
- color: StringConstructor;
56
+ name: {
57
+ type: globalThis.PropType<string>;
58
+ required: true;
59
+ };
60
+ rotate: {
61
+ type: globalThis.PropType<string | number>;
62
+ };
63
+ svg: {
64
+ type: globalThis.PropType<string>;
65
+ };
66
+ onLoad: {
67
+ type: globalThis.PropType<import("@iconify/vue").IconifyIconOnLoad>;
68
+ };
69
+ color: {
70
+ type: globalThis.PropType<string>;
71
+ };
34
72
  width: {
35
- type: (StringConstructor | NumberConstructor)[];
73
+ type: globalThis.PropType<string | number>;
36
74
  };
37
75
  height: {
38
- type: (StringConstructor | NumberConstructor)[];
39
- };
40
- name: {
41
- type: StringConstructor;
42
- required: boolean;
76
+ type: globalThis.PropType<string | number>;
43
77
  };
44
78
  provider: {
45
- type: StringConstructor;
79
+ type: globalThis.PropType<string>;
46
80
  };
47
81
  prefix: {
48
82
  type: globalThis.PropType<string>;
49
- default: string;
50
- };
51
- src: StringConstructor;
52
- horizontalFlip: BooleanConstructor;
53
- verticalFlip: BooleanConstructor;
54
- flip: StringConstructor;
55
- mode: globalThis.PropType<import("@iconify/vue").IconifyRenderMode>;
56
- inline: BooleanConstructor;
57
- rotate: (StringConstructor | NumberConstructor)[];
58
- onLoad: globalThis.PropType<import("@iconify/vue").IconifyIconOnLoad>;
59
- svg: StringConstructor;
60
- modifiers: {
61
- type: globalThis.PropType<string | string[]>;
83
+ default: import(".").IconPrefix;
84
+ };
85
+ src: {
86
+ type: globalThis.PropType<string>;
87
+ };
88
+ horizontalFlip: {
89
+ type: globalThis.PropType<boolean>;
90
+ };
91
+ verticalFlip: {
92
+ type: globalThis.PropType<boolean>;
93
+ };
94
+ flip: {
95
+ type: globalThis.PropType<string>;
96
+ };
97
+ mode: {
98
+ type: globalThis.PropType<import("@iconify/vue").IconifyRenderMode>;
99
+ };
100
+ inline: {
101
+ type: globalThis.PropType<boolean>;
62
102
  };
63
103
  }>>, {
64
104
  prefix: string;
65
- horizontalFlip: boolean;
66
- verticalFlip: boolean;
67
- inline: boolean;
68
105
  }, {}>;
69
106
  export default _default;