@volverjs/ui-vue 0.0.10-beta.35 → 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,232 +1,233 @@
1
- <script lang="ts">
2
- export default {
3
- name: 'VvAccordionGroup',
4
- }
5
- </script>
6
-
7
1
  <script setup lang="ts">
8
- import mitt from 'mitt'
9
- import type {
10
- AccordionGroupState,
11
- AccordionGroupBusEvents,
12
- } from '../../types/group'
13
- import { INJECTION_KEY_ACCORDION_GROUP } from '../../constants'
14
- import VvAccordion from '../VvAccordion/VvAccordion.vue'
15
- import { VvAccordionGroupProps, VvAccordionGroupEvents } from '.'
2
+ import mitt from 'mitt'
3
+ import type {
4
+ AccordionGroupState,
5
+ AccordionGroupBusEvents,
6
+ } from '../../types/group'
7
+ import { INJECTION_KEY_ACCORDION_GROUP } from '../../constants'
8
+ import VvAccordion from '../VvAccordion/VvAccordion.vue'
9
+ import { VvAccordionGroupProps, VvAccordionGroupEvents } from '.'
16
10
 
17
- // props and emit
18
- const props = defineProps(VvAccordionGroupProps)
19
- // eslint-disable-next-line
20
- const emit = defineEmits(VvAccordionGroupEvents)
11
+ // props and emit
12
+ const props = defineProps(VvAccordionGroupProps)
13
+ const emit = defineEmits(VvAccordionGroupEvents)
21
14
 
22
- // data
23
- const {
24
- disabled,
25
- modifiers,
26
- itemModifiers,
27
- items,
28
- storageKey,
29
- storageType,
30
- } = toRefs(props)
31
- watchEffect(() => {
32
- if (typeof props.modelValue === 'string' && props.collapse) {
33
- // eslint-disable-next-line no-console
34
- console.warn(
15
+ // data
16
+ const {
17
+ disabled,
18
+ modifiers,
19
+ itemModifiers,
20
+ items,
21
+ storageKey,
22
+ storageType,
23
+ } = toRefs(props)
24
+ watchEffect(() => {
25
+ if (typeof props.modelValue === 'string' && props.collapse) {
26
+ console.warn(
35
27
  `[VvAccordionGroup]: modelValue is a string but collapse is true.`,
36
- )
37
- }
38
- })
28
+ )
29
+ }
30
+ })
39
31
 
40
- const accordionNames = reactive(new Set<string>())
41
- const storageModelValue = usePersistence<string | string[] | undefined>(
42
- storageKey,
43
- storageType,
44
- [],
45
- )
46
- const localModelValue = computed({
47
- get: () => {
48
- if (props.modelValue !== null && props.modelValue !== undefined) {
49
- return props.modelValue
50
- }
51
- return storageModelValue.value
52
- },
53
- set: (newValue) => {
54
- emit('update:modelValue', newValue)
55
- storageModelValue.value = newValue
56
- },
57
- })
58
- const expandedAccordions = computed<Set<string>>({
59
- get: () => {
60
- if (localModelValue.value === undefined) {
61
- return new Set<string>()
62
- }
63
- let toReturn = new Set<string>()
64
- if (props.not) {
65
- if (typeof localModelValue.value === 'string') {
66
- toReturn = new Set<string>(
67
- [...accordionNames].filter(
68
- (name) => name !== localModelValue.value,
69
- ),
70
- )
71
- } else if (Array.isArray(localModelValue.value)) {
72
- toReturn = new Set<string>(
73
- [...accordionNames].filter(
74
- (name) =>
75
- !(localModelValue.value as string[]).includes(
76
- name,
77
- ),
78
- ),
79
- )
80
- }
81
- } else if (typeof localModelValue.value === 'string') {
82
- toReturn = new Set<string>([localModelValue.value])
83
- } else if (Array.isArray(localModelValue.value)) {
84
- toReturn = new Set<string>(localModelValue.value)
85
- }
86
- return toReturn
87
- },
88
- set: (newValue) => {
89
- if (props.not) {
90
- localModelValue.value = [...accordionNames].filter(
91
- (name) => !newValue.has(name),
92
- )
93
- return
94
- }
95
- if (props.collapse) {
96
- localModelValue.value = [...newValue]
97
- return
98
- }
99
- localModelValue.value = newValue.values().next().value
100
- },
101
- })
102
- onMounted(() => {
103
- if (props.not && localModelValue.value === undefined) {
104
- localModelValue.value = props.collapse
105
- ? []
106
- : [...accordionNames.values()].splice(1, accordionNames.size)
107
- }
108
- nextTick(() => {
109
- for (const name of accordionNames) {
110
- bus.emit('toggle', {
111
- name,
112
- value: expandedAccordions.value.has(name),
113
- })
114
- }
115
- })
116
- })
32
+ const accordionNames = reactive(new Set<string>())
33
+ const storageModelValue = usePersistence<string | string[] | undefined>(
34
+ storageKey,
35
+ storageType,
36
+ [],
37
+ )
38
+ const localModelValue = computed({
39
+ get: () => {
40
+ if (props.modelValue !== null && props.modelValue !== undefined) {
41
+ return props.modelValue
42
+ }
43
+ return storageModelValue.value
44
+ },
45
+ set: (newValue) => {
46
+ emit('update:modelValue', newValue)
47
+ storageModelValue.value = newValue
48
+ },
49
+ })
50
+ const expandedAccordions = computed<Set<string>>({
51
+ get: () => {
52
+ if (localModelValue.value === undefined) {
53
+ return new Set<string>()
54
+ }
55
+ let toReturn = new Set<string>()
56
+ if (props.not) {
57
+ if (typeof localModelValue.value === 'string') {
58
+ toReturn = new Set<string>(
59
+ [...accordionNames].filter(
60
+ name => name !== localModelValue.value,
61
+ ),
62
+ )
63
+ }
64
+ else if (Array.isArray(localModelValue.value)) {
65
+ toReturn = new Set<string>(
66
+ [...accordionNames].filter(
67
+ name =>
68
+ !(localModelValue.value as string[]).includes(
69
+ name,
70
+ ),
71
+ ),
72
+ )
73
+ }
74
+ }
75
+ else if (typeof localModelValue.value === 'string') {
76
+ toReturn = new Set<string>([localModelValue.value])
77
+ }
78
+ else if (Array.isArray(localModelValue.value)) {
79
+ toReturn = new Set<string>(localModelValue.value)
80
+ }
81
+ return toReturn
82
+ },
83
+ set: (newValue) => {
84
+ if (props.not) {
85
+ localModelValue.value = [...accordionNames].filter(
86
+ name => !newValue.has(name),
87
+ )
88
+ return
89
+ }
90
+ if (props.collapse) {
91
+ localModelValue.value = [...newValue]
92
+ return
93
+ }
94
+ localModelValue.value = newValue.values().next().value
95
+ },
96
+ })
97
+ onMounted(() => {
98
+ if (props.not && localModelValue.value === undefined) {
99
+ localModelValue.value = props.collapse
100
+ ? []
101
+ : [...accordionNames.values()].splice(1, accordionNames.size)
102
+ }
103
+ nextTick(() => {
104
+ for (const name of accordionNames) {
105
+ bus.emit('toggle', {
106
+ name,
107
+ value: expandedAccordions.value.has(name),
108
+ })
109
+ }
110
+ })
111
+ })
117
112
 
118
- // provide
119
- const bus = mitt<AccordionGroupBusEvents>()
120
- useProvideGroupState<AccordionGroupState>(INJECTION_KEY_ACCORDION_GROUP, {
121
- disabled,
122
- modifiers: itemModifiers,
123
- bus,
124
- })
125
- bus.on('register', ({ name }) => {
126
- accordionNames.add(name)
127
- })
128
- bus.on('unregister', ({ name }) => {
129
- accordionNames.delete(name)
130
- })
131
- bus.on('toggle', ({ name, value }) => {
132
- const newValue = new Set<string>(expandedAccordions.value)
133
- if (value) {
134
- if (!props.collapse) {
135
- for (const item of newValue) {
136
- if (item !== name) {
137
- bus.emit('toggle', { name: item, value: false })
138
- }
139
- }
140
- newValue.clear()
141
- }
142
- newValue.add(name)
143
- expandedAccordions.value = newValue
144
- return
145
- }
146
- newValue.delete(name)
147
- expandedAccordions.value = newValue
148
- })
149
- const expand = (name?: string | string[]) => {
150
- if (typeof name === 'string') {
151
- bus.emit('toggle', { name, value: true })
152
- return
153
- }
154
- if (Array.isArray(name)) {
155
- for (const item of name) {
156
- bus.emit('toggle', { name: item, value: true })
157
- }
158
- return
159
- }
160
- for (const item of accordionNames) {
161
- bus.emit('toggle', { name: item, value: true })
162
- }
163
- }
164
- bus.on('expand', ({ name }) => expand(name))
113
+ // provide
114
+ const bus = mitt<AccordionGroupBusEvents>()
115
+ useProvideGroupState<AccordionGroupState>(INJECTION_KEY_ACCORDION_GROUP, {
116
+ disabled,
117
+ modifiers: itemModifiers,
118
+ bus,
119
+ })
120
+ bus.on('register', ({ name }) => {
121
+ accordionNames.add(name)
122
+ })
123
+ bus.on('unregister', ({ name }) => {
124
+ accordionNames.delete(name)
125
+ })
126
+ bus.on('toggle', ({ name, value }) => {
127
+ const newValue = new Set<string>(expandedAccordions.value)
128
+ if (value) {
129
+ if (!props.collapse) {
130
+ for (const item of newValue) {
131
+ if (item !== name) {
132
+ bus.emit('toggle', { name: item, value: false })
133
+ }
134
+ }
135
+ newValue.clear()
136
+ }
137
+ newValue.add(name)
138
+ expandedAccordions.value = newValue
139
+ return
140
+ }
141
+ newValue.delete(name)
142
+ expandedAccordions.value = newValue
143
+ })
144
+ function expand(name?: string | string[]) {
145
+ if (typeof name === 'string') {
146
+ bus.emit('toggle', { name, value: true })
147
+ return
148
+ }
149
+ if (Array.isArray(name)) {
150
+ for (const item of name) {
151
+ bus.emit('toggle', { name: item, value: true })
152
+ }
153
+ return
154
+ }
155
+ for (const item of accordionNames) {
156
+ bus.emit('toggle', { name: item, value: true })
157
+ }
158
+ }
159
+ bus.on('expand', ({ name }) => expand(name))
165
160
 
166
- const collapse = (name?: string | string[]) => {
167
- if (typeof name === 'string') {
168
- bus.emit('toggle', { name, value: false })
169
- return
170
- }
171
- if (Array.isArray(name)) {
172
- for (const item of name) {
173
- bus.emit('toggle', { name: item, value: false })
174
- }
175
- return
176
- }
177
- for (const item of accordionNames) {
178
- bus.emit('toggle', { name: item, value: false })
179
- }
180
- }
181
- bus.on('collapse', ({ name }) => collapse(name))
161
+ function collapse(name?: string | string[]) {
162
+ if (typeof name === 'string') {
163
+ bus.emit('toggle', { name, value: false })
164
+ return
165
+ }
166
+ if (Array.isArray(name)) {
167
+ for (const item of name) {
168
+ bus.emit('toggle', { name: item, value: false })
169
+ }
170
+ return
171
+ }
172
+ for (const item of accordionNames) {
173
+ bus.emit('toggle', { name: item, value: false })
174
+ }
175
+ }
176
+ bus.on('collapse', ({ name }) => collapse(name))
182
177
 
183
- // expose
184
- defineExpose({ expandedAccordions, expand, collapse })
178
+ // expose
179
+ defineExpose({ expandedAccordions, expand, collapse })
185
180
 
186
- // styles
187
- const bemCssClasses = useModifiers(
188
- 'vv-accordion-group',
189
- modifiers,
190
- computed(() => ({
191
- disabled: disabled.value,
192
- })),
193
- )
181
+ // styles
182
+ const bemCssClasses = useModifiers(
183
+ 'vv-accordion-group',
184
+ modifiers,
185
+ computed(() => ({
186
+ disabled: disabled.value,
187
+ })),
188
+ )
189
+ </script>
190
+
191
+ <script lang="ts">
192
+ export default {
193
+ name: 'VvAccordionGroup',
194
+ }
194
195
  </script>
195
196
 
196
197
  <template>
197
- <div :class="bemCssClasses">
198
- <!-- @slot Default slot -->
199
- <slot
200
- v-bind="{
201
- expandedAccordions,
202
- expand,
203
- collapse,
204
- }"
205
- >
206
- <VvAccordion
207
- v-for="item in items"
208
- :key="item.title"
209
- v-bind="{
210
- name: item.name,
211
- title: item.title,
212
- content: item.content,
213
- }"
214
- >
215
- <template
216
- v-if="$slots[`summary::${item.name}`]"
217
- #summary="data"
218
- >
219
- <!-- @slot Slot for accordion header -->
220
- <slot v-bind="data" :name="`summary::${item.name}`" />
221
- </template>
222
- <template
223
- v-if="$slots[`content::${item.name}`]"
224
- #default="data"
225
- >
226
- <!-- @slot Slot for accordion details -->
227
- <slot v-bind="data" :name="`content::${item.name}`" />
228
- </template>
229
- </VvAccordion>
230
- </slot>
231
- </div>
198
+ <div :class="bemCssClasses">
199
+ <!-- @slot Default slot -->
200
+ <slot
201
+ v-bind="{
202
+ expandedAccordions,
203
+ expand,
204
+ collapse,
205
+ }"
206
+ >
207
+ <VvAccordion
208
+ v-for="item in items"
209
+ :key="item.title"
210
+ v-bind="{
211
+ name: item.name,
212
+ title: item.title,
213
+ content: item.content,
214
+ }"
215
+ >
216
+ <template
217
+ v-if="$slots[`summary::${item.name}`]"
218
+ #summary="data"
219
+ >
220
+ <!-- @slot Slot for accordion header -->
221
+ <slot v-bind="data" :name="`summary::${item.name}`" />
222
+ </template>
223
+ <template
224
+ v-if="$slots[`content::${item.name}`]"
225
+ #default="data"
226
+ >
227
+ <!-- @slot Slot for accordion details -->
228
+ <slot v-bind="data" :name="`content::${item.name}`" />
229
+ </template>
230
+ </VvAccordion>
231
+ </slot>
232
+ </div>
232
233
  </template>
@@ -1,50 +1,50 @@
1
1
  import { ModifiersProps, StorageProps } from '@/props'
2
2
 
3
3
  export interface VvAccordionGroupItem {
4
- title: string
5
- content: string
6
- name?: string
7
- disabled?: boolean
8
- modifiers?: string | string[]
4
+ title: string
5
+ content: string
6
+ name?: string
7
+ disabled?: boolean
8
+ modifiers?: string | string[]
9
9
  }
10
10
 
11
11
  export const VvAccordionGroupProps = {
12
- ...ModifiersProps,
13
- ...StorageProps,
14
- /**
15
- * VModel
16
- */
17
- modelValue: {
18
- type: [String, Array] as PropType<string | string[] | undefined>,
19
- default: undefined,
20
- },
21
- /**
22
- * Accordion items
23
- * @type VvAccordionGroupItem
24
- */
25
- items: {
26
- type: Array as PropType<VvAccordionGroupItem[]>,
27
- default: () => [],
28
- },
29
- /**
30
- * If true, accordion items stay open when another item is opened
31
- */
32
- collapse: Boolean,
33
- /**
34
- * String or String[] of css classes (modifiers) that will be concatenated to prefix 'vv-accordion--'
35
- */
36
- itemModifiers: {
37
- type: [String, Array] as PropType<string | string[]>,
38
- default: '',
39
- },
40
- /**
41
- * If true, the accordion items will be disabled
42
- */
43
- disabled: Boolean,
44
- /**
45
- * If true, the accordion items will be opened by default
46
- */
47
- not: Boolean,
12
+ ...ModifiersProps,
13
+ ...StorageProps,
14
+ /**
15
+ * VModel
16
+ */
17
+ modelValue: {
18
+ type: [String, Array] as PropType<string | string[] | undefined>,
19
+ default: undefined,
20
+ },
21
+ /**
22
+ * Accordion items
23
+ * @type VvAccordionGroupItem
24
+ */
25
+ items: {
26
+ type: Array as PropType<VvAccordionGroupItem[]>,
27
+ default: () => [],
28
+ },
29
+ /**
30
+ * If true, accordion items stay open when another item is opened
31
+ */
32
+ collapse: Boolean,
33
+ /**
34
+ * String or String[] of css classes (modifiers) that will be concatenated to prefix 'vv-accordion--'
35
+ */
36
+ itemModifiers: {
37
+ type: [String, Array] as PropType<string | string[]>,
38
+ default: '',
39
+ },
40
+ /**
41
+ * If true, the accordion items will be disabled
42
+ */
43
+ disabled: Boolean,
44
+ /**
45
+ * If true, the accordion items will be opened by default
46
+ */
47
+ not: Boolean,
48
48
  }
49
49
 
50
50
  export const VvAccordionGroupEvents = ['update:modelValue']