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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/bin/icons.cjs +73 -0
  2. package/bin/icons.js +75 -0
  3. package/dist/Volver.d.ts +15 -2
  4. package/dist/components/VvAccordion/VvAccordion.es.js +133 -236
  5. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  6. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +32 -97
  7. package/dist/components/VvAccordion/index.d.ts +46 -0
  8. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +199 -277
  9. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  10. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +44 -151
  11. package/dist/components/VvAccordionGroup/{VvAccordionGroup.d.ts → index.d.ts} +9 -13
  12. package/dist/components/VvBadge/VvBadge.es.js +42 -151
  13. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  14. package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -53
  15. package/dist/components/VvBadge/{VvBadge.d.ts → index.d.ts} +0 -0
  16. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +55 -168
  17. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  18. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +24 -104
  19. package/dist/components/VvBreadcrumb/{VvBreadcrumb.d.ts → index.d.ts} +1 -1
  20. package/dist/components/VvButton/VvButton.es.js +298 -312
  21. package/dist/components/VvButton/VvButton.umd.js +1 -1
  22. package/dist/components/VvButton/VvButton.vue.d.ts +91 -163
  23. package/dist/components/VvButton/{VvButton.d.ts → index.d.ts} +46 -9
  24. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +59 -172
  25. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  26. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +30 -125
  27. package/dist/components/VvButtonGroup/{VvButtonGroup.d.ts → index.d.ts} +0 -0
  28. package/dist/components/VvCard/VvCard.es.js +55 -166
  29. package/dist/components/VvCard/VvCard.umd.js +1 -1
  30. package/dist/components/VvCard/VvCard.vue.d.ts +16 -61
  31. package/dist/components/VvCard/{VvCard.d.ts → index.d.ts} +1 -1
  32. package/dist/components/VvCheckbox/VvCheckbox.es.js +344 -0
  33. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -0
  34. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +87 -0
  35. package/dist/components/VvCheckbox/index.d.ts +86 -0
  36. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +415 -0
  37. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -0
  38. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +113 -0
  39. package/dist/components/{VvCheckGroup/VvCheckGroup.d.ts → VvCheckboxGroup/index.d.ts} +10 -10
  40. package/dist/components/VvDialog/VvDialog.es.js +108 -230
  41. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  42. package/dist/components/VvDialog/VvDialog.vue.d.ts +28 -132
  43. package/dist/components/VvDialog/{VvDialog.d.ts → index.d.ts} +2 -6
  44. package/dist/components/VvDropdown/VvDropdown.es.js +167 -186
  45. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  46. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +34 -136
  47. package/dist/components/VvDropdown/{VvDropdown.d.ts → index.d.ts} +7 -3
  48. package/dist/components/VvIcon/VvIcon.es.js +62 -174
  49. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  50. package/dist/components/VvIcon/VvIcon.vue.d.ts +36 -150
  51. package/dist/components/VvIcon/{VvIcon.d.ts → index.d.ts} +9 -0
  52. package/dist/components/VvInputText/VvInputClearAction.d.ts +36 -0
  53. package/dist/components/VvInputText/VvInputPasswordAction.d.ts +56 -0
  54. package/dist/components/VvInputText/VvInputStepAction.d.ts +37 -0
  55. package/dist/components/VvInputText/VvInputText.es.js +586 -577
  56. package/dist/components/VvInputText/VvInputText.umd.js +1 -2
  57. package/dist/components/VvInputText/VvInputText.vue.d.ts +187 -275
  58. package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
  59. package/dist/components/VvInputText/index.d.ts +175 -0
  60. package/dist/components/VvNativeSelect/VvNativeSelect.es.js +299 -347
  61. package/dist/components/VvNativeSelect/VvNativeSelect.umd.js +1 -2
  62. package/dist/components/VvNativeSelect/VvNativeSelect.vue.d.ts +78 -190
  63. package/dist/components/VvNativeSelect/{VvNativeSelect.d.ts → index.d.ts} +35 -8
  64. package/dist/components/VvProgress/VvProgress.es.js +45 -162
  65. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  66. package/dist/components/VvProgress/VvProgress.vue.d.ts +17 -103
  67. package/dist/components/VvProgress/{VvProgress.d.ts → index.d.ts} +1 -7
  68. package/dist/components/VvRadio/VvRadio.es.js +292 -267
  69. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  70. package/dist/components/VvRadio/VvRadio.vue.d.ts +52 -122
  71. package/dist/components/VvRadio/index.d.ts +64 -0
  72. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +342 -380
  73. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -2
  74. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +58 -213
  75. package/dist/components/VvRadioGroup/{VvRadioGroup.d.ts → index.d.ts} +2 -2
  76. package/dist/components/VvSelect/VvSelect.es.js +556 -510
  77. package/dist/components/VvSelect/VvSelect.umd.js +1 -2
  78. package/dist/components/VvSelect/VvSelect.vue.d.ts +75 -240
  79. package/dist/components/VvSelect/{VvSelect.d.ts → index.d.ts} +12 -5
  80. package/dist/components/VvTextarea/VvTextarea.es.js +372 -481
  81. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -2
  82. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +103 -299
  83. package/dist/components/VvTextarea/{VvTextarea.d.ts → index.d.ts} +36 -13
  84. package/dist/components/common/HintSlot.d.ts +10 -4
  85. package/dist/components/index.d.ts +13 -6
  86. package/dist/components/index.es.js +2070 -895
  87. package/dist/components/index.umd.js +1 -2
  88. package/dist/composables/debouncedInput/useDebouncedInput.d.ts +2 -2
  89. package/dist/composables/focus/useComponentFocus.d.ts +3 -3
  90. package/dist/composables/group/types/IAccordionGroupState.d.ts +1 -3
  91. package/dist/composables/group/types/IGroupState.d.ts +2 -2
  92. package/dist/composables/group/useInjectedGroupState.d.ts +4 -4
  93. package/dist/composables/group/useProvideGroupState.d.ts +1 -1
  94. package/dist/composables/icons/useComponentIcons.d.ts +2 -2
  95. package/dist/composables/textLimit/useTextLimit.d.ts +0 -3
  96. package/dist/constants.d.ts +4 -4
  97. package/dist/icons.d.ts +1881 -0
  98. package/dist/icons.es.js +4 -6
  99. package/dist/icons.umd.js +1 -1
  100. package/dist/index.es.js +2113 -932
  101. package/dist/index.umd.js +1 -2
  102. package/dist/props/index.d.ts +9 -3
  103. package/dist/resolvers/unplugin.d.ts +27 -0
  104. package/dist/resolvers/unplugin.es.js +40 -0
  105. package/dist/resolvers/unplugin.umd.js +1 -0
  106. package/dist/stories/Accordion/Accordion.test.d.ts +4 -0
  107. package/dist/stories/Badge/Badge.test.d.ts +2 -0
  108. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +2 -0
  109. package/dist/stories/Button/Button.test.d.ts +3 -8
  110. package/dist/stories/Card/Card.test.d.ts +3 -0
  111. package/dist/stories/Dialog/Dialog.test.d.ts +2 -0
  112. package/dist/stories/Dropdown/Dropdown.test.d.ts +2 -0
  113. package/dist/stories/Icon/IconList.vue.d.ts +1 -43
  114. package/dist/stories/InputText/InputText.test.d.ts +6 -0
  115. package/dist/stories/Radio/Radio.test.d.ts +3 -0
  116. package/dist/stories/RadioGroup/RadioGroup.test.d.ts +8 -0
  117. package/dist/stories/Select/Select.test.d.ts +3 -0
  118. package/dist/stories/Textarea/Textarea.test.d.ts +8 -0
  119. package/dist/stories/utils.d.ts +1 -3
  120. package/dist/test/sleep.d.ts +1 -0
  121. package/dist/utils/ObjectUtilities.d.ts +82 -95
  122. package/env.d.ts +1 -0
  123. package/package.json +102 -68
  124. package/src/Volver.ts +32 -3
  125. package/src/assets/icons/detailed.json +1 -1
  126. package/src/assets/icons/normal.json +1 -1
  127. package/src/assets/icons/simple.json +1 -1
  128. package/src/components/VvAccordion/VvAccordion.vue +80 -76
  129. package/src/components/VvAccordion/index.ts +69 -0
  130. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +77 -41
  131. package/src/components/VvAccordionGroup/{VvAccordionGroup.ts → index.ts} +8 -12
  132. package/src/components/VvBadge/VvBadge.vue +14 -10
  133. package/src/components/VvBadge/{VvBadge.ts → index.ts} +0 -0
  134. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +18 -19
  135. package/src/components/VvBreadcrumb/{VvBreadcrumb.ts → index.ts} +1 -1
  136. package/src/components/VvButton/VvButton.vue +123 -113
  137. package/src/components/VvButton/index.ts +147 -0
  138. package/src/components/VvButtonGroup/VvButtonGroup.vue +21 -17
  139. package/src/components/VvButtonGroup/{VvButtonGroup.ts → index.ts} +0 -0
  140. package/src/components/VvCard/VvCard.vue +20 -22
  141. package/src/components/VvCard/{VvCard.ts → index.ts} +0 -0
  142. package/src/components/VvCheckbox/VvCheckbox.vue +124 -0
  143. package/src/components/VvCheckbox/index.ts +94 -0
  144. package/src/components/{VvCheckGroup/VvCheckGroup.vue → VvCheckboxGroup/VvCheckboxGroup.vue} +49 -54
  145. package/src/components/{VvCheckGroup/VvCheckGroup.ts → VvCheckboxGroup/index.ts} +9 -9
  146. package/src/components/VvDialog/VvDialog.vue +47 -50
  147. package/src/components/VvDialog/index.ts +10 -0
  148. package/src/components/VvDropdown/VvDropdown.vue +61 -40
  149. package/src/components/VvDropdown/{VvDropdown.ts → index.ts} +8 -4
  150. package/src/components/VvIcon/VvIcon.vue +31 -25
  151. package/src/components/VvIcon/{VvIcon.ts → index.ts} +9 -0
  152. package/src/components/VvInputText/VvInputClearAction.ts +53 -0
  153. package/src/components/VvInputText/VvInputPasswordAction.ts +70 -0
  154. package/src/components/VvInputText/VvInputStepAction.ts +49 -0
  155. package/src/components/VvInputText/VvInputText.vue +168 -170
  156. package/src/components/VvInputText/VvInputTextActions.ts +54 -108
  157. package/src/components/VvInputText/index.ts +135 -0
  158. package/src/components/VvNativeSelect/VvNativeSelect.vue +130 -68
  159. package/src/components/VvNativeSelect/{VvNativeSelect.ts → index.ts} +26 -7
  160. package/src/components/VvProgress/VvProgress.vue +25 -26
  161. package/src/components/VvProgress/{VvProgress.ts → index.ts} +4 -7
  162. package/src/components/VvRadio/VvRadio.vue +81 -108
  163. package/src/components/VvRadio/index.ts +78 -0
  164. package/src/components/VvRadioGroup/VvRadioGroup.vue +45 -45
  165. package/src/components/VvRadioGroup/{VvRadioGroup.ts → index.ts} +1 -1
  166. package/src/components/VvSelect/VvSelect.vue +90 -69
  167. package/src/components/VvSelect/{VvSelect.ts → index.ts} +12 -5
  168. package/src/components/VvTextarea/VvTextarea.vue +121 -128
  169. package/src/components/VvTextarea/{VvTextarea.ts → index.ts} +31 -11
  170. package/src/components/common/HintSlot.ts +157 -136
  171. package/src/components/index.ts +13 -6
  172. package/src/composables/debouncedInput/useDebouncedInput.ts +21 -15
  173. package/src/composables/focus/useComponentFocus.ts +6 -8
  174. package/src/composables/group/types/IAccordionGroupState.ts +1 -3
  175. package/src/composables/group/types/IGroupState.ts +2 -2
  176. package/src/composables/group/useInjectedGroupState.ts +20 -30
  177. package/src/composables/group/useProvideGroupState.ts +1 -2
  178. package/src/composables/icons/useComponentIcons.ts +2 -3
  179. package/src/composables/options/useOptions.ts +3 -0
  180. package/src/composables/textLimit/useTextLimit.ts +1 -4
  181. package/src/composables/useModifiers.ts +13 -15
  182. package/src/constants.ts +5 -7
  183. package/src/directives/{.README → .gitkeep} +0 -0
  184. package/src/icons.ts +7 -0
  185. package/src/index.ts +0 -1
  186. package/src/props/index.ts +7 -1
  187. package/src/resolvers/unplugin.ts +103 -0
  188. package/src/shims.d.ts +11 -0
  189. package/src/stories/Accordion/Accordion.stories.mdx +10 -9
  190. package/src/stories/Accordion/Accordion.test.ts +37 -0
  191. package/src/stories/Accordion/AccordionSlots.stories.mdx +40 -25
  192. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +10 -16
  193. package/src/stories/AccordionGroup/{accordionGroupTest.js → AccordionGroup.test.js} +15 -17
  194. package/src/stories/AccordionGroup/AccordionGroupCollapse.stories.mdx +38 -0
  195. package/src/stories/AccordionGroup/{AccordionItems.stories.mdx → AccordionGroupItems.stories.mdx} +7 -13
  196. package/src/stories/Badge/Badge.stories.mdx +8 -8
  197. package/src/stories/Badge/Badge.test.ts +16 -0
  198. package/src/stories/Badge/BadgeColor.stories.mdx +6 -7
  199. package/src/stories/Badge/BadgeDot.stories.mdx +4 -3
  200. package/src/stories/Badge/BadgeModifiers.stories.mdx +7 -6
  201. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +15 -7
  202. package/src/stories/Breadcrumb/Breadcrumb.test.ts +49 -0
  203. package/src/stories/Breadcrumb/BreadcrumbMultiline.stories.mdx +15 -7
  204. package/src/stories/Button/Button.stories.mdx +16 -17
  205. package/src/stories/Button/Button.test.ts +8 -12
  206. package/src/stories/Button/ButtonActive.stories.mdx +2 -1
  207. package/src/stories/Button/ButtonBadge.stories.mdx +2 -2
  208. package/src/stories/Button/ButtonDisabled.stories.mdx +1 -1
  209. package/src/stories/Button/ButtonIcon.stories.mdx +6 -3
  210. package/src/stories/Button/ButtonIconPosition.stories.mdx +1 -1
  211. package/src/stories/Button/ButtonLink.stories.mdx +1 -19
  212. package/src/stories/Button/ButtonLoading.stories.mdx +4 -4
  213. package/src/stories/Button/ButtonModifiers.stories.mdx +1 -1
  214. package/src/stories/Button/ButtonPressed.stories.mdx +31 -0
  215. package/src/stories/Button/ButtonSlots.stories.mdx +1 -1
  216. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +5 -6
  217. package/src/stories/ButtonGroup/{ButtonGroupTest.js → ButtonGroup.test.js} +6 -28
  218. package/src/stories/ButtonGroup/ButtonGroupAction.stories.mdx +5 -6
  219. package/src/stories/ButtonGroup/ButtonGroupActionQuiet.stories.mdx +3 -4
  220. package/src/stories/ButtonGroup/ButtonGroupBlock.stories.mdx +3 -4
  221. package/src/stories/ButtonGroup/ButtonGroupCompact.stories.mdx +3 -4
  222. package/src/stories/ButtonGroup/ButtonGroupRounded.stories.mdx +3 -4
  223. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.mdx +11 -12
  224. package/src/stories/ButtonGroup/ButtonGroupVertical.stories.mdx +3 -4
  225. package/src/stories/Card/Card.stories.mdx +7 -5
  226. package/src/stories/Card/Card.test.ts +26 -0
  227. package/src/stories/Card/CardSlots.stories.mdx +5 -5
  228. package/src/stories/Card/CardVariant.stories.mdx +5 -4
  229. package/src/stories/Checkbox/Checkbox.stories.mdx +51 -0
  230. package/src/stories/Checkbox/Checkbox.test.js +115 -0
  231. package/src/stories/Checkbox/CheckboxBinary.stories.mdx +76 -0
  232. package/src/stories/{Check/CheckDisabled.stories.mdx → Checkbox/CheckboxDisabled.stories.mdx} +7 -7
  233. package/src/stories/Checkbox/CheckboxError.stories.mdx +43 -0
  234. package/src/stories/Checkbox/CheckboxHintLabel.stories.mdx +35 -0
  235. package/src/stories/{Check/CheckReadonly.stories.mdx → Checkbox/CheckboxReadonly.stories.mdx} +6 -8
  236. package/src/stories/Checkbox/CheckboxSlots.stories.mdx +69 -0
  237. package/src/stories/{Check/CheckSwitch.stories.mdx → Checkbox/CheckboxSwitch.stories.mdx} +8 -8
  238. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +69 -0
  239. package/src/stories/CheckboxGroup/CheckboxGroupDisabled.stories.mdx +26 -0
  240. package/src/stories/CheckboxGroup/CheckboxGroupError.stories.mdx +28 -0
  241. package/src/stories/CheckboxGroup/CheckboxGroupHintLabel.stories.mdx +27 -0
  242. package/src/stories/CheckboxGroup/CheckboxGroupLabel.stories.mdx +26 -0
  243. package/src/stories/{CheckGroup/CheckGroupOptionLabel.stories.mdx → CheckboxGroup/CheckboxGroupOptionLabel.stories.mdx} +14 -11
  244. package/src/stories/{CheckGroup/CheckGroupOptionValue.stories.mdx → CheckboxGroup/CheckboxGroupOptionValue.stories.mdx} +13 -10
  245. package/src/stories/{CheckGroup/CheckGroupOptions.stories.mdx → CheckboxGroup/CheckboxGroupOptions.stories.mdx} +8 -8
  246. package/src/stories/CheckboxGroup/CheckboxGroupReadonly.stories.mdx +26 -0
  247. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +152 -0
  248. package/src/stories/CheckboxGroup/CheckboxGroupValid.stories.mdx +28 -0
  249. package/src/stories/CheckboxGroup/CheckboxGroupVertical.stories.mdx +26 -0
  250. package/src/stories/Dialog/Dialog.stories.mdx +5 -5
  251. package/src/stories/Dialog/Dialog.test.ts +26 -0
  252. package/src/stories/Dialog/DialogAutoClose.stories.mdx +1 -1
  253. package/src/stories/Dialog/DialogSize.stories.mdx +1 -1
  254. package/src/stories/Dropdown/Dropdown.stories.mdx +11 -7
  255. package/src/stories/Dropdown/Dropdown.test.ts +80 -0
  256. package/src/stories/Dropdown/DropdownDisabled.stories.mdx +9 -2
  257. package/src/stories/Dropdown/DropdownLabelNoResults.stories.mdx +2 -2
  258. package/src/stories/Dropdown/DropdownMaxValues.stories.mdx +4 -2
  259. package/src/stories/Dropdown/DropdownMultiple.stories.mdx +4 -2
  260. package/src/stories/Dropdown/DropdownOptions.stories.mdx +4 -4
  261. package/src/stories/Dropdown/DropdownUseObject.stories.mdx +4 -2
  262. package/src/stories/Icon/Icon.stories.mdx +8 -8
  263. package/src/stories/Icon/{IconTest.js → Icon.test.js} +2 -5
  264. package/src/stories/Icon/IconList.vue +5 -6
  265. package/src/stories/Icon/IconPrefix.stories.mdx +2 -2
  266. package/src/stories/Icon/IconRemote.stories.mdx +2 -2
  267. package/src/stories/Icon/IconsList.stories.mdx +2 -18
  268. package/src/stories/InputText/InputText.stories.mdx +25 -19
  269. package/src/stories/InputText/InputText.test.ts +156 -0
  270. package/src/stories/InputText/InputTextAutocomplete.stories.mdx +9 -2
  271. package/src/stories/InputText/InputTextAutofocus.stories.mdx +6 -3
  272. package/src/stories/InputText/InputTextDisabled.stories.mdx +10 -2
  273. package/src/stories/InputText/InputTextError.stories.mdx +10 -2
  274. package/src/stories/InputText/InputTextFloating.stories.mdx +10 -3
  275. package/src/stories/InputText/InputTextHintLabel.stories.mdx +10 -2
  276. package/src/stories/InputText/InputTextIcon.stories.mdx +6 -2
  277. package/src/stories/InputText/InputTextIconPosition.stories.mdx +10 -3
  278. package/src/stories/InputText/InputTextLabel.stories.mdx +8 -2
  279. package/src/stories/InputText/InputTextLoading.stories.mdx +10 -2
  280. package/src/stories/InputText/InputTextMax.stories.mdx +10 -3
  281. package/src/stories/InputText/InputTextMaxLength.stories.mdx +22 -5
  282. package/src/stories/InputText/InputTextMin.stories.mdx +10 -3
  283. package/src/stories/InputText/InputTextMinLength.stories.mdx +9 -2
  284. package/src/stories/InputText/InputTextPlaceholder.stories.mdx +8 -2
  285. package/src/stories/InputText/InputTextReadonly.stories.mdx +6 -2
  286. package/src/stories/InputText/InputTextSlots.stories.mdx +4 -5
  287. package/src/stories/InputText/InputTextStep.stories.mdx +9 -3
  288. package/src/stories/InputText/InputTextType.stories.mdx +110 -13
  289. package/src/stories/InputText/InputTextValid.stories.mdx +10 -2
  290. package/src/stories/NativeSelect/NativeSelect.stories.mdx +15 -11
  291. package/src/stories/NativeSelect/NativeSelect.test.js +151 -0
  292. package/src/stories/NativeSelect/NativeSelectDisabled.stories.mdx +6 -7
  293. package/src/stories/NativeSelect/NativeSelectError.stories.mdx +7 -3
  294. package/src/stories/NativeSelect/NativeSelectHintLabel.stories.mdx +7 -3
  295. package/src/stories/NativeSelect/NativeSelectIconLeftRight.stories.mdx +14 -12
  296. package/src/stories/NativeSelect/NativeSelectLoading.stories.mdx +7 -3
  297. package/src/stories/NativeSelect/NativeSelectOptions.stories.mdx +44 -38
  298. package/src/stories/NativeSelect/NativeSelectReadonly.stories.mdx +19 -11
  299. package/src/stories/NativeSelect/NativeSelectUseObject.stories.mdx +26 -30
  300. package/src/stories/NativeSelect/NativeSelectValid.stories.mdx +7 -3
  301. package/src/stories/NativeSelect/NativeSelectValueKey.stories.mdx +30 -30
  302. package/src/stories/Progress/Progress.stories.mdx +8 -11
  303. package/src/stories/Progress/{ProgressTest.js → Progress.test.js} +4 -10
  304. package/src/stories/Progress/ProgressDeterminate.stories.mdx +3 -6
  305. package/src/stories/Radio/Radio.stories.mdx +11 -17
  306. package/src/stories/Radio/Radio.test.ts +52 -0
  307. package/src/stories/Radio/RadioDisabled.stories.mdx +4 -7
  308. package/src/stories/Radio/RadioError.stories.mdx +8 -28
  309. package/src/stories/Radio/RadioHintLabel.stories.mdx +6 -7
  310. package/src/stories/Radio/RadioSlots.stories.mdx +21 -7
  311. package/src/stories/RadioGroup/RadioGroup.stories.mdx +20 -27
  312. package/src/stories/RadioGroup/RadioGroup.test.ts +139 -0
  313. package/src/stories/RadioGroup/RadioGroupDisabled.stories.mdx +6 -8
  314. package/src/stories/RadioGroup/RadioGroupError.stories.mdx +9 -11
  315. package/src/stories/RadioGroup/RadioGroupHintLabel.stories.mdx +8 -10
  316. package/src/stories/RadioGroup/RadioGroupLabel.stories.mdx +6 -8
  317. package/src/stories/RadioGroup/RadioGroupOptionLabel.stories.mdx +11 -13
  318. package/src/stories/RadioGroup/RadioGroupOptionValue.stories.mdx +9 -11
  319. package/src/stories/RadioGroup/RadioGroupOptions.stories.mdx +7 -9
  320. package/src/stories/RadioGroup/RadioGroupReadonly.stories.mdx +6 -8
  321. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +39 -62
  322. package/src/stories/RadioGroup/RadioGroupValid.stories.mdx +9 -11
  323. package/src/stories/RadioGroup/RadioGroupVertical.stories.mdx +6 -8
  324. package/src/stories/Select/Select.stories.mdx +32 -29
  325. package/src/stories/Select/Select.test.ts +104 -0
  326. package/src/stories/Select/SelectDisabled.stories.mdx +3 -3
  327. package/src/stories/Select/SelectMaxValues.stories.mdx +3 -3
  328. package/src/stories/Select/SelectMultiple.stories.mdx +5 -6
  329. package/src/stories/Select/SelectNative.stories.mdx +6 -8
  330. package/src/stories/Select/SelectOptions.stories.mdx +4 -4
  331. package/src/stories/Select/SelectSearchable.stories.mdx +13 -12
  332. package/src/stories/Select/SelectSeparator.stories.mdx +3 -3
  333. package/src/stories/Select/SelectUseObject.stories.mdx +3 -3
  334. package/src/stories/Textarea/Textarea.stories.mdx +6 -10
  335. package/src/stories/Textarea/Textarea.test.ts +204 -0
  336. package/src/stories/Textarea/TextareaAutoclear.stories.mdx +3 -2
  337. package/src/stories/Textarea/TextareaAutocomplete.stories.mdx +3 -2
  338. package/src/stories/Textarea/TextareaAutofocus.stories.mdx +3 -2
  339. package/src/stories/Textarea/TextareaDebounce.stories.mdx +7 -6
  340. package/src/stories/Textarea/TextareaDisabled.stories.mdx +9 -3
  341. package/src/stories/Textarea/TextareaError.stories.mdx +7 -2
  342. package/src/stories/Textarea/TextareaErrorLabel.stories.mdx +12 -2
  343. package/src/stories/Textarea/TextareaFloating.stories.mdx +7 -2
  344. package/src/stories/Textarea/TextareaHintLabel.stories.mdx +7 -2
  345. package/src/stories/Textarea/TextareaIcon.stories.mdx +3 -2
  346. package/src/stories/Textarea/TextareaIconPosition.stories.mdx +4 -2
  347. package/src/stories/Textarea/TextareaId.stories.mdx +3 -2
  348. package/src/stories/Textarea/TextareaLabel.stories.mdx +3 -2
  349. package/src/stories/Textarea/TextareaLimit.stories.mdx +5 -2
  350. package/src/stories/Textarea/TextareaLoading.stories.mdx +7 -2
  351. package/src/stories/Textarea/TextareaLoadingLabel.stories.mdx +9 -3
  352. package/src/stories/Textarea/TextareaMaxLength.stories.mdx +5 -4
  353. package/src/stories/Textarea/TextareaMinLength.stories.mdx +3 -2
  354. package/src/stories/Textarea/TextareaModifiers.stories.mdx +10 -2
  355. package/src/stories/Textarea/TextareaName.stories.mdx +3 -2
  356. package/src/stories/Textarea/TextareaPlaceholder.stories.mdx +4 -3
  357. package/src/stories/Textarea/TextareaReadonly.stories.mdx +8 -3
  358. package/src/stories/Textarea/TextareaRequired.stories.mdx +3 -2
  359. package/src/stories/Textarea/TextareaResizable.stories.mdx +7 -2
  360. package/src/stories/Textarea/TextareaRowsCols.stories.mdx +4 -2
  361. package/src/stories/Textarea/TextareaSlots.stories.mdx +7 -8
  362. package/src/stories/Textarea/TextareaValid.stories.mdx +7 -1
  363. package/src/stories/Textarea/TextareaValidLabel.stories.mdx +14 -4
  364. package/src/stories/utils.ts +1 -1
  365. package/src/stories/volver-ui-vue.stories.mdx +1 -1
  366. package/src/test/expect.ts +3 -1
  367. package/src/test/sleep.ts +2 -0
  368. package/src/test/types.d.ts +14 -1
  369. package/src/types/{.README → .gitkeep} +0 -0
  370. package/src/utils/ObjectUtilities.ts +247 -241
  371. package/dist/components/VvAccordion/VvAccordion.d.ts +0 -32
  372. package/dist/components/VvAccordion/useAccordionProps.d.ts +0 -16
  373. package/dist/components/VvButton/useButtonGroupProps.d.ts +0 -18
  374. package/dist/components/VvCheck/VvCheck.d.ts +0 -47
  375. package/dist/components/VvCheck/VvCheck.es.js +0 -318
  376. package/dist/components/VvCheck/VvCheck.umd.js +0 -1
  377. package/dist/components/VvCheck/VvCheck.vue.d.ts +0 -165
  378. package/dist/components/VvCheck/useCheckProps.d.ts +0 -16
  379. package/dist/components/VvCheckGroup/VvCheckGroup.es.js +0 -451
  380. package/dist/components/VvCheckGroup/VvCheckGroup.umd.js +0 -2
  381. package/dist/components/VvCheckGroup/VvCheckGroup.vue.d.ts +0 -272
  382. package/dist/components/VvDialog/constants.d.ts +0 -5
  383. package/dist/components/VvInputText/VvInputText.d.ts +0 -73
  384. package/dist/components/VvInputText/constants.d.ts +0 -55
  385. package/dist/components/VvRadio/VvRadio.d.ts +0 -22
  386. package/dist/components/VvRadio/useRadioProps.d.ts +0 -15
  387. package/dist/components/VvTextarea/constants.d.ts +0 -19
  388. package/dist/stories/RadioGroup/RadioOption.test.d.ts +0 -4
  389. package/dist/stories/RadioGroup/RadioProperty.test.d.ts +0 -12
  390. package/dist/stories/RadioGroup/RadioSlots.test.d.ts +0 -6
  391. package/src/assets/icons/index.js +0 -7
  392. package/src/components/VvAccordion/VvAccordion.ts +0 -34
  393. package/src/components/VvAccordion/useAccordionProps.ts +0 -45
  394. package/src/components/VvButton/VvButton.ts +0 -87
  395. package/src/components/VvButton/useButtonGroupProps.ts +0 -43
  396. package/src/components/VvCheck/VvCheck.ts +0 -48
  397. package/src/components/VvCheck/VvCheck.vue +0 -147
  398. package/src/components/VvCheck/useCheckProps.ts +0 -41
  399. package/src/components/VvDialog/VvDialog.ts +0 -17
  400. package/src/components/VvDialog/constants.ts +0 -5
  401. package/src/components/VvInputText/VvInputText.ts +0 -66
  402. package/src/components/VvInputText/constants.ts +0 -34
  403. package/src/components/VvRadio/VvRadio.ts +0 -25
  404. package/src/components/VvRadio/useRadioProps.ts +0 -40
  405. package/src/components/VvTextarea/constants.ts +0 -14
  406. package/src/stories/Accordion/AccordionBordered.stories.mdx +0 -26
  407. package/src/stories/Accordion/AccordionIconRight.stories.mdx +0 -32
  408. package/src/stories/Accordion/accordionTest.js +0 -36
  409. package/src/stories/AccordionGroup/Accordion.stories.mdx +0 -42
  410. package/src/stories/Badge/BadgeTest.js +0 -21
  411. package/src/stories/Button/ButtonSelected.stories.mdx +0 -30
  412. package/src/stories/Check/Check.stories.mdx +0 -62
  413. package/src/stories/Check/CheckBinary.stories.mdx +0 -75
  414. package/src/stories/Check/CheckError.stories.mdx +0 -64
  415. package/src/stories/Check/CheckErrorTests.js +0 -74
  416. package/src/stories/Check/CheckHintLabel.stories.mdx +0 -30
  417. package/src/stories/Check/CheckPropertyTest.js +0 -102
  418. package/src/stories/Check/CheckSlots.stories.mdx +0 -51
  419. package/src/stories/CheckGroup/CheckGroup.stories.mdx +0 -69
  420. package/src/stories/CheckGroup/CheckGroupDisabled.stories.mdx +0 -26
  421. package/src/stories/CheckGroup/CheckGroupError.stories.mdx +0 -28
  422. package/src/stories/CheckGroup/CheckGroupHintLabel.stories.mdx +0 -27
  423. package/src/stories/CheckGroup/CheckGroupLabel.stories.mdx +0 -26
  424. package/src/stories/CheckGroup/CheckGroupReadonly.stories.mdx +0 -26
  425. package/src/stories/CheckGroup/CheckGroupSlots.stories.mdx +0 -152
  426. package/src/stories/CheckGroup/CheckGroupValid.stories.mdx +0 -28
  427. package/src/stories/CheckGroup/CheckGroupVertical.stories.mdx +0 -26
  428. package/src/stories/RadioGroup/RadioOption.test.ts +0 -45
  429. package/src/stories/RadioGroup/RadioProperty.test.ts +0 -87
  430. package/src/stories/RadioGroup/RadioSlots.test.ts +0 -29
  431. 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
- />