@volverjs/ui-vue 0.0.1-beta.12 → 0.0.1-beta.17

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 (432) hide show
  1. package/README.md +1 -1
  2. package/bin/icons.cjs +73 -0
  3. package/bin/icons.js +75 -0
  4. package/dist/Volver.d.ts +15 -2
  5. package/dist/components/VvAccordion/VvAccordion.es.js +133 -236
  6. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  7. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +32 -97
  8. package/dist/components/VvAccordion/index.d.ts +46 -0
  9. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +199 -277
  10. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  11. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +44 -151
  12. package/dist/components/VvAccordionGroup/{VvAccordionGroup.d.ts → index.d.ts} +9 -13
  13. package/dist/components/VvBadge/VvBadge.es.js +42 -151
  14. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  15. package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -53
  16. package/dist/components/VvBadge/{VvBadge.d.ts → index.d.ts} +0 -0
  17. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +55 -168
  18. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  19. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +24 -104
  20. package/dist/components/VvBreadcrumb/{VvBreadcrumb.d.ts → index.d.ts} +1 -1
  21. package/dist/components/VvButton/VvButton.es.js +298 -312
  22. package/dist/components/VvButton/VvButton.umd.js +1 -1
  23. package/dist/components/VvButton/VvButton.vue.d.ts +91 -163
  24. package/dist/components/VvButton/{VvButton.d.ts → index.d.ts} +46 -9
  25. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +59 -172
  26. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  27. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +30 -125
  28. package/dist/components/VvButtonGroup/{VvButtonGroup.d.ts → index.d.ts} +0 -0
  29. package/dist/components/VvCard/VvCard.es.js +55 -166
  30. package/dist/components/VvCard/VvCard.umd.js +1 -1
  31. package/dist/components/VvCard/VvCard.vue.d.ts +16 -61
  32. package/dist/components/VvCard/{VvCard.d.ts → index.d.ts} +1 -1
  33. package/dist/components/VvCheckbox/VvCheckbox.es.js +344 -0
  34. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -0
  35. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +87 -0
  36. package/dist/components/VvCheckbox/index.d.ts +86 -0
  37. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +415 -0
  38. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -0
  39. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +113 -0
  40. package/dist/components/{VvCheckGroup/VvCheckGroup.d.ts → VvCheckboxGroup/index.d.ts} +10 -10
  41. package/dist/components/VvDialog/VvDialog.es.js +108 -230
  42. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  43. package/dist/components/VvDialog/VvDialog.vue.d.ts +28 -132
  44. package/dist/components/VvDialog/{VvDialog.d.ts → index.d.ts} +2 -6
  45. package/dist/components/VvDropdown/VvDropdown.es.js +167 -186
  46. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  47. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +34 -136
  48. package/dist/components/VvDropdown/{VvDropdown.d.ts → index.d.ts} +7 -3
  49. package/dist/components/VvIcon/VvIcon.es.js +62 -174
  50. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  51. package/dist/components/VvIcon/VvIcon.vue.d.ts +36 -150
  52. package/dist/components/VvIcon/{VvIcon.d.ts → index.d.ts} +9 -0
  53. package/dist/components/VvInputText/VvInputClearAction.d.ts +36 -0
  54. package/dist/components/VvInputText/VvInputPasswordAction.d.ts +56 -0
  55. package/dist/components/VvInputText/VvInputStepAction.d.ts +37 -0
  56. package/dist/components/VvInputText/VvInputText.es.js +586 -577
  57. package/dist/components/VvInputText/VvInputText.umd.js +1 -2
  58. package/dist/components/VvInputText/VvInputText.vue.d.ts +187 -275
  59. package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
  60. package/dist/components/VvInputText/index.d.ts +175 -0
  61. package/dist/components/VvNativeSelect/VvNativeSelect.es.js +299 -347
  62. package/dist/components/VvNativeSelect/VvNativeSelect.umd.js +1 -2
  63. package/dist/components/VvNativeSelect/VvNativeSelect.vue.d.ts +78 -190
  64. package/dist/components/VvNativeSelect/{VvNativeSelect.d.ts → index.d.ts} +35 -8
  65. package/dist/components/VvProgress/VvProgress.es.js +45 -162
  66. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  67. package/dist/components/VvProgress/VvProgress.vue.d.ts +17 -103
  68. package/dist/components/VvProgress/{VvProgress.d.ts → index.d.ts} +1 -7
  69. package/dist/components/VvRadio/VvRadio.es.js +292 -267
  70. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  71. package/dist/components/VvRadio/VvRadio.vue.d.ts +52 -122
  72. package/dist/components/VvRadio/index.d.ts +64 -0
  73. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +342 -380
  74. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -2
  75. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +58 -213
  76. package/dist/components/VvRadioGroup/{VvRadioGroup.d.ts → index.d.ts} +2 -2
  77. package/dist/components/VvSelect/VvSelect.es.js +556 -510
  78. package/dist/components/VvSelect/VvSelect.umd.js +1 -2
  79. package/dist/components/VvSelect/VvSelect.vue.d.ts +75 -240
  80. package/dist/components/VvSelect/{VvSelect.d.ts → index.d.ts} +12 -5
  81. package/dist/components/VvTextarea/VvTextarea.es.js +372 -481
  82. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -2
  83. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +103 -299
  84. package/dist/components/VvTextarea/{VvTextarea.d.ts → index.d.ts} +36 -13
  85. package/dist/components/common/HintSlot.d.ts +10 -4
  86. package/dist/components/index.d.ts +13 -6
  87. package/dist/components/index.es.js +2070 -895
  88. package/dist/components/index.umd.js +1 -2
  89. package/dist/composables/debouncedInput/useDebouncedInput.d.ts +2 -2
  90. package/dist/composables/focus/useComponentFocus.d.ts +3 -3
  91. package/dist/composables/group/types/IAccordionGroupState.d.ts +1 -3
  92. package/dist/composables/group/types/IGroupState.d.ts +2 -2
  93. package/dist/composables/group/useInjectedGroupState.d.ts +4 -4
  94. package/dist/composables/group/useProvideGroupState.d.ts +1 -1
  95. package/dist/composables/icons/useComponentIcons.d.ts +2 -2
  96. package/dist/composables/textLimit/useTextLimit.d.ts +0 -3
  97. package/dist/constants.d.ts +4 -4
  98. package/dist/icons.d.ts +1881 -0
  99. package/dist/icons.es.js +4 -6
  100. package/dist/icons.umd.js +1 -1
  101. package/dist/index.es.js +2113 -932
  102. package/dist/index.umd.js +1 -2
  103. package/dist/props/index.d.ts +9 -3
  104. package/dist/resolvers/unplugin.d.ts +27 -0
  105. package/dist/resolvers/unplugin.es.js +40 -0
  106. package/dist/resolvers/unplugin.umd.js +1 -0
  107. package/dist/stories/Accordion/Accordion.test.d.ts +4 -0
  108. package/dist/stories/Badge/Badge.test.d.ts +2 -0
  109. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +2 -0
  110. package/dist/stories/Button/Button.test.d.ts +3 -8
  111. package/dist/stories/Card/Card.test.d.ts +3 -0
  112. package/dist/stories/Dialog/Dialog.test.d.ts +2 -0
  113. package/dist/stories/Dropdown/Dropdown.test.d.ts +2 -0
  114. package/dist/stories/Icon/IconList.vue.d.ts +1 -43
  115. package/dist/stories/InputText/InputText.test.d.ts +6 -0
  116. package/dist/stories/Radio/Radio.test.d.ts +3 -0
  117. package/dist/stories/RadioGroup/RadioGroup.test.d.ts +8 -0
  118. package/dist/stories/Select/Select.test.d.ts +3 -0
  119. package/dist/stories/Textarea/Textarea.test.d.ts +8 -0
  120. package/dist/stories/utils.d.ts +1 -3
  121. package/dist/test/sleep.d.ts +1 -0
  122. package/dist/utils/ObjectUtilities.d.ts +82 -95
  123. package/env.d.ts +1 -0
  124. package/package.json +103 -68
  125. package/src/Volver.ts +32 -3
  126. package/src/assets/icons/detailed.json +1 -1
  127. package/src/assets/icons/normal.json +1 -1
  128. package/src/assets/icons/simple.json +1 -1
  129. package/src/components/VvAccordion/VvAccordion.vue +80 -76
  130. package/src/components/VvAccordion/index.ts +69 -0
  131. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +77 -41
  132. package/src/components/VvAccordionGroup/{VvAccordionGroup.ts → index.ts} +8 -12
  133. package/src/components/VvBadge/VvBadge.vue +14 -10
  134. package/src/components/VvBadge/{VvBadge.ts → index.ts} +0 -0
  135. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +18 -19
  136. package/src/components/VvBreadcrumb/{VvBreadcrumb.ts → index.ts} +1 -1
  137. package/src/components/VvButton/VvButton.vue +123 -113
  138. package/src/components/VvButton/index.ts +147 -0
  139. package/src/components/VvButtonGroup/VvButtonGroup.vue +21 -17
  140. package/src/components/VvButtonGroup/{VvButtonGroup.ts → index.ts} +0 -0
  141. package/src/components/VvCard/VvCard.vue +20 -22
  142. package/src/components/VvCard/{VvCard.ts → index.ts} +0 -0
  143. package/src/components/VvCheckbox/VvCheckbox.vue +124 -0
  144. package/src/components/VvCheckbox/index.ts +94 -0
  145. package/src/components/{VvCheckGroup/VvCheckGroup.vue → VvCheckboxGroup/VvCheckboxGroup.vue} +49 -54
  146. package/src/components/{VvCheckGroup/VvCheckGroup.ts → VvCheckboxGroup/index.ts} +9 -9
  147. package/src/components/VvDialog/VvDialog.vue +47 -50
  148. package/src/components/VvDialog/index.ts +10 -0
  149. package/src/components/VvDropdown/VvDropdown.vue +61 -40
  150. package/src/components/VvDropdown/{VvDropdown.ts → index.ts} +8 -4
  151. package/src/components/VvIcon/VvIcon.vue +31 -25
  152. package/src/components/VvIcon/{VvIcon.ts → index.ts} +9 -0
  153. package/src/components/VvInputText/VvInputClearAction.ts +53 -0
  154. package/src/components/VvInputText/VvInputPasswordAction.ts +70 -0
  155. package/src/components/VvInputText/VvInputStepAction.ts +49 -0
  156. package/src/components/VvInputText/VvInputText.vue +168 -170
  157. package/src/components/VvInputText/VvInputTextActions.ts +54 -108
  158. package/src/components/VvInputText/index.ts +135 -0
  159. package/src/components/VvNativeSelect/VvNativeSelect.vue +130 -68
  160. package/src/components/VvNativeSelect/{VvNativeSelect.ts → index.ts} +26 -7
  161. package/src/components/VvProgress/VvProgress.vue +25 -26
  162. package/src/components/VvProgress/{VvProgress.ts → index.ts} +4 -7
  163. package/src/components/VvRadio/VvRadio.vue +81 -108
  164. package/src/components/VvRadio/index.ts +78 -0
  165. package/src/components/VvRadioGroup/VvRadioGroup.vue +45 -45
  166. package/src/components/VvRadioGroup/{VvRadioGroup.ts → index.ts} +1 -1
  167. package/src/components/VvSelect/VvSelect.vue +90 -69
  168. package/src/components/VvSelect/{VvSelect.ts → index.ts} +12 -5
  169. package/src/components/VvTextarea/VvTextarea.vue +121 -128
  170. package/src/components/VvTextarea/{VvTextarea.ts → index.ts} +31 -11
  171. package/src/components/common/HintSlot.ts +157 -136
  172. package/src/components/index.ts +13 -6
  173. package/src/composables/debouncedInput/useDebouncedInput.ts +21 -15
  174. package/src/composables/focus/useComponentFocus.ts +6 -8
  175. package/src/composables/group/types/IAccordionGroupState.ts +1 -3
  176. package/src/composables/group/types/IGroupState.ts +2 -2
  177. package/src/composables/group/useInjectedGroupState.ts +20 -30
  178. package/src/composables/group/useProvideGroupState.ts +1 -2
  179. package/src/composables/icons/useComponentIcons.ts +2 -3
  180. package/src/composables/options/useOptions.ts +3 -0
  181. package/src/composables/textLimit/useTextLimit.ts +1 -4
  182. package/src/composables/useModifiers.ts +13 -15
  183. package/src/constants.ts +5 -7
  184. package/src/directives/{.README → .gitkeep} +0 -0
  185. package/src/icons.ts +7 -0
  186. package/src/index.ts +0 -1
  187. package/src/props/index.ts +7 -1
  188. package/src/resolvers/unplugin.ts +103 -0
  189. package/src/shims.d.ts +11 -0
  190. package/src/stories/Accordion/Accordion.stories.mdx +10 -9
  191. package/src/stories/Accordion/Accordion.test.ts +37 -0
  192. package/src/stories/Accordion/AccordionSlots.stories.mdx +40 -25
  193. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +10 -16
  194. package/src/stories/AccordionGroup/{accordionGroupTest.js → AccordionGroup.test.js} +15 -17
  195. package/src/stories/AccordionGroup/AccordionGroupCollapse.stories.mdx +38 -0
  196. package/src/stories/AccordionGroup/{AccordionItems.stories.mdx → AccordionGroupItems.stories.mdx} +7 -13
  197. package/src/stories/Badge/Badge.stories.mdx +8 -8
  198. package/src/stories/Badge/Badge.test.ts +16 -0
  199. package/src/stories/Badge/BadgeColor.stories.mdx +6 -7
  200. package/src/stories/Badge/BadgeDot.stories.mdx +4 -3
  201. package/src/stories/Badge/BadgeModifiers.stories.mdx +7 -6
  202. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +15 -7
  203. package/src/stories/Breadcrumb/Breadcrumb.test.ts +49 -0
  204. package/src/stories/Breadcrumb/BreadcrumbMultiline.stories.mdx +15 -7
  205. package/src/stories/Button/Button.stories.mdx +16 -17
  206. package/src/stories/Button/Button.test.ts +8 -12
  207. package/src/stories/Button/ButtonActive.stories.mdx +2 -1
  208. package/src/stories/Button/ButtonBadge.stories.mdx +2 -2
  209. package/src/stories/Button/ButtonDisabled.stories.mdx +1 -1
  210. package/src/stories/Button/ButtonIcon.stories.mdx +6 -3
  211. package/src/stories/Button/ButtonIconPosition.stories.mdx +1 -1
  212. package/src/stories/Button/ButtonLink.stories.mdx +1 -19
  213. package/src/stories/Button/ButtonLoading.stories.mdx +4 -4
  214. package/src/stories/Button/ButtonModifiers.stories.mdx +1 -1
  215. package/src/stories/Button/ButtonPressed.stories.mdx +31 -0
  216. package/src/stories/Button/ButtonSlots.stories.mdx +1 -1
  217. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +5 -6
  218. package/src/stories/ButtonGroup/{ButtonGroupTest.js → ButtonGroup.test.js} +6 -28
  219. package/src/stories/ButtonGroup/ButtonGroupAction.stories.mdx +5 -6
  220. package/src/stories/ButtonGroup/ButtonGroupActionQuiet.stories.mdx +3 -4
  221. package/src/stories/ButtonGroup/ButtonGroupBlock.stories.mdx +3 -4
  222. package/src/stories/ButtonGroup/ButtonGroupCompact.stories.mdx +3 -4
  223. package/src/stories/ButtonGroup/ButtonGroupRounded.stories.mdx +3 -4
  224. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.mdx +11 -12
  225. package/src/stories/ButtonGroup/ButtonGroupVertical.stories.mdx +3 -4
  226. package/src/stories/Card/Card.stories.mdx +7 -5
  227. package/src/stories/Card/Card.test.ts +26 -0
  228. package/src/stories/Card/CardSlots.stories.mdx +5 -5
  229. package/src/stories/Card/CardVariant.stories.mdx +5 -4
  230. package/src/stories/Checkbox/Checkbox.stories.mdx +51 -0
  231. package/src/stories/Checkbox/Checkbox.test.js +115 -0
  232. package/src/stories/Checkbox/CheckboxBinary.stories.mdx +76 -0
  233. package/src/stories/{Check/CheckDisabled.stories.mdx → Checkbox/CheckboxDisabled.stories.mdx} +7 -7
  234. package/src/stories/Checkbox/CheckboxError.stories.mdx +43 -0
  235. package/src/stories/Checkbox/CheckboxHintLabel.stories.mdx +35 -0
  236. package/src/stories/{Check/CheckReadonly.stories.mdx → Checkbox/CheckboxReadonly.stories.mdx} +6 -8
  237. package/src/stories/Checkbox/CheckboxSlots.stories.mdx +69 -0
  238. package/src/stories/{Check/CheckSwitch.stories.mdx → Checkbox/CheckboxSwitch.stories.mdx} +8 -8
  239. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +69 -0
  240. package/src/stories/CheckboxGroup/CheckboxGroupDisabled.stories.mdx +26 -0
  241. package/src/stories/CheckboxGroup/CheckboxGroupError.stories.mdx +28 -0
  242. package/src/stories/CheckboxGroup/CheckboxGroupHintLabel.stories.mdx +27 -0
  243. package/src/stories/CheckboxGroup/CheckboxGroupLabel.stories.mdx +26 -0
  244. package/src/stories/{CheckGroup/CheckGroupOptionLabel.stories.mdx → CheckboxGroup/CheckboxGroupOptionLabel.stories.mdx} +14 -11
  245. package/src/stories/{CheckGroup/CheckGroupOptionValue.stories.mdx → CheckboxGroup/CheckboxGroupOptionValue.stories.mdx} +13 -10
  246. package/src/stories/{CheckGroup/CheckGroupOptions.stories.mdx → CheckboxGroup/CheckboxGroupOptions.stories.mdx} +8 -8
  247. package/src/stories/CheckboxGroup/CheckboxGroupReadonly.stories.mdx +26 -0
  248. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +152 -0
  249. package/src/stories/CheckboxGroup/CheckboxGroupValid.stories.mdx +28 -0
  250. package/src/stories/CheckboxGroup/CheckboxGroupVertical.stories.mdx +26 -0
  251. package/src/stories/Dialog/Dialog.stories.mdx +5 -5
  252. package/src/stories/Dialog/Dialog.test.ts +26 -0
  253. package/src/stories/Dialog/DialogAutoClose.stories.mdx +1 -1
  254. package/src/stories/Dialog/DialogSize.stories.mdx +1 -1
  255. package/src/stories/Dropdown/Dropdown.stories.mdx +11 -7
  256. package/src/stories/Dropdown/Dropdown.test.ts +80 -0
  257. package/src/stories/Dropdown/DropdownDisabled.stories.mdx +9 -2
  258. package/src/stories/Dropdown/DropdownLabelNoResults.stories.mdx +2 -2
  259. package/src/stories/Dropdown/DropdownMaxValues.stories.mdx +4 -2
  260. package/src/stories/Dropdown/DropdownMultiple.stories.mdx +4 -2
  261. package/src/stories/Dropdown/DropdownOptions.stories.mdx +4 -4
  262. package/src/stories/Dropdown/DropdownUseObject.stories.mdx +4 -2
  263. package/src/stories/Icon/Icon.stories.mdx +8 -8
  264. package/src/stories/Icon/{IconTest.js → Icon.test.js} +2 -5
  265. package/src/stories/Icon/IconList.vue +5 -6
  266. package/src/stories/Icon/IconPrefix.stories.mdx +2 -2
  267. package/src/stories/Icon/IconRemote.stories.mdx +2 -2
  268. package/src/stories/Icon/IconsList.stories.mdx +2 -18
  269. package/src/stories/InputText/InputText.stories.mdx +25 -19
  270. package/src/stories/InputText/InputText.test.ts +156 -0
  271. package/src/stories/InputText/InputTextAutocomplete.stories.mdx +9 -2
  272. package/src/stories/InputText/InputTextAutofocus.stories.mdx +6 -3
  273. package/src/stories/InputText/InputTextDisabled.stories.mdx +10 -2
  274. package/src/stories/InputText/InputTextError.stories.mdx +10 -2
  275. package/src/stories/InputText/InputTextFloating.stories.mdx +10 -3
  276. package/src/stories/InputText/InputTextHintLabel.stories.mdx +10 -2
  277. package/src/stories/InputText/InputTextIcon.stories.mdx +6 -2
  278. package/src/stories/InputText/InputTextIconPosition.stories.mdx +10 -3
  279. package/src/stories/InputText/InputTextLabel.stories.mdx +8 -2
  280. package/src/stories/InputText/InputTextLoading.stories.mdx +10 -2
  281. package/src/stories/InputText/InputTextMax.stories.mdx +10 -3
  282. package/src/stories/InputText/InputTextMaxLength.stories.mdx +22 -5
  283. package/src/stories/InputText/InputTextMin.stories.mdx +10 -3
  284. package/src/stories/InputText/InputTextMinLength.stories.mdx +9 -2
  285. package/src/stories/InputText/InputTextPlaceholder.stories.mdx +8 -2
  286. package/src/stories/InputText/InputTextReadonly.stories.mdx +6 -2
  287. package/src/stories/InputText/InputTextSlots.stories.mdx +4 -5
  288. package/src/stories/InputText/InputTextStep.stories.mdx +9 -3
  289. package/src/stories/InputText/InputTextType.stories.mdx +110 -13
  290. package/src/stories/InputText/InputTextValid.stories.mdx +10 -2
  291. package/src/stories/NativeSelect/NativeSelect.stories.mdx +15 -11
  292. package/src/stories/NativeSelect/NativeSelect.test.js +151 -0
  293. package/src/stories/NativeSelect/NativeSelectDisabled.stories.mdx +6 -7
  294. package/src/stories/NativeSelect/NativeSelectError.stories.mdx +7 -3
  295. package/src/stories/NativeSelect/NativeSelectHintLabel.stories.mdx +7 -3
  296. package/src/stories/NativeSelect/NativeSelectIconLeftRight.stories.mdx +14 -12
  297. package/src/stories/NativeSelect/NativeSelectLoading.stories.mdx +7 -3
  298. package/src/stories/NativeSelect/NativeSelectOptions.stories.mdx +44 -38
  299. package/src/stories/NativeSelect/NativeSelectReadonly.stories.mdx +19 -11
  300. package/src/stories/NativeSelect/NativeSelectUseObject.stories.mdx +26 -30
  301. package/src/stories/NativeSelect/NativeSelectValid.stories.mdx +7 -3
  302. package/src/stories/NativeSelect/NativeSelectValueKey.stories.mdx +30 -30
  303. package/src/stories/Progress/Progress.stories.mdx +8 -11
  304. package/src/stories/Progress/{ProgressTest.js → Progress.test.js} +4 -10
  305. package/src/stories/Progress/ProgressDeterminate.stories.mdx +3 -6
  306. package/src/stories/Radio/Radio.stories.mdx +11 -17
  307. package/src/stories/Radio/Radio.test.ts +52 -0
  308. package/src/stories/Radio/RadioDisabled.stories.mdx +4 -7
  309. package/src/stories/Radio/RadioError.stories.mdx +8 -28
  310. package/src/stories/Radio/RadioHintLabel.stories.mdx +6 -7
  311. package/src/stories/Radio/RadioSlots.stories.mdx +21 -7
  312. package/src/stories/RadioGroup/RadioGroup.stories.mdx +20 -27
  313. package/src/stories/RadioGroup/RadioGroup.test.ts +139 -0
  314. package/src/stories/RadioGroup/RadioGroupDisabled.stories.mdx +6 -8
  315. package/src/stories/RadioGroup/RadioGroupError.stories.mdx +9 -11
  316. package/src/stories/RadioGroup/RadioGroupHintLabel.stories.mdx +8 -10
  317. package/src/stories/RadioGroup/RadioGroupLabel.stories.mdx +6 -8
  318. package/src/stories/RadioGroup/RadioGroupOptionLabel.stories.mdx +11 -13
  319. package/src/stories/RadioGroup/RadioGroupOptionValue.stories.mdx +9 -11
  320. package/src/stories/RadioGroup/RadioGroupOptions.stories.mdx +7 -9
  321. package/src/stories/RadioGroup/RadioGroupReadonly.stories.mdx +6 -8
  322. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +39 -62
  323. package/src/stories/RadioGroup/RadioGroupValid.stories.mdx +9 -11
  324. package/src/stories/RadioGroup/RadioGroupVertical.stories.mdx +6 -8
  325. package/src/stories/Select/Select.stories.mdx +32 -29
  326. package/src/stories/Select/Select.test.ts +104 -0
  327. package/src/stories/Select/SelectDisabled.stories.mdx +3 -3
  328. package/src/stories/Select/SelectMaxValues.stories.mdx +3 -3
  329. package/src/stories/Select/SelectMultiple.stories.mdx +5 -6
  330. package/src/stories/Select/SelectNative.stories.mdx +6 -8
  331. package/src/stories/Select/SelectOptions.stories.mdx +4 -4
  332. package/src/stories/Select/SelectSearchable.stories.mdx +13 -12
  333. package/src/stories/Select/SelectSeparator.stories.mdx +3 -3
  334. package/src/stories/Select/SelectUseObject.stories.mdx +3 -3
  335. package/src/stories/Textarea/Textarea.stories.mdx +6 -10
  336. package/src/stories/Textarea/Textarea.test.ts +204 -0
  337. package/src/stories/Textarea/TextareaAutoclear.stories.mdx +3 -2
  338. package/src/stories/Textarea/TextareaAutocomplete.stories.mdx +3 -2
  339. package/src/stories/Textarea/TextareaAutofocus.stories.mdx +3 -2
  340. package/src/stories/Textarea/TextareaDebounce.stories.mdx +7 -6
  341. package/src/stories/Textarea/TextareaDisabled.stories.mdx +9 -3
  342. package/src/stories/Textarea/TextareaError.stories.mdx +7 -2
  343. package/src/stories/Textarea/TextareaErrorLabel.stories.mdx +12 -2
  344. package/src/stories/Textarea/TextareaFloating.stories.mdx +7 -2
  345. package/src/stories/Textarea/TextareaHintLabel.stories.mdx +7 -2
  346. package/src/stories/Textarea/TextareaIcon.stories.mdx +3 -2
  347. package/src/stories/Textarea/TextareaIconPosition.stories.mdx +4 -2
  348. package/src/stories/Textarea/TextareaId.stories.mdx +3 -2
  349. package/src/stories/Textarea/TextareaLabel.stories.mdx +3 -2
  350. package/src/stories/Textarea/TextareaLimit.stories.mdx +5 -2
  351. package/src/stories/Textarea/TextareaLoading.stories.mdx +7 -2
  352. package/src/stories/Textarea/TextareaLoadingLabel.stories.mdx +9 -3
  353. package/src/stories/Textarea/TextareaMaxLength.stories.mdx +5 -4
  354. package/src/stories/Textarea/TextareaMinLength.stories.mdx +3 -2
  355. package/src/stories/Textarea/TextareaModifiers.stories.mdx +10 -2
  356. package/src/stories/Textarea/TextareaName.stories.mdx +3 -2
  357. package/src/stories/Textarea/TextareaPlaceholder.stories.mdx +4 -3
  358. package/src/stories/Textarea/TextareaReadonly.stories.mdx +8 -3
  359. package/src/stories/Textarea/TextareaRequired.stories.mdx +3 -2
  360. package/src/stories/Textarea/TextareaResizable.stories.mdx +7 -2
  361. package/src/stories/Textarea/TextareaRowsCols.stories.mdx +4 -2
  362. package/src/stories/Textarea/TextareaSlots.stories.mdx +7 -8
  363. package/src/stories/Textarea/TextareaValid.stories.mdx +7 -1
  364. package/src/stories/Textarea/TextareaValidLabel.stories.mdx +14 -4
  365. package/src/stories/utils.ts +1 -1
  366. package/src/stories/volver-ui-vue.stories.mdx +1 -1
  367. package/src/test/expect.ts +3 -1
  368. package/src/test/sleep.ts +2 -0
  369. package/src/test/types.d.ts +14 -1
  370. package/src/types/{.README → .gitkeep} +0 -0
  371. package/src/utils/ObjectUtilities.ts +247 -241
  372. package/dist/components/VvAccordion/VvAccordion.d.ts +0 -32
  373. package/dist/components/VvAccordion/useAccordionProps.d.ts +0 -16
  374. package/dist/components/VvButton/useButtonGroupProps.d.ts +0 -18
  375. package/dist/components/VvCheck/VvCheck.d.ts +0 -47
  376. package/dist/components/VvCheck/VvCheck.es.js +0 -318
  377. package/dist/components/VvCheck/VvCheck.umd.js +0 -1
  378. package/dist/components/VvCheck/VvCheck.vue.d.ts +0 -165
  379. package/dist/components/VvCheck/useCheckProps.d.ts +0 -16
  380. package/dist/components/VvCheckGroup/VvCheckGroup.es.js +0 -451
  381. package/dist/components/VvCheckGroup/VvCheckGroup.umd.js +0 -2
  382. package/dist/components/VvCheckGroup/VvCheckGroup.vue.d.ts +0 -272
  383. package/dist/components/VvDialog/constants.d.ts +0 -5
  384. package/dist/components/VvInputText/VvInputText.d.ts +0 -73
  385. package/dist/components/VvInputText/constants.d.ts +0 -55
  386. package/dist/components/VvRadio/VvRadio.d.ts +0 -22
  387. package/dist/components/VvRadio/useRadioProps.d.ts +0 -15
  388. package/dist/components/VvTextarea/constants.d.ts +0 -19
  389. package/dist/stories/RadioGroup/RadioOption.test.d.ts +0 -4
  390. package/dist/stories/RadioGroup/RadioProperty.test.d.ts +0 -12
  391. package/dist/stories/RadioGroup/RadioSlots.test.d.ts +0 -6
  392. package/src/assets/icons/index.js +0 -7
  393. package/src/components/VvAccordion/VvAccordion.ts +0 -34
  394. package/src/components/VvAccordion/useAccordionProps.ts +0 -45
  395. package/src/components/VvButton/VvButton.ts +0 -87
  396. package/src/components/VvButton/useButtonGroupProps.ts +0 -43
  397. package/src/components/VvCheck/VvCheck.ts +0 -48
  398. package/src/components/VvCheck/VvCheck.vue +0 -147
  399. package/src/components/VvCheck/useCheckProps.ts +0 -41
  400. package/src/components/VvDialog/VvDialog.ts +0 -17
  401. package/src/components/VvDialog/constants.ts +0 -5
  402. package/src/components/VvInputText/VvInputText.ts +0 -66
  403. package/src/components/VvInputText/constants.ts +0 -34
  404. package/src/components/VvRadio/VvRadio.ts +0 -25
  405. package/src/components/VvRadio/useRadioProps.ts +0 -40
  406. package/src/components/VvTextarea/constants.ts +0 -14
  407. package/src/stories/Accordion/AccordionBordered.stories.mdx +0 -26
  408. package/src/stories/Accordion/AccordionIconRight.stories.mdx +0 -32
  409. package/src/stories/Accordion/accordionTest.js +0 -36
  410. package/src/stories/AccordionGroup/Accordion.stories.mdx +0 -42
  411. package/src/stories/Badge/BadgeTest.js +0 -21
  412. package/src/stories/Button/ButtonSelected.stories.mdx +0 -30
  413. package/src/stories/Check/Check.stories.mdx +0 -62
  414. package/src/stories/Check/CheckBinary.stories.mdx +0 -75
  415. package/src/stories/Check/CheckError.stories.mdx +0 -64
  416. package/src/stories/Check/CheckErrorTests.js +0 -74
  417. package/src/stories/Check/CheckHintLabel.stories.mdx +0 -30
  418. package/src/stories/Check/CheckPropertyTest.js +0 -102
  419. package/src/stories/Check/CheckSlots.stories.mdx +0 -51
  420. package/src/stories/CheckGroup/CheckGroup.stories.mdx +0 -69
  421. package/src/stories/CheckGroup/CheckGroupDisabled.stories.mdx +0 -26
  422. package/src/stories/CheckGroup/CheckGroupError.stories.mdx +0 -28
  423. package/src/stories/CheckGroup/CheckGroupHintLabel.stories.mdx +0 -27
  424. package/src/stories/CheckGroup/CheckGroupLabel.stories.mdx +0 -26
  425. package/src/stories/CheckGroup/CheckGroupReadonly.stories.mdx +0 -26
  426. package/src/stories/CheckGroup/CheckGroupSlots.stories.mdx +0 -152
  427. package/src/stories/CheckGroup/CheckGroupValid.stories.mdx +0 -28
  428. package/src/stories/CheckGroup/CheckGroupVertical.stories.mdx +0 -26
  429. package/src/stories/RadioGroup/RadioOption.test.ts +0 -45
  430. package/src/stories/RadioGroup/RadioProperty.test.ts +0 -87
  431. package/src/stories/RadioGroup/RadioSlots.test.ts +0 -29
  432. package/src/stories/stories.scss +0 -13
@@ -1,43 +0,0 @@
1
- import { toRefs } from 'vue'
2
- import type IButtonGroupState from '../../composables/group/types/IButtonGroupState'
3
-
4
- //Composables
5
- import { useInjectedGroupState } from '../../composables/group/useInjectedGroupState'
6
-
7
- //Constasts
8
- import { VV_BUTTON_GROUP } from '../../constants'
9
-
10
- import type { VvButtonPropsTypes } from './VvButton'
11
-
12
- /**
13
- * Estreae tutte le prop del componente VvButton che possono essere
14
- * "sovrascritte" quando il buttone si trova in un gruppo.
15
- */
16
- export function toButtonRefs(props: VvButtonPropsTypes) {
17
- const { group, isInGroup, getGroupOrLocalRef } =
18
- useInjectedGroupState<IButtonGroupState>(VV_BUTTON_GROUP)
19
-
20
- //Local props
21
- const { iconPosition, icon, label, selected } = toRefs(props)
22
-
23
- //Group based props
24
- const modelValue = getGroupOrLocalRef('modelValue', props)
25
- const disabled = getGroupOrLocalRef('disabled', props)
26
- const toggle = getGroupOrLocalRef('toggle', props)
27
- const modifiers = getGroupOrLocalRef('modifiers', props)
28
-
29
- return {
30
- //Group based props
31
- modelValue,
32
- disabled,
33
- toggle,
34
- isInGroup,
35
- group,
36
- modifiers,
37
- //Local props
38
- selected,
39
- iconPosition,
40
- icon,
41
- label
42
- }
43
- }
@@ -1,48 +0,0 @@
1
- import type { ExtractPropTypes } from 'vue'
2
- import { ValidProps, ErrorProps } from '../../props'
3
-
4
- export const VvCheckProps = {
5
- ...ValidProps,
6
- ...ErrorProps,
7
- /**
8
- * Valore della check
9
- */
10
- value: null,
11
- /**
12
- * VModel
13
- * @description
14
- * Se Binary = true, modelValue puo essere Object,Boolean,Number
15
- * Altrimenti modelValue sarà un Array
16
- */
17
- modelValue: null,
18
- /**
19
- * True - ritorna un valore del checkbox binario (es True/False) invece di un valori multipli
20
- */
21
- binary: Boolean,
22
- /**
23
- * Se binary=true, valore associato allo stato checked (ritornato al posto di TRUE)
24
- */
25
- trueValue: { type: null, default: true },
26
- /**
27
- * Se binary=true, valore associato allo stato unchecked (ritornato al posto di FALSE)
28
- */
29
- falseValue: { type: null, default: false },
30
- /**
31
- * True - visualizza il VvCheck come un pulsante Switch/Toggle
32
- */
33
- switch: Boolean,
34
- label: String,
35
- disabled: Boolean,
36
- readonly: Boolean
37
- }
38
-
39
- export const VvCheckEvents = [
40
- 'click',
41
- 'update:modelValue',
42
- 'change',
43
- 'focus',
44
- 'blur'
45
- ]
46
-
47
- type _VvCheckPropsType = typeof VvCheckProps
48
- export type VvCheckPropsTypes = ExtractPropTypes<_VvCheckPropsType>
@@ -1,147 +0,0 @@
1
- <template>
2
- <label :class="checkClass" v-bind="checkAttrs" @click="onClick">
3
- <input
4
- ref="input"
5
- :class="checkInputClass"
6
- v-bind="checkInputAttrs"
7
- @input="onChange" />
8
- <!-- @slot Use this slot for check label -->
9
- <slot :value="modelValue">
10
- {{ label }}
11
- </slot>
12
- </label>
13
- </template>
14
-
15
- <script setup lang="ts">
16
- import type { InputHTMLAttributes, LabelHTMLAttributes } from 'vue'
17
-
18
- import { computed, useAttrs, ref } from 'vue'
19
- import ObjectUtilities from '../../utils/ObjectUtilities'
20
- import { VvCheckProps, VvCheckEvents } from './VvCheck'
21
-
22
- //Composables
23
- import { toCheckInputRefs } from './useCheckProps'
24
- import { useComponentFocus } from '../../composables/focus/useComponentFocus'
25
- import { useBemModifiers } from '@/composables/useModifiers'
26
-
27
- //Props, Emits, Slots e Attrs
28
- const props = defineProps(VvCheckProps)
29
- const emit = defineEmits(VvCheckEvents)
30
- const attrs = useAttrs()
31
-
32
- //Data
33
- const { disabled, readonly, valid, error, propsSwitch, modelValue } =
34
- toCheckInputRefs(props, emit)
35
-
36
- //Template References
37
- const input = ref()
38
-
39
- // FOCUS
40
- const { focused } = useComponentFocus(input, emit)
41
-
42
- //Component computed
43
- const isChecked = computed(() => {
44
- if (props.binary)
45
- return ObjectUtilities.equals(modelValue.value, props.trueValue)
46
-
47
- return Array.isArray(modelValue.value)
48
- ? ObjectUtilities.contains(props.value, modelValue.value)
49
- : ObjectUtilities.equals(props.value, modelValue.value)
50
- })
51
-
52
- // Styles & Bindings
53
- const { bemCssClasses: bemCheckClass } = useBemModifiers('vv-input-checkbox', {
54
- switch: propsSwitch,
55
- valid,
56
- invalid: error
57
- })
58
- const { bemCssClasses: bemCheckInputClass } = useBemModifiers(
59
- 'vv-input-check__input',
60
- {
61
- checked: isChecked,
62
- disabled,
63
- readonly
64
- }
65
- )
66
- const checkClass = computed(() => {
67
- const cssClass = attrs.class as string
68
- return {
69
- [cssClass]: true,
70
- ...bemCheckClass.value
71
- }
72
- })
73
- const checkInputClass = computed(() => {
74
- return {
75
- ...bemCheckInputClass.value,
76
- 'focus-visible': focused.value
77
- }
78
- })
79
- const checkAttrs = computed(() => {
80
- const { id, name, style } = attrs
81
- const dataAttrs = ObjectUtilities.pickBy(attrs, (k: string) =>
82
- k.startsWith('data-')
83
- )
84
- return {
85
- for: (id || name) as string,
86
- style,
87
- ...dataAttrs
88
- } as LabelHTMLAttributes
89
- })
90
- const checkInputAttrs = computed(() => {
91
- const { id = '', name = '' } = attrs
92
- return {
93
- type: 'checkbox',
94
- id: id || name,
95
- name,
96
- value: props.value,
97
- disabled: disabled.value,
98
- readonly: readonly.value,
99
- checked: isChecked.value,
100
- ...checkInputAriaAttrs.value
101
- } as InputHTMLAttributes
102
- })
103
- const checkInputAriaAttrs = computed(() => {
104
- const { name } = attrs
105
- const dataAttrs = ObjectUtilities.pickBy(attrs, (k: string) =>
106
- k.startsWith('aria-')
107
- )
108
- return {
109
- 'aria-label': name,
110
- 'aria-checked': isChecked.value,
111
- ...dataAttrs
112
- }
113
- })
114
-
115
- //Methods
116
- function onChange() {
117
- if (props.binary) {
118
- modelValue.value = isChecked.value ? props.falseValue : props.trueValue
119
- return
120
- }
121
-
122
- if (modelValue.value === null) {
123
- modelValue.value = [props.value]
124
- return
125
- }
126
-
127
- if (Array.isArray(modelValue.value)) {
128
- modelValue.value = !isChecked.value
129
- ? [...modelValue.value, props.value]
130
- : ObjectUtilities.removeFromList(props.value, modelValue.value)
131
- return
132
- }
133
- }
134
- function onClick(event: MouseEvent | undefined) {
135
- if (!disabled.value) {
136
- emit('click', event)
137
- emit('change', isChecked.value ? props.value : null)
138
- focused.value = true
139
- }
140
- }
141
- </script>
142
-
143
- <script lang="ts">
144
- export default {
145
- inheritAttrs: false
146
- }
147
- </script>
@@ -1,41 +0,0 @@
1
- import type { VvCheckPropsTypes } from './VvCheck'
2
- import type { IInputGroupState } from '@/composables/group/types/IInputGroup'
3
-
4
- import { toRefs } from 'vue'
5
-
6
- //Composables
7
- import { useInjectedGroupState } from '../../composables/group/useInjectedGroupState'
8
-
9
- //Constasts
10
- import { VV_CHECK_GROUP } from '../../constants'
11
-
12
- /**
13
- * Estreae tutte le prop del componente VvButton che possono essere
14
- * "sovrascritte" quando il buttone si trova in un gruppo.
15
- */
16
- export function toCheckInputRefs(
17
- props: VvCheckPropsTypes,
18
- emit: (event: any, ...args: any[]) => void
19
- ) {
20
- const { group, isInGroup, getGroupOrLocalRef } =
21
- useInjectedGroupState<IInputGroupState>(VV_CHECK_GROUP)
22
-
23
- //Local props
24
- const { valid, error, switch: propsSwitch } = toRefs(props)
25
-
26
- //Global props
27
- const modelValue = getGroupOrLocalRef('modelValue', props, emit)
28
- const readonly = getGroupOrLocalRef('readonly', props)
29
- const disabled = getGroupOrLocalRef('disabled', props)
30
-
31
- return {
32
- group,
33
- isInGroup,
34
- valid,
35
- error,
36
- propsSwitch,
37
- modelValue,
38
- readonly,
39
- disabled
40
- }
41
- }
@@ -1,17 +0,0 @@
1
- import { VV_DIALOG_SIZES } from './constants'
2
-
3
- export const VvDialogEvents = ['open', 'close', 'update:open']
4
-
5
- export const VvDialogProps = {
6
- id: { type: String, required: true },
7
- title: String,
8
- open: Boolean,
9
- transition: { type: String, default: 'fade-block' },
10
- size: {
11
- type: String,
12
- default: VV_DIALOG_SIZES.normal,
13
- validator: (value: string) =>
14
- Object.values(VV_DIALOG_SIZES).includes(value)
15
- },
16
- autoClose: { type: Boolean, default: true }
17
- }
@@ -1,5 +0,0 @@
1
- export const VV_DIALOG_SIZES = {
2
- normal: '',
3
- small: 'small',
4
- fullscreen: 'fullscreen'
5
- }
@@ -1,66 +0,0 @@
1
- import type { ExtractPropTypes } from 'vue'
2
- import {
3
- ValidProps,
4
- ErrorProps,
5
- HintProps,
6
- LoadingProps,
7
- ModifiersProps,
8
- LimitProps
9
- } from '../../props'
10
- import { TYPES, ICON_POSITIONS } from './constants'
11
-
12
- export const VvInputTextEvents = ['update:modelValue', 'focus', 'blur']
13
-
14
- export const VvInputTextProps = {
15
- ...ValidProps,
16
- ...ErrorProps,
17
- ...HintProps,
18
- ...LoadingProps,
19
- ...ModifiersProps,
20
- ...LimitProps,
21
- modelValue: null,
22
- type: {
23
- type: String,
24
- default: TYPES.TEXT,
25
- validator: (value: string) => Object.values(TYPES).includes(value)
26
- },
27
- id: String,
28
- name: { type: String, required: true },
29
- autocomplete: { type: String, default: 'off' },
30
- autofocus: Boolean,
31
- minlength: Number,
32
- maxlength: Number,
33
- min: [Number, Date],
34
- max: [Number, Date],
35
- step: Number,
36
- label: String,
37
- disabled: Boolean,
38
- readonly: Boolean,
39
- placeholder: String,
40
- /**
41
- * Nome dell'icona
42
- * @see DsIcon
43
- */
44
- icon: { type: String, default: '' },
45
- /**
46
- * Posizione dell'icona
47
- */
48
- iconPosition: {
49
- type: String,
50
- validation: (value: string) =>
51
- Object.values(ICON_POSITIONS).includes(value),
52
- default: ICON_POSITIONS.RIGHT
53
- },
54
- /**
55
- * True = label flottante
56
- */
57
- floating: Boolean,
58
- debounce: Number,
59
- /**
60
- * Se true, attiva la possibilità di cancellare il testo nella textarea
61
- */
62
- autoclear: Boolean
63
- }
64
-
65
- type VvInputTextPropsType = typeof VvInputTextProps
66
- export type VvInputTextPropsTypes = ExtractPropTypes<VvInputTextPropsType>
@@ -1,34 +0,0 @@
1
- export const TYPES = {
2
- TEXT: 'text',
3
- PASSWORD: 'password',
4
- DATE: 'date',
5
- DATETIME_LOCAL: 'datetime-local',
6
- NUMBER: 'number',
7
- TIME: 'time',
8
- EMAIL: 'email',
9
- TEL: 'tel',
10
- URL: 'url',
11
- COLOR: 'color',
12
- SEARCH: 'search',
13
- FILE: 'file'
14
- }
15
-
16
- export const ICON_POSITIONS = {
17
- LEFT: 'left',
18
- RIGHT: 'right'
19
- }
20
-
21
- export const TYPES_ICON = {
22
- PASSWORD_ON: 'eye-on',
23
- PASSWORD_OFF: 'eye-off',
24
- DATE: 'calendar',
25
- TIME: 'time',
26
- COLOR: 'color',
27
- SEARCH: 'search'
28
- }
29
-
30
- export default {
31
- TYPES,
32
- ICON_POSITIONS,
33
- TYPES_ICON
34
- }
@@ -1,25 +0,0 @@
1
- import type { ExtractPropTypes } from 'vue'
2
- import { ValidProps, ErrorProps } from '../../props'
3
-
4
- export const VvRadioProps = {
5
- ...ValidProps,
6
- ...ErrorProps,
7
- /**
8
- * Valore del radio
9
- */
10
- value: null,
11
- modelValue: { type: [Object, Number, Boolean, String] },
12
- label: { type: String, default: '' },
13
- disabled: Boolean,
14
- readonly: Boolean
15
- }
16
-
17
- export const VvRadioEvents = [
18
- 'click',
19
- 'update:modelValue',
20
- 'change',
21
- 'focus',
22
- 'blur'
23
- ]
24
-
25
- export type VvRadioPropsType = ExtractPropTypes<typeof VvRadioProps>
@@ -1,40 +0,0 @@
1
- import type { VvRadioPropsType } from '../VvRadio/VvRadio'
2
- import type { IInputGroupState } from '@/composables/group/types/IInputGroup'
3
-
4
- import { toRefs } from 'vue'
5
-
6
- //Composables
7
- import { useInjectedGroupState } from '../../composables/group/useInjectedGroupState'
8
-
9
- //Constasts
10
- import { VV_RADIO_GROUP } from '../../constants'
11
-
12
- /**
13
- * Estreae tutte le prop del componente VvButton che possono essere
14
- * "sovrascritte" quando il buttone si trova in un gruppo.
15
- */
16
- export function toRadioInputRefs(
17
- props: VvRadioPropsType,
18
- emit: (event: any, ...args: any[]) => void
19
- ) {
20
- const { group, isInGroup, getGroupOrLocalRef } =
21
- useInjectedGroupState<IInputGroupState>(VV_RADIO_GROUP)
22
-
23
- //Local props
24
- const { valid, error } = toRefs(props)
25
-
26
- //Global props
27
- const modelValue = getGroupOrLocalRef('modelValue', props, emit)
28
- const readonly = getGroupOrLocalRef('readonly', props)
29
- const disabled = getGroupOrLocalRef('disabled', props)
30
-
31
- return {
32
- group,
33
- isInGroup,
34
- valid,
35
- error,
36
- modelValue,
37
- readonly,
38
- disabled
39
- }
40
- }
@@ -1,14 +0,0 @@
1
- export const ICON_POSITIONS = {
2
- LEFT: 'left',
3
- RIGHT: 'right'
4
- }
5
-
6
- export const WRAP = {
7
- hard: 'hard',
8
- soft: 'soft'
9
- }
10
-
11
- export default {
12
- ICON_POSITIONS,
13
- WRAP
14
- }
@@ -1,26 +0,0 @@
1
- import { Canvas, Meta, Story, Source, ArgsTable } from '@storybook/addon-docs'
2
- import VvAccordion from '../../components/VvAccordion/VvAccordion.vue'
3
- import { Template } from './Accordion.stories.mdx'
4
- import { propsTest } from './accordionTest.js'
5
-
6
- <Meta title="Components/Accordion/Props/bordered" />
7
-
8
- # VvAccordion bordered
9
-
10
- Let's define a story for our `bordered` accordion.
11
-
12
- <Canvas>
13
- <Story
14
- name="bordered"
15
- play={async ({ canvasElement }) => {
16
- propsTest({ canvasElement }, 'bordered')
17
- }}
18
- args={{
19
- bordered: true,
20
- title: 'Accoridon with borders',
21
- content:
22
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean turpis diam, tempor non sem ut, suscipit gravida mi.'
23
- }}>
24
- {Template.bind({})}
25
- </Story>
26
- </Canvas>
@@ -1,32 +0,0 @@
1
- import { Canvas, Meta, Story, Source } from '@storybook/addon-docs'
2
- import VvAccordion from '../../components/VvAccordion/VvAccordion.vue'
3
- import { propsTest } from './accordionTest.js'
4
-
5
- <Meta title="Components/Accordion/Props/icon-right" />
6
-
7
- # VvAccordion icon-right
8
-
9
- Let's define a story for our `icon-right` accordion.
10
-
11
- <Canvas>
12
- <Story
13
- name="icon-right"
14
- play={async ({ canvasElement }) => {
15
- propsTest({ canvasElement }, 'marker-right')
16
- }}>
17
- {() => {
18
- return {
19
- components: { VvAccordion },
20
- data() {
21
- return {
22
- content:
23
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean turpis diam, tempor non sem ut, suscipit gravida mi.'
24
- }
25
- },
26
- template: `<div class="w-1/2">
27
- <vv-accordion data-testid="accordion" title="Icon right" :content="content" icon-right />
28
- </div>`
29
- }
30
- }}
31
- </Story>
32
- </Canvas>
@@ -1,36 +0,0 @@
1
- import { expect } from '@storybook/jest'
2
- import { within } from '@storybook/testing-library'
3
- import { toHaveNoViolations, axe } from 'jest-axe'
4
-
5
- async function accordionTest({ canvasElement, ...data }) {
6
- const accordion = await within(canvasElement).findByTestId('accordion')
7
- const title = accordion.firstChild
8
- expect(accordion).toHaveClass('vv-accordion')
9
- expect(title.innerText).toEqual(data.args.title)
10
- expect(title).toHaveClass('vv-collapse__summary')
11
- expect(accordion.open).toBe(false)
12
- title.click()
13
- expect(accordion.open).toBeTruthy()
14
- const content = accordion.lastChild
15
- expect(content).toHaveClass('vv-collapse__content')
16
- expect(content.innerText).toEqual(data.args.content)
17
- accessibilityTest(accordion)
18
- }
19
-
20
- async function propsTest({ canvasElement }, className) {
21
- const accordion = await within(canvasElement).findByTestId('accordion')
22
- expect(accordion).toHaveClass(`vv-accordion--${className}`)
23
- accessibilityTest(accordion)
24
- }
25
-
26
- async function slotsTest({ canvasElement }) {
27
- const slot = await within(canvasElement).findByTestId('slot')
28
- expect(slot.innerHTML).toBeTruthy
29
- }
30
-
31
- async function accessibilityTest(element) {
32
- expect.extend(toHaveNoViolations)
33
- expect(await axe(element)).toHaveNoViolations()
34
- }
35
-
36
- export { accordionTest, propsTest, slotsTest }
@@ -1,42 +0,0 @@
1
- import { Canvas, Meta, Story, Source } from '@storybook/addon-docs'
2
- import VvAccordionGroup from '../../components/VvAccordionGroup/VvAccordionGroup.vue'
3
- import VvAccordion from '../../components/VvAccordion/VvAccordion.vue'
4
- import { accordionTest } from './accordionGroupTest.js'
5
-
6
- <Meta title="Components/AccordionGroup/Props/accordion" />
7
-
8
- # VvAccordionGroup accordion
9
-
10
- Stories of `VvAccordionGroup` with `accordion`.
11
-
12
- <Canvas>
13
- <Story name="accordion" play={accordionTest}>
14
- {(args) => ({
15
- components: { VvAccordionGroup, VvAccordion },
16
- data() {
17
- return {
18
- selected: '',
19
- content:
20
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean turpis diam, tempor non sem ut, suscipit gravida mi.'
21
- }
22
- },
23
- template: `<div class="flex">
24
- <div class="w-1/2">
25
- <vv-accordion-group v-model:modelValue="selected" icon-right bordered accordion>
26
- <vv-accordion data-testId="accordion-1" name="accordion 1" title="Details 1" :content="content" />
27
- <vv-accordion name="accordion 2" title="Details 2" :content="content" />
28
- <vv-accordion name="accordion 3" title="Details 3" :content="content" />
29
- </vv-accordion-group>
30
- </div>
31
- <div data-testId="selected" v-if="selected" class="w-1/2 flex justify-end" >
32
- selected: {{ selected }}
33
- </div>
34
- </div>`
35
- })}
36
- </Story>
37
- </Canvas>
38
-
39
- <Source
40
- language="jsx"
41
- code={`<vv-accordion-group v-model:modelValue="accordion" :items="items" icon-right bordered />`}
42
- />
@@ -1,21 +0,0 @@
1
- import { axe, toHaveNoViolations } from 'jest-axe'
2
- import { within } from '@storybook/testing-library'
3
- import { expect } from '@storybook/jest'
4
-
5
- export const variantTest = async ({ badge, color }) => {
6
- expect(badge).toHaveClass(`vv-badge--${color}`)
7
- }
8
-
9
- export const accessibilityTest = async (badge) => {
10
- expect.extend(toHaveNoViolations)
11
- expect(await axe(badge)).toHaveNoViolations()
12
- }
13
-
14
- // Test Variants function
15
- export const testBadgeVariant = async ({ canvasElement, name }) => {
16
- const badge = await within(canvasElement).findByRole('status')
17
- await accessibilityTest(badge)
18
- await variantTest({ badge, color: name })
19
- }
20
-
21
- export default testBadgeVariant
@@ -1,30 +0,0 @@
1
- import { Canvas, Meta, Story, Source } from '@storybook/addon-docs'
2
- import VvButton from '../../components/VvButton/VvButton.vue'
3
-
4
- <Meta title="Components/Button/Props/selected" />
5
-
6
- ## Action Selected
7
-
8
- Let's define a story for our `action` `selected` button.
9
-
10
- <Canvas>
11
- <Story
12
- name="selected"
13
- play={async (ctx) => {
14
- testButton(ctx, {
15
- className: 'vv-button--selected'
16
- })
17
- }}>
18
- {() => {
19
- return {
20
- components: { VvButton },
21
- template: `<vv-button label="Action Selected" modifiers="action" selected />`
22
- }
23
- }}
24
- </Story>
25
- </Canvas>
26
-
27
- <Source
28
- language="jsx"
29
- code={'<vv-button label="Action" modifiers="action" selected />'}
30
- />