@volverjs/ui-vue 0.0.10-beta.4 → 0.0.10-beta.40

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 (478) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +146 -49
  3. package/auto-imports.d.ts +7 -2
  4. package/bin/icons.cjs +1 -1
  5. package/bin/icons.js +27 -20
  6. package/dist/Volver.d.ts +11 -11
  7. package/dist/components/VvAccordion/VvAccordion.es.js +190 -101
  8. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  9. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +30 -8
  10. package/dist/components/VvAccordion/index.d.ts +8 -9
  11. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +450 -170
  12. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  13. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +58 -13
  14. package/dist/components/VvAccordionGroup/index.d.ts +14 -6
  15. package/dist/components/VvAction/VvAction.es.js +84 -33
  16. package/dist/components/VvAction/VvAction.umd.js +1 -1
  17. package/dist/components/VvAction/VvAction.vue.d.ts +57 -22
  18. package/dist/components/VvAction/index.d.ts +25 -9
  19. package/dist/components/VvAlert/VvAlert.es.js +228 -193
  20. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  21. package/dist/components/VvAlert/VvAlert.vue.d.ts +24 -14
  22. package/dist/components/VvAlert/index.d.ts +17 -9
  23. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +549 -485
  24. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  25. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +16 -9
  26. package/dist/components/VvAlertGroup/index.d.ts +7 -15
  27. package/dist/components/VvAvatar/VvAvatar.es.js +65 -22
  28. package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
  29. package/dist/components/VvAvatar/VvAvatar.vue.d.ts +12 -4
  30. package/dist/components/VvAvatar/index.d.ts +4 -1
  31. package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +128 -49
  32. package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
  33. package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +10 -3
  34. package/dist/components/VvAvatarGroup/index.d.ts +4 -1
  35. package/dist/components/VvBadge/VvBadge.es.js +77 -28
  36. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  37. package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -4
  38. package/dist/components/VvBadge/index.d.ts +4 -1
  39. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +276 -60
  40. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  41. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +27 -7
  42. package/dist/components/VvBreadcrumb/index.d.ts +6 -10
  43. package/dist/components/VvButton/VvButton.es.js +307 -262
  44. package/dist/components/VvButton/VvButton.umd.js +1 -1
  45. package/dist/components/VvButton/VvButton.vue.d.ts +94 -40
  46. package/dist/components/VvButton/index.d.ts +51 -29
  47. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +95 -40
  48. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  49. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +31 -11
  50. package/dist/components/VvButtonGroup/index.d.ts +11 -2
  51. package/dist/components/VvCard/VvCard.es.js +86 -36
  52. package/dist/components/VvCard/VvCard.umd.js +1 -1
  53. package/dist/components/VvCard/VvCard.vue.d.ts +12 -4
  54. package/dist/components/VvCard/index.d.ts +4 -1
  55. package/dist/components/VvCheckbox/VvCheckbox.es.js +315 -251
  56. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  57. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +106 -34
  58. package/dist/components/VvCheckbox/index.d.ts +47 -14
  59. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +226 -126
  60. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  61. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +101 -30
  62. package/dist/components/VvCheckboxGroup/index.d.ts +45 -12
  63. package/dist/components/VvCombobox/VvCombobox.es.js +1215 -955
  64. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  65. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +600 -680
  66. package/dist/components/VvCombobox/index.d.ts +454 -24
  67. package/dist/components/VvDialog/VvDialog.es.js +180 -176
  68. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  69. package/dist/components/VvDialog/VvDialog.vue.d.ts +13 -4
  70. package/dist/components/VvDialog/index.d.ts +5 -0
  71. package/dist/components/VvDropdown/VvDropdown.es.js +165 -94
  72. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  73. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +111 -81
  74. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +66 -25
  75. package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +13 -1
  76. package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +12 -4
  77. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +35 -7
  78. package/dist/components/VvDropdown/index.d.ts +52 -10
  79. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +163 -53
  80. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  81. package/dist/components/VvDropdownItem/VvDropdownItem.es.js +335 -8
  82. package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
  83. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +63 -20
  84. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
  85. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +188 -80
  86. package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
  87. package/dist/components/VvIcon/VvIcon.es.js +24 -97
  88. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  89. package/dist/components/VvIcon/VvIcon.vue.d.ts +23 -66
  90. package/dist/components/VvIcon/index.d.ts +33 -48
  91. package/dist/components/VvInputFile/VvInputFile.es.js +1789 -0
  92. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -0
  93. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +391 -0
  94. package/dist/components/VvInputFile/index.d.ts +210 -0
  95. package/dist/components/VvInputText/VvInputClearAction.d.ts +7 -5
  96. package/dist/components/VvInputText/VvInputPasswordAction.d.ts +10 -8
  97. package/dist/components/VvInputText/VvInputStepAction.d.ts +2 -2
  98. package/dist/components/VvInputText/VvInputText.es.js +1489 -563
  99. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  100. package/dist/components/VvInputText/VvInputText.vue.d.ts +207 -57
  101. package/dist/components/VvInputText/index.d.ts +105 -30
  102. package/dist/components/VvNav/VvNav.es.js +160 -75
  103. package/dist/components/VvNav/VvNav.umd.js +1 -1
  104. package/dist/components/VvNav/VvNav.vue.d.ts +32 -9
  105. package/dist/components/VvNav/VvNavItem.vue.d.ts +1 -1
  106. package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
  107. package/dist/components/VvNav/index.d.ts +5 -2
  108. package/dist/components/VvNavItem/VvNavItem.es.js +100 -39
  109. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  110. package/dist/components/VvProgress/VvProgress.es.js +73 -27
  111. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  112. package/dist/components/VvProgress/VvProgress.vue.d.ts +10 -3
  113. package/dist/components/VvProgress/index.d.ts +4 -1
  114. package/dist/components/VvRadio/VvRadio.es.js +313 -250
  115. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  116. package/dist/components/VvRadio/VvRadio.vue.d.ts +103 -31
  117. package/dist/components/VvRadio/index.d.ts +50 -17
  118. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +224 -125
  119. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  120. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +101 -30
  121. package/dist/components/VvRadioGroup/index.d.ts +45 -12
  122. package/dist/components/VvSelect/VvSelect.es.js +301 -267
  123. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  124. package/dist/components/VvSelect/VvSelect.vue.d.ts +229 -203
  125. package/dist/components/VvSelect/index.d.ts +181 -15
  126. package/dist/components/VvTab/VvTab.es.js +222 -97
  127. package/dist/components/VvTab/VvTab.umd.js +1 -1
  128. package/dist/components/VvTab/VvTab.vue.d.ts +31 -7
  129. package/dist/components/VvTab/index.d.ts +4 -1
  130. package/dist/components/VvTextarea/VvTextarea.es.js +258 -248
  131. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  132. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +156 -49
  133. package/dist/components/VvTextarea/index.d.ts +68 -19
  134. package/dist/components/VvTooltip/VvTooltip.es.js +83 -30
  135. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  136. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +13 -6
  137. package/dist/components/VvTooltip/index.d.ts +5 -2
  138. package/dist/components/common/HintSlot.d.ts +4 -5
  139. package/dist/components/index.d.ts +10 -0
  140. package/dist/components/index.es.js +4241 -2261
  141. package/dist/components/index.umd.js +1 -1
  142. package/dist/composables/alert/useAlert.d.ts +101 -6
  143. package/dist/composables/alert/useInjectAlert.d.ts +1 -6
  144. package/dist/composables/dropdown/useInjectDropdown.d.ts +3 -23
  145. package/dist/composables/dropdown/useProvideDropdown.d.ts +3 -4
  146. package/dist/composables/group/useInjectedGroupState.d.ts +4 -5
  147. package/dist/composables/group/useProvideGroupState.d.ts +3 -3
  148. package/dist/composables/index.d.ts +1 -0
  149. package/dist/composables/index.es.js +94 -5
  150. package/dist/composables/index.umd.js +1 -1
  151. package/dist/composables/useBlurhash.d.ts +7 -0
  152. package/dist/composables/useComponentFocus.d.ts +1 -1
  153. package/dist/composables/useComponentIcon.d.ts +9 -8
  154. package/dist/composables/useOptions.d.ts +4 -4
  155. package/dist/composables/usePersistence.d.ts +3 -0
  156. package/dist/composables/useUniqueId.d.ts +1 -1
  157. package/dist/composables/useVolver.d.ts +1 -1
  158. package/dist/constants.d.ts +34 -32
  159. package/dist/directives/index.d.ts +3 -5
  160. package/dist/directives/index.es.js +104 -45
  161. package/dist/directives/index.umd.js +1 -1
  162. package/dist/directives/v-contextmenu.es.js +1 -1
  163. package/dist/directives/v-contextmenu.umd.js +1 -1
  164. package/dist/directives/v-tooltip.es.js +101 -39
  165. package/dist/directives/v-tooltip.umd.js +1 -1
  166. package/dist/icons.es.js +267 -267
  167. package/dist/icons.umd.js +1 -1
  168. package/dist/index.d.ts +3 -1
  169. package/dist/index.es.js +92 -18
  170. package/dist/index.umd.js +1 -1
  171. package/dist/props/index.d.ts +272 -81
  172. package/dist/resolvers/unplugin.d.ts +6 -1
  173. package/dist/resolvers/unplugin.es.js +87 -10
  174. package/dist/resolvers/unplugin.umd.js +1 -1
  175. package/dist/stories/Accordion/Accordion.settings.d.ts +2 -57
  176. package/dist/stories/AccordionGroup/AccordionGroup.settings.d.ts +2 -66
  177. package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +2 -127
  178. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +1437 -495
  179. package/dist/stories/Alert/Alert.settings.d.ts +2 -109
  180. package/dist/stories/Alert/AlertModifiers.stories.d.ts +1 -1
  181. package/dist/stories/Alert/AlertSlots.stories.d.ts +1 -1
  182. package/dist/stories/AlertGroup/AlertGroup.settings.d.ts +2 -85
  183. package/dist/stories/AlertGroup/AlertGroupPosition.stories.d.ts +1 -1
  184. package/dist/stories/AlertGroup/AlertGroupSlots.stories.d.ts +1 -1
  185. package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +2 -2
  186. package/dist/stories/AvatarGroup/AvatarGroup.settings.d.ts +2 -38
  187. package/dist/stories/Badge/Badge.settings.d.ts +2 -26
  188. package/dist/stories/Badge/Badge.test.d.ts +1 -1
  189. package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
  190. package/dist/stories/Breadcrumb/Breadcrumb.settings.d.ts +2 -18
  191. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +1 -1
  192. package/dist/stories/Button/Button.settings.d.ts +2 -194
  193. package/dist/stories/ButtonGroup/ButtonGroup.settings.d.ts +2 -40
  194. package/dist/stories/Card/Card.settings.d.ts +2 -63
  195. package/dist/stories/Checkbox/Checkbox.settings.d.ts +2 -132
  196. package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +1 -141
  197. package/dist/stories/Combobox/Combobox.settings.d.ts +2 -609
  198. package/dist/stories/Dialog/Dialog.settings.d.ts +2 -47
  199. package/dist/stories/Dialog/DialogModifiers.stories.d.ts +8 -0
  200. package/dist/stories/Dropdown/Dropdown.settings.d.ts +2 -205
  201. package/dist/stories/Icon/Icon.settings.d.ts +3 -68
  202. package/dist/stories/InputFile/InputFile.settings.d.ts +6 -0
  203. package/dist/stories/InputFile/InputFile.stories.d.ts +12 -0
  204. package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
  205. package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
  206. package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
  207. package/dist/stories/InputText/InputText.settings.d.ts +2 -438
  208. package/dist/stories/Nav/Nav.settings.d.ts +2 -10
  209. package/dist/stories/Progress/Progress.settings.d.ts +2 -27
  210. package/dist/stories/Radio/Radio.settings.d.ts +1 -110
  211. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +1 -141
  212. package/dist/stories/Select/Select.settings.d.ts +2 -246
  213. package/dist/stories/Tab/Tab.settings.d.ts +2 -15
  214. package/dist/stories/Textarea/Textarea.settings.d.ts +2 -287
  215. package/dist/stories/argTypes.d.ts +27 -866
  216. package/dist/test/expect.d.ts +1 -1
  217. package/dist/test/options.d.ts +1 -1
  218. package/dist/test/sleep.d.ts +1 -1
  219. package/dist/types/alert.d.ts +9 -7
  220. package/dist/types/blurhash.d.ts +12 -0
  221. package/dist/types/generic.d.ts +1 -2
  222. package/dist/types/group.d.ts +37 -15
  223. package/dist/types/index.d.ts +7 -0
  224. package/dist/types/input-file.d.ts +16 -0
  225. package/dist/types/nav.d.ts +2 -2
  226. package/dist/utils/ObjectUtilities.d.ts +7 -8
  227. package/dist/workers/blurhash.d.ts +1 -0
  228. package/package.json +239 -246
  229. package/src/Volver.ts +245 -234
  230. package/src/assets/icons/detailed.json +1 -1
  231. package/src/assets/icons/normal.json +1 -1
  232. package/src/assets/icons/simple.json +1 -1
  233. package/src/components/VvAccordion/VvAccordion.vue +163 -100
  234. package/src/components/VvAccordion/index.ts +64 -79
  235. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +223 -105
  236. package/src/components/VvAccordionGroup/index.ts +42 -42
  237. package/src/components/VvAction/VvAction.vue +144 -130
  238. package/src/components/VvAlert/VvAlert.vue +72 -70
  239. package/src/components/VvAlert/index.ts +149 -147
  240. package/src/components/VvAlertGroup/VvAlertGroup.vue +57 -56
  241. package/src/components/VvAlertGroup/index.ts +101 -117
  242. package/src/components/VvAvatar/VvAvatar.vue +20 -14
  243. package/src/components/VvAvatar/index.ts +5 -5
  244. package/src/components/VvAvatarGroup/VvAvatarGroup.vue +58 -53
  245. package/src/components/VvAvatarGroup/index.ts +21 -21
  246. package/src/components/VvBadge/VvBadge.vue +15 -14
  247. package/src/components/VvBadge/index.ts +2 -2
  248. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +50 -48
  249. package/src/components/VvBreadcrumb/index.ts +3 -9
  250. package/src/components/VvButton/VvButton.vue +163 -152
  251. package/src/components/VvButton/index.ts +103 -110
  252. package/src/components/VvButtonGroup/VvButtonGroup.vue +72 -64
  253. package/src/components/VvButtonGroup/index.ts +22 -21
  254. package/src/components/VvCard/VvCard.vue +30 -30
  255. package/src/components/VvCard/index.ts +2 -2
  256. package/src/components/VvCheckbox/VvCheckbox.vue +185 -183
  257. package/src/components/VvCheckbox/index.ts +44 -44
  258. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +88 -87
  259. package/src/components/VvCombobox/VvCombobox.vue +631 -619
  260. package/src/components/VvCombobox/index.ts +189 -164
  261. package/src/components/VvDialog/VvDialog.vue +141 -129
  262. package/src/components/VvDialog/index.ts +38 -36
  263. package/src/components/VvDropdown/VvDropdown.vue +466 -445
  264. package/src/components/VvDropdown/VvDropdownAction.vue +37 -39
  265. package/src/components/VvDropdown/VvDropdownItem.vue +30 -26
  266. package/src/components/VvDropdown/VvDropdownOptgroup.vue +13 -12
  267. package/src/components/VvDropdown/VvDropdownOption.vue +47 -64
  268. package/src/components/VvDropdown/index.ts +61 -27
  269. package/src/components/VvIcon/README.md +1 -1
  270. package/src/components/VvIcon/VvIcon.vue +133 -133
  271. package/src/components/VvIcon/index.ts +84 -97
  272. package/src/components/VvInputFile/VvInputFile.vue +402 -0
  273. package/src/components/VvInputFile/index.ts +141 -0
  274. package/src/components/VvInputText/VvInputClearAction.ts +51 -47
  275. package/src/components/VvInputText/VvInputPasswordAction.ts +66 -62
  276. package/src/components/VvInputText/VvInputStepAction.ts +43 -43
  277. package/src/components/VvInputText/VvInputText.vue +638 -516
  278. package/src/components/VvInputText/VvInputTextActions.ts +86 -86
  279. package/src/components/VvInputText/index.ts +200 -185
  280. package/src/components/VvNav/VvNav.vue +40 -36
  281. package/src/components/VvNav/VvNavItem.vue +12 -12
  282. package/src/components/VvNav/VvNavSeparator.vue +6 -6
  283. package/src/components/VvNav/index.ts +2 -2
  284. package/src/components/VvProgress/VvProgress.vue +27 -27
  285. package/src/components/VvProgress/index.ts +28 -28
  286. package/src/components/VvRadio/VvRadio.vue +115 -112
  287. package/src/components/VvRadio/index.ts +28 -28
  288. package/src/components/VvRadioGroup/VvRadioGroup.vue +91 -90
  289. package/src/components/VvSelect/VvSelect.vue +242 -241
  290. package/src/components/VvSelect/index.ts +81 -63
  291. package/src/components/VvTab/VvTab.vue +79 -69
  292. package/src/components/VvTab/index.ts +12 -12
  293. package/src/components/VvTextarea/VvTextarea.vue +218 -219
  294. package/src/components/VvTextarea/index.ts +35 -35
  295. package/src/components/VvTooltip/VvTooltip.vue +22 -16
  296. package/src/components/VvTooltip/index.ts +12 -12
  297. package/src/components/common/HintSlot.ts +149 -150
  298. package/src/components/index.ts +10 -0
  299. package/src/composables/alert/useAlert.ts +76 -73
  300. package/src/composables/alert/useInjectAlert.ts +1 -1
  301. package/src/composables/alert/useProvideAlert.ts +10 -10
  302. package/src/composables/dropdown/useInjectDropdown.ts +6 -6
  303. package/src/composables/dropdown/useProvideDropdown.ts +63 -63
  304. package/src/composables/group/useInjectedGroupState.ts +46 -42
  305. package/src/composables/group/useProvideGroupState.ts +9 -15
  306. package/src/composables/index.ts +1 -0
  307. package/src/composables/useBlurhash.ts +68 -0
  308. package/src/composables/useComponentFocus.ts +9 -9
  309. package/src/composables/useComponentIcon.ts +36 -35
  310. package/src/composables/useDebouncedInput.ts +25 -25
  311. package/src/composables/useDefaults.ts +77 -76
  312. package/src/composables/useModifiers.ts +29 -29
  313. package/src/composables/useOptions.ts +51 -43
  314. package/src/composables/usePersistence.ts +74 -0
  315. package/src/composables/useTextCount.ts +44 -44
  316. package/src/composables/useUniqueId.ts +3 -2
  317. package/src/composables/useVolver.ts +1 -1
  318. package/src/constants.ts +97 -82
  319. package/src/directives/index.ts +3 -6
  320. package/src/directives/v-contextmenu.ts +34 -34
  321. package/src/directives/v-tooltip.ts +18 -9
  322. package/src/index.ts +6 -4
  323. package/src/props/index.ts +457 -380
  324. package/src/resolvers/unplugin.ts +146 -136
  325. package/src/shims.d.ts +4 -5
  326. package/src/stories/Accordion/Accordion.settings.ts +51 -50
  327. package/src/stories/Accordion/Accordion.stories.ts +21 -21
  328. package/src/stories/Accordion/Accordion.test.ts +56 -54
  329. package/src/stories/Accordion/AccordionSlots.stories.ts +13 -13
  330. package/src/stories/AccordionGroup/AccordionGroup.settings.ts +70 -67
  331. package/src/stories/AccordionGroup/AccordionGroup.stories.ts +41 -39
  332. package/src/stories/AccordionGroup/AccordionGroup.test.ts +49 -45
  333. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +35 -35
  334. package/src/stories/Alert/Alert.settings.ts +117 -116
  335. package/src/stories/Alert/Alert.stories.ts +30 -30
  336. package/src/stories/Alert/Alert.test.ts +78 -80
  337. package/src/stories/Alert/AlertModifiers.stories.ts +45 -45
  338. package/src/stories/Alert/AlertSlots.stories.ts +35 -35
  339. package/src/stories/AlertGroup/AlertGroup.settings.ts +107 -105
  340. package/src/stories/AlertGroup/AlertGroup.stories.ts +25 -25
  341. package/src/stories/AlertGroup/AlertGroup.test.ts +67 -69
  342. package/src/stories/AlertGroup/AlertGroupPosition.stories.ts +68 -68
  343. package/src/stories/AlertGroup/AlertGroupSlots.stories.ts +23 -23
  344. package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +58 -58
  345. package/src/stories/Avatar/Avatar.settings.ts +29 -29
  346. package/src/stories/Avatar/Avatar.stories.ts +23 -23
  347. package/src/stories/Avatar/Avatar.test.ts +22 -24
  348. package/src/stories/Avatar/AvatarBadge.stories.ts +15 -15
  349. package/src/stories/Avatar/AvatarModifiers.stories.ts +61 -61
  350. package/src/stories/Avatar/AvatarSlots.stories.ts +18 -18
  351. package/src/stories/AvatarGroup/AvatarGroup.settings.ts +54 -53
  352. package/src/stories/AvatarGroup/AvatarGroup.stories.ts +17 -17
  353. package/src/stories/AvatarGroup/AvatarGroup.test.ts +24 -26
  354. package/src/stories/AvatarGroup/AvatarGroupModifiers.stories.ts +15 -15
  355. package/src/stories/AvatarGroup/AvatarGroupSlotDefault.stories.ts +17 -17
  356. package/src/stories/Badge/Badge.settings.ts +21 -20
  357. package/src/stories/Badge/Badge.stories.ts +24 -24
  358. package/src/stories/Badge/Badge.test.ts +8 -8
  359. package/src/stories/Badge/BadgeSlots.stories.ts +10 -10
  360. package/src/stories/Blurhash/BlurhashComposable.stories.ts +196 -0
  361. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +35 -34
  362. package/src/stories/Breadcrumb/Breadcrumb.stories.ts +23 -23
  363. package/src/stories/Breadcrumb/Breadcrumb.test.ts +44 -43
  364. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.ts +17 -17
  365. package/src/stories/Button/Button.settings.ts +146 -150
  366. package/src/stories/Button/Button.stories.ts +19 -19
  367. package/src/stories/Button/Button.test.ts +41 -42
  368. package/src/stories/Button/ButtonIcon.stories.ts +42 -42
  369. package/src/stories/Button/ButtonLink.stories.ts +24 -24
  370. package/src/stories/Button/ButtonLoading.stories.ts +22 -22
  371. package/src/stories/Button/ButtonModifiers.stories.ts +91 -91
  372. package/src/stories/Button/ButtonSlots.stories.ts +47 -47
  373. package/src/stories/Button/ButtonState.stories.ts +23 -23
  374. package/src/stories/Button/ButtonToggle.stories.ts +30 -30
  375. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +33 -24
  376. package/src/stories/ButtonGroup/ButtonGroup.stories.ts +20 -20
  377. package/src/stories/ButtonGroup/ButtonGroup.test.ts +23 -26
  378. package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.ts +20 -20
  379. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.ts +18 -18
  380. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.ts +22 -22
  381. package/src/stories/Card/Card.settings.ts +49 -48
  382. package/src/stories/Card/Card.stories.ts +22 -22
  383. package/src/stories/Card/Card.test.ts +14 -16
  384. package/src/stories/Card/CardSlots.stories.ts +42 -42
  385. package/src/stories/Checkbox/Checkbox.settings.ts +36 -35
  386. package/src/stories/Checkbox/Checkbox.stories.ts +57 -57
  387. package/src/stories/Checkbox/Checkbox.test.ts +63 -66
  388. package/src/stories/Checkbox/CheckboxBinary.stories.ts +18 -18
  389. package/src/stories/Checkbox/CheckboxSlots.stories.ts +15 -15
  390. package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +9 -9
  391. package/src/stories/CheckboxGroup/CheckboxGroup.stories.ts +50 -50
  392. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +63 -67
  393. package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.ts +34 -34
  394. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.ts +23 -23
  395. package/src/stories/Combobox/Combobox.settings.ts +391 -383
  396. package/src/stories/Combobox/Combobox.stories.ts +108 -107
  397. package/src/stories/Combobox/Combobox.test.ts +89 -91
  398. package/src/stories/Combobox/ComboboxIconPosition.stories.ts +25 -24
  399. package/src/stories/Combobox/ComboboxMultiple.stories.ts +23 -22
  400. package/src/stories/Combobox/ComboboxOptions.stories.ts +85 -84
  401. package/src/stories/Combobox/ComboboxSlots.stories.ts +56 -55
  402. package/src/stories/Dialog/Dialog.settings.ts +49 -40
  403. package/src/stories/Dialog/Dialog.stories.ts +28 -28
  404. package/src/stories/Dialog/Dialog.test.ts +49 -54
  405. package/src/stories/Dialog/DialogModifiers.stories.ts +42 -0
  406. package/src/stories/Dialog/DialogSlots.stories.ts +20 -20
  407. package/src/stories/Dropdown/Dropdown.settings.ts +63 -62
  408. package/src/stories/Dropdown/Dropdown.stories.ts +59 -59
  409. package/src/stories/Dropdown/Dropdown.test.ts +9 -13
  410. package/src/stories/Dropdown/DropdownContextmenuDirective.stories.ts +16 -16
  411. package/src/stories/Dropdown/DropdownMultilevel.stories.ts +18 -18
  412. package/src/stories/Dropdown/DropdownSlots.stories.ts +50 -50
  413. package/src/stories/Icon/Icon.settings.ts +66 -65
  414. package/src/stories/Icon/Icon.stories.ts +28 -29
  415. package/src/stories/Icon/IconsCollection.stories.ts +22 -22
  416. package/src/stories/InputFile/InputFile.settings.ts +37 -0
  417. package/src/stories/InputFile/InputFile.stories.ts +89 -0
  418. package/src/stories/InputFile/InputFileDropArea.stories.ts +56 -0
  419. package/src/stories/InputFile/InputFileIconPosition.stories.ts +43 -0
  420. package/src/stories/InputFile/InputFileSlots.stories.ts +33 -0
  421. package/src/stories/InputText/InputText.settings.ts +246 -244
  422. package/src/stories/InputText/InputText.stories.ts +67 -67
  423. package/src/stories/InputText/InputText.test.ts +118 -121
  424. package/src/stories/InputText/InputTextIconPosition.stories.ts +24 -24
  425. package/src/stories/InputText/InputTextLength.stories.ts +33 -33
  426. package/src/stories/InputText/InputTextMask.stories.ts +91 -91
  427. package/src/stories/InputText/InputTextMinMax.stories.ts +30 -30
  428. package/src/stories/InputText/InputTextSlots.stories.ts +20 -20
  429. package/src/stories/InputText/InputTextType.stories.ts +70 -70
  430. package/src/stories/Nav/Nav.settings.ts +27 -27
  431. package/src/stories/Nav/Nav.stories.ts +18 -18
  432. package/src/stories/Nav/Nav.test.ts +10 -12
  433. package/src/stories/Nav/NavModifiers.stories.ts +25 -25
  434. package/src/stories/Progress/Progress.settings.ts +24 -23
  435. package/src/stories/Progress/Progress.stories.ts +23 -23
  436. package/src/stories/Progress/Progress.test.ts +4 -4
  437. package/src/stories/Radio/Radio.settings.ts +9 -9
  438. package/src/stories/Radio/Radio.stories.ts +47 -47
  439. package/src/stories/Radio/Radio.test.ts +54 -57
  440. package/src/stories/Radio/RadioSlots.stories.ts +15 -15
  441. package/src/stories/RadioGroup/RadioGroup.settings.ts +9 -9
  442. package/src/stories/RadioGroup/RadioGroup.stories.ts +51 -52
  443. package/src/stories/RadioGroup/RadioGroup.test.ts +63 -67
  444. package/src/stories/RadioGroup/RadioGroupOptions.stories.ts +35 -35
  445. package/src/stories/RadioGroup/RadioGroupSlots.stories.ts +23 -23
  446. package/src/stories/Select/Select.settings.ts +71 -70
  447. package/src/stories/Select/Select.stories.ts +67 -66
  448. package/src/stories/Select/Select.test.ts +65 -70
  449. package/src/stories/Select/SelectIconPosition.stories.ts +27 -26
  450. package/src/stories/Select/SelectOptions.stories.ts +55 -55
  451. package/src/stories/Select/SelectSlots.stories.ts +21 -20
  452. package/src/stories/Tab/Tab.settings.ts +34 -34
  453. package/src/stories/Tab/Tab.stories.ts +17 -17
  454. package/src/stories/Tab/Tab.test.ts +17 -19
  455. package/src/stories/Textarea/Textarea.settings.ts +79 -77
  456. package/src/stories/Textarea/Textarea.stories.ts +63 -63
  457. package/src/stories/Textarea/Textarea.test.ts +70 -73
  458. package/src/stories/Textarea/TextareaLength.stories.ts +33 -33
  459. package/src/stories/Textarea/TextareaSlots.stories.ts +20 -20
  460. package/src/stories/Textarea/TextareatIconPosition.stories.ts +24 -24
  461. package/src/stories/Tooltip/Tooltip.settings.ts +16 -17
  462. package/src/stories/Tooltip/Tooltip.stories.ts +18 -18
  463. package/src/stories/Tooltip/Tooltip.test.ts +53 -54
  464. package/src/stories/Tooltip/TooltipDirective.stories.ts +37 -37
  465. package/src/stories/argTypes.ts +506 -505
  466. package/src/test/expect.ts +72 -77
  467. package/src/test/options.ts +17 -16
  468. package/src/test/sleep.ts +3 -2
  469. package/src/test/types.d.ts +11 -11
  470. package/src/types/alert.ts +21 -17
  471. package/src/types/blurhash.ts +21 -0
  472. package/src/types/generic.ts +2 -3
  473. package/src/types/group.ts +34 -26
  474. package/src/types/index.ts +7 -0
  475. package/src/types/input-file.ts +18 -0
  476. package/src/types/nav.ts +13 -14
  477. package/src/utils/ObjectUtilities.ts +192 -188
  478. package/src/workers/blurhash.ts +9 -0
@@ -1,7 +1,12 @@
1
- import { unref, computed, isRef, defineComponent, h, inject, toRef, toRefs, useSlots, ref, openBlock, createElementBlock, normalizeClass, withDirectives, createElementVNode, vModelRadio, renderSlot, createTextVNode, toDisplayString, createVNode, createSlots, withCtx, normalizeProps, guardReactiveProps, provide, createCommentVNode, Fragment, renderList, createBlock, mergeProps } from "vue";
1
+ import { computed, isRef, defineComponent, h, inject, toRef, toRefs, unref, useSlots, ref, openBlock, createElementBlock, normalizeClass, withDirectives, createElementVNode, vModelRadio, renderSlot, createTextVNode, toDisplayString, createVNode, createSlots, withCtx, normalizeProps, guardReactiveProps, provide, createCommentVNode, Fragment, renderList, createBlock, mergeProps } from "vue";
2
2
  import { uid } from "uid";
3
3
  import { useVModel } from "@vueuse/core";
4
4
  import { get } from "ts-dot-prop";
5
+ var StorageType = /* @__PURE__ */ ((StorageType2) => {
6
+ StorageType2["local"] = "local";
7
+ StorageType2["session"] = "session";
8
+ return StorageType2;
9
+ })(StorageType || {});
5
10
  var Strategy = /* @__PURE__ */ ((Strategy2) => {
6
11
  Strategy2["absolute"] = "absolute";
7
12
  Strategy2["fixed"] = "fixed";
@@ -36,15 +41,17 @@ var ButtonType = /* @__PURE__ */ ((ButtonType2) => {
36
41
  ButtonType2["reset"] = "reset";
37
42
  return ButtonType2;
38
43
  })(ButtonType || {});
39
- var AnchorTarget = /* @__PURE__ */ ((AnchorTarget2) => {
40
- AnchorTarget2["_blank"] = "_blank";
41
- AnchorTarget2["_self"] = "_self";
42
- AnchorTarget2["_parent"] = "_parent";
43
- AnchorTarget2["_top"] = "_top";
44
- return AnchorTarget2;
45
- })(AnchorTarget || {});
44
+ var ActionTag = /* @__PURE__ */ ((ActionTag2) => {
45
+ ActionTag2["nuxtLink"] = "nuxt-link";
46
+ ActionTag2["routerLink"] = "router-link";
47
+ ActionTag2["a"] = "a";
48
+ ActionTag2["button"] = "button";
49
+ return ActionTag2;
50
+ })(ActionTag || {});
46
51
  const INJECTION_KEY_VOLVER = Symbol.for("volver");
47
- const INJECTION_KEY_RADIO_GROUP = Symbol.for("radioGroup");
52
+ const INJECTION_KEY_RADIO_GROUP = Symbol.for(
53
+ "radioGroup"
54
+ );
48
55
  function equals(obj1, obj2, field) {
49
56
  if (field) {
50
57
  return resolveFieldData(obj1, field) === resolveFieldData(obj2, field);
@@ -60,32 +67,36 @@ function deepEquals(a, b) {
60
67
  let i, length, key;
61
68
  if (arrA && arrB) {
62
69
  length = a.length;
63
- if (length != b.length)
70
+ if (length !== b.length)
64
71
  return false;
65
- for (i = length; i-- !== 0; )
72
+ for (i = length; i-- !== 0; ) {
66
73
  if (!deepEquals(a[i], b[i]))
67
74
  return false;
75
+ }
68
76
  return true;
69
77
  }
70
- if (arrA != arrB)
78
+ if (arrA !== arrB)
71
79
  return false;
72
- const dateA = a instanceof Date, dateB = b instanceof Date;
73
- if (dateA != dateB)
80
+ const dateA = a instanceof Date;
81
+ const dateB = b instanceof Date;
82
+ if (dateA !== dateB)
74
83
  return false;
75
84
  if (dateA && dateB)
76
- return a.getTime() == b.getTime();
77
- const regexpA = a instanceof RegExp, regexpB = b instanceof RegExp;
78
- if (regexpA != regexpB)
85
+ return a.getTime() === b.getTime();
86
+ const regexpA = a instanceof RegExp;
87
+ const regexpB = b instanceof RegExp;
88
+ if (regexpA !== regexpB)
79
89
  return false;
80
90
  if (regexpA && regexpB)
81
- return a.toString() == b.toString();
91
+ return a.toString() === b.toString();
82
92
  const keys = Object.keys(a);
83
93
  length = keys.length;
84
94
  if (length !== Object.keys(b).length)
85
95
  return false;
86
- for (i = length; i-- !== 0; )
96
+ for (i = length; i-- !== 0; ) {
87
97
  if (!Object.prototype.hasOwnProperty.call(b, keys[i]))
88
98
  return false;
99
+ }
89
100
  for (i = length; i-- !== 0; ) {
90
101
  key = keys[i];
91
102
  if (!deepEquals(a[key], b[key]))
@@ -93,11 +104,11 @@ function deepEquals(a, b) {
93
104
  }
94
105
  return true;
95
106
  }
96
- return a !== a && b !== b;
107
+ return Number.isNaN(a) && Number.isNaN(b);
97
108
  }
98
109
  function resolveFieldData(data, field) {
99
110
  if (data && Object.keys(data).length && field) {
100
- if (field.indexOf(".") === -1) {
111
+ if (!field.includes(".")) {
101
112
  return data[field];
102
113
  } else {
103
114
  const fields = field.split(".");
@@ -124,9 +135,6 @@ function contains(value, list) {
124
135
  }
125
136
  return false;
126
137
  }
127
- function isEmpty(value) {
128
- return ((value2) => value2 === null || value2 === void 0 || value2 === "" || Array.isArray(value2) && value2.length === 0 || !(value2 instanceof Date) && typeof value2 === "object" && Object.keys(value2).length === 0)(unref(value));
129
- }
130
138
  function isString(value) {
131
139
  return typeof value === "string" || value instanceof String;
132
140
  }
@@ -263,10 +271,7 @@ const LinkProps = {
263
271
  /**
264
272
  * Anchor target
265
273
  */
266
- target: {
267
- type: String,
268
- validator: (value) => Object.values(AnchorTarget).includes(value)
269
- },
274
+ target: String,
270
275
  /**
271
276
  * Anchor rel
272
277
  */
@@ -279,27 +284,33 @@ const ValidProps = {
279
284
  /**
280
285
  * Valid status
281
286
  */
282
- valid: Boolean,
287
+ valid: { type: Boolean, default: false },
283
288
  /**
284
289
  * Valid label
285
290
  */
286
- validLabel: [String, Array]
291
+ validLabel: { type: [String, Array], default: void 0 }
287
292
  };
288
293
  const InvalidProps = {
289
294
  /**
290
295
  * Invalid status
291
296
  */
292
- invalid: Boolean,
297
+ invalid: {
298
+ type: Boolean,
299
+ default: false
300
+ },
293
301
  /**
294
302
  * Invalid label
295
303
  */
296
- invalidLabel: [String, Array]
304
+ invalidLabel: { type: [String, Array], default: void 0 }
297
305
  };
298
306
  const LoadingProps = {
299
307
  /**
300
308
  * Loading status
301
309
  */
302
- loading: Boolean,
310
+ loading: {
311
+ type: Boolean,
312
+ default: false
313
+ },
303
314
  /**
304
315
  * Loading label
305
316
  */
@@ -312,43 +323,64 @@ const DisabledProps = {
312
323
  /**
313
324
  * Whether the form control is disabled
314
325
  */
315
- disabled: Boolean
326
+ disabled: {
327
+ type: Boolean,
328
+ default: false
329
+ }
316
330
  };
317
331
  const ActiveProps = {
318
332
  /**
319
333
  * Whether the item is active
320
334
  */
321
- active: Boolean
335
+ active: {
336
+ type: Boolean,
337
+ default: false
338
+ }
322
339
  };
323
340
  const CurrentProps = {
324
341
  /**
325
342
  * Whether the item is current
326
343
  */
327
- current: Boolean
344
+ current: {
345
+ type: Boolean,
346
+ default: false
347
+ }
328
348
  };
329
349
  const PressedProps = {
330
350
  /**
331
351
  * Whether the item is pressed
332
352
  */
333
- pressed: Boolean
353
+ pressed: {
354
+ type: Boolean,
355
+ default: false
356
+ }
334
357
  };
335
358
  const LabelProps = {
336
359
  /**
337
360
  * The item label
338
361
  */
339
- label: [String, Number]
362
+ label: {
363
+ type: [String, Number],
364
+ default: void 0
365
+ }
340
366
  };
341
367
  const ReadonlyProps = {
342
368
  /**
343
369
  * The value is not editable
344
370
  */
345
- readonly: Boolean
371
+ readonly: {
372
+ type: Boolean,
373
+ default: false
374
+ }
346
375
  };
347
376
  const ModifiersProps = {
348
377
  /**
349
378
  * Component BEM modifiers
350
379
  */
351
- modifiers: [String, Array]
380
+ modifiers: {
381
+ type: [String, Array],
382
+ default: void 0
383
+ }
352
384
  };
353
385
  const HintProps = {
354
386
  hintLabel: { type: String, default: "" }
@@ -379,7 +411,10 @@ const OptionsProps = {
379
411
  * VvIcon name or props
380
412
  * @see VVIcon
381
413
  */
382
- icon: { type: [String, Object] },
414
+ icon: {
415
+ type: [String, Object],
416
+ default: void 0
417
+ },
383
418
  /**
384
419
  * VvIcon position
385
420
  */
@@ -424,7 +459,8 @@ const IdProps = {
424
459
  * Dropdown show / hide transition name
425
460
  */
426
461
  transitionName: {
427
- type: String
462
+ type: String,
463
+ default: void 0
428
464
  },
429
465
  /**
430
466
  * Offset of the dropdown from the trigger
@@ -492,7 +528,8 @@ const IdProps = {
492
528
  * Set dropdown width to the same as the trigger
493
529
  */
494
530
  triggerWidth: {
495
- type: Boolean
531
+ type: Boolean,
532
+ default: false
496
533
  }
497
534
  });
498
535
  const IdNameProps = {
@@ -519,11 +556,17 @@ const CheckboxRadioProps = {
519
556
  * Input value
520
557
  * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#value
521
558
  */
522
- value: [String, Number, Boolean],
559
+ value: {
560
+ type: [String, Number, Boolean],
561
+ default: void 0
562
+ },
523
563
  /**
524
564
  * Input value
525
565
  */
526
- modelValue: [Object, Number, Boolean, String]
566
+ modelValue: {
567
+ type: [Object, Number, Boolean, String],
568
+ default: void 0
569
+ }
527
570
  };
528
571
  const CheckboxRadioGroupProps = {
529
572
  ...ValidProps,
@@ -538,7 +581,10 @@ const CheckboxRadioGroupProps = {
538
581
  /**
539
582
  * Input value
540
583
  */
541
- modelValue: [String, Array, Boolean, Number, Symbol],
584
+ modelValue: {
585
+ type: [String, Array, Boolean, Number, Symbol],
586
+ default: void 0
587
+ },
542
588
  /**
543
589
  * Input name
544
590
  */
@@ -546,7 +592,10 @@ const CheckboxRadioGroupProps = {
546
592
  /**
547
593
  * If true, the group will be displayed in a vertical column
548
594
  */
549
- vertical: Boolean
595
+ vertical: {
596
+ type: Boolean,
597
+ default: false
598
+ }
550
599
  };
551
600
  ({
552
601
  ...DisabledProps,
@@ -569,17 +618,32 @@ const CheckboxRadioGroupProps = {
569
618
  ariaLabel: {
570
619
  type: String,
571
620
  default: void 0
621
+ },
622
+ /**
623
+ * Default tag for the action
624
+ */
625
+ defaultTag: {
626
+ type: String,
627
+ default: ActionTag.button
572
628
  }
573
629
  });
630
+ ({
631
+ storageType: {
632
+ type: String,
633
+ default: StorageType.local,
634
+ validator: (value) => Object.values(StorageType).includes(value)
635
+ },
636
+ storageKey: String
637
+ });
574
638
  function useInjectedGroupState(groupKey) {
575
639
  const group = inject(groupKey, void 0);
576
- const isInGroup = computed(() => !isEmpty(group));
640
+ const isInGroup = computed(() => group !== void 0);
577
641
  function getGroupOrLocalRef(propName, props, emit) {
578
- if (group == null ? void 0 : group.value) {
579
- const groupPropValue = unref(group.value)[propName];
642
+ const groupPropValue = group == null ? void 0 : group[propName];
643
+ if (groupPropValue) {
580
644
  return computed({
581
645
  get() {
582
- return groupPropValue == null ? void 0 : groupPropValue.value;
646
+ return groupPropValue.value;
583
647
  },
584
648
  set(value) {
585
649
  groupPropValue.value = value;
@@ -592,8 +656,9 @@ function useInjectedGroupState(groupKey) {
592
656
  return propRef.value;
593
657
  },
594
658
  set(value) {
595
- if (emit)
659
+ if (emit) {
596
660
  emit(`update:${propName}`, value);
661
+ }
597
662
  }
598
663
  });
599
664
  }
@@ -612,16 +677,10 @@ function useGroupProps(props, emit) {
612
677
  const valid = getGroupOrLocalRef("valid", props);
613
678
  const invalid = getGroupOrLocalRef("invalid", props);
614
679
  const readonly = computed(
615
- () => {
616
- var _a;
617
- return Boolean(props.readonly || ((_a = group == null ? void 0 : group.value) == null ? void 0 : _a.readonly.value));
618
- }
680
+ () => Boolean(props.readonly || (group == null ? void 0 : group.readonly.value))
619
681
  );
620
682
  const disabled = computed(
621
- () => {
622
- var _a;
623
- return Boolean(props.disabled || ((_a = group == null ? void 0 : group.value) == null ? void 0 : _a.disabled.value));
624
- }
683
+ () => Boolean(props.disabled || (group == null ? void 0 : group.disabled.value))
625
684
  );
626
685
  return {
627
686
  // local props
@@ -692,7 +751,9 @@ function useDefaults(componentName, propsDefinition, props) {
692
751
  }, {});
693
752
  });
694
753
  }
695
- const useUniqueId = (id) => computed(() => String((id == null ? void 0 : id.value) || uid()));
754
+ function useUniqueId(id) {
755
+ return computed(() => String((id == null ? void 0 : id.value) || uid()));
756
+ }
696
757
  function useModifiers(prefix, modifiers, others) {
697
758
  return computed(() => {
698
759
  const toReturn = {
@@ -725,8 +786,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
725
786
  ...__default__$1,
726
787
  props: VvRadioProps,
727
788
  emits: VvRadioEvents,
728
- setup(__props, { emit }) {
789
+ setup(__props, { emit: __emit }) {
729
790
  const props = __props;
791
+ const emit = __emit;
730
792
  const slots = useSlots();
731
793
  const propsDefaults = useDefaults(
732
794
  "VvRadio",
@@ -807,12 +869,19 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
807
869
  [vModelRadio, unref(localModelValue)]
808
870
  ]),
809
871
  renderSlot(_ctx.$slots, "default", { value: unref(modelValue) }, () => [
810
- createTextVNode(toDisplayString(_ctx.label), 1)
872
+ createTextVNode(
873
+ toDisplayString(_ctx.label),
874
+ 1
875
+ /* TEXT */
876
+ )
811
877
  ]),
812
878
  createVNode(unref(HintSlot), {
813
879
  id: unref(hasHintId),
814
880
  class: "vv-radio__hint"
815
- }, createSlots({ _: 2 }, [
881
+ }, createSlots({
882
+ _: 2
883
+ /* DYNAMIC */
884
+ }, [
816
885
  _ctx.$slots.hint ? {
817
886
  name: "hint",
818
887
  fn: withCtx(() => [
@@ -848,39 +917,39 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
848
917
  });
849
918
  const VvRadioGroupProps = CheckboxRadioGroupProps;
850
919
  const VvRadioGroupEvents = ["update:modelValue", "change"];
851
- function useProvideGroupState(groupState) {
852
- if (Object.keys(groupState).some(
853
- (k) => k !== "key" && !isRef(groupState[k])
854
- ))
855
- throw Error("One or more groupState props aren't ref.");
856
- provide(
857
- groupState.key,
858
- computed(() => groupState)
859
- );
920
+ function useProvideGroupState(key, groupState) {
921
+ provide(key, groupState);
860
922
  }
861
923
  function useOptions(props) {
862
924
  const { options, labelKey, valueKey, disabledKey } = toRefs(props);
863
925
  const getOptionLabel = (option) => {
864
- if (typeof option !== "object" && option !== null)
926
+ if (typeof option === "string") {
865
927
  return option;
928
+ }
866
929
  return String(
867
930
  typeof labelKey.value === "function" ? labelKey.value(option) : get(option, labelKey.value)
868
931
  );
869
932
  };
870
933
  const getOptionValue = (option) => {
871
- if (typeof option !== "object" && option !== null)
934
+ if (typeof option === "string") {
872
935
  return option;
936
+ }
873
937
  return typeof valueKey.value === "function" ? valueKey.value(option) : get(option, valueKey.value);
874
938
  };
875
939
  const isOptionDisabled = (option) => {
876
- if (typeof option !== "object" && option !== null)
940
+ if (typeof option === "string") {
877
941
  return false;
942
+ }
878
943
  return typeof disabledKey.value === "function" ? disabledKey.value(option) : get(option, disabledKey.value);
879
944
  };
880
945
  const getOptionGrouped = (option) => {
881
- if (typeof option !== "object" && option !== null)
946
+ if (typeof option == "string") {
882
947
  return [];
883
- return option.options || [];
948
+ }
949
+ if (typeof option === "object" && option && "options" in option) {
950
+ return option.options;
951
+ }
952
+ return [];
884
953
  };
885
954
  return {
886
955
  options,
@@ -899,8 +968,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
899
968
  ...__default__,
900
969
  props: VvRadioGroupProps,
901
970
  emits: VvRadioGroupEvents,
902
- setup(__props, { emit }) {
971
+ setup(__props, { emit: __emit }) {
903
972
  const props = __props;
973
+ const emit = __emit;
904
974
  const slots = useSlots();
905
975
  const propsDefaults = useDefaults(
906
976
  "VvRadioGroup",
@@ -909,8 +979,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
909
979
  );
910
980
  const modelValue = useVModel(props, "modelValue", emit);
911
981
  const { disabled, readonly, vertical, valid, invalid, modifiers } = toRefs(props);
912
- useProvideGroupState({
913
- key: INJECTION_KEY_RADIO_GROUP,
982
+ useProvideGroupState(INJECTION_KEY_RADIO_GROUP, {
914
983
  modelValue,
915
984
  disabled,
916
985
  readonly,
@@ -929,59 +998,89 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
929
998
  invalid: invalid.value
930
999
  }))
931
1000
  );
932
- const getOptionProps = (option, index) => {
1001
+ function getOptionProps(option, index) {
933
1002
  return {
934
1003
  id: `${props.name}_opt${index}`,
935
1004
  name: props.name,
936
1005
  label: getOptionLabel(option),
937
1006
  value: getOptionValue(option)
938
1007
  };
939
- };
1008
+ }
940
1009
  const { HintSlot, hintSlotScope } = HintSlotFactory(propsDefaults, slots);
941
1010
  return (_ctx, _cache) => {
942
- return openBlock(), createElementBlock("fieldset", {
943
- class: normalizeClass(unref(bemCssClasses))
944
- }, [
945
- _ctx.label ? (openBlock(), createElementBlock("legend", {
946
- key: 0,
947
- textContent: toDisplayString(_ctx.label)
948
- }, null, 8, _hoisted_1)) : createCommentVNode("", true),
949
- createElementVNode("div", _hoisted_2, [
950
- _ctx.options.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(_ctx.options, (option, index) => {
951
- return openBlock(), createBlock(_sfc_main$1, mergeProps({ key: index }, getOptionProps(option, index)), null, 16);
952
- }), 128)) : renderSlot(_ctx.$slots, "default", { key: 1 })
953
- ]),
954
- createVNode(unref(HintSlot), { class: "vv-radio-group__hint" }, createSlots({ _: 2 }, [
955
- _ctx.$slots.hint ? {
956
- name: "hint",
957
- fn: withCtx(() => [
958
- renderSlot(_ctx.$slots, "hint", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
959
- ]),
960
- key: "0"
961
- } : void 0,
962
- _ctx.$slots.loading ? {
963
- name: "loading",
964
- fn: withCtx(() => [
965
- renderSlot(_ctx.$slots, "loading", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
966
- ]),
967
- key: "1"
968
- } : void 0,
969
- _ctx.$slots.valid ? {
970
- name: "valid",
971
- fn: withCtx(() => [
972
- renderSlot(_ctx.$slots, "valid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
973
- ]),
974
- key: "2"
975
- } : void 0,
976
- _ctx.$slots.invalid ? {
977
- name: "invalid",
978
- fn: withCtx(() => [
979
- renderSlot(_ctx.$slots, "invalid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1011
+ return openBlock(), createElementBlock(
1012
+ "fieldset",
1013
+ {
1014
+ class: normalizeClass(unref(bemCssClasses))
1015
+ },
1016
+ [
1017
+ _ctx.label ? (openBlock(), createElementBlock("legend", {
1018
+ key: 0,
1019
+ textContent: toDisplayString(_ctx.label)
1020
+ }, null, 8, _hoisted_1)) : createCommentVNode("v-if", true),
1021
+ createElementVNode("div", _hoisted_2, [
1022
+ _ctx.options.length > 0 ? (openBlock(true), createElementBlock(
1023
+ Fragment,
1024
+ { key: 0 },
1025
+ renderList(_ctx.options, (option, index) => {
1026
+ return openBlock(), createBlock(
1027
+ _sfc_main$1,
1028
+ mergeProps({
1029
+ key: index,
1030
+ ref_for: true
1031
+ }, getOptionProps(option, index)),
1032
+ null,
1033
+ 16
1034
+ /* FULL_PROPS */
1035
+ );
1036
+ }),
1037
+ 128
1038
+ /* KEYED_FRAGMENT */
1039
+ )) : renderSlot(_ctx.$slots, "default", { key: 1 })
1040
+ ]),
1041
+ createVNode(
1042
+ unref(HintSlot),
1043
+ { class: "vv-radio-group__hint" },
1044
+ createSlots({
1045
+ _: 2
1046
+ /* DYNAMIC */
1047
+ }, [
1048
+ _ctx.$slots.hint ? {
1049
+ name: "hint",
1050
+ fn: withCtx(() => [
1051
+ renderSlot(_ctx.$slots, "hint", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1052
+ ]),
1053
+ key: "0"
1054
+ } : void 0,
1055
+ _ctx.$slots.loading ? {
1056
+ name: "loading",
1057
+ fn: withCtx(() => [
1058
+ renderSlot(_ctx.$slots, "loading", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1059
+ ]),
1060
+ key: "1"
1061
+ } : void 0,
1062
+ _ctx.$slots.valid ? {
1063
+ name: "valid",
1064
+ fn: withCtx(() => [
1065
+ renderSlot(_ctx.$slots, "valid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1066
+ ]),
1067
+ key: "2"
1068
+ } : void 0,
1069
+ _ctx.$slots.invalid ? {
1070
+ name: "invalid",
1071
+ fn: withCtx(() => [
1072
+ renderSlot(_ctx.$slots, "invalid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1073
+ ]),
1074
+ key: "3"
1075
+ } : void 0
980
1076
  ]),
981
- key: "3"
982
- } : void 0
983
- ]), 1024)
984
- ], 2);
1077
+ 1024
1078
+ /* DYNAMIC_SLOTS */
1079
+ )
1080
+ ],
1081
+ 2
1082
+ /* CLASS */
1083
+ );
985
1084
  };
986
1085
  }
987
1086
  });