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

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 (481) 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 +238 -129
  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 +1377 -1059
  64. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  65. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +606 -680
  66. package/dist/components/VvCombobox/index.d.ts +488 -26
  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 +236 -128
  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 +367 -300
  123. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  124. package/dist/components/VvSelect/VvSelect.vue.d.ts +232 -203
  125. package/dist/components/VvSelect/index.d.ts +195 -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 +4575 -2534
  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/Combobox/Combobox.stories.d.ts +1 -0
  199. package/dist/stories/Combobox/ComboboxMultiple.stories.d.ts +1 -0
  200. package/dist/stories/Dialog/Dialog.settings.d.ts +2 -47
  201. package/dist/stories/Dialog/DialogModifiers.stories.d.ts +8 -0
  202. package/dist/stories/Dropdown/Dropdown.settings.d.ts +2 -205
  203. package/dist/stories/Icon/Icon.settings.d.ts +3 -68
  204. package/dist/stories/InputFile/InputFile.settings.d.ts +6 -0
  205. package/dist/stories/InputFile/InputFile.stories.d.ts +12 -0
  206. package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
  207. package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
  208. package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
  209. package/dist/stories/InputText/InputText.settings.d.ts +2 -438
  210. package/dist/stories/Nav/Nav.settings.d.ts +2 -10
  211. package/dist/stories/Progress/Progress.settings.d.ts +2 -27
  212. package/dist/stories/Radio/Radio.settings.d.ts +1 -110
  213. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +1 -141
  214. package/dist/stories/Select/Select.settings.d.ts +2 -246
  215. package/dist/stories/Select/Select.stories.d.ts +1 -0
  216. package/dist/stories/Tab/Tab.settings.d.ts +2 -15
  217. package/dist/stories/Textarea/Textarea.settings.d.ts +2 -287
  218. package/dist/stories/argTypes.d.ts +27 -866
  219. package/dist/test/expect.d.ts +1 -1
  220. package/dist/test/options.d.ts +1 -1
  221. package/dist/test/sleep.d.ts +1 -1
  222. package/dist/types/alert.d.ts +9 -7
  223. package/dist/types/blurhash.d.ts +12 -0
  224. package/dist/types/generic.d.ts +1 -2
  225. package/dist/types/group.d.ts +37 -15
  226. package/dist/types/index.d.ts +7 -0
  227. package/dist/types/input-file.d.ts +16 -0
  228. package/dist/types/nav.d.ts +2 -2
  229. package/dist/utils/ObjectUtilities.d.ts +7 -8
  230. package/dist/workers/blurhash.d.ts +1 -0
  231. package/package.json +239 -246
  232. package/src/Volver.ts +245 -234
  233. package/src/assets/icons/detailed.json +1 -1
  234. package/src/assets/icons/normal.json +1 -1
  235. package/src/assets/icons/simple.json +1 -1
  236. package/src/components/VvAccordion/VvAccordion.vue +163 -100
  237. package/src/components/VvAccordion/index.ts +64 -79
  238. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +223 -105
  239. package/src/components/VvAccordionGroup/index.ts +42 -42
  240. package/src/components/VvAction/VvAction.vue +144 -130
  241. package/src/components/VvAlert/VvAlert.vue +72 -70
  242. package/src/components/VvAlert/index.ts +149 -147
  243. package/src/components/VvAlertGroup/VvAlertGroup.vue +57 -56
  244. package/src/components/VvAlertGroup/index.ts +101 -117
  245. package/src/components/VvAvatar/VvAvatar.vue +20 -14
  246. package/src/components/VvAvatar/index.ts +5 -5
  247. package/src/components/VvAvatarGroup/VvAvatarGroup.vue +58 -53
  248. package/src/components/VvAvatarGroup/index.ts +21 -21
  249. package/src/components/VvBadge/VvBadge.vue +15 -14
  250. package/src/components/VvBadge/index.ts +2 -2
  251. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +50 -48
  252. package/src/components/VvBreadcrumb/index.ts +3 -9
  253. package/src/components/VvButton/VvButton.vue +163 -152
  254. package/src/components/VvButton/index.ts +103 -110
  255. package/src/components/VvButtonGroup/VvButtonGroup.vue +72 -64
  256. package/src/components/VvButtonGroup/index.ts +22 -21
  257. package/src/components/VvCard/VvCard.vue +30 -30
  258. package/src/components/VvCard/index.ts +2 -2
  259. package/src/components/VvCheckbox/VvCheckbox.vue +185 -183
  260. package/src/components/VvCheckbox/index.ts +44 -44
  261. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +88 -87
  262. package/src/components/VvCombobox/VvCombobox.vue +639 -619
  263. package/src/components/VvCombobox/index.ts +206 -164
  264. package/src/components/VvDialog/VvDialog.vue +141 -129
  265. package/src/components/VvDialog/index.ts +38 -36
  266. package/src/components/VvDropdown/VvDropdown.vue +466 -445
  267. package/src/components/VvDropdown/VvDropdownAction.vue +37 -39
  268. package/src/components/VvDropdown/VvDropdownItem.vue +30 -26
  269. package/src/components/VvDropdown/VvDropdownOptgroup.vue +13 -12
  270. package/src/components/VvDropdown/VvDropdownOption.vue +47 -64
  271. package/src/components/VvDropdown/index.ts +61 -27
  272. package/src/components/VvIcon/README.md +1 -1
  273. package/src/components/VvIcon/VvIcon.vue +133 -133
  274. package/src/components/VvIcon/index.ts +84 -97
  275. package/src/components/VvInputFile/VvInputFile.vue +402 -0
  276. package/src/components/VvInputFile/index.ts +141 -0
  277. package/src/components/VvInputText/VvInputClearAction.ts +51 -47
  278. package/src/components/VvInputText/VvInputPasswordAction.ts +66 -62
  279. package/src/components/VvInputText/VvInputStepAction.ts +43 -43
  280. package/src/components/VvInputText/VvInputText.vue +638 -516
  281. package/src/components/VvInputText/VvInputTextActions.ts +86 -86
  282. package/src/components/VvInputText/index.ts +200 -185
  283. package/src/components/VvNav/VvNav.vue +40 -36
  284. package/src/components/VvNav/VvNavItem.vue +12 -12
  285. package/src/components/VvNav/VvNavSeparator.vue +6 -6
  286. package/src/components/VvNav/index.ts +2 -2
  287. package/src/components/VvProgress/VvProgress.vue +27 -27
  288. package/src/components/VvProgress/index.ts +28 -28
  289. package/src/components/VvRadio/VvRadio.vue +115 -112
  290. package/src/components/VvRadio/index.ts +28 -28
  291. package/src/components/VvRadioGroup/VvRadioGroup.vue +91 -90
  292. package/src/components/VvSelect/VvSelect.vue +262 -241
  293. package/src/components/VvSelect/index.ts +88 -63
  294. package/src/components/VvTab/VvTab.vue +79 -69
  295. package/src/components/VvTab/index.ts +12 -12
  296. package/src/components/VvTextarea/VvTextarea.vue +218 -219
  297. package/src/components/VvTextarea/index.ts +35 -35
  298. package/src/components/VvTooltip/VvTooltip.vue +22 -16
  299. package/src/components/VvTooltip/index.ts +12 -12
  300. package/src/components/common/HintSlot.ts +149 -150
  301. package/src/components/index.ts +10 -0
  302. package/src/composables/alert/useAlert.ts +76 -73
  303. package/src/composables/alert/useInjectAlert.ts +1 -1
  304. package/src/composables/alert/useProvideAlert.ts +10 -10
  305. package/src/composables/dropdown/useInjectDropdown.ts +6 -6
  306. package/src/composables/dropdown/useProvideDropdown.ts +63 -63
  307. package/src/composables/group/useInjectedGroupState.ts +46 -42
  308. package/src/composables/group/useProvideGroupState.ts +9 -15
  309. package/src/composables/index.ts +1 -0
  310. package/src/composables/useBlurhash.ts +68 -0
  311. package/src/composables/useComponentFocus.ts +9 -9
  312. package/src/composables/useComponentIcon.ts +36 -35
  313. package/src/composables/useDebouncedInput.ts +25 -25
  314. package/src/composables/useDefaults.ts +77 -76
  315. package/src/composables/useModifiers.ts +29 -29
  316. package/src/composables/useOptions.ts +52 -43
  317. package/src/composables/usePersistence.ts +74 -0
  318. package/src/composables/useTextCount.ts +44 -44
  319. package/src/composables/useUniqueId.ts +3 -2
  320. package/src/composables/useVolver.ts +1 -1
  321. package/src/constants.ts +97 -82
  322. package/src/directives/index.ts +3 -6
  323. package/src/directives/v-contextmenu.ts +34 -34
  324. package/src/directives/v-tooltip.ts +18 -9
  325. package/src/index.ts +6 -4
  326. package/src/props/index.ts +457 -380
  327. package/src/resolvers/unplugin.ts +146 -136
  328. package/src/shims.d.ts +4 -5
  329. package/src/stories/Accordion/Accordion.settings.ts +51 -50
  330. package/src/stories/Accordion/Accordion.stories.ts +21 -21
  331. package/src/stories/Accordion/Accordion.test.ts +56 -54
  332. package/src/stories/Accordion/AccordionSlots.stories.ts +13 -13
  333. package/src/stories/AccordionGroup/AccordionGroup.settings.ts +70 -67
  334. package/src/stories/AccordionGroup/AccordionGroup.stories.ts +41 -39
  335. package/src/stories/AccordionGroup/AccordionGroup.test.ts +49 -45
  336. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +35 -35
  337. package/src/stories/Alert/Alert.settings.ts +117 -116
  338. package/src/stories/Alert/Alert.stories.ts +30 -30
  339. package/src/stories/Alert/Alert.test.ts +78 -80
  340. package/src/stories/Alert/AlertModifiers.stories.ts +45 -45
  341. package/src/stories/Alert/AlertSlots.stories.ts +35 -35
  342. package/src/stories/AlertGroup/AlertGroup.settings.ts +107 -105
  343. package/src/stories/AlertGroup/AlertGroup.stories.ts +25 -25
  344. package/src/stories/AlertGroup/AlertGroup.test.ts +67 -69
  345. package/src/stories/AlertGroup/AlertGroupPosition.stories.ts +68 -68
  346. package/src/stories/AlertGroup/AlertGroupSlots.stories.ts +23 -23
  347. package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +58 -58
  348. package/src/stories/Avatar/Avatar.settings.ts +29 -29
  349. package/src/stories/Avatar/Avatar.stories.ts +23 -23
  350. package/src/stories/Avatar/Avatar.test.ts +22 -24
  351. package/src/stories/Avatar/AvatarBadge.stories.ts +15 -15
  352. package/src/stories/Avatar/AvatarModifiers.stories.ts +61 -61
  353. package/src/stories/Avatar/AvatarSlots.stories.ts +18 -18
  354. package/src/stories/AvatarGroup/AvatarGroup.settings.ts +54 -53
  355. package/src/stories/AvatarGroup/AvatarGroup.stories.ts +17 -17
  356. package/src/stories/AvatarGroup/AvatarGroup.test.ts +24 -26
  357. package/src/stories/AvatarGroup/AvatarGroupModifiers.stories.ts +15 -15
  358. package/src/stories/AvatarGroup/AvatarGroupSlotDefault.stories.ts +17 -17
  359. package/src/stories/Badge/Badge.settings.ts +21 -20
  360. package/src/stories/Badge/Badge.stories.ts +24 -24
  361. package/src/stories/Badge/Badge.test.ts +8 -8
  362. package/src/stories/Badge/BadgeSlots.stories.ts +10 -10
  363. package/src/stories/Blurhash/BlurhashComposable.stories.ts +196 -0
  364. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +35 -34
  365. package/src/stories/Breadcrumb/Breadcrumb.stories.ts +23 -23
  366. package/src/stories/Breadcrumb/Breadcrumb.test.ts +44 -43
  367. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.ts +17 -17
  368. package/src/stories/Button/Button.settings.ts +146 -150
  369. package/src/stories/Button/Button.stories.ts +19 -19
  370. package/src/stories/Button/Button.test.ts +41 -42
  371. package/src/stories/Button/ButtonIcon.stories.ts +42 -42
  372. package/src/stories/Button/ButtonLink.stories.ts +24 -24
  373. package/src/stories/Button/ButtonLoading.stories.ts +22 -22
  374. package/src/stories/Button/ButtonModifiers.stories.ts +91 -91
  375. package/src/stories/Button/ButtonSlots.stories.ts +47 -47
  376. package/src/stories/Button/ButtonState.stories.ts +23 -23
  377. package/src/stories/Button/ButtonToggle.stories.ts +30 -30
  378. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +33 -24
  379. package/src/stories/ButtonGroup/ButtonGroup.stories.ts +20 -20
  380. package/src/stories/ButtonGroup/ButtonGroup.test.ts +23 -26
  381. package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.ts +20 -20
  382. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.ts +18 -18
  383. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.ts +22 -22
  384. package/src/stories/Card/Card.settings.ts +49 -48
  385. package/src/stories/Card/Card.stories.ts +22 -22
  386. package/src/stories/Card/Card.test.ts +14 -16
  387. package/src/stories/Card/CardSlots.stories.ts +42 -42
  388. package/src/stories/Checkbox/Checkbox.settings.ts +36 -35
  389. package/src/stories/Checkbox/Checkbox.stories.ts +57 -57
  390. package/src/stories/Checkbox/Checkbox.test.ts +63 -66
  391. package/src/stories/Checkbox/CheckboxBinary.stories.ts +18 -18
  392. package/src/stories/Checkbox/CheckboxSlots.stories.ts +15 -15
  393. package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +9 -9
  394. package/src/stories/CheckboxGroup/CheckboxGroup.stories.ts +50 -50
  395. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +63 -67
  396. package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.ts +34 -34
  397. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.ts +23 -23
  398. package/src/stories/Combobox/Combobox.settings.ts +407 -384
  399. package/src/stories/Combobox/Combobox.stories.ts +116 -107
  400. package/src/stories/Combobox/Combobox.test.ts +91 -91
  401. package/src/stories/Combobox/ComboboxIconPosition.stories.ts +25 -24
  402. package/src/stories/Combobox/ComboboxMultiple.stories.ts +32 -22
  403. package/src/stories/Combobox/ComboboxOptions.stories.ts +81 -84
  404. package/src/stories/Combobox/ComboboxSlots.stories.ts +56 -55
  405. package/src/stories/Dialog/Dialog.settings.ts +49 -40
  406. package/src/stories/Dialog/Dialog.stories.ts +28 -28
  407. package/src/stories/Dialog/Dialog.test.ts +49 -54
  408. package/src/stories/Dialog/DialogModifiers.stories.ts +42 -0
  409. package/src/stories/Dialog/DialogSlots.stories.ts +20 -20
  410. package/src/stories/Dropdown/Dropdown.settings.ts +63 -62
  411. package/src/stories/Dropdown/Dropdown.stories.ts +59 -59
  412. package/src/stories/Dropdown/Dropdown.test.ts +9 -13
  413. package/src/stories/Dropdown/DropdownContextmenuDirective.stories.ts +16 -16
  414. package/src/stories/Dropdown/DropdownMultilevel.stories.ts +18 -18
  415. package/src/stories/Dropdown/DropdownSlots.stories.ts +50 -50
  416. package/src/stories/Icon/Icon.settings.ts +66 -65
  417. package/src/stories/Icon/Icon.stories.ts +28 -29
  418. package/src/stories/Icon/IconsCollection.stories.ts +22 -22
  419. package/src/stories/InputFile/InputFile.settings.ts +37 -0
  420. package/src/stories/InputFile/InputFile.stories.ts +89 -0
  421. package/src/stories/InputFile/InputFileDropArea.stories.ts +56 -0
  422. package/src/stories/InputFile/InputFileIconPosition.stories.ts +43 -0
  423. package/src/stories/InputFile/InputFileSlots.stories.ts +33 -0
  424. package/src/stories/InputText/InputText.settings.ts +246 -244
  425. package/src/stories/InputText/InputText.stories.ts +67 -67
  426. package/src/stories/InputText/InputText.test.ts +118 -121
  427. package/src/stories/InputText/InputTextIconPosition.stories.ts +24 -24
  428. package/src/stories/InputText/InputTextLength.stories.ts +33 -33
  429. package/src/stories/InputText/InputTextMask.stories.ts +91 -91
  430. package/src/stories/InputText/InputTextMinMax.stories.ts +30 -30
  431. package/src/stories/InputText/InputTextSlots.stories.ts +20 -20
  432. package/src/stories/InputText/InputTextType.stories.ts +70 -70
  433. package/src/stories/Nav/Nav.settings.ts +27 -27
  434. package/src/stories/Nav/Nav.stories.ts +18 -18
  435. package/src/stories/Nav/Nav.test.ts +10 -12
  436. package/src/stories/Nav/NavModifiers.stories.ts +25 -25
  437. package/src/stories/Progress/Progress.settings.ts +24 -23
  438. package/src/stories/Progress/Progress.stories.ts +23 -23
  439. package/src/stories/Progress/Progress.test.ts +4 -4
  440. package/src/stories/Radio/Radio.settings.ts +9 -9
  441. package/src/stories/Radio/Radio.stories.ts +47 -47
  442. package/src/stories/Radio/Radio.test.ts +54 -57
  443. package/src/stories/Radio/RadioSlots.stories.ts +15 -15
  444. package/src/stories/RadioGroup/RadioGroup.settings.ts +9 -9
  445. package/src/stories/RadioGroup/RadioGroup.stories.ts +51 -52
  446. package/src/stories/RadioGroup/RadioGroup.test.ts +63 -67
  447. package/src/stories/RadioGroup/RadioGroupOptions.stories.ts +35 -35
  448. package/src/stories/RadioGroup/RadioGroupSlots.stories.ts +23 -23
  449. package/src/stories/Select/Select.settings.ts +71 -70
  450. package/src/stories/Select/Select.stories.ts +75 -66
  451. package/src/stories/Select/Select.test.ts +67 -70
  452. package/src/stories/Select/SelectIconPosition.stories.ts +27 -26
  453. package/src/stories/Select/SelectOptions.stories.ts +55 -55
  454. package/src/stories/Select/SelectSlots.stories.ts +21 -20
  455. package/src/stories/Tab/Tab.settings.ts +34 -34
  456. package/src/stories/Tab/Tab.stories.ts +17 -17
  457. package/src/stories/Tab/Tab.test.ts +17 -19
  458. package/src/stories/Textarea/Textarea.settings.ts +79 -77
  459. package/src/stories/Textarea/Textarea.stories.ts +63 -63
  460. package/src/stories/Textarea/Textarea.test.ts +70 -73
  461. package/src/stories/Textarea/TextareaLength.stories.ts +33 -33
  462. package/src/stories/Textarea/TextareaSlots.stories.ts +20 -20
  463. package/src/stories/Textarea/TextareatIconPosition.stories.ts +24 -24
  464. package/src/stories/Tooltip/Tooltip.settings.ts +16 -17
  465. package/src/stories/Tooltip/Tooltip.stories.ts +18 -18
  466. package/src/stories/Tooltip/Tooltip.test.ts +53 -54
  467. package/src/stories/Tooltip/TooltipDirective.stories.ts +37 -37
  468. package/src/stories/argTypes.ts +506 -505
  469. package/src/test/expect.ts +72 -77
  470. package/src/test/options.ts +17 -16
  471. package/src/test/sleep.ts +3 -2
  472. package/src/test/types.d.ts +11 -11
  473. package/src/types/alert.ts +21 -17
  474. package/src/types/blurhash.ts +21 -0
  475. package/src/types/generic.ts +2 -3
  476. package/src/types/group.ts +34 -26
  477. package/src/types/index.ts +7 -0
  478. package/src/types/input-file.ts +18 -0
  479. package/src/types/nav.ts +13 -14
  480. package/src/utils/ObjectUtilities.ts +192 -188
  481. package/src/workers/blurhash.ts +9 -0
@@ -1,7 +1,12 @@
1
- import { unref, computed, isRef, defineComponent, h, inject, toRef, toRefs, useSlots, ref, watchEffect, watch, onMounted, openBlock, createElementBlock, normalizeClass, withDirectives, createElementVNode, vModelCheckbox, 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, watchEffect, watch, onMounted, openBlock, createElementBlock, normalizeClass, withDirectives, createElementVNode, vModelCheckbox, 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_CHECK_GROUP = Symbol.for("checkGroup");
52
+ const INJECTION_KEY_CHECK_GROUP = Symbol.for(
53
+ "checkGroup"
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
  }
@@ -627,16 +692,10 @@ function useGroupProps(props, emit) {
627
692
  const valid = getGroupOrLocalRef("valid", props);
628
693
  const invalid = getGroupOrLocalRef("invalid", props);
629
694
  const readonly = computed(
630
- () => {
631
- var _a;
632
- return Boolean(props.readonly || ((_a = group == null ? void 0 : group.value) == null ? void 0 : _a.readonly.value));
633
- }
695
+ () => Boolean(props.readonly || (group == null ? void 0 : group.readonly.value))
634
696
  );
635
697
  const disabled = computed(
636
- () => {
637
- var _a;
638
- return Boolean(props.disabled || ((_a = group == null ? void 0 : group.value) == null ? void 0 : _a.disabled.value));
639
- }
698
+ () => Boolean(props.disabled || (group == null ? void 0 : group.disabled.value))
640
699
  );
641
700
  return {
642
701
  // local props
@@ -709,7 +768,9 @@ function useDefaults(componentName, propsDefinition, props) {
709
768
  }, {});
710
769
  });
711
770
  }
712
- const useUniqueId = (id) => computed(() => String((id == null ? void 0 : id.value) || uid()));
771
+ function useUniqueId(id) {
772
+ return computed(() => String((id == null ? void 0 : id.value) || uid()));
773
+ }
713
774
  function useModifiers(prefix, modifiers, others) {
714
775
  return computed(() => {
715
776
  const toReturn = {
@@ -742,8 +803,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
742
803
  ...__default__$1,
743
804
  props: VvCheckboxProps,
744
805
  emits: VvCheckboxEvents,
745
- setup(__props, { emit }) {
806
+ setup(__props, { emit: __emit }) {
746
807
  const props = __props;
808
+ const emit = __emit;
747
809
  const slots = useSlots();
748
810
  const propsDefaults = useDefaults(
749
811
  "VvCheckbox",
@@ -807,8 +869,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
807
869
  if (isBinary.value) {
808
870
  modelValue.value = newValue ? props.value : props.uncheckedValue;
809
871
  } else if (Array.isArray(modelValue.value) || isInGroup.value) {
872
+ const currentValue = modelValue.value ?? [];
810
873
  const toReturn = new Set(
811
- Array.isArray(modelValue.value) ? modelValue.value : modelValue.value !== void 0 ? [modelValue.value] : []
874
+ Array.isArray(currentValue) ? currentValue : [currentValue]
812
875
  );
813
876
  if (newValue) {
814
877
  toReturn.add(props.value);
@@ -886,12 +949,19 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
886
949
  [vModelCheckbox, unref(localModelValue)]
887
950
  ]),
888
951
  renderSlot(_ctx.$slots, "default", { value: unref(modelValue) }, () => [
889
- createTextVNode(toDisplayString(_ctx.label), 1)
952
+ createTextVNode(
953
+ toDisplayString(_ctx.label),
954
+ 1
955
+ /* TEXT */
956
+ )
890
957
  ]),
891
958
  createVNode(unref(HintSlot), {
892
959
  id: unref(hasHintId),
893
960
  class: "vv-checkbox__hint"
894
- }, createSlots({ _: 2 }, [
961
+ }, createSlots({
962
+ _: 2
963
+ /* DYNAMIC */
964
+ }, [
895
965
  _ctx.$slots.hint ? {
896
966
  name: "hint",
897
967
  fn: withCtx(() => [
@@ -927,39 +997,48 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
927
997
  });
928
998
  const VvCheckboxGroupProps = CheckboxRadioGroupProps;
929
999
  const VvCheckboxGroupEvents = ["update:modelValue", "change"];
930
- function useProvideGroupState(groupState) {
931
- if (Object.keys(groupState).some(
932
- (k) => k !== "key" && !isRef(groupState[k])
933
- ))
934
- throw Error("One or more groupState props aren't ref.");
935
- provide(
936
- groupState.key,
937
- computed(() => groupState)
938
- );
1000
+ function useProvideGroupState(key, groupState) {
1001
+ provide(key, groupState);
939
1002
  }
940
1003
  function useOptions(props) {
941
1004
  const { options, labelKey, valueKey, disabledKey } = toRefs(props);
942
1005
  const getOptionLabel = (option) => {
943
- if (typeof option !== "object" && option !== null)
1006
+ if (typeof option === "string") {
944
1007
  return option;
1008
+ }
1009
+ if (typeof labelKey.value === "function") {
1010
+ return labelKey.value(option);
1011
+ }
945
1012
  return String(
946
- typeof labelKey.value === "function" ? labelKey.value(option) : get(option, labelKey.value)
1013
+ labelKey.value ? get(option, labelKey.value) : option
947
1014
  );
948
1015
  };
949
1016
  const getOptionValue = (option) => {
950
- if (typeof option !== "object" && option !== null)
1017
+ if (typeof option === "string") {
951
1018
  return option;
952
- return typeof valueKey.value === "function" ? valueKey.value(option) : get(option, valueKey.value);
1019
+ }
1020
+ if (typeof valueKey.value === "function") {
1021
+ return valueKey.value(option);
1022
+ }
1023
+ return valueKey.value ? get(option, valueKey.value) : option;
953
1024
  };
954
1025
  const isOptionDisabled = (option) => {
955
- if (typeof option !== "object" && option !== null)
1026
+ if (typeof option === "string") {
956
1027
  return false;
957
- return typeof disabledKey.value === "function" ? disabledKey.value(option) : get(option, disabledKey.value);
1028
+ }
1029
+ if (typeof disabledKey.value === "function") {
1030
+ return disabledKey.value(option);
1031
+ }
1032
+ return disabledKey.value ? get(option, disabledKey.value) : false;
958
1033
  };
959
1034
  const getOptionGrouped = (option) => {
960
- if (typeof option !== "object" && option !== null)
1035
+ if (typeof option == "string") {
961
1036
  return [];
962
- return option.options || [];
1037
+ }
1038
+ if (typeof option === "object" && option && "options" in option) {
1039
+ return option.options;
1040
+ }
1041
+ return [];
963
1042
  };
964
1043
  return {
965
1044
  options,
@@ -978,8 +1057,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
978
1057
  ...__default__,
979
1058
  props: VvCheckboxGroupProps,
980
1059
  emits: VvCheckboxGroupEvents,
981
- setup(__props, { emit }) {
1060
+ setup(__props, { emit: __emit }) {
982
1061
  const props = __props;
1062
+ const emit = __emit;
983
1063
  const slots = useSlots();
984
1064
  const propsDefaults = useDefaults(
985
1065
  "VvCheckboxGroup",
@@ -988,8 +1068,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
988
1068
  );
989
1069
  const modelValue = useVModel(props, "modelValue", emit);
990
1070
  const { disabled, readonly, vertical, valid, invalid, modifiers } = toRefs(props);
991
- useProvideGroupState({
992
- key: INJECTION_KEY_CHECK_GROUP,
1071
+ useProvideGroupState(INJECTION_KEY_CHECK_GROUP, {
993
1072
  modelValue,
994
1073
  disabled,
995
1074
  readonly,
@@ -1008,59 +1087,89 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1008
1087
  invalid: invalid.value
1009
1088
  }))
1010
1089
  );
1011
- const getOptionProps = (option, index) => {
1090
+ function getOptionProps(option, index) {
1012
1091
  return {
1013
1092
  id: `${props.name}_opt${index}`,
1014
1093
  name: props.name,
1015
1094
  label: getOptionLabel(option),
1016
1095
  value: getOptionValue(option)
1017
1096
  };
1018
- };
1097
+ }
1019
1098
  const { HintSlot, hintSlotScope } = HintSlotFactory(propsDefaults, slots);
1020
1099
  return (_ctx, _cache) => {
1021
- return openBlock(), createElementBlock("fieldset", {
1022
- class: normalizeClass(unref(bemCssClasses))
1023
- }, [
1024
- _ctx.label ? (openBlock(), createElementBlock("legend", {
1025
- key: 0,
1026
- textContent: toDisplayString(_ctx.label)
1027
- }, null, 8, _hoisted_1)) : createCommentVNode("", true),
1028
- createElementVNode("div", _hoisted_2, [
1029
- _ctx.options.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(_ctx.options, (option, index) => {
1030
- return openBlock(), createBlock(_sfc_main$1, mergeProps({ key: index }, getOptionProps(option, index)), null, 16);
1031
- }), 128)) : renderSlot(_ctx.$slots, "default", { key: 1 })
1032
- ]),
1033
- createVNode(unref(HintSlot), { class: "vv-checkbox-group__hint" }, createSlots({ _: 2 }, [
1034
- _ctx.$slots.hint ? {
1035
- name: "hint",
1036
- fn: withCtx(() => [
1037
- renderSlot(_ctx.$slots, "hint", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1038
- ]),
1039
- key: "0"
1040
- } : void 0,
1041
- _ctx.$slots.loading ? {
1042
- name: "loading",
1043
- fn: withCtx(() => [
1044
- renderSlot(_ctx.$slots, "loading", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1045
- ]),
1046
- key: "1"
1047
- } : void 0,
1048
- _ctx.$slots.valid ? {
1049
- name: "valid",
1050
- fn: withCtx(() => [
1051
- renderSlot(_ctx.$slots, "valid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1052
- ]),
1053
- key: "2"
1054
- } : void 0,
1055
- _ctx.$slots.invalid ? {
1056
- name: "invalid",
1057
- fn: withCtx(() => [
1058
- renderSlot(_ctx.$slots, "invalid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1100
+ return openBlock(), createElementBlock(
1101
+ "fieldset",
1102
+ {
1103
+ class: normalizeClass(unref(bemCssClasses))
1104
+ },
1105
+ [
1106
+ _ctx.label ? (openBlock(), createElementBlock("legend", {
1107
+ key: 0,
1108
+ textContent: toDisplayString(_ctx.label)
1109
+ }, null, 8, _hoisted_1)) : createCommentVNode("v-if", true),
1110
+ createElementVNode("div", _hoisted_2, [
1111
+ _ctx.options.length > 0 ? (openBlock(true), createElementBlock(
1112
+ Fragment,
1113
+ { key: 0 },
1114
+ renderList(_ctx.options, (option, index) => {
1115
+ return openBlock(), createBlock(
1116
+ _sfc_main$1,
1117
+ mergeProps({
1118
+ key: index,
1119
+ ref_for: true
1120
+ }, getOptionProps(option, index)),
1121
+ null,
1122
+ 16
1123
+ /* FULL_PROPS */
1124
+ );
1125
+ }),
1126
+ 128
1127
+ /* KEYED_FRAGMENT */
1128
+ )) : renderSlot(_ctx.$slots, "default", { key: 1 })
1129
+ ]),
1130
+ createVNode(
1131
+ unref(HintSlot),
1132
+ { class: "vv-checkbox-group__hint" },
1133
+ createSlots({
1134
+ _: 2
1135
+ /* DYNAMIC */
1136
+ }, [
1137
+ _ctx.$slots.hint ? {
1138
+ name: "hint",
1139
+ fn: withCtx(() => [
1140
+ renderSlot(_ctx.$slots, "hint", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1141
+ ]),
1142
+ key: "0"
1143
+ } : void 0,
1144
+ _ctx.$slots.loading ? {
1145
+ name: "loading",
1146
+ fn: withCtx(() => [
1147
+ renderSlot(_ctx.$slots, "loading", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1148
+ ]),
1149
+ key: "1"
1150
+ } : void 0,
1151
+ _ctx.$slots.valid ? {
1152
+ name: "valid",
1153
+ fn: withCtx(() => [
1154
+ renderSlot(_ctx.$slots, "valid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1155
+ ]),
1156
+ key: "2"
1157
+ } : void 0,
1158
+ _ctx.$slots.invalid ? {
1159
+ name: "invalid",
1160
+ fn: withCtx(() => [
1161
+ renderSlot(_ctx.$slots, "invalid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
1162
+ ]),
1163
+ key: "3"
1164
+ } : void 0
1059
1165
  ]),
1060
- key: "3"
1061
- } : void 0
1062
- ]), 1024)
1063
- ], 2);
1166
+ 1024
1167
+ /* DYNAMIC_SLOTS */
1168
+ )
1169
+ ],
1170
+ 2
1171
+ /* CLASS */
1172
+ );
1064
1173
  };
1065
1174
  }
1066
1175
  });