@volverjs/ui-vue 0.0.10-beta.34 → 0.0.10-beta.36

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 +11 -11
  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 +12 -8
  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 +893 -876
  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,167 +1,164 @@
1
- import { type ExtractPropTypes, type PropType } from 'vue'
1
+ import type { ExtractPropTypes, PropType } from 'vue'
2
2
  import { AlertRole } from '@/constants'
3
3
  import { IconProps, IdProps } from '@/props'
4
4
  import type { AlertModifier } from '@/types'
5
5
 
6
6
  export const VvAlertProps = {
7
- ...IdProps,
8
- ...IconProps,
9
- /**
10
- * Component BEM modifiers
11
- */
12
- modifiers: {
13
- type: [String, Array] as PropType<AlertModifier | AlertModifier[]>,
14
- default: undefined,
15
- },
16
- /**
17
- * The alert is dismissable
18
- * @default false
19
- * @type boolean
20
- */
21
- dismissable: {
22
- type: Boolean,
23
- default: false,
24
- },
25
- /**
26
- * The alert auto close after the specified time in milliseconds
27
- * @default 0
28
- * @type number
29
- */
30
- autoClose: {
31
- type: Number,
32
- default: 0,
33
- },
34
- /**
35
- * The alert close label
36
- * @default 'Close'
37
- * @type string
38
- */
39
- closeLabel: {
40
- type: String,
41
- default: 'Close',
42
- },
43
- /**
44
- * The alert title
45
- * @default ''
46
- * @type string
47
- */
48
- title: {
49
- type: String,
50
- default: undefined,
51
- },
52
- /**
53
- * The alert content
54
- * @default ''
55
- * @type string
56
- */
57
- content: {
58
- type: String,
59
- default: undefined,
60
- },
61
- /**
62
- * The alert footer
63
- * @default ''
64
- * @type string
65
- */
66
- footer: {
67
- type: String,
68
- default: undefined,
69
- },
70
- /**
71
- * The alert role
72
- * @default 'alert'
73
- * @type string
74
- * @values 'alert', 'alertdialog'
75
- * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Alert_Role
76
- * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Alertdialog_role
77
- */
78
- role: {
79
- type: String as PropType<`${AlertRole}`>,
80
- default: AlertRole.alert,
81
- },
7
+ ...IdProps,
8
+ ...IconProps,
9
+ /**
10
+ * Component BEM modifiers
11
+ */
12
+ modifiers: {
13
+ type: [String, Array] as PropType<AlertModifier | AlertModifier[]>,
14
+ default: undefined,
15
+ },
16
+ /**
17
+ * The alert is dismissable
18
+ * @default false
19
+ * @type boolean
20
+ */
21
+ dismissable: {
22
+ type: Boolean,
23
+ default: false,
24
+ },
25
+ /**
26
+ * The alert auto close after the specified time in milliseconds
27
+ * @default 0
28
+ * @type number
29
+ */
30
+ autoClose: {
31
+ type: Number,
32
+ default: 0,
33
+ },
34
+ /**
35
+ * The alert close label
36
+ * @default 'Close'
37
+ * @type string
38
+ */
39
+ closeLabel: {
40
+ type: String,
41
+ default: 'Close',
42
+ },
43
+ /**
44
+ * The alert title
45
+ * @default ''
46
+ * @type string
47
+ */
48
+ title: {
49
+ type: String,
50
+ default: undefined,
51
+ },
52
+ /**
53
+ * The alert content
54
+ * @default ''
55
+ * @type string
56
+ */
57
+ content: {
58
+ type: String,
59
+ default: undefined,
60
+ },
61
+ /**
62
+ * The alert footer
63
+ * @default ''
64
+ * @type string
65
+ */
66
+ footer: {
67
+ type: String,
68
+ default: undefined,
69
+ },
70
+ /**
71
+ * The alert role
72
+ * @default 'alert'
73
+ * @type string
74
+ * @values 'alert', 'alertdialog'
75
+ * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Alert_Role
76
+ * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Alertdialog_role
77
+ */
78
+ role: {
79
+ type: String as PropType<`${AlertRole}`>,
80
+ default: AlertRole.alert,
81
+ },
82
82
  }
83
83
 
84
84
  export const VvAlertEvents = ['close']
85
85
 
86
- export const useVvAlert = (
87
- props: Readonly<ExtractPropTypes<typeof VvAlertProps>>,
88
- emit: (event: string, ...args: unknown[]) => void,
89
- ) => {
90
- const { bus } = useInjectedAlertGroup()
86
+ export function useVvAlert(props: Readonly<ExtractPropTypes<typeof VvAlertProps>>, emit: (event: string, ...args: unknown[]) => void) {
87
+ const { bus } = useInjectedAlertGroup()
91
88
 
92
- const hasId = useUniqueId(computed(() => props.id))
93
- const hasTitleId = computed(() => `${hasId.value}-title`)
89
+ const hasId = useUniqueId(computed(() => props.id))
90
+ const hasTitleId = computed(() => `${hasId.value}-title`)
94
91
 
95
- // icon
96
- const { hasIcon } = useComponentIcon(computed(() => props.icon))
92
+ // auto close
93
+ let timeout: ReturnType<typeof setTimeout>
97
94
 
98
- // props
99
- const hasClass = useModifiers(
100
- 'vv-alert',
101
- computed(() => props.modifiers),
102
- computed(() => ({
103
- dismissable: props.autoClose > 0 || props.dismissable,
104
- 'auto-close': props.autoClose > 0,
105
- hover: isMouseover.value,
106
- })),
107
- )
108
- const hasStyle = computed(() => ({
109
- '--alert-duration': `${props.autoClose}ms`,
110
- }))
95
+ // close
96
+ const close = () => {
97
+ if (timeout) {
98
+ clearTimeout(timeout)
99
+ }
100
+ emit('close', hasId.value)
101
+ bus?.emit('close', hasId.value)
102
+ }
103
+ watch(
104
+ () => props.autoClose,
105
+ (value) => {
106
+ if (value > 0) {
107
+ timeout = setTimeout(close, value)
108
+ return
109
+ }
110
+ if (timeout) {
111
+ clearTimeout(timeout)
112
+ }
113
+ },
114
+ {
115
+ immediate: true,
116
+ },
117
+ )
111
118
 
112
- // close
113
- const close = () => {
114
- if (timeout) {
115
- clearTimeout(timeout)
116
- }
117
- emit('close', hasId.value)
118
- bus?.emit('close', hasId.value)
119
- }
119
+ // listeners
120
+ const isMouseover = ref(false)
121
+ const onMouseover = () => {
122
+ isMouseover.value = true
123
+ if (timeout) {
124
+ clearTimeout(timeout)
125
+ }
126
+ }
127
+ const onMouseleave = () => {
128
+ isMouseover.value = false
129
+ if (props.autoClose > 0) {
130
+ timeout = setTimeout(close, props.autoClose)
131
+ }
132
+ }
120
133
 
121
- // auto close
122
- let timeout: ReturnType<typeof setTimeout>
123
- watch(
124
- () => props.autoClose,
125
- (value) => {
126
- if (value > 0) {
127
- timeout = setTimeout(close, value)
128
- return
129
- }
130
- if (timeout) {
131
- clearTimeout(timeout)
132
- }
133
- },
134
- {
135
- immediate: true,
136
- },
137
- )
134
+ // icon
135
+ const { hasIcon } = useComponentIcon(computed(() => props.icon))
138
136
 
139
- // listeners
140
- const isMouseover = ref(false)
141
- const onMouseover = () => {
142
- isMouseover.value = true
143
- if (timeout) {
144
- clearTimeout(timeout)
145
- }
146
- }
147
- const onMouseleave = () => {
148
- isMouseover.value = false
149
- if (props.autoClose > 0) {
150
- timeout = setTimeout(close, props.autoClose)
151
- }
152
- }
137
+ // props
138
+ const hasClass = useModifiers(
139
+ 'vv-alert',
140
+ computed(() => props.modifiers),
141
+ computed(() => ({
142
+ 'dismissable': props.autoClose > 0 || props.dismissable,
143
+ 'auto-close': props.autoClose > 0,
144
+ 'hover': isMouseover.value,
145
+ })),
146
+ )
147
+ const hasStyle = computed(() => ({
148
+ '--alert-duration': `${props.autoClose}ms`,
149
+ }))
153
150
 
154
- return {
155
- close,
156
- hasIcon,
157
- hasTitleId,
158
- hasProps: computed(() => ({
159
- onMouseover,
160
- onMouseleave,
161
- class: hasClass.value,
162
- style: hasStyle.value,
163
- role: props.role,
164
- 'aria-labelledby': hasTitleId.value,
165
- })),
166
- }
151
+ return {
152
+ close,
153
+ hasIcon,
154
+ hasTitleId,
155
+ hasProps: computed(() => ({
156
+ onMouseover,
157
+ onMouseleave,
158
+ 'class': hasClass.value,
159
+ 'style': hasStyle.value,
160
+ 'role': props.role,
161
+ 'aria-labelledby': hasTitleId.value,
162
+ })),
163
+ }
167
164
  }
@@ -1,63 +1,64 @@
1
- <script lang="ts">
2
- export default {
3
- name: 'VvAlertGroup',
4
- }
5
- </script>
6
-
7
1
  <script setup lang="ts">
8
- import { useVvAlertGroup, VvAlertGroupEvents, VvAlertGroupProps } from '.'
9
- import VvAlert from '../VvAlert/VvAlert.vue'
2
+ import VvAlert from '../VvAlert/VvAlert.vue'
3
+ import { useVvAlertGroup, VvAlertGroupEvents, VvAlertGroupProps } from '.'
4
+
5
+ // props and emit
6
+ const props = defineProps(VvAlertGroupProps)
10
7
 
11
- // props and emit
12
- const props = defineProps(VvAlertGroupProps)
13
- const emit = defineEmits(VvAlertGroupEvents)
8
+ const emit = defineEmits(VvAlertGroupEvents)
14
9
 
15
- const { hasProps, hasTransition } = useVvAlertGroup(props, emit)
10
+ const { hasProps, hasTransition } = useVvAlertGroup(props, emit)
16
11
 
17
- const alertGroupTransitionHandlers = {
18
- 'before-enter': () => {
19
- emit('before-enter')
20
- },
21
- 'after-leave': () => {
22
- emit('after-leave')
23
- },
24
- enter: () => {
25
- emit('enter')
26
- },
27
- 'after-enter': () => {
28
- emit('after-enter')
29
- },
30
- 'enter-cancelled': () => {
31
- emit('enter-cancelled')
32
- },
33
- 'before-leave': () => {
34
- emit('before-leave')
35
- },
36
- leave: () => {
37
- emit('leave')
38
- },
39
- 'leave-cancelled': () => {
40
- emit('leave-cancelled')
41
- },
42
- }
12
+ const alertGroupTransitionHandlers = {
13
+ 'before-enter': () => {
14
+ emit('beforeEnter')
15
+ },
16
+ 'after-leave': () => {
17
+ emit('afterLeave')
18
+ },
19
+ 'enter': () => {
20
+ emit('enter')
21
+ },
22
+ 'after-enter': () => {
23
+ emit('afterEnter')
24
+ },
25
+ 'enter-cancelled': () => {
26
+ emit('enterCancelled')
27
+ },
28
+ 'before-leave': () => {
29
+ emit('beforeLeave')
30
+ },
31
+ 'leave': () => {
32
+ emit('leave')
33
+ },
34
+ 'leave-cancelled': () => {
35
+ emit('leaveCancelled')
36
+ },
37
+ }
38
+ </script>
39
+
40
+ <script lang="ts">
41
+ export default {
42
+ name: 'VvAlertGroup',
43
+ }
43
44
  </script>
44
45
 
45
46
  <template>
46
- <div v-bind="hasProps">
47
- <!-- @slot The slot before alert list -->
48
- <slot name="before" />
49
- <TransitionGroup
50
- tag="div"
51
- :name="hasTransition"
52
- class="vv-alert-group__list"
53
- v-on="alertGroupTransitionHandlers"
54
- >
55
- <!-- @slot The slot for alert list -->
56
- <slot>
57
- <VvAlert v-for="item in items" v-bind="item" :key="item.id" />
58
- </slot>
59
- </TransitionGroup>
60
- <!-- @slot The slot after alert list -->
61
- <slot name="after" />
62
- </div>
47
+ <div v-bind="hasProps">
48
+ <!-- @slot The slot before alert list -->
49
+ <slot name="before" />
50
+ <TransitionGroup
51
+ tag="div"
52
+ :name="hasTransition"
53
+ class="vv-alert-group__list"
54
+ v-on="alertGroupTransitionHandlers"
55
+ >
56
+ <!-- @slot The slot for alert list -->
57
+ <slot>
58
+ <VvAlert v-for="item in items" v-bind="item" :key="item.id" />
59
+ </slot>
60
+ </TransitionGroup>
61
+ <!-- @slot The slot after alert list -->
62
+ <slot name="after" />
63
+ </div>
63
64
  </template>
@@ -3,118 +3,114 @@ import type { Alert } from '@/types'
3
3
  import { ModifiersProps } from '@/props'
4
4
 
5
5
  export const VvAlertGroupProps = {
6
- ...ModifiersProps,
7
- name: {
8
- type: String,
9
- required: true,
10
- },
11
- items: {
12
- type: Array as PropType<Alert[]>,
13
- default: () => [],
14
- },
15
- stack: {
16
- type: Boolean,
17
- default: false,
18
- },
19
- reverse: {
20
- type: Boolean,
21
- default: false,
22
- },
23
- inline: {
24
- type: String as PropType<'start' | 'middle' | 'end'>,
25
- default: undefined,
26
- },
27
- block: {
28
- type: String as PropType<'top' | 'center' | 'bottom'>,
29
- default: undefined,
30
- },
31
- position: {
32
- type: String as PropType<'absolute' | 'fixed'>,
33
- default: undefined,
34
- },
35
- transition: {
36
- type: String,
37
- default: undefined,
38
- },
6
+ ...ModifiersProps,
7
+ name: {
8
+ type: String,
9
+ required: true,
10
+ },
11
+ items: {
12
+ type: Array as PropType<Alert[]>,
13
+ default: () => [],
14
+ },
15
+ stack: {
16
+ type: Boolean,
17
+ default: false,
18
+ },
19
+ reverse: {
20
+ type: Boolean,
21
+ default: false,
22
+ },
23
+ inline: {
24
+ type: String as PropType<'start' | 'middle' | 'end'>,
25
+ default: undefined,
26
+ },
27
+ block: {
28
+ type: String as PropType<'top' | 'center' | 'bottom'>,
29
+ default: undefined,
30
+ },
31
+ position: {
32
+ type: String as PropType<'absolute' | 'fixed'>,
33
+ default: undefined,
34
+ },
35
+ transition: {
36
+ type: String,
37
+ default: undefined,
38
+ },
39
39
  }
40
40
 
41
41
  export const VvAlertGroupEvents = [
42
- 'close',
43
- 'before-enter',
44
- 'after-leave',
45
- 'enter',
46
- 'after-enter',
47
- 'enter-cancelled',
48
- 'before-leave',
49
- 'leave',
50
- 'leave-cancelled',
42
+ 'close',
43
+ 'before-enter',
44
+ 'after-leave',
45
+ 'enter',
46
+ 'after-enter',
47
+ 'enter-cancelled',
48
+ 'before-leave',
49
+ 'leave',
50
+ 'leave-cancelled',
51
51
  ]
52
52
 
53
- export const useVvAlertGroup = (
54
- props: Readonly<ExtractPropTypes<typeof VvAlertGroupProps>>,
55
- emit: (event: string, ...args: unknown[]) => void,
56
- ) => {
57
- const bus = useProvideAlertGroup({ name: computed(() => props.name) })
53
+ export function useVvAlertGroup(props: Readonly<ExtractPropTypes<typeof VvAlertGroupProps>>, emit: (event: string, ...args: unknown[]) => void) {
54
+ const bus = useProvideAlertGroup({ name: computed(() => props.name) })
58
55
 
59
- // check props block and inline coexist
60
- if ((props.block && !props.inline) || (!props.block && props.inline)) {
61
- // eslint-disable-next-line
62
- console.warn(
56
+ // check props block and inline coexist
57
+ if ((props.block && !props.inline) || (!props.block && props.inline)) {
58
+ console.warn(
63
59
  `[VvAlertGroup]: block and inline props must coexist at the same time.`,
64
- )
65
- }
60
+ )
61
+ }
66
62
 
67
- // props
68
- const hasClass = computed(() => {
69
- const toReturn: (string | Record<string, boolean>)[] = [
70
- useModifiers(
71
- 'vv-alert-group',
72
- computed(() => props.modifiers),
73
- computed(() => ({
74
- stack: props.stack,
75
- reverse: props.reverse,
76
- absolute: props.position === 'absolute',
77
- fixed: props.position === 'fixed',
78
- })),
79
- ).value,
80
- ]
81
- if (props.inline && props.block) {
82
- toReturn.push(`vv-alert-group--${props.block}-${props.inline}`)
83
- }
84
- return toReturn
85
- })
63
+ // props
64
+ const hasClass = computed(() => {
65
+ const toReturn: (string | Record<string, boolean>)[] = [
66
+ useModifiers(
67
+ 'vv-alert-group',
68
+ computed(() => props.modifiers),
69
+ computed(() => ({
70
+ stack: props.stack,
71
+ reverse: props.reverse,
72
+ absolute: props.position === 'absolute',
73
+ fixed: props.position === 'fixed',
74
+ })),
75
+ ).value,
76
+ ]
77
+ if (props.inline && props.block) {
78
+ toReturn.push(`vv-alert-group--${props.block}-${props.inline}`)
79
+ }
80
+ return toReturn
81
+ })
86
82
 
87
- const hasTransition = computed(() => {
88
- if (props.transition) {
89
- return props.transition
90
- }
91
- if (!props.position) {
92
- return 'vv-alert--fade'
93
- }
94
- if (props.inline === 'start') {
95
- return 'vv-alert--fade-inline-start'
96
- }
97
- if (props.inline === 'end') {
98
- return 'vv-alert--fade-inline-end'
99
- }
100
- if (props.block === 'top') {
101
- return 'vv-alert--fade-block-top'
102
- }
103
- if (props.block === 'bottom') {
104
- return 'vv-alert--fade-block-bottom'
105
- }
106
- return 'vv-alert--fade'
107
- })
83
+ const hasTransition = computed(() => {
84
+ if (props.transition) {
85
+ return props.transition
86
+ }
87
+ if (!props.position) {
88
+ return 'vv-alert--fade'
89
+ }
90
+ if (props.inline === 'start') {
91
+ return 'vv-alert--fade-inline-start'
92
+ }
93
+ if (props.inline === 'end') {
94
+ return 'vv-alert--fade-inline-end'
95
+ }
96
+ if (props.block === 'top') {
97
+ return 'vv-alert--fade-block-top'
98
+ }
99
+ if (props.block === 'bottom') {
100
+ return 'vv-alert--fade-block-bottom'
101
+ }
102
+ return 'vv-alert--fade'
103
+ })
108
104
 
109
- // listeners
110
- bus.on('close', (id: string) => {
111
- emit('close', id)
112
- })
105
+ // listeners
106
+ bus.on('close', (id: string) => {
107
+ emit('close', id)
108
+ })
113
109
 
114
- return {
115
- hasTransition,
116
- hasProps: computed(() => ({
117
- class: hasClass.value,
118
- })),
119
- }
110
+ return {
111
+ hasTransition,
112
+ hasProps: computed(() => ({
113
+ class: hasClass.value,
114
+ })),
115
+ }
120
116
  }