@volverjs/ui-vue 0.0.10-beta.35 → 0.0.10-beta.37

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 (348) hide show
  1. package/README.md +78 -77
  2. package/bin/icons.cjs +1 -1
  3. package/bin/icons.js +5 -5
  4. package/dist/Volver.d.ts +10 -10
  5. package/dist/components/VvAccordion/VvAccordion.es.js +11 -11
  6. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  7. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +17 -17
  8. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  9. package/dist/components/VvAction/VvAction.es.js +6 -6
  10. package/dist/components/VvAction/VvAction.umd.js +1 -1
  11. package/dist/components/VvAlert/VvAlert.es.js +23 -21
  12. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  13. package/dist/components/VvAlert/index.d.ts +2 -2
  14. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +351 -349
  15. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  16. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +3 -3
  17. package/dist/components/VvAlertGroup/index.d.ts +1 -1
  18. package/dist/components/VvAvatar/VvAvatar.es.js +4 -1
  19. package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
  20. package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +11 -3
  21. package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
  22. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +10 -10
  23. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  24. package/dist/components/VvButton/VvButton.es.js +31 -25
  25. package/dist/components/VvButton/VvButton.umd.js +1 -1
  26. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +1 -1
  27. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  28. package/dist/components/VvCheckbox/VvCheckbox.es.js +208 -202
  29. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  30. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +3 -3
  31. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +21 -15
  32. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  33. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +2 -2
  34. package/dist/components/VvCombobox/VvCombobox.es.js +454 -446
  35. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  36. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +5 -5
  37. package/dist/components/VvCombobox/index.d.ts +5 -10
  38. package/dist/components/VvDialog/VvDialog.es.js +17 -17
  39. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  40. package/dist/components/VvDropdown/VvDropdown.es.js +29 -25
  41. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  42. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +16 -12
  43. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +11 -14
  44. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  45. package/dist/components/VvIcon/VvIcon.es.js +1 -1
  46. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  47. package/dist/components/VvInputFile/VvInputFile.es.js +61 -55
  48. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
  49. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +2 -2
  50. package/dist/components/VvInputFile/index.d.ts +6 -6
  51. package/dist/components/VvInputText/VvInputText.es.js +287 -286
  52. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  53. package/dist/components/VvInputText/VvInputText.vue.d.ts +2 -2
  54. package/dist/components/VvInputText/index.d.ts +7 -2
  55. package/dist/components/VvNav/VvNav.es.js +23 -20
  56. package/dist/components/VvNav/VvNav.umd.js +1 -1
  57. package/dist/components/VvNavItem/VvNavItem.es.js +6 -6
  58. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  59. package/dist/components/VvRadio/VvRadio.es.js +208 -202
  60. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  61. package/dist/components/VvRadio/VvRadio.vue.d.ts +2 -2
  62. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +21 -15
  63. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  64. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +2 -2
  65. package/dist/components/VvSelect/VvSelect.es.js +22 -20
  66. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  67. package/dist/components/VvSelect/VvSelect.vue.d.ts +2 -2
  68. package/dist/components/VvTab/VvTab.es.js +29 -23
  69. package/dist/components/VvTab/VvTab.umd.js +1 -1
  70. package/dist/components/VvTextarea/VvTextarea.es.js +29 -27
  71. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  72. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +2 -2
  73. package/dist/components/VvTooltip/VvTooltip.es.js +4 -1
  74. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  75. package/dist/components/common/HintSlot.d.ts +3 -4
  76. package/dist/components/index.es.js +905 -888
  77. package/dist/components/index.umd.js +1 -1
  78. package/dist/composables/alert/useAlert.d.ts +2 -2
  79. package/dist/composables/index.es.js +10 -10
  80. package/dist/composables/index.umd.js +1 -1
  81. package/dist/composables/useBlurhash.d.ts +1 -1
  82. package/dist/composables/usePersistence.d.ts +2 -1
  83. package/dist/composables/useUniqueId.d.ts +1 -1
  84. package/dist/directives/index.es.js +5 -2
  85. package/dist/directives/index.umd.js +1 -1
  86. package/dist/directives/v-contextmenu.es.js +1 -1
  87. package/dist/directives/v-contextmenu.umd.js +1 -1
  88. package/dist/directives/v-tooltip.es.js +4 -1
  89. package/dist/directives/v-tooltip.umd.js +1 -1
  90. package/dist/icons.es.js +3 -3
  91. package/dist/icons.umd.js +1 -1
  92. package/dist/index.es.js +2 -2
  93. package/dist/stories/Alert/AlertModifiers.stories.d.ts +1 -1
  94. package/dist/stories/Alert/AlertSlots.stories.d.ts +1 -1
  95. package/dist/stories/AlertGroup/AlertGroupPosition.stories.d.ts +1 -1
  96. package/dist/stories/AlertGroup/AlertGroupSlots.stories.d.ts +1 -1
  97. package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +1 -1
  98. package/dist/stories/Badge/Badge.test.d.ts +1 -1
  99. package/dist/stories/Combobox/Combobox.settings.d.ts +1 -1
  100. package/dist/test/options.d.ts +1 -1
  101. package/dist/test/sleep.d.ts +1 -1
  102. package/dist/types/alert.d.ts +1 -1
  103. package/dist/utils/ObjectUtilities.d.ts +7 -7
  104. package/package.json +232 -239
  105. package/src/Volver.ts +243 -243
  106. package/src/assets/icons/detailed.json +1 -1
  107. package/src/assets/icons/normal.json +1 -1
  108. package/src/assets/icons/simple.json +1 -1
  109. package/src/components/VvAccordion/VvAccordion.vue +155 -155
  110. package/src/components/VvAccordion/index.ts +62 -62
  111. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +220 -219
  112. package/src/components/VvAccordionGroup/index.ts +41 -41
  113. package/src/components/VvAction/VvAction.vue +144 -142
  114. package/src/components/VvAlert/VvAlert.vue +72 -70
  115. package/src/components/VvAlert/index.ts +147 -150
  116. package/src/components/VvAlertGroup/VvAlertGroup.vue +56 -55
  117. package/src/components/VvAlertGroup/index.ts +99 -103
  118. package/src/components/VvAvatar/VvAvatar.vue +20 -14
  119. package/src/components/VvAvatar/index.ts +5 -5
  120. package/src/components/VvAvatarGroup/VvAvatarGroup.vue +58 -53
  121. package/src/components/VvAvatarGroup/index.ts +21 -21
  122. package/src/components/VvBadge/VvBadge.vue +15 -14
  123. package/src/components/VvBadge/index.ts +2 -2
  124. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +49 -48
  125. package/src/components/VvBreadcrumb/index.ts +2 -2
  126. package/src/components/VvButton/VvButton.vue +163 -162
  127. package/src/components/VvButton/index.ts +102 -102
  128. package/src/components/VvButtonGroup/VvButtonGroup.vue +72 -72
  129. package/src/components/VvButtonGroup/index.ts +22 -22
  130. package/src/components/VvCard/VvCard.vue +30 -30
  131. package/src/components/VvCard/index.ts +2 -2
  132. package/src/components/VvCheckbox/VvCheckbox.vue +185 -180
  133. package/src/components/VvCheckbox/index.ts +44 -44
  134. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +88 -86
  135. package/src/components/VvCombobox/VvCombobox.vue +633 -623
  136. package/src/components/VvCombobox/index.ts +166 -166
  137. package/src/components/VvDialog/VvDialog.vue +131 -129
  138. package/src/components/VvDialog/index.ts +35 -35
  139. package/src/components/VvDropdown/VvDropdown.vue +464 -452
  140. package/src/components/VvDropdown/VvDropdownAction.vue +37 -39
  141. package/src/components/VvDropdown/VvDropdownItem.vue +29 -28
  142. package/src/components/VvDropdown/VvDropdownOptgroup.vue +13 -12
  143. package/src/components/VvDropdown/VvDropdownOption.vue +47 -47
  144. package/src/components/VvDropdown/index.ts +53 -53
  145. package/src/components/VvIcon/README.md +1 -1
  146. package/src/components/VvIcon/VvIcon.vue +133 -133
  147. package/src/components/VvIcon/index.ts +77 -77
  148. package/src/components/VvInputFile/VvInputFile.vue +367 -363
  149. package/src/components/VvInputFile/index.ts +125 -125
  150. package/src/components/VvInputText/VvInputClearAction.ts +50 -50
  151. package/src/components/VvInputText/VvInputPasswordAction.ts +65 -65
  152. package/src/components/VvInputText/VvInputStepAction.ts +43 -43
  153. package/src/components/VvInputText/VvInputText.vue +636 -637
  154. package/src/components/VvInputText/VvInputTextActions.ts +86 -86
  155. package/src/components/VvInputText/index.ts +198 -198
  156. package/src/components/VvNav/VvNav.vue +40 -33
  157. package/src/components/VvNav/VvNavItem.vue +12 -12
  158. package/src/components/VvNav/VvNavSeparator.vue +6 -6
  159. package/src/components/VvNav/index.ts +2 -2
  160. package/src/components/VvProgress/VvProgress.vue +27 -26
  161. package/src/components/VvProgress/index.ts +28 -28
  162. package/src/components/VvRadio/VvRadio.vue +115 -112
  163. package/src/components/VvRadio/index.ts +27 -27
  164. package/src/components/VvRadioGroup/VvRadioGroup.vue +91 -89
  165. package/src/components/VvSelect/VvSelect.vue +241 -238
  166. package/src/components/VvSelect/index.ts +62 -62
  167. package/src/components/VvTab/VvTab.vue +79 -73
  168. package/src/components/VvTab/index.ts +12 -12
  169. package/src/components/VvTextarea/VvTextarea.vue +218 -216
  170. package/src/components/VvTextarea/index.ts +35 -35
  171. package/src/components/VvTooltip/VvTooltip.vue +22 -16
  172. package/src/components/VvTooltip/index.ts +12 -12
  173. package/src/components/common/HintSlot.ts +149 -150
  174. package/src/composables/alert/useAlert.ts +74 -74
  175. package/src/composables/alert/useInjectAlert.ts +1 -1
  176. package/src/composables/alert/useProvideAlert.ts +10 -10
  177. package/src/composables/dropdown/useInjectDropdown.ts +6 -6
  178. package/src/composables/dropdown/useProvideDropdown.ts +62 -62
  179. package/src/composables/group/useInjectedGroupState.ts +41 -41
  180. package/src/composables/group/useProvideGroupState.ts +1 -2
  181. package/src/composables/useBlurhash.ts +52 -60
  182. package/src/composables/useComponentFocus.ts +9 -9
  183. package/src/composables/useComponentIcon.ts +35 -35
  184. package/src/composables/useDebouncedInput.ts +25 -25
  185. package/src/composables/useDefaults.ts +77 -76
  186. package/src/composables/useModifiers.ts +29 -29
  187. package/src/composables/useOptions.ts +45 -43
  188. package/src/composables/usePersistence.ts +70 -72
  189. package/src/composables/useTextCount.ts +44 -44
  190. package/src/composables/useUniqueId.ts +3 -2
  191. package/src/composables/useVolver.ts +1 -1
  192. package/src/constants.ts +70 -70
  193. package/src/directives/v-contextmenu.ts +34 -34
  194. package/src/directives/v-tooltip.ts +17 -17
  195. package/src/index.ts +3 -3
  196. package/src/props/index.ts +453 -453
  197. package/src/resolvers/unplugin.ts +138 -138
  198. package/src/shims.d.ts +4 -5
  199. package/src/stories/Accordion/Accordion.settings.ts +49 -49
  200. package/src/stories/Accordion/Accordion.stories.ts +21 -21
  201. package/src/stories/Accordion/Accordion.test.ts +56 -54
  202. package/src/stories/Accordion/AccordionSlots.stories.ts +13 -13
  203. package/src/stories/AccordionGroup/AccordionGroup.settings.ts +69 -67
  204. package/src/stories/AccordionGroup/AccordionGroup.stories.ts +37 -37
  205. package/src/stories/AccordionGroup/AccordionGroup.test.ts +49 -47
  206. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +34 -34
  207. package/src/stories/Alert/Alert.settings.ts +115 -115
  208. package/src/stories/Alert/Alert.stories.ts +30 -30
  209. package/src/stories/Alert/Alert.test.ts +78 -78
  210. package/src/stories/Alert/AlertModifiers.stories.ts +45 -45
  211. package/src/stories/Alert/AlertSlots.stories.ts +35 -35
  212. package/src/stories/AlertGroup/AlertGroup.settings.ts +104 -104
  213. package/src/stories/AlertGroup/AlertGroup.stories.ts +25 -25
  214. package/src/stories/AlertGroup/AlertGroup.test.ts +67 -67
  215. package/src/stories/AlertGroup/AlertGroupPosition.stories.ts +68 -68
  216. package/src/stories/AlertGroup/AlertGroupSlots.stories.ts +23 -23
  217. package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +57 -57
  218. package/src/stories/Avatar/Avatar.settings.ts +29 -29
  219. package/src/stories/Avatar/Avatar.stories.ts +23 -23
  220. package/src/stories/Avatar/Avatar.test.ts +22 -22
  221. package/src/stories/Avatar/AvatarBadge.stories.ts +15 -15
  222. package/src/stories/Avatar/AvatarModifiers.stories.ts +61 -61
  223. package/src/stories/Avatar/AvatarSlots.stories.ts +18 -18
  224. package/src/stories/AvatarGroup/AvatarGroup.settings.ts +53 -53
  225. package/src/stories/AvatarGroup/AvatarGroup.stories.ts +17 -17
  226. package/src/stories/AvatarGroup/AvatarGroup.test.ts +24 -24
  227. package/src/stories/AvatarGroup/AvatarGroupModifiers.stories.ts +15 -15
  228. package/src/stories/AvatarGroup/AvatarGroupSlotDefault.stories.ts +17 -17
  229. package/src/stories/Badge/Badge.settings.ts +20 -20
  230. package/src/stories/Badge/Badge.stories.ts +23 -23
  231. package/src/stories/Badge/Badge.test.ts +8 -8
  232. package/src/stories/Badge/BadgeSlots.stories.ts +10 -10
  233. package/src/stories/Blurhash/BlurhashComposable.stories.ts +77 -76
  234. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +34 -34
  235. package/src/stories/Breadcrumb/Breadcrumb.stories.ts +22 -22
  236. package/src/stories/Breadcrumb/Breadcrumb.test.ts +44 -43
  237. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.ts +17 -17
  238. package/src/stories/Button/Button.settings.ts +144 -144
  239. package/src/stories/Button/Button.stories.ts +18 -18
  240. package/src/stories/Button/Button.test.ts +41 -40
  241. package/src/stories/Button/ButtonIcon.stories.ts +42 -42
  242. package/src/stories/Button/ButtonLink.stories.ts +24 -24
  243. package/src/stories/Button/ButtonLoading.stories.ts +22 -22
  244. package/src/stories/Button/ButtonModifiers.stories.ts +91 -91
  245. package/src/stories/Button/ButtonSlots.stories.ts +47 -47
  246. package/src/stories/Button/ButtonState.stories.ts +23 -23
  247. package/src/stories/Button/ButtonToggle.stories.ts +30 -30
  248. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +32 -32
  249. package/src/stories/ButtonGroup/ButtonGroup.stories.ts +19 -19
  250. package/src/stories/ButtonGroup/ButtonGroup.test.ts +23 -22
  251. package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.ts +20 -20
  252. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.ts +18 -18
  253. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.ts +22 -22
  254. package/src/stories/Card/Card.settings.ts +48 -48
  255. package/src/stories/Card/Card.stories.ts +22 -22
  256. package/src/stories/Card/Card.test.ts +14 -14
  257. package/src/stories/Card/CardSlots.stories.ts +42 -42
  258. package/src/stories/Checkbox/Checkbox.settings.ts +35 -35
  259. package/src/stories/Checkbox/Checkbox.stories.ts +57 -57
  260. package/src/stories/Checkbox/Checkbox.test.ts +63 -62
  261. package/src/stories/Checkbox/CheckboxBinary.stories.ts +17 -17
  262. package/src/stories/Checkbox/CheckboxSlots.stories.ts +15 -15
  263. package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +9 -9
  264. package/src/stories/CheckboxGroup/CheckboxGroup.stories.ts +50 -50
  265. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +63 -63
  266. package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.ts +34 -34
  267. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.ts +23 -23
  268. package/src/stories/Combobox/Combobox.settings.ts +390 -390
  269. package/src/stories/Combobox/Combobox.stories.ts +107 -107
  270. package/src/stories/Combobox/Combobox.test.ts +89 -87
  271. package/src/stories/Combobox/ComboboxIconPosition.stories.ts +24 -24
  272. package/src/stories/Combobox/ComboboxMultiple.stories.ts +22 -22
  273. package/src/stories/Combobox/ComboboxOptions.stories.ts +84 -84
  274. package/src/stories/Combobox/ComboboxSlots.stories.ts +55 -55
  275. package/src/stories/Dialog/Dialog.settings.ts +39 -39
  276. package/src/stories/Dialog/Dialog.stories.ts +28 -28
  277. package/src/stories/Dialog/Dialog.test.ts +49 -49
  278. package/src/stories/Dialog/DialogSlots.stories.ts +20 -20
  279. package/src/stories/Dropdown/Dropdown.settings.ts +62 -62
  280. package/src/stories/Dropdown/Dropdown.stories.ts +59 -59
  281. package/src/stories/Dropdown/Dropdown.test.ts +9 -9
  282. package/src/stories/Dropdown/DropdownContextmenuDirective.stories.ts +16 -16
  283. package/src/stories/Dropdown/DropdownMultilevel.stories.ts +18 -18
  284. package/src/stories/Dropdown/DropdownSlots.stories.ts +49 -49
  285. package/src/stories/Icon/Icon.settings.ts +64 -64
  286. package/src/stories/Icon/Icon.stories.ts +28 -28
  287. package/src/stories/Icon/IconsCollection.stories.ts +22 -22
  288. package/src/stories/InputFile/InputFile.settings.ts +29 -29
  289. package/src/stories/InputFile/InputFile.stories.ts +54 -54
  290. package/src/stories/InputFile/InputFileDropArea.stories.ts +34 -34
  291. package/src/stories/InputFile/InputFileIconPosition.stories.ts +24 -24
  292. package/src/stories/InputFile/InputFileSlots.stories.ts +17 -17
  293. package/src/stories/InputText/InputText.settings.ts +245 -246
  294. package/src/stories/InputText/InputText.stories.ts +67 -67
  295. package/src/stories/InputText/InputText.test.ts +118 -117
  296. package/src/stories/InputText/InputTextIconPosition.stories.ts +24 -24
  297. package/src/stories/InputText/InputTextLength.stories.ts +33 -33
  298. package/src/stories/InputText/InputTextMask.stories.ts +91 -91
  299. package/src/stories/InputText/InputTextMinMax.stories.ts +29 -29
  300. package/src/stories/InputText/InputTextSlots.stories.ts +20 -20
  301. package/src/stories/InputText/InputTextType.stories.ts +70 -70
  302. package/src/stories/Nav/Nav.settings.ts +25 -25
  303. package/src/stories/Nav/Nav.stories.ts +17 -17
  304. package/src/stories/Nav/Nav.test.ts +10 -10
  305. package/src/stories/Nav/NavModifiers.stories.ts +25 -25
  306. package/src/stories/Progress/Progress.settings.ts +23 -23
  307. package/src/stories/Progress/Progress.stories.ts +23 -23
  308. package/src/stories/Progress/Progress.test.ts +4 -4
  309. package/src/stories/Radio/Radio.settings.ts +9 -9
  310. package/src/stories/Radio/Radio.stories.ts +47 -47
  311. package/src/stories/Radio/Radio.test.ts +54 -53
  312. package/src/stories/Radio/RadioSlots.stories.ts +15 -15
  313. package/src/stories/RadioGroup/RadioGroup.settings.ts +9 -9
  314. package/src/stories/RadioGroup/RadioGroup.stories.ts +50 -50
  315. package/src/stories/RadioGroup/RadioGroup.test.ts +63 -63
  316. package/src/stories/RadioGroup/RadioGroupOptions.stories.ts +34 -34
  317. package/src/stories/RadioGroup/RadioGroupSlots.stories.ts +23 -23
  318. package/src/stories/Select/Select.settings.ts +70 -70
  319. package/src/stories/Select/Select.stories.ts +66 -66
  320. package/src/stories/Select/Select.test.ts +65 -64
  321. package/src/stories/Select/SelectIconPosition.stories.ts +24 -24
  322. package/src/stories/Select/SelectOptions.stories.ts +54 -54
  323. package/src/stories/Select/SelectSlots.stories.ts +20 -20
  324. package/src/stories/Tab/Tab.settings.ts +32 -32
  325. package/src/stories/Tab/Tab.stories.ts +17 -17
  326. package/src/stories/Tab/Tab.test.ts +17 -17
  327. package/src/stories/Textarea/Textarea.settings.ts +78 -79
  328. package/src/stories/Textarea/Textarea.stories.ts +63 -63
  329. package/src/stories/Textarea/Textarea.test.ts +70 -69
  330. package/src/stories/Textarea/TextareaLength.stories.ts +33 -33
  331. package/src/stories/Textarea/TextareaSlots.stories.ts +20 -20
  332. package/src/stories/Textarea/TextareatIconPosition.stories.ts +24 -24
  333. package/src/stories/Tooltip/Tooltip.settings.ts +16 -16
  334. package/src/stories/Tooltip/Tooltip.stories.ts +18 -18
  335. package/src/stories/Tooltip/Tooltip.test.ts +53 -52
  336. package/src/stories/Tooltip/TooltipDirective.stories.ts +37 -37
  337. package/src/stories/argTypes.ts +484 -485
  338. package/src/test/expect.ts +71 -74
  339. package/src/test/options.ts +17 -16
  340. package/src/test/sleep.ts +3 -2
  341. package/src/test/types.d.ts +11 -11
  342. package/src/types/alert.ts +18 -18
  343. package/src/types/blurhash.ts +18 -18
  344. package/src/types/generic.ts +1 -2
  345. package/src/types/group.ts +21 -21
  346. package/src/types/input-file.ts +17 -17
  347. package/src/types/nav.ts +13 -13
  348. package/src/utils/ObjectUtilities.ts +192 -177
@@ -1,7 +1,11 @@
1
- import { provide, computed, unref, inject, defineComponent, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, watch, createElementBlock, normalizeProps, guardReactiveProps, renderSlot, createTextVNode, toDisplayString, withModifiers, createElementVNode, createVNode, TransitionGroup, toHandlers, withCtx, Fragment, renderList } from "vue";
2
- import mitt from "mitt";
1
+ import { inject, computed, unref, defineComponent, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, watch, createElementBlock, normalizeProps, guardReactiveProps, renderSlot, createTextVNode, toDisplayString, withModifiers, createElementVNode, provide, createVNode, TransitionGroup, toHandlers, withCtx, Fragment, renderList } from "vue";
3
2
  import { iconExists, Icon, addIcon } from "@iconify/vue";
4
3
  import { uid } from "uid";
4
+ import mitt from "mitt";
5
+ const VvIconPropsDefaults = {
6
+ prefix: "normal"
7
+ /* normal */
8
+ };
5
9
  var StorageType = /* @__PURE__ */ ((StorageType2) => {
6
10
  StorageType2["local"] = "local";
7
11
  StorageType2["session"] = "session";
@@ -57,6 +61,145 @@ const INJECTION_KEY_VOLVER = Symbol.for("volver");
57
61
  const INJECTION_KEY_ALERT_GROUP = Symbol.for(
58
62
  "alertGroup"
59
63
  );
64
+ function useVolver() {
65
+ return inject(INJECTION_KEY_VOLVER);
66
+ }
67
+ function useModifiers(prefix, modifiers, others) {
68
+ return computed(() => {
69
+ const toReturn = {
70
+ [prefix]: true
71
+ };
72
+ const modifiersArray = typeof (modifiers == null ? void 0 : modifiers.value) === "string" ? modifiers.value.split(" ") : modifiers == null ? void 0 : modifiers.value;
73
+ if (modifiersArray) {
74
+ if (Array.isArray(modifiersArray)) {
75
+ modifiersArray.forEach((modifier) => {
76
+ if (modifier) {
77
+ toReturn[`${prefix}--${modifier}`] = true;
78
+ }
79
+ });
80
+ }
81
+ }
82
+ if (others) {
83
+ Object.keys(others.value).forEach((key) => {
84
+ toReturn[`${prefix}--${key}`] = unref(others.value[key]);
85
+ });
86
+ }
87
+ return toReturn;
88
+ });
89
+ }
90
+ const __default__$2 = {
91
+ name: "VvIcon"
92
+ };
93
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
94
+ ...__default__$2,
95
+ props: /* @__PURE__ */ mergeDefaults({
96
+ name: {},
97
+ color: {},
98
+ width: {},
99
+ height: {},
100
+ provider: {},
101
+ prefix: {},
102
+ src: {},
103
+ horizontalFlip: { type: Boolean },
104
+ verticalFlip: { type: Boolean },
105
+ flip: {},
106
+ mode: {},
107
+ inline: { type: Boolean },
108
+ rotate: {},
109
+ onLoad: { type: Function },
110
+ svg: {},
111
+ modifiers: {}
112
+ }, VvIconPropsDefaults),
113
+ setup(__props) {
114
+ const props = __props;
115
+ const hasRotate = computed(() => {
116
+ if (typeof props.rotate === "string") {
117
+ return Number.parseFloat(props.rotate);
118
+ }
119
+ return props.rotate;
120
+ });
121
+ const show = ref(true);
122
+ const volver = useVolver();
123
+ const { modifiers } = toRefs(props);
124
+ const bemCssClasses = useModifiers("vv-icon", modifiers);
125
+ const provider = computed(() => {
126
+ return props.provider || (volver == null ? void 0 : volver.iconsProvider);
127
+ });
128
+ const icon = computed(() => {
129
+ const name = props.name ?? "";
130
+ const iconName = `@${provider.value}:${props.prefix}:${name}`;
131
+ if (iconExists(iconName)) {
132
+ return iconName;
133
+ }
134
+ const iconsCollection = volver == null ? void 0 : volver.iconsCollections.find(
135
+ (iconsCollection2) => {
136
+ const icon2 = `@${provider.value}:${iconsCollection2.prefix}:${name}`;
137
+ return iconExists(icon2);
138
+ }
139
+ );
140
+ if (iconsCollection) {
141
+ return `@${provider.value}:${iconsCollection.prefix}:${name}`;
142
+ }
143
+ return name;
144
+ });
145
+ function getSvgContent(svg) {
146
+ let dom;
147
+ if (typeof window === "undefined") {
148
+ const { JSDOM } = require("jsdom");
149
+ dom = new JSDOM().window;
150
+ }
151
+ const domParser = dom ? new dom.DOMParser() : new window.DOMParser();
152
+ const svgDomString = domParser.parseFromString(svg, "text/html");
153
+ const svgEl = svgDomString.querySelector("svg");
154
+ return svgEl;
155
+ }
156
+ function addIconFromSvg(svg) {
157
+ const svgContentEl = getSvgContent(svg);
158
+ const svgContent = (svgContentEl == null ? void 0 : svgContentEl.innerHTML.trim()) || "";
159
+ if (svgContentEl && svgContent) {
160
+ addIcon(`@${provider.value}:${props.prefix}:${props.name}`, {
161
+ body: svgContent,
162
+ // Set height and width from svg content
163
+ height: svgContentEl.viewBox.baseVal.height,
164
+ width: svgContentEl.viewBox.baseVal.width
165
+ });
166
+ }
167
+ }
168
+ if (volver) {
169
+ if (props.src && !iconExists(`@${provider.value}:${props.prefix}:${props.name}`)) {
170
+ show.value = false;
171
+ volver.fetchIcon(props.src).then((svg) => {
172
+ if (svg) {
173
+ addIconFromSvg(svg);
174
+ show.value = true;
175
+ }
176
+ }).catch((e) => {
177
+ throw new Error(`Error during fetch icon: ${e == null ? void 0 : e.message}`);
178
+ });
179
+ }
180
+ }
181
+ if (props.svg) {
182
+ addIconFromSvg(props.svg);
183
+ }
184
+ return (_ctx, _cache) => {
185
+ return unref(show) ? (openBlock(), createBlock(unref(Icon), mergeProps({
186
+ key: 0,
187
+ class: unref(bemCssClasses)
188
+ }, {
189
+ inline: _ctx.inline,
190
+ width: _ctx.width,
191
+ height: _ctx.height,
192
+ horizontalFlip: _ctx.horizontalFlip,
193
+ verticalFlip: _ctx.verticalFlip,
194
+ flip: _ctx.flip,
195
+ rotate: unref(hasRotate),
196
+ color: _ctx.color,
197
+ onLoad: _ctx.onLoad,
198
+ icon: unref(icon)
199
+ }), null, 16, ["class"])) : createCommentVNode("v-if", true);
200
+ };
201
+ }
202
+ });
60
203
  const LinkProps = {
61
204
  /**
62
205
  * The router-link/nuxt-link property, if it is defined the button is rendered as a ruouter-link or nuxt-link.
@@ -292,336 +435,83 @@ const IdProps = {
292
435
  },
293
436
  storageKey: String
294
437
  });
295
- function useProvideAlertGroup({
296
- name
297
- }) {
298
- const bus = mitt();
299
- provide(INJECTION_KEY_ALERT_GROUP, {
300
- name,
301
- bus
302
- });
303
- return bus;
438
+ function useInjectedAlertGroup() {
439
+ return inject(INJECTION_KEY_ALERT_GROUP, {});
304
440
  }
305
- function useModifiers(prefix, modifiers, others) {
306
- return computed(() => {
307
- const toReturn = {
308
- [prefix]: true
309
- };
310
- const modifiersArray = typeof (modifiers == null ? void 0 : modifiers.value) === "string" ? modifiers.value.split(" ") : modifiers == null ? void 0 : modifiers.value;
311
- if (modifiersArray) {
312
- if (Array.isArray(modifiersArray)) {
313
- modifiersArray.forEach((modifier) => {
314
- if (modifier) {
315
- toReturn[`${prefix}--${modifier}`] = true;
316
- }
317
- });
318
- }
319
- }
320
- if (others) {
321
- Object.keys(others.value).forEach((key) => {
322
- toReturn[`${prefix}--${key}`] = unref(others.value[key]);
323
- });
441
+ function useUniqueId(id) {
442
+ return computed(() => String((id == null ? void 0 : id.value) || uid()));
443
+ }
444
+ function useComponentIcon(icon, iconPosition) {
445
+ const hasIcon = computed(() => {
446
+ if (typeof (icon == null ? void 0 : icon.value) === "string") {
447
+ return { name: icon == null ? void 0 : icon.value };
324
448
  }
325
- return toReturn;
449
+ return icon == null ? void 0 : icon.value;
326
450
  });
451
+ const hasIconBefore = computed(
452
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Position.before ? hasIcon.value : void 0
453
+ );
454
+ const hasIconAfter = computed(
455
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Position.after ? hasIcon.value : void 0
456
+ );
457
+ const hasIconLeft = computed(
458
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Side.left ? hasIcon.value : void 0
459
+ );
460
+ const hasIconRight = computed(
461
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Side.right ? hasIcon.value : void 0
462
+ );
463
+ const hasIconTop = computed(
464
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Side.top ? hasIcon.value : void 0
465
+ );
466
+ const hasIconBottom = computed(
467
+ () => (iconPosition == null ? void 0 : iconPosition.value) === Side.bottom ? hasIcon.value : void 0
468
+ );
469
+ return {
470
+ hasIcon,
471
+ hasIconLeft,
472
+ hasIconRight,
473
+ hasIconTop,
474
+ hasIconBottom,
475
+ hasIconBefore,
476
+ hasIconAfter
477
+ };
327
478
  }
328
- const VvAlertGroupProps = {
329
- ...ModifiersProps,
330
- name: {
331
- type: String,
332
- required: true
333
- },
334
- items: {
335
- type: Array,
336
- default: () => []
479
+ const VvAlertProps = {
480
+ ...IdProps,
481
+ ...IconProps,
482
+ /**
483
+ * Component BEM modifiers
484
+ */
485
+ modifiers: {
486
+ type: [String, Array],
487
+ default: void 0
337
488
  },
338
- stack: {
489
+ /**
490
+ * The alert is dismissable
491
+ * @default false
492
+ * @type boolean
493
+ */
494
+ dismissable: {
339
495
  type: Boolean,
340
496
  default: false
341
497
  },
342
- reverse: {
343
- type: Boolean,
344
- default: false
498
+ /**
499
+ * The alert auto close after the specified time in milliseconds
500
+ * @default 0
501
+ * @type number
502
+ */
503
+ autoClose: {
504
+ type: Number,
505
+ default: 0
345
506
  },
346
- inline: {
507
+ /**
508
+ * The alert close label
509
+ * @default 'Close'
510
+ * @type string
511
+ */
512
+ closeLabel: {
347
513
  type: String,
348
- default: void 0
349
- },
350
- block: {
351
- type: String,
352
- default: void 0
353
- },
354
- position: {
355
- type: String,
356
- default: void 0
357
- },
358
- transition: {
359
- type: String,
360
- default: void 0
361
- }
362
- };
363
- const VvAlertGroupEvents = [
364
- "close",
365
- "before-enter",
366
- "after-leave",
367
- "enter",
368
- "after-enter",
369
- "enter-cancelled",
370
- "before-leave",
371
- "leave",
372
- "leave-cancelled"
373
- ];
374
- const useVvAlertGroup = (props, emit) => {
375
- const bus = useProvideAlertGroup({ name: computed(() => props.name) });
376
- if (props.block && !props.inline || !props.block && props.inline) {
377
- console.warn(
378
- `[VvAlertGroup]: block and inline props must coexist at the same time.`
379
- );
380
- }
381
- const hasClass = computed(() => {
382
- const toReturn = [
383
- useModifiers(
384
- "vv-alert-group",
385
- computed(() => props.modifiers),
386
- computed(() => ({
387
- stack: props.stack,
388
- reverse: props.reverse,
389
- absolute: props.position === "absolute",
390
- fixed: props.position === "fixed"
391
- }))
392
- ).value
393
- ];
394
- if (props.inline && props.block) {
395
- toReturn.push(`vv-alert-group--${props.block}-${props.inline}`);
396
- }
397
- return toReturn;
398
- });
399
- const hasTransition = computed(() => {
400
- if (props.transition) {
401
- return props.transition;
402
- }
403
- if (!props.position) {
404
- return "vv-alert--fade";
405
- }
406
- if (props.inline === "start") {
407
- return "vv-alert--fade-inline-start";
408
- }
409
- if (props.inline === "end") {
410
- return "vv-alert--fade-inline-end";
411
- }
412
- if (props.block === "top") {
413
- return "vv-alert--fade-block-top";
414
- }
415
- if (props.block === "bottom") {
416
- return "vv-alert--fade-block-bottom";
417
- }
418
- return "vv-alert--fade";
419
- });
420
- bus.on("close", (id) => {
421
- emit("close", id);
422
- });
423
- return {
424
- hasTransition,
425
- hasProps: computed(() => ({
426
- class: hasClass.value
427
- }))
428
- };
429
- };
430
- const VvIconPropsDefaults = {
431
- prefix: "normal"
432
- /* normal */
433
- };
434
- function useVolver() {
435
- return inject(INJECTION_KEY_VOLVER);
436
- }
437
- const __default__$2 = {
438
- name: "VvIcon"
439
- };
440
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
441
- ...__default__$2,
442
- props: /* @__PURE__ */ mergeDefaults({
443
- name: {},
444
- color: {},
445
- width: {},
446
- height: {},
447
- provider: {},
448
- prefix: {},
449
- src: {},
450
- horizontalFlip: { type: Boolean },
451
- verticalFlip: { type: Boolean },
452
- flip: {},
453
- mode: {},
454
- inline: { type: Boolean },
455
- rotate: {},
456
- onLoad: { type: Function },
457
- svg: {},
458
- modifiers: {}
459
- }, VvIconPropsDefaults),
460
- setup(__props) {
461
- const props = __props;
462
- const hasRotate = computed(() => {
463
- if (typeof props.rotate === "string") {
464
- return parseFloat(props.rotate);
465
- }
466
- return props.rotate;
467
- });
468
- const show = ref(true);
469
- const volver = useVolver();
470
- const { modifiers } = toRefs(props);
471
- const bemCssClasses = useModifiers("vv-icon", modifiers);
472
- const provider = computed(() => {
473
- return props.provider || (volver == null ? void 0 : volver.iconsProvider);
474
- });
475
- const icon = computed(() => {
476
- const name = props.name ?? "";
477
- const iconName = `@${provider.value}:${props.prefix}:${name}`;
478
- if (iconExists(iconName)) {
479
- return iconName;
480
- }
481
- const iconsCollection = volver == null ? void 0 : volver.iconsCollections.find(
482
- (iconsCollection2) => {
483
- const icon2 = `@${provider.value}:${iconsCollection2.prefix}:${name}`;
484
- return iconExists(icon2);
485
- }
486
- );
487
- if (iconsCollection) {
488
- return `@${provider.value}:${iconsCollection.prefix}:${name}`;
489
- }
490
- return name;
491
- });
492
- function getSvgContent(svg) {
493
- let dom;
494
- if (typeof window === "undefined") {
495
- const { JSDOM } = require("jsdom");
496
- dom = new JSDOM().window;
497
- }
498
- const domParser = dom ? new dom.DOMParser() : new window.DOMParser();
499
- const svgDomString = domParser.parseFromString(svg, "text/html");
500
- const svgEl = svgDomString.querySelector("svg");
501
- return svgEl;
502
- }
503
- function addIconFromSvg(svg) {
504
- const svgContentEl = getSvgContent(svg);
505
- const svgContent = (svgContentEl == null ? void 0 : svgContentEl.innerHTML.trim()) || "";
506
- if (svgContentEl && svgContent) {
507
- addIcon(`@${provider.value}:${props.prefix}:${props.name}`, {
508
- body: svgContent,
509
- // Set height and width from svg content
510
- height: svgContentEl.viewBox.baseVal.height,
511
- width: svgContentEl.viewBox.baseVal.width
512
- });
513
- }
514
- }
515
- if (volver) {
516
- if (props.src && !iconExists(`@${provider.value}:${props.prefix}:${props.name}`)) {
517
- show.value = false;
518
- volver.fetchIcon(props.src).then((svg) => {
519
- if (svg) {
520
- addIconFromSvg(svg);
521
- show.value = true;
522
- }
523
- }).catch((e) => {
524
- throw new Error(`Error during fetch icon: ${e == null ? void 0 : e.message}`);
525
- });
526
- }
527
- }
528
- if (props.svg) {
529
- addIconFromSvg(props.svg);
530
- }
531
- return (_ctx, _cache) => {
532
- return unref(show) ? (openBlock(), createBlock(unref(Icon), mergeProps({
533
- key: 0,
534
- class: unref(bemCssClasses)
535
- }, {
536
- inline: _ctx.inline,
537
- width: _ctx.width,
538
- height: _ctx.height,
539
- horizontalFlip: _ctx.horizontalFlip,
540
- verticalFlip: _ctx.verticalFlip,
541
- flip: _ctx.flip,
542
- rotate: unref(hasRotate),
543
- color: _ctx.color,
544
- onLoad: _ctx.onLoad,
545
- icon: unref(icon)
546
- }), null, 16, ["class"])) : createCommentVNode("v-if", true);
547
- };
548
- }
549
- });
550
- function useInjectedAlertGroup() {
551
- return inject(INJECTION_KEY_ALERT_GROUP, {});
552
- }
553
- const useUniqueId = (id) => computed(() => String((id == null ? void 0 : id.value) || uid()));
554
- function useComponentIcon(icon, iconPosition) {
555
- const hasIcon = computed(() => {
556
- if (typeof (icon == null ? void 0 : icon.value) === "string") {
557
- return { name: icon == null ? void 0 : icon.value };
558
- }
559
- return icon == null ? void 0 : icon.value;
560
- });
561
- const hasIconBefore = computed(
562
- () => (iconPosition == null ? void 0 : iconPosition.value) === Position.before ? hasIcon.value : void 0
563
- );
564
- const hasIconAfter = computed(
565
- () => (iconPosition == null ? void 0 : iconPosition.value) === Position.after ? hasIcon.value : void 0
566
- );
567
- const hasIconLeft = computed(
568
- () => (iconPosition == null ? void 0 : iconPosition.value) === Side.left ? hasIcon.value : void 0
569
- );
570
- const hasIconRight = computed(
571
- () => (iconPosition == null ? void 0 : iconPosition.value) === Side.right ? hasIcon.value : void 0
572
- );
573
- const hasIconTop = computed(
574
- () => (iconPosition == null ? void 0 : iconPosition.value) === Side.top ? hasIcon.value : void 0
575
- );
576
- const hasIconBottom = computed(
577
- () => (iconPosition == null ? void 0 : iconPosition.value) === Side.bottom ? hasIcon.value : void 0
578
- );
579
- return {
580
- hasIcon,
581
- hasIconLeft,
582
- hasIconRight,
583
- hasIconTop,
584
- hasIconBottom,
585
- hasIconBefore,
586
- hasIconAfter
587
- };
588
- }
589
- const VvAlertProps = {
590
- ...IdProps,
591
- ...IconProps,
592
- /**
593
- * Component BEM modifiers
594
- */
595
- modifiers: {
596
- type: [String, Array],
597
- default: void 0
598
- },
599
- /**
600
- * The alert is dismissable
601
- * @default false
602
- * @type boolean
603
- */
604
- dismissable: {
605
- type: Boolean,
606
- default: false
607
- },
608
- /**
609
- * The alert auto close after the specified time in milliseconds
610
- * @default 0
611
- * @type number
612
- */
613
- autoClose: {
614
- type: Number,
615
- default: 0
616
- },
617
- /**
618
- * The alert close label
619
- * @default 'Close'
620
- * @type string
621
- */
622
- closeLabel: {
623
- type: String,
624
- default: "Close"
514
+ default: "Close"
625
515
  },
626
516
  /**
627
517
  * The alert title
@@ -664,23 +554,11 @@ const VvAlertProps = {
664
554
  }
665
555
  };
666
556
  const VvAlertEvents = ["close"];
667
- const useVvAlert = (props, emit) => {
557
+ function useVvAlert(props, emit) {
668
558
  const { bus } = useInjectedAlertGroup();
669
559
  const hasId = useUniqueId(computed(() => props.id));
670
560
  const hasTitleId = computed(() => `${hasId.value}-title`);
671
- const { hasIcon } = useComponentIcon(computed(() => props.icon));
672
- const hasClass = useModifiers(
673
- "vv-alert",
674
- computed(() => props.modifiers),
675
- computed(() => ({
676
- dismissable: props.autoClose > 0 || props.dismissable,
677
- "auto-close": props.autoClose > 0,
678
- hover: isMouseover.value
679
- }))
680
- );
681
- const hasStyle = computed(() => ({
682
- "--alert-duration": `${props.autoClose}ms`
683
- }));
561
+ let timeout;
684
562
  const close = () => {
685
563
  if (timeout) {
686
564
  clearTimeout(timeout);
@@ -688,7 +566,6 @@ const useVvAlert = (props, emit) => {
688
566
  emit("close", hasId.value);
689
567
  bus == null ? void 0 : bus.emit("close", hasId.value);
690
568
  };
691
- let timeout;
692
569
  watch(
693
570
  () => props.autoClose,
694
571
  (value) => {
@@ -717,6 +594,19 @@ const useVvAlert = (props, emit) => {
717
594
  timeout = setTimeout(close, props.autoClose);
718
595
  }
719
596
  };
597
+ const { hasIcon } = useComponentIcon(computed(() => props.icon));
598
+ const hasClass = useModifiers(
599
+ "vv-alert",
600
+ computed(() => props.modifiers),
601
+ computed(() => ({
602
+ "dismissable": props.autoClose > 0 || props.dismissable,
603
+ "auto-close": props.autoClose > 0,
604
+ "hover": isMouseover.value
605
+ }))
606
+ );
607
+ const hasStyle = computed(() => ({
608
+ "--alert-duration": `${props.autoClose}ms`
609
+ }));
720
610
  return {
721
611
  close,
722
612
  hasIcon,
@@ -724,13 +614,13 @@ const useVvAlert = (props, emit) => {
724
614
  hasProps: computed(() => ({
725
615
  onMouseover,
726
616
  onMouseleave,
727
- class: hasClass.value,
728
- style: hasStyle.value,
729
- role: props.role,
617
+ "class": hasClass.value,
618
+ "style": hasStyle.value,
619
+ "role": props.role,
730
620
  "aria-labelledby": hasTitleId.value
731
621
  }))
732
622
  };
733
- };
623
+ }
734
624
  const _hoisted_1 = {
735
625
  key: 0,
736
626
  class: "vv-alert__header"
@@ -836,6 +726,118 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
836
726
  };
837
727
  }
838
728
  });
729
+ function useProvideAlertGroup({
730
+ name
731
+ }) {
732
+ const bus = mitt();
733
+ provide(INJECTION_KEY_ALERT_GROUP, {
734
+ name,
735
+ bus
736
+ });
737
+ return bus;
738
+ }
739
+ const VvAlertGroupProps = {
740
+ ...ModifiersProps,
741
+ name: {
742
+ type: String,
743
+ required: true
744
+ },
745
+ items: {
746
+ type: Array,
747
+ default: () => []
748
+ },
749
+ stack: {
750
+ type: Boolean,
751
+ default: false
752
+ },
753
+ reverse: {
754
+ type: Boolean,
755
+ default: false
756
+ },
757
+ inline: {
758
+ type: String,
759
+ default: void 0
760
+ },
761
+ block: {
762
+ type: String,
763
+ default: void 0
764
+ },
765
+ position: {
766
+ type: String,
767
+ default: void 0
768
+ },
769
+ transition: {
770
+ type: String,
771
+ default: void 0
772
+ }
773
+ };
774
+ const VvAlertGroupEvents = [
775
+ "close",
776
+ "beforeEnter",
777
+ "afterLeave",
778
+ "enter",
779
+ "afterEnter",
780
+ "enterCancelled",
781
+ "beforeLeave",
782
+ "leave",
783
+ "leaveCancelled"
784
+ ];
785
+ function useVvAlertGroup(props, emit) {
786
+ const bus = useProvideAlertGroup({ name: computed(() => props.name) });
787
+ if (props.block && !props.inline || !props.block && props.inline) {
788
+ console.warn(
789
+ `[VvAlertGroup]: block and inline props must coexist at the same time.`
790
+ );
791
+ }
792
+ const hasClass = computed(() => {
793
+ const toReturn = [
794
+ useModifiers(
795
+ "vv-alert-group",
796
+ computed(() => props.modifiers),
797
+ computed(() => ({
798
+ stack: props.stack,
799
+ reverse: props.reverse,
800
+ absolute: props.position === "absolute",
801
+ fixed: props.position === "fixed"
802
+ }))
803
+ ).value
804
+ ];
805
+ if (props.inline && props.block) {
806
+ toReturn.push(`vv-alert-group--${props.block}-${props.inline}`);
807
+ }
808
+ return toReturn;
809
+ });
810
+ const hasTransition = computed(() => {
811
+ if (props.transition) {
812
+ return props.transition;
813
+ }
814
+ if (!props.position) {
815
+ return "vv-alert--fade";
816
+ }
817
+ if (props.inline === "start") {
818
+ return "vv-alert--fade-inline-start";
819
+ }
820
+ if (props.inline === "end") {
821
+ return "vv-alert--fade-inline-end";
822
+ }
823
+ if (props.block === "top") {
824
+ return "vv-alert--fade-block-top";
825
+ }
826
+ if (props.block === "bottom") {
827
+ return "vv-alert--fade-block-bottom";
828
+ }
829
+ return "vv-alert--fade";
830
+ });
831
+ bus.on("close", (id) => {
832
+ emit("close", id);
833
+ });
834
+ return {
835
+ hasTransition,
836
+ hasProps: computed(() => ({
837
+ class: hasClass.value
838
+ }))
839
+ };
840
+ }
839
841
  const __default__ = {
840
842
  name: "VvAlertGroup"
841
843
  };
@@ -849,28 +851,28 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
849
851
  const { hasProps, hasTransition } = useVvAlertGroup(props, emit);
850
852
  const alertGroupTransitionHandlers = {
851
853
  "before-enter": () => {
852
- emit("before-enter");
854
+ emit("beforeEnter");
853
855
  },
854
856
  "after-leave": () => {
855
- emit("after-leave");
857
+ emit("afterLeave");
856
858
  },
857
- enter: () => {
859
+ "enter": () => {
858
860
  emit("enter");
859
861
  },
860
862
  "after-enter": () => {
861
- emit("after-enter");
863
+ emit("afterEnter");
862
864
  },
863
865
  "enter-cancelled": () => {
864
- emit("enter-cancelled");
866
+ emit("enterCancelled");
865
867
  },
866
868
  "before-leave": () => {
867
- emit("before-leave");
869
+ emit("beforeLeave");
868
870
  },
869
- leave: () => {
871
+ "leave": () => {
870
872
  emit("leave");
871
873
  },
872
874
  "leave-cancelled": () => {
873
- emit("leave-cancelled");
875
+ emit("leaveCancelled");
874
876
  }
875
877
  };
876
878
  return (_ctx, _cache) => {