@volverjs/ui-vue 0.0.1-beta.11 → 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 (435) 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 +57 -13
  13. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  14. package/dist/components/VvBadge/VvBadge.vue.d.ts +13 -54
  15. package/dist/components/VvBadge/{VvBadge.d.ts → index.d.ts} +1 -1
  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 +25 -105
  19. package/dist/components/VvBreadcrumb/{VvBreadcrumb.d.ts → index.d.ts} +2 -2
  20. package/dist/components/VvButton/VvButton.es.js +304 -333
  21. package/dist/components/VvButton/VvButton.umd.js +1 -1
  22. package/dist/components/VvButton/VvButton.vue.d.ts +92 -199
  23. package/dist/components/VvButton/{VvButton.d.ts → index.d.ts} +44 -38
  24. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +58 -181
  25. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  26. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +26 -181
  27. package/dist/components/VvButtonGroup/{VvButtonGroup.d.ts → index.d.ts} +2 -26
  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 +35 -137
  47. package/dist/components/VvDropdown/{VvDropdown.d.ts → index.d.ts} +8 -4
  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 +188 -276
  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 +18 -104
  67. package/dist/components/VvProgress/{VvProgress.d.ts → index.d.ts} +2 -8
  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 +602 -368
  77. package/dist/components/VvSelect/VvSelect.umd.js +1 -2
  78. package/dist/components/VvSelect/VvSelect.vue.d.ts +78 -236
  79. package/dist/components/VvSelect/{VvSelect.d.ts → index.d.ts} +17 -6
  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 +104 -300
  83. package/dist/components/VvTextarea/{VvTextarea.d.ts → index.d.ts} +37 -14
  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 +2091 -947
  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/IButtonGroupState.d.ts +4 -0
  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 +2106 -957
  102. package/dist/index.umd.js +1 -2
  103. package/dist/props/index.d.ts +11 -4
  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 +102 -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 +16 -7
  134. package/src/components/VvBadge/index.ts +6 -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 +125 -124
  138. package/src/components/VvButton/index.ts +147 -0
  139. package/src/components/VvButtonGroup/VvButtonGroup.vue +26 -33
  140. package/src/components/VvButtonGroup/{VvButtonGroup.ts → index.ts} +4 -17
  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 +91 -64
  168. package/src/components/VvSelect/{VvSelect.ts → index.ts} +16 -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/IButtonGroupState.ts +4 -0
  177. package/src/composables/group/types/IGroupState.ts +2 -2
  178. package/src/composables/group/useInjectedGroupState.ts +20 -30
  179. package/src/composables/group/useProvideGroupState.ts +1 -2
  180. package/src/composables/icons/useComponentIcons.ts +2 -3
  181. package/src/composables/options/useOptions.ts +3 -0
  182. package/src/composables/textLimit/useTextLimit.ts +1 -4
  183. package/src/composables/useModifiers.ts +13 -15
  184. package/src/constants.ts +5 -7
  185. package/src/directives/{.README → .gitkeep} +0 -0
  186. package/src/icons.ts +7 -0
  187. package/src/index.ts +0 -1
  188. package/src/props/index.ts +10 -2
  189. package/src/resolvers/unplugin.ts +103 -0
  190. package/src/shims.d.ts +11 -0
  191. package/src/stories/Accordion/Accordion.stories.mdx +10 -9
  192. package/src/stories/Accordion/Accordion.test.ts +37 -0
  193. package/src/stories/Accordion/AccordionSlots.stories.mdx +40 -25
  194. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +10 -16
  195. package/src/stories/AccordionGroup/{accordionGroupTest.js → AccordionGroup.test.js} +15 -17
  196. package/src/stories/AccordionGroup/AccordionGroupCollapse.stories.mdx +38 -0
  197. package/src/stories/AccordionGroup/{AccordionItems.stories.mdx → AccordionGroupItems.stories.mdx} +7 -13
  198. package/src/stories/Badge/Badge.stories.mdx +8 -8
  199. package/src/stories/Badge/Badge.test.ts +16 -0
  200. package/src/stories/Badge/BadgeColor.stories.mdx +10 -11
  201. package/src/stories/Badge/BadgeDot.stories.mdx +4 -3
  202. package/src/stories/Badge/BadgeModifiers.stories.mdx +66 -0
  203. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +15 -7
  204. package/src/stories/Breadcrumb/Breadcrumb.test.ts +49 -0
  205. package/src/stories/Breadcrumb/BreadcrumbMultiline.stories.mdx +15 -7
  206. package/src/stories/Button/Button.stories.mdx +16 -17
  207. package/src/stories/Button/Button.test.ts +8 -12
  208. package/src/stories/Button/ButtonActive.stories.mdx +28 -0
  209. package/src/stories/Button/ButtonBadge.stories.mdx +2 -2
  210. package/src/stories/Button/ButtonDisabled.stories.mdx +28 -0
  211. package/src/stories/Button/ButtonIcon.stories.mdx +6 -3
  212. package/src/stories/Button/ButtonIconPosition.stories.mdx +1 -2
  213. package/src/stories/Button/ButtonLink.stories.mdx +1 -19
  214. package/src/stories/Button/ButtonLoading.stories.mdx +4 -4
  215. package/src/stories/Button/ButtonModifiers.stories.mdx +104 -47
  216. package/src/stories/Button/ButtonPressed.stories.mdx +31 -0
  217. package/src/stories/Button/ButtonSlots.stories.mdx +1 -1
  218. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +5 -6
  219. package/src/stories/ButtonGroup/{ButtonGroupTest.js → ButtonGroup.test.js} +6 -28
  220. package/src/stories/ButtonGroup/ButtonGroupAction.stories.mdx +6 -7
  221. package/src/stories/ButtonGroup/ButtonGroupActionQuiet.stories.mdx +5 -6
  222. package/src/stories/ButtonGroup/ButtonGroupBlock.stories.mdx +4 -5
  223. package/src/stories/ButtonGroup/ButtonGroupCompact.stories.mdx +3 -4
  224. package/src/stories/ButtonGroup/ButtonGroupRounded.stories.mdx +4 -5
  225. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.mdx +11 -12
  226. package/src/stories/ButtonGroup/ButtonGroupVertical.stories.mdx +3 -4
  227. package/src/stories/Card/Card.stories.mdx +7 -5
  228. package/src/stories/Card/Card.test.ts +26 -0
  229. package/src/stories/Card/CardSlots.stories.mdx +5 -5
  230. package/src/stories/Card/CardVariant.stories.mdx +5 -4
  231. package/src/stories/Checkbox/Checkbox.stories.mdx +51 -0
  232. package/src/stories/Checkbox/Checkbox.test.js +115 -0
  233. package/src/stories/Checkbox/CheckboxBinary.stories.mdx +76 -0
  234. package/src/stories/{Check/CheckDisabled.stories.mdx → Checkbox/CheckboxDisabled.stories.mdx} +7 -7
  235. package/src/stories/Checkbox/CheckboxError.stories.mdx +43 -0
  236. package/src/stories/Checkbox/CheckboxHintLabel.stories.mdx +35 -0
  237. package/src/stories/{Check/CheckReadonly.stories.mdx → Checkbox/CheckboxReadonly.stories.mdx} +6 -8
  238. package/src/stories/Checkbox/CheckboxSlots.stories.mdx +69 -0
  239. package/src/stories/{Check/CheckSwitch.stories.mdx → Checkbox/CheckboxSwitch.stories.mdx} +8 -8
  240. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +69 -0
  241. package/src/stories/CheckboxGroup/CheckboxGroupDisabled.stories.mdx +26 -0
  242. package/src/stories/CheckboxGroup/CheckboxGroupError.stories.mdx +28 -0
  243. package/src/stories/CheckboxGroup/CheckboxGroupHintLabel.stories.mdx +27 -0
  244. package/src/stories/CheckboxGroup/CheckboxGroupLabel.stories.mdx +26 -0
  245. package/src/stories/{CheckGroup/CheckGroupOptionLabel.stories.mdx → CheckboxGroup/CheckboxGroupOptionLabel.stories.mdx} +14 -11
  246. package/src/stories/{CheckGroup/CheckGroupOptionValue.stories.mdx → CheckboxGroup/CheckboxGroupOptionValue.stories.mdx} +13 -10
  247. package/src/stories/{CheckGroup/CheckGroupOptions.stories.mdx → CheckboxGroup/CheckboxGroupOptions.stories.mdx} +8 -8
  248. package/src/stories/CheckboxGroup/CheckboxGroupReadonly.stories.mdx +26 -0
  249. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +152 -0
  250. package/src/stories/CheckboxGroup/CheckboxGroupValid.stories.mdx +28 -0
  251. package/src/stories/CheckboxGroup/CheckboxGroupVertical.stories.mdx +26 -0
  252. package/src/stories/Dialog/Dialog.stories.mdx +5 -5
  253. package/src/stories/Dialog/Dialog.test.ts +26 -0
  254. package/src/stories/Dialog/DialogAutoClose.stories.mdx +1 -1
  255. package/src/stories/Dialog/DialogSize.stories.mdx +1 -1
  256. package/src/stories/Dropdown/Dropdown.stories.mdx +11 -7
  257. package/src/stories/Dropdown/Dropdown.test.ts +80 -0
  258. package/src/stories/Dropdown/DropdownDisabled.stories.mdx +9 -2
  259. package/src/stories/Dropdown/DropdownLabelNoResults.stories.mdx +2 -2
  260. package/src/stories/Dropdown/DropdownMaxValues.stories.mdx +4 -2
  261. package/src/stories/Dropdown/DropdownMultiple.stories.mdx +4 -2
  262. package/src/stories/Dropdown/DropdownOptions.stories.mdx +4 -4
  263. package/src/stories/Dropdown/DropdownUseObject.stories.mdx +4 -2
  264. package/src/stories/Icon/Icon.stories.mdx +8 -8
  265. package/src/stories/Icon/{IconTest.js → Icon.test.js} +2 -5
  266. package/src/stories/Icon/IconList.vue +5 -6
  267. package/src/stories/Icon/IconPrefix.stories.mdx +2 -2
  268. package/src/stories/Icon/IconRemote.stories.mdx +2 -2
  269. package/src/stories/Icon/IconsList.stories.mdx +2 -18
  270. package/src/stories/InputText/InputText.stories.mdx +25 -19
  271. package/src/stories/InputText/InputText.test.ts +156 -0
  272. package/src/stories/InputText/InputTextAutocomplete.stories.mdx +9 -2
  273. package/src/stories/InputText/InputTextAutofocus.stories.mdx +6 -3
  274. package/src/stories/InputText/InputTextDisabled.stories.mdx +10 -2
  275. package/src/stories/InputText/InputTextError.stories.mdx +10 -2
  276. package/src/stories/InputText/InputTextFloating.stories.mdx +10 -3
  277. package/src/stories/InputText/InputTextHintLabel.stories.mdx +10 -2
  278. package/src/stories/InputText/InputTextIcon.stories.mdx +6 -2
  279. package/src/stories/InputText/InputTextIconPosition.stories.mdx +10 -3
  280. package/src/stories/InputText/InputTextLabel.stories.mdx +8 -2
  281. package/src/stories/InputText/InputTextLoading.stories.mdx +10 -2
  282. package/src/stories/InputText/InputTextMax.stories.mdx +10 -3
  283. package/src/stories/InputText/InputTextMaxLength.stories.mdx +22 -5
  284. package/src/stories/InputText/InputTextMin.stories.mdx +10 -3
  285. package/src/stories/InputText/InputTextMinLength.stories.mdx +9 -2
  286. package/src/stories/InputText/InputTextPlaceholder.stories.mdx +8 -2
  287. package/src/stories/InputText/InputTextReadonly.stories.mdx +6 -2
  288. package/src/stories/InputText/InputTextSlots.stories.mdx +4 -5
  289. package/src/stories/InputText/InputTextStep.stories.mdx +9 -3
  290. package/src/stories/InputText/InputTextType.stories.mdx +110 -13
  291. package/src/stories/InputText/InputTextValid.stories.mdx +10 -2
  292. package/src/stories/NativeSelect/NativeSelect.stories.mdx +15 -11
  293. package/src/stories/NativeSelect/NativeSelect.test.js +151 -0
  294. package/src/stories/NativeSelect/NativeSelectDisabled.stories.mdx +6 -7
  295. package/src/stories/NativeSelect/NativeSelectError.stories.mdx +7 -3
  296. package/src/stories/NativeSelect/NativeSelectHintLabel.stories.mdx +7 -3
  297. package/src/stories/NativeSelect/NativeSelectIconLeftRight.stories.mdx +14 -12
  298. package/src/stories/NativeSelect/NativeSelectLoading.stories.mdx +7 -3
  299. package/src/stories/NativeSelect/NativeSelectOptions.stories.mdx +44 -38
  300. package/src/stories/NativeSelect/NativeSelectReadonly.stories.mdx +19 -11
  301. package/src/stories/NativeSelect/NativeSelectUseObject.stories.mdx +26 -30
  302. package/src/stories/NativeSelect/NativeSelectValid.stories.mdx +7 -3
  303. package/src/stories/NativeSelect/NativeSelectValueKey.stories.mdx +30 -30
  304. package/src/stories/Progress/Progress.stories.mdx +8 -11
  305. package/src/stories/Progress/{ProgressTest.js → Progress.test.js} +4 -10
  306. package/src/stories/Progress/ProgressDeterminate.stories.mdx +3 -6
  307. package/src/stories/Radio/Radio.stories.mdx +11 -17
  308. package/src/stories/Radio/Radio.test.ts +52 -0
  309. package/src/stories/Radio/RadioDisabled.stories.mdx +4 -7
  310. package/src/stories/Radio/RadioError.stories.mdx +8 -28
  311. package/src/stories/Radio/RadioHintLabel.stories.mdx +6 -7
  312. package/src/stories/Radio/RadioSlots.stories.mdx +21 -7
  313. package/src/stories/RadioGroup/RadioGroup.stories.mdx +20 -27
  314. package/src/stories/RadioGroup/RadioGroup.test.ts +139 -0
  315. package/src/stories/RadioGroup/RadioGroupDisabled.stories.mdx +6 -8
  316. package/src/stories/RadioGroup/RadioGroupError.stories.mdx +9 -11
  317. package/src/stories/RadioGroup/RadioGroupHintLabel.stories.mdx +13 -15
  318. package/src/stories/RadioGroup/RadioGroupLabel.stories.mdx +12 -9
  319. package/src/stories/RadioGroup/RadioGroupOptionLabel.stories.mdx +16 -30
  320. package/src/stories/RadioGroup/RadioGroupOptionValue.stories.mdx +15 -29
  321. package/src/stories/RadioGroup/RadioGroupOptions.stories.mdx +9 -25
  322. package/src/stories/RadioGroup/RadioGroupReadonly.stories.mdx +6 -8
  323. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +48 -70
  324. package/src/stories/RadioGroup/RadioGroupValid.stories.mdx +9 -11
  325. package/src/stories/RadioGroup/RadioGroupVertical.stories.mdx +6 -8
  326. package/src/stories/Select/Select.stories.mdx +32 -29
  327. package/src/stories/Select/Select.test.ts +104 -0
  328. package/src/stories/Select/SelectDisabled.stories.mdx +3 -3
  329. package/src/stories/Select/SelectMaxValues.stories.mdx +3 -3
  330. package/src/stories/Select/SelectMultiple.stories.mdx +5 -6
  331. package/src/stories/Select/SelectNative.stories.mdx +43 -0
  332. package/src/stories/Select/SelectOptions.stories.mdx +4 -4
  333. package/src/stories/Select/SelectSearchable.stories.mdx +13 -12
  334. package/src/stories/Select/SelectSeparator.stories.mdx +3 -3
  335. package/src/stories/Select/SelectUseObject.stories.mdx +3 -3
  336. package/src/stories/Textarea/Textarea.stories.mdx +6 -10
  337. package/src/stories/Textarea/Textarea.test.ts +204 -0
  338. package/src/stories/Textarea/TextareaAutoclear.stories.mdx +3 -2
  339. package/src/stories/Textarea/TextareaAutocomplete.stories.mdx +3 -2
  340. package/src/stories/Textarea/TextareaAutofocus.stories.mdx +3 -2
  341. package/src/stories/Textarea/TextareaDebounce.stories.mdx +7 -6
  342. package/src/stories/Textarea/TextareaDisabled.stories.mdx +9 -3
  343. package/src/stories/Textarea/TextareaError.stories.mdx +7 -2
  344. package/src/stories/Textarea/TextareaErrorLabel.stories.mdx +12 -2
  345. package/src/stories/Textarea/TextareaFloating.stories.mdx +7 -2
  346. package/src/stories/Textarea/TextareaHintLabel.stories.mdx +7 -2
  347. package/src/stories/Textarea/TextareaIcon.stories.mdx +3 -2
  348. package/src/stories/Textarea/TextareaIconPosition.stories.mdx +4 -2
  349. package/src/stories/Textarea/TextareaId.stories.mdx +3 -2
  350. package/src/stories/Textarea/TextareaLabel.stories.mdx +3 -2
  351. package/src/stories/Textarea/TextareaLimit.stories.mdx +5 -2
  352. package/src/stories/Textarea/TextareaLoading.stories.mdx +7 -2
  353. package/src/stories/Textarea/TextareaLoadingLabel.stories.mdx +9 -3
  354. package/src/stories/Textarea/TextareaMaxLength.stories.mdx +5 -4
  355. package/src/stories/Textarea/TextareaMinLength.stories.mdx +3 -2
  356. package/src/stories/Textarea/TextareaModifiers.stories.mdx +10 -2
  357. package/src/stories/Textarea/TextareaName.stories.mdx +3 -2
  358. package/src/stories/Textarea/TextareaPlaceholder.stories.mdx +4 -3
  359. package/src/stories/Textarea/TextareaReadonly.stories.mdx +8 -3
  360. package/src/stories/Textarea/TextareaRequired.stories.mdx +3 -2
  361. package/src/stories/Textarea/TextareaResizable.stories.mdx +7 -2
  362. package/src/stories/Textarea/TextareaRowsCols.stories.mdx +4 -2
  363. package/src/stories/Textarea/TextareaSlots.stories.mdx +7 -8
  364. package/src/stories/Textarea/TextareaValid.stories.mdx +7 -1
  365. package/src/stories/Textarea/TextareaValidLabel.stories.mdx +14 -4
  366. package/src/stories/utils.ts +1 -1
  367. package/src/stories/volver-ui-vue.stories.mdx +1 -1
  368. package/src/test/expect.ts +3 -1
  369. package/src/test/sleep.ts +2 -0
  370. package/src/test/types.d.ts +14 -1
  371. package/src/types/{.README → .gitkeep} +0 -0
  372. package/src/utils/ObjectUtilities.ts +247 -241
  373. package/dist/components/VvAccordion/VvAccordion.d.ts +0 -32
  374. package/dist/components/VvAccordion/useAccordionProps.d.ts +0 -16
  375. package/dist/components/VvButton/useButtonGroupProps.d.ts +0 -23
  376. package/dist/components/VvCheck/VvCheck.d.ts +0 -47
  377. package/dist/components/VvCheck/VvCheck.es.js +0 -318
  378. package/dist/components/VvCheck/VvCheck.umd.js +0 -1
  379. package/dist/components/VvCheck/VvCheck.vue.d.ts +0 -165
  380. package/dist/components/VvCheck/useCheckProps.d.ts +0 -16
  381. package/dist/components/VvCheckGroup/VvCheckGroup.es.js +0 -451
  382. package/dist/components/VvCheckGroup/VvCheckGroup.umd.js +0 -2
  383. package/dist/components/VvCheckGroup/VvCheckGroup.vue.d.ts +0 -272
  384. package/dist/components/VvDialog/constants.d.ts +0 -5
  385. package/dist/components/VvInputText/VvInputText.d.ts +0 -73
  386. package/dist/components/VvInputText/constants.d.ts +0 -55
  387. package/dist/components/VvRadio/VvRadio.d.ts +0 -22
  388. package/dist/components/VvRadio/useRadioProps.d.ts +0 -15
  389. package/dist/components/VvTextarea/constants.d.ts +0 -19
  390. package/dist/stories/RadioGroup/RadioProperty.test.d.ts +0 -12
  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/VvBadge/VvBadge.ts +0 -4
  395. package/src/components/VvButton/VvButton.ts +0 -117
  396. package/src/components/VvButton/useButtonGroupProps.ts +0 -51
  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/ButtonVariant.stories.mdx +0 -205
  413. package/src/stories/Button/test.js +0 -41
  414. package/src/stories/Check/Check.stories.mdx +0 -62
  415. package/src/stories/Check/CheckBinary.stories.mdx +0 -75
  416. package/src/stories/Check/CheckError.stories.mdx +0 -64
  417. package/src/stories/Check/CheckErrorTests.js +0 -74
  418. package/src/stories/Check/CheckHintLabel.stories.mdx +0 -30
  419. package/src/stories/Check/CheckPropertyTest.js +0 -102
  420. package/src/stories/Check/CheckSlots.stories.mdx +0 -51
  421. package/src/stories/CheckGroup/CheckGroup.stories.mdx +0 -69
  422. package/src/stories/CheckGroup/CheckGroupDisabled.stories.mdx +0 -26
  423. package/src/stories/CheckGroup/CheckGroupError.stories.mdx +0 -28
  424. package/src/stories/CheckGroup/CheckGroupHintLabel.stories.mdx +0 -27
  425. package/src/stories/CheckGroup/CheckGroupLabel.stories.mdx +0 -26
  426. package/src/stories/CheckGroup/CheckGroupReadonly.stories.mdx +0 -26
  427. package/src/stories/CheckGroup/CheckGroupSlots.stories.mdx +0 -152
  428. package/src/stories/CheckGroup/CheckGroupValid.stories.mdx +0 -28
  429. package/src/stories/CheckGroup/CheckGroupVertical.stories.mdx +0 -26
  430. package/src/stories/Radio/RadioTest.js +0 -90
  431. package/src/stories/RadioGroup/RadioOptionsTest.js +0 -78
  432. package/src/stories/RadioGroup/RadioProperty.test.ts +0 -87
  433. package/src/stories/RadioGroup/RadioPropertyTest.js +0 -131
  434. package/src/stories/RadioGroup/RadioSlotsTest.js +0 -20
  435. package/src/stories/stories.scss +0 -35
@@ -1,51 +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 { modifiers, fullBleed, iconPosition, icon, label, block, selected } =
22
- toRefs(props)
23
-
24
- //Group based props
25
- const modelValue = getGroupOrLocalRef('modelValue', props)
26
- const disabled = getGroupOrLocalRef('disabled', props)
27
- const toggle = getGroupOrLocalRef('toggle', props)
28
- const rounded = getGroupOrLocalRef('rounded', props)
29
- const action = getGroupOrLocalRef('action', props)
30
- const actionQuiet = getGroupOrLocalRef('actionQuiet', props)
31
-
32
- return {
33
- //Group based props
34
- modelValue,
35
- disabled,
36
- toggle,
37
- isInGroup,
38
- group,
39
- //Local props
40
- modifiers,
41
- action,
42
- actionQuiet,
43
- selected,
44
- block,
45
- rounded,
46
- fullBleed,
47
- iconPosition,
48
- icon,
49
- label
50
- }
51
- }
@@ -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