@volverjs/ui-vue 0.0.3-beta.4 → 0.0.3

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 (830) hide show
  1. package/README.md +4 -3
  2. package/auto-imports.d.ts +10 -6
  3. package/bin/icons.cjs +8 -8
  4. package/bin/icons.js +8 -8
  5. package/dist/Volver.d.ts +39 -13
  6. package/dist/components/VvAccordion/VvAccordion.es.js +68 -41
  7. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  8. package/dist/components/VvAccordion/index.d.ts +2 -2
  9. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +128 -79
  10. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  11. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +1 -1
  12. package/dist/components/VvBadge/VvBadge.es.js +22 -17
  13. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  14. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +48 -57
  15. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  16. package/dist/components/VvButton/VvButton.es.js +313 -172
  17. package/dist/components/VvButton/VvButton.umd.js +1 -1
  18. package/dist/components/VvButton/VvButton.vue.d.ts +21 -24
  19. package/dist/components/VvButton/index.d.ts +13 -19
  20. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +55 -40
  21. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  22. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +1 -1
  23. package/dist/components/VvCard/VvCard.es.js +22 -24
  24. package/dist/components/VvCard/VvCard.umd.js +1 -1
  25. package/dist/components/VvCheckbox/VvCheckbox.es.js +197 -138
  26. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  27. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +5 -3
  28. package/dist/components/VvCheckbox/index.d.ts +5 -9
  29. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +270 -181
  30. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  31. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +12 -1
  32. package/dist/components/VvCheckboxGroup/index.d.ts +5 -0
  33. package/dist/components/VvCombobox/VvCombobox.es.js +1127 -452
  34. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  35. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +254 -21
  36. package/dist/components/VvCombobox/index.d.ts +134 -13
  37. package/dist/components/VvDialog/VvDialog.es.js +169 -78
  38. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  39. package/dist/components/VvDialog/VvDialog.vue.d.ts +3 -9
  40. package/dist/components/VvDialog/index.d.ts +16 -4
  41. package/dist/components/VvDropdown/VvDropdown.es.js +331 -90
  42. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  43. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +184 -51
  44. package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +9 -0
  45. package/dist/components/VvDropdown/index.d.ts +73 -31
  46. package/dist/components/VvDropdownItem/VvDropdownItem.es.js +23 -0
  47. package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -0
  48. package/dist/components/VvIcon/VvIcon.es.js +82 -19
  49. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  50. package/dist/components/VvInputText/VvInputText.es.js +509 -294
  51. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  52. package/dist/components/VvInputText/VvInputText.vue.d.ts +10 -10
  53. package/dist/components/VvInputText/index.d.ts +4 -4
  54. package/dist/components/VvProgress/VvProgress.es.js +43 -19
  55. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  56. package/dist/components/VvRadio/VvRadio.es.js +159 -114
  57. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  58. package/dist/components/VvRadio/VvRadio.vue.d.ts +4 -2
  59. package/dist/components/VvRadio/index.d.ts +5 -3
  60. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +233 -158
  61. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  62. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +12 -1
  63. package/dist/components/VvRadioGroup/index.d.ts +5 -0
  64. package/dist/components/VvSelect/VvSelect.es.js +366 -201
  65. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  66. package/dist/components/VvSelect/VvSelect.vue.d.ts +33 -17
  67. package/dist/components/VvSelect/index.d.ts +8 -4
  68. package/dist/components/VvTextarea/VvTextarea.es.js +381 -202
  69. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  70. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +9 -9
  71. package/dist/components/VvTextarea/index.d.ts +8 -5
  72. package/dist/components/VvTooltip/VvTooltip.es.js +34 -14
  73. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  74. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +11 -5
  75. package/dist/components/VvTooltip/index.d.ts +7 -9
  76. package/dist/components/index.es.js +2324 -1339
  77. package/dist/components/index.umd.js +1 -1
  78. package/dist/composables/dropdown/useInjectDropdown.d.ts +31 -0
  79. package/dist/composables/dropdown/useProvideDropdown.d.ts +36 -0
  80. package/dist/composables/group/useInjectedGroupState.d.ts +4 -4
  81. package/dist/composables/group/useProvideGroupState.d.ts +2 -2
  82. package/dist/composables/useComponentIcon.d.ts +10 -0
  83. package/dist/composables/useModifiers.d.ts +1 -9
  84. package/dist/composables/useOptions.d.ts +2 -1
  85. package/dist/composables/useUniqueId.d.ts +2 -0
  86. package/dist/composables/useVolver.d.ts +2 -0
  87. package/dist/constants.d.ts +29 -4
  88. package/dist/directives/index.d.ts +4 -0
  89. package/dist/directives/v-tooltip.d.ts +3 -0
  90. package/dist/icons.d.ts +9 -0
  91. package/dist/icons.es.js +30 -21
  92. package/dist/icons.umd.js +1 -1
  93. package/dist/index.d.ts +1 -1
  94. package/dist/index.es.js +2463 -1393
  95. package/dist/index.umd.js +1 -1
  96. package/dist/props/index.d.ts +149 -23
  97. package/dist/resolvers/unplugin.es.js +20 -20
  98. package/dist/resolvers/unplugin.umd.js +1 -1
  99. package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +14 -0
  100. package/dist/stories/Combobox/Combobox.settings.d.ts +226 -3
  101. package/dist/stories/Dropdown/Dropdown.settings.d.ts +138 -28
  102. package/dist/stories/Dropdown/Dropdown.test.d.ts +1 -1
  103. package/dist/stories/InputText/InputText.settings.d.ts +24 -24
  104. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +14 -0
  105. package/dist/stories/Select/Select.settings.d.ts +15 -1
  106. package/dist/stories/Textarea/Textarea.settings.d.ts +24 -24
  107. package/dist/stories/Tooltip/Tooltip.settings.d.ts +1 -1
  108. package/dist/stories/argTypes.d.ts +164 -3
  109. package/package.json +51 -42
  110. package/src/Volver.ts +145 -33
  111. package/src/assets/icons/detailed/add-circle.svg +12 -1
  112. package/src/assets/icons/detailed/add.svg +8 -1
  113. package/src/assets/icons/detailed/align-center.svg +12 -1
  114. package/src/assets/icons/detailed/align-justify.svg +12 -1
  115. package/src/assets/icons/detailed/align-left.svg +12 -1
  116. package/src/assets/icons/detailed/align-right.svg +12 -1
  117. package/src/assets/icons/detailed/analysis-2.svg +20 -1
  118. package/src/assets/icons/detailed/analysis-3.svg +8 -1
  119. package/src/assets/icons/detailed/analysis.svg +16 -1
  120. package/src/assets/icons/detailed/apple.svg +16 -1
  121. package/src/assets/icons/detailed/arrow-down.svg +8 -1
  122. package/src/assets/icons/detailed/arrow-left.svg +8 -1
  123. package/src/assets/icons/detailed/arrow-right.svg +8 -1
  124. package/src/assets/icons/detailed/arrow-up.svg +8 -1
  125. package/src/assets/icons/detailed/attachment.svg +8 -1
  126. package/src/assets/icons/detailed/back-to-front.svg +17 -1
  127. package/src/assets/icons/detailed/bell-active.svg +14 -1
  128. package/src/assets/icons/detailed/bell.svg +14 -1
  129. package/src/assets/icons/detailed/bold.svg +8 -1
  130. package/src/assets/icons/detailed/bookmark-active.svg +12 -1
  131. package/src/assets/icons/detailed/bookmark.svg +12 -1
  132. package/src/assets/icons/detailed/building.svg +26 -1
  133. package/src/assets/icons/detailed/bullet-list.svg +22 -1
  134. package/src/assets/icons/detailed/calendar.svg +26 -1
  135. package/src/assets/icons/detailed/camera-off.svg +12 -1
  136. package/src/assets/icons/detailed/camera-on.svg +17 -1
  137. package/src/assets/icons/detailed/catalog.svg +15 -1
  138. package/src/assets/icons/detailed/certificate.svg +10 -1
  139. package/src/assets/icons/detailed/chat.svg +6 -1
  140. package/src/assets/icons/detailed/check-badge.svg +9 -1
  141. package/src/assets/icons/detailed/check-circle.svg +10 -1
  142. package/src/assets/icons/detailed/check.svg +6 -1
  143. package/src/assets/icons/detailed/checkbox.svg +8 -1
  144. package/src/assets/icons/detailed/chevron-down-circle.svg +10 -1
  145. package/src/assets/icons/detailed/chevron-down.svg +6 -1
  146. package/src/assets/icons/detailed/chevron-left-circle.svg +10 -1
  147. package/src/assets/icons/detailed/chevron-left.svg +6 -1
  148. package/src/assets/icons/detailed/chevron-right-circle.svg +7 -1
  149. package/src/assets/icons/detailed/chevron-up-circle.svg +10 -1
  150. package/src/assets/icons/detailed/chevron-up.svg +6 -1
  151. package/src/assets/icons/detailed/circle.svg +8 -0
  152. package/src/assets/icons/detailed/classroom.svg +38 -1
  153. package/src/assets/icons/detailed/clear-field.svg +14 -1
  154. package/src/assets/icons/detailed/clear-style.svg +9 -1
  155. package/src/assets/icons/detailed/close-circle.svg +14 -1
  156. package/src/assets/icons/detailed/close-loader.svg +6 -1
  157. package/src/assets/icons/detailed/close.svg +8 -1
  158. package/src/assets/icons/detailed/coffee.svg +21 -1
  159. package/src/assets/icons/detailed/color.svg +20 -1
  160. package/src/assets/icons/detailed/contact-us.svg +27 -1
  161. package/src/assets/icons/detailed/copy.svg +10 -1
  162. package/src/assets/icons/detailed/courses.svg +22 -1
  163. package/src/assets/icons/detailed/dashboard.svg +20 -1
  164. package/src/assets/icons/detailed/download.svg +10 -1
  165. package/src/assets/icons/detailed/drag.svg +10 -1
  166. package/src/assets/icons/detailed/duplicate.svg +23 -1
  167. package/src/assets/icons/detailed/edit.svg +16 -1
  168. package/src/assets/icons/detailed/elearning.svg +13 -1
  169. package/src/assets/icons/detailed/email.svg +11 -1
  170. package/src/assets/icons/detailed/error-2.svg +8 -1
  171. package/src/assets/icons/detailed/error.svg +12 -1
  172. package/src/assets/icons/detailed/exercise.svg +26 -1
  173. package/src/assets/icons/detailed/external-link.svg +11 -1
  174. package/src/assets/icons/detailed/extract.svg +20 -1
  175. package/src/assets/icons/detailed/eye-off.svg +15 -1
  176. package/src/assets/icons/detailed/eye-on.svg +8 -1
  177. package/src/assets/icons/detailed/fail.svg +11 -1
  178. package/src/assets/icons/detailed/fast-back.svg +20 -1
  179. package/src/assets/icons/detailed/fast-forward.svg +20 -1
  180. package/src/assets/icons/detailed/file-add.svg +19 -1
  181. package/src/assets/icons/detailed/file-duplicate.svg +16 -1
  182. package/src/assets/icons/detailed/file-remove.svg +17 -1
  183. package/src/assets/icons/detailed/file-required.svg +23 -1
  184. package/src/assets/icons/detailed/file.svg +13 -1
  185. package/src/assets/icons/detailed/filter-2.svg +22 -1
  186. package/src/assets/icons/detailed/filter-active.svg +12 -1
  187. package/src/assets/icons/detailed/filter.svg +12 -1
  188. package/src/assets/icons/detailed/flag.svg +11 -1
  189. package/src/assets/icons/detailed/folder.svg +14 -1
  190. package/src/assets/icons/detailed/full-width.svg +11 -1
  191. package/src/assets/icons/detailed/go-to-back.svg +19 -1
  192. package/src/assets/icons/detailed/grid.svg +20 -1
  193. package/src/assets/icons/detailed/group-add.svg +24 -1
  194. package/src/assets/icons/detailed/group.svg +16 -1
  195. package/src/assets/icons/detailed/heart-active.svg +12 -1
  196. package/src/assets/icons/detailed/heart.svg +12 -1
  197. package/src/assets/icons/detailed/highlighter.svg +10 -1
  198. package/src/assets/icons/detailed/home.svg +12 -1
  199. package/src/assets/icons/detailed/hourglass.svg +12 -1
  200. package/src/assets/icons/detailed/image.svg +15 -1
  201. package/src/assets/icons/detailed/info-badge.svg +9 -1
  202. package/src/assets/icons/detailed/information.svg +12 -1
  203. package/src/assets/icons/detailed/italic.svg +10 -1
  204. package/src/assets/icons/detailed/key.svg +5 -1
  205. package/src/assets/icons/detailed/language.svg +14 -1
  206. package/src/assets/icons/detailed/learning-path.svg +7 -1
  207. package/src/assets/icons/detailed/light-off.svg +10 -1
  208. package/src/assets/icons/detailed/light-on.svg +18 -1
  209. package/src/assets/icons/detailed/link.svg +12 -1
  210. package/src/assets/icons/detailed/lock.svg +13 -1
  211. package/src/assets/icons/detailed/login.svg +11 -1
  212. package/src/assets/icons/detailed/logout.svg +11 -1
  213. package/src/assets/icons/detailed/maximaze.svg +12 -1
  214. package/src/assets/icons/detailed/menu.svg +9 -1
  215. package/src/assets/icons/detailed/merge.svg +20 -1
  216. package/src/assets/icons/detailed/minimize.svg +14 -1
  217. package/src/assets/icons/detailed/mixed-class.svg +40 -1
  218. package/src/assets/icons/detailed/more-horizontal.svg +7 -1
  219. package/src/assets/icons/detailed/more-vertical.svg +7 -1
  220. package/src/assets/icons/detailed/news.svg +12 -1
  221. package/src/assets/icons/detailed/no-prerequisites.svg +13 -1
  222. package/src/assets/icons/detailed/notes.svg +14 -1
  223. package/src/assets/icons/detailed/number-code.svg +34 -1
  224. package/src/assets/icons/detailed/numbered-list.svg +18 -1
  225. package/src/assets/icons/detailed/on-site.svg +22 -1
  226. package/src/assets/icons/detailed/order-down.svg +12 -1
  227. package/src/assets/icons/detailed/order-up.svg +12 -1
  228. package/src/assets/icons/detailed/paste.svg +14 -1
  229. package/src/assets/icons/detailed/pausa.svg +8 -1
  230. package/src/assets/icons/detailed/pdf.svg +12 -1
  231. package/src/assets/icons/detailed/phone.svg +10 -1
  232. package/src/assets/icons/detailed/pin-map.svg +12 -1
  233. package/src/assets/icons/detailed/pin.svg +15 -1
  234. package/src/assets/icons/detailed/pizza.svg +17 -1
  235. package/src/assets/icons/detailed/play.svg +11 -1
  236. package/src/assets/icons/detailed/plug-in.svg +10 -1
  237. package/src/assets/icons/detailed/pointer.svg +12 -1
  238. package/src/assets/icons/detailed/printer.svg +26 -1
  239. package/src/assets/icons/detailed/profile-add.svg +20 -1
  240. package/src/assets/icons/detailed/profile.svg +10 -1
  241. package/src/assets/icons/detailed/push-pin-off.svg +11 -1
  242. package/src/assets/icons/detailed/push-pin-on.svg +9 -1
  243. package/src/assets/icons/detailed/qrcode.svg +28 -1
  244. package/src/assets/icons/detailed/question-badge.svg +10 -1
  245. package/src/assets/icons/detailed/radio.svg +8 -1
  246. package/src/assets/icons/detailed/redo.svg +9 -1
  247. package/src/assets/icons/detailed/relations.svg +32 -1
  248. package/src/assets/icons/detailed/reload.svg +13 -1
  249. package/src/assets/icons/detailed/remove-circle.svg +10 -1
  250. package/src/assets/icons/detailed/remove.svg +5 -1
  251. package/src/assets/icons/detailed/reorder.svg +12 -1
  252. package/src/assets/icons/detailed/repeat.svg +12 -1
  253. package/src/assets/icons/detailed/repository.svg +18 -1
  254. package/src/assets/icons/detailed/request-form.svg +18 -1
  255. package/src/assets/icons/detailed/resize-100%.svg +15 -1
  256. package/src/assets/icons/detailed/resize-height.svg +12 -1
  257. package/src/assets/icons/detailed/resize-width.svg +12 -1
  258. package/src/assets/icons/detailed/search.svg +12 -1
  259. package/src/assets/icons/detailed/sequential-prerequisites.svg +20 -1
  260. package/src/assets/icons/detailed/settings.svg +14 -1
  261. package/src/assets/icons/detailed/share.svg +20 -1
  262. package/src/assets/icons/detailed/sketch.svg +12 -1
  263. package/src/assets/icons/detailed/skills.svg +20 -1
  264. package/src/assets/icons/detailed/skip-back.svg +12 -1
  265. package/src/assets/icons/detailed/skip-forward.svg +13 -1
  266. package/src/assets/icons/detailed/sms.svg +18 -1
  267. package/src/assets/icons/detailed/sso-access.svg +18 -1
  268. package/src/assets/icons/detailed/star-active.svg +6 -1
  269. package/src/assets/icons/detailed/star.svg +6 -1
  270. package/src/assets/icons/detailed/success.svg +10 -1
  271. package/src/assets/icons/detailed/sun.svg +24 -1
  272. package/src/assets/icons/detailed/sunrise.svg +18 -1
  273. package/src/assets/icons/detailed/support.svg +18 -1
  274. package/src/assets/icons/detailed/survey.svg +24 -1
  275. package/src/assets/icons/detailed/table.svg +11 -1
  276. package/src/assets/icons/detailed/tematic-channels.svg +12 -1
  277. package/src/assets/icons/detailed/test.svg +14 -1
  278. package/src/assets/icons/detailed/text-body.svg +8 -1
  279. package/src/assets/icons/detailed/text-edit.svg +11 -1
  280. package/src/assets/icons/detailed/text-style.svg +10 -1
  281. package/src/assets/icons/detailed/time.svg +10 -1
  282. package/src/assets/icons/detailed/toilet-piper.svg +15 -1
  283. package/src/assets/icons/detailed/training-points.svg +16 -1
  284. package/src/assets/icons/detailed/trash.svg +19 -1
  285. package/src/assets/icons/detailed/underline.svg +8 -1
  286. package/src/assets/icons/detailed/undo.svg +9 -1
  287. package/src/assets/icons/detailed/unlock.svg +13 -1
  288. package/src/assets/icons/detailed/upload.svg +10 -1
  289. package/src/assets/icons/detailed/user-add.svg +16 -1
  290. package/src/assets/icons/detailed/user-badge.svg +11 -1
  291. package/src/assets/icons/detailed/user.svg +8 -1
  292. package/src/assets/icons/detailed/video-off.svg +17 -1
  293. package/src/assets/icons/detailed/video-on.svg +16 -1
  294. package/src/assets/icons/detailed/video-rec.svg +19 -1
  295. package/src/assets/icons/detailed/view-card.svg +12 -1
  296. package/src/assets/icons/detailed/view-list.svg +20 -1
  297. package/src/assets/icons/detailed/view.svg +7 -1
  298. package/src/assets/icons/detailed/voice-off.svg +14 -1
  299. package/src/assets/icons/detailed/voice-on.svg +16 -1
  300. package/src/assets/icons/detailed/volume-down.svg +14 -1
  301. package/src/assets/icons/detailed/volume-off.svg +19 -1
  302. package/src/assets/icons/detailed/volume-up.svg +16 -1
  303. package/src/assets/icons/detailed/warning.svg +16 -1
  304. package/src/assets/icons/detailed/webinar.svg +57 -1
  305. package/src/assets/icons/detailed/whiteboard.svg +16 -1
  306. package/src/assets/icons/detailed/wine.svg +22 -1
  307. package/src/assets/icons/detailed/zip.svg +17 -1
  308. package/src/assets/icons/detailed/zoom-in.svg +18 -1
  309. package/src/assets/icons/detailed/zoom-out.svg +16 -1
  310. package/src/assets/icons/detailed.json +1 -1
  311. package/src/assets/icons/normal/add-circle.svg +12 -1
  312. package/src/assets/icons/normal/add.svg +4 -1
  313. package/src/assets/icons/normal/align-center.svg +11 -1
  314. package/src/assets/icons/normal/align-justify.svg +11 -1
  315. package/src/assets/icons/normal/align-left.svg +11 -1
  316. package/src/assets/icons/normal/align-right.svg +11 -1
  317. package/src/assets/icons/normal/analysis-2.svg +18 -1
  318. package/src/assets/icons/normal/analysis-3.svg +8 -1
  319. package/src/assets/icons/normal/analysis.svg +14 -1
  320. package/src/assets/icons/normal/apple.svg +16 -1
  321. package/src/assets/icons/normal/arrow-down.svg +8 -1
  322. package/src/assets/icons/normal/arrow-left.svg +8 -1
  323. package/src/assets/icons/normal/arrow-right.svg +8 -1
  324. package/src/assets/icons/normal/arrow-up.svg +8 -1
  325. package/src/assets/icons/normal/attachment.svg +6 -1
  326. package/src/assets/icons/normal/back-to-front.svg +15 -1
  327. package/src/assets/icons/normal/bell-active.svg +14 -1
  328. package/src/assets/icons/normal/bell.svg +14 -1
  329. package/src/assets/icons/normal/bold.svg +8 -1
  330. package/src/assets/icons/normal/bookmark active.svg +12 -1
  331. package/src/assets/icons/normal/bookmark.svg +10 -1
  332. package/src/assets/icons/normal/building.svg +21 -1
  333. package/src/assets/icons/normal/bulleted-list.svg +23 -1
  334. package/src/assets/icons/normal/calendar.svg +20 -1
  335. package/src/assets/icons/normal/camera-off.svg +17 -1
  336. package/src/assets/icons/normal/camera-on.svg +16 -1
  337. package/src/assets/icons/normal/catalog.svg +13 -1
  338. package/src/assets/icons/normal/certificate.svg +12 -1
  339. package/src/assets/icons/normal/chat.svg +6 -1
  340. package/src/assets/icons/normal/check-badge.svg +9 -1
  341. package/src/assets/icons/normal/check-circle.svg +10 -1
  342. package/src/assets/icons/normal/check.svg +4 -1
  343. package/src/assets/icons/normal/checkbox.svg +8 -1
  344. package/src/assets/icons/normal/chevron-down-circle.svg +10 -1
  345. package/src/assets/icons/normal/chevron-down.svg +6 -1
  346. package/src/assets/icons/normal/chevron-left-circle.svg +10 -1
  347. package/src/assets/icons/normal/chevron-left.svg +6 -1
  348. package/src/assets/icons/normal/chevron-right-circle.svg +10 -1
  349. package/src/assets/icons/normal/chevron-right.svg +7 -1
  350. package/src/assets/icons/normal/chevron-up-circle.svg +10 -1
  351. package/src/assets/icons/normal/chevron-up.svg +6 -1
  352. package/src/assets/icons/normal/circle.svg +8 -0
  353. package/src/assets/icons/normal/classroom.svg +36 -1
  354. package/src/assets/icons/normal/clear-field.svg +14 -1
  355. package/src/assets/icons/normal/clear-style.svg +18 -1
  356. package/src/assets/icons/normal/close-circle.svg +14 -1
  357. package/src/assets/icons/normal/close-loader.svg +6 -1
  358. package/src/assets/icons/normal/close.svg +8 -1
  359. package/src/assets/icons/normal/coffee.svg +26 -1
  360. package/src/assets/icons/normal/color.svg +18 -1
  361. package/src/assets/icons/normal/contact-us.svg +29 -1
  362. package/src/assets/icons/normal/copy.svg +10 -1
  363. package/src/assets/icons/normal/courses.svg +22 -1
  364. package/src/assets/icons/normal/dashboard.svg +18 -1
  365. package/src/assets/icons/normal/download.svg +10 -1
  366. package/src/assets/icons/normal/drag.svg +5 -1
  367. package/src/assets/icons/normal/dulicate.svg +22 -1
  368. package/src/assets/icons/normal/edit.svg +16 -1
  369. package/src/assets/icons/normal/elearning.svg +16 -1
  370. package/src/assets/icons/normal/email.svg +11 -1
  371. package/src/assets/icons/normal/error-2.svg +8 -1
  372. package/src/assets/icons/normal/error.svg +12 -1
  373. package/src/assets/icons/normal/exercise.svg +26 -1
  374. package/src/assets/icons/normal/external-link.svg +11 -1
  375. package/src/assets/icons/normal/extract.svg +14 -1
  376. package/src/assets/icons/normal/eye-off.svg +14 -1
  377. package/src/assets/icons/normal/eye-on.svg +16 -1
  378. package/src/assets/icons/normal/fail.svg +11 -1
  379. package/src/assets/icons/normal/fast-back.svg +19 -1
  380. package/src/assets/icons/normal/fast-forward.svg +17 -1
  381. package/src/assets/icons/normal/file-add.svg +16 -1
  382. package/src/assets/icons/normal/file-duplicate.svg +22 -1
  383. package/src/assets/icons/normal/file-remove.svg +14 -1
  384. package/src/assets/icons/normal/file-required.svg +24 -1
  385. package/src/assets/icons/normal/file.svg +13 -1
  386. package/src/assets/icons/normal/filter-2.svg +20 -1
  387. package/src/assets/icons/normal/filter-active.svg +12 -1
  388. package/src/assets/icons/normal/filter.svg +12 -1
  389. package/src/assets/icons/normal/flag.svg +10 -1
  390. package/src/assets/icons/normal/folder.svg +12 -1
  391. package/src/assets/icons/normal/full-width.svg +9 -1
  392. package/src/assets/icons/normal/go-to-back.svg +19 -1
  393. package/src/assets/icons/normal/grid.svg +20 -1
  394. package/src/assets/icons/normal/group-add.svg +18 -1
  395. package/src/assets/icons/normal/group.svg +14 -1
  396. package/src/assets/icons/normal/heart-active.svg +10 -1
  397. package/src/assets/icons/normal/heart.svg +10 -1
  398. package/src/assets/icons/normal/highlighter.svg +11 -1
  399. package/src/assets/icons/normal/home.svg +12 -1
  400. package/src/assets/icons/normal/hourglass.svg +8 -1
  401. package/src/assets/icons/normal/image.svg +15 -1
  402. package/src/assets/icons/normal/info-badge.svg +9 -1
  403. package/src/assets/icons/normal/information.svg +12 -1
  404. package/src/assets/icons/normal/italic.svg +10 -1
  405. package/src/assets/icons/normal/key.svg +8 -1
  406. package/src/assets/icons/normal/language.svg +14 -1
  407. package/src/assets/icons/normal/learning-path.svg +7 -1
  408. package/src/assets/icons/normal/light-off.svg +10 -1
  409. package/src/assets/icons/normal/light-on.svg +17 -1
  410. package/src/assets/icons/normal/link.svg +12 -1
  411. package/src/assets/icons/normal/lock.svg +12 -1
  412. package/src/assets/icons/normal/login.svg +10 -1
  413. package/src/assets/icons/normal/logout.svg +10 -1
  414. package/src/assets/icons/normal/maximize.svg +10 -1
  415. package/src/assets/icons/normal/menu.svg +8 -1
  416. package/src/assets/icons/normal/merge.svg +20 -1
  417. package/src/assets/icons/normal/minimize.svg +12 -1
  418. package/src/assets/icons/normal/mixed-class.svg +36 -1
  419. package/src/assets/icons/normal/more-horizontal.svg +7 -1
  420. package/src/assets/icons/normal/more-vertical.svg +7 -1
  421. package/src/assets/icons/normal/news.svg +9 -1
  422. package/src/assets/icons/normal/no-prerequisites.svg +12 -1
  423. package/src/assets/icons/normal/notes.svg +15 -1
  424. package/src/assets/icons/normal/number-code.svg +34 -1
  425. package/src/assets/icons/normal/numbered-list.svg +19 -1
  426. package/src/assets/icons/normal/on-site.svg +18 -1
  427. package/src/assets/icons/normal/order-down.svg +12 -1
  428. package/src/assets/icons/normal/order-up.svg +11 -1
  429. package/src/assets/icons/normal/paste.svg +14 -1
  430. package/src/assets/icons/normal/pausa.svg +7 -1
  431. package/src/assets/icons/normal/pdf.svg +12 -1
  432. package/src/assets/icons/normal/phone.svg +10 -1
  433. package/src/assets/icons/normal/pin-map.svg +10 -1
  434. package/src/assets/icons/normal/pin.svg +12 -1
  435. package/src/assets/icons/normal/pizza.svg +17 -1
  436. package/src/assets/icons/normal/play.svg +9 -1
  437. package/src/assets/icons/normal/plug-in.svg +10 -1
  438. package/src/assets/icons/normal/pointer.svg +12 -1
  439. package/src/assets/icons/normal/printer.svg +28 -1
  440. package/src/assets/icons/normal/profile-add.svg +28 -1
  441. package/src/assets/icons/normal/profile.svg +15 -1
  442. package/src/assets/icons/normal/push pin on.svg +9 -1
  443. package/src/assets/icons/normal/push-pin-off.svg +23 -1
  444. package/src/assets/icons/normal/qrcode.svg +26 -1
  445. package/src/assets/icons/normal/question-badge.svg +10 -1
  446. package/src/assets/icons/normal/radio.svg +8 -1
  447. package/src/assets/icons/normal/redo.svg +9 -1
  448. package/src/assets/icons/normal/relations.svg +28 -1
  449. package/src/assets/icons/normal/reload.svg +12 -1
  450. package/src/assets/icons/normal/remove-circle.svg +10 -1
  451. package/src/assets/icons/normal/remove.svg +4 -1
  452. package/src/assets/icons/normal/reorder.svg +12 -1
  453. package/src/assets/icons/normal/repeat.svg +12 -1
  454. package/src/assets/icons/normal/repository.svg +18 -1
  455. package/src/assets/icons/normal/request-form.svg +18 -1
  456. package/src/assets/icons/normal/resize-100%.svg +17 -1
  457. package/src/assets/icons/normal/resize-height.svg +12 -1
  458. package/src/assets/icons/normal/resize-width.svg +12 -1
  459. package/src/assets/icons/normal/search.svg +10 -1
  460. package/src/assets/icons/normal/sequential-prerequisites.svg +20 -1
  461. package/src/assets/icons/normal/settings.svg +14 -1
  462. package/src/assets/icons/normal/share.svg +20 -1
  463. package/src/assets/icons/normal/sketch.svg +11 -1
  464. package/src/assets/icons/normal/skills.svg +16 -1
  465. package/src/assets/icons/normal/skip-back.svg +12 -1
  466. package/src/assets/icons/normal/skip-forward.svg +13 -1
  467. package/src/assets/icons/normal/sms.svg +20 -1
  468. package/src/assets/icons/normal/sso-access.svg +20 -1
  469. package/src/assets/icons/normal/star-active.svg +4 -1
  470. package/src/assets/icons/normal/star.svg +4 -1
  471. package/src/assets/icons/normal/success.svg +10 -1
  472. package/src/assets/icons/normal/sun.svg +24 -1
  473. package/src/assets/icons/normal/sunrise.svg +18 -1
  474. package/src/assets/icons/normal/support.svg +18 -1
  475. package/src/assets/icons/normal/survey.svg +24 -1
  476. package/src/assets/icons/normal/table.svg +11 -1
  477. package/src/assets/icons/normal/tematic-channels.svg +10 -1
  478. package/src/assets/icons/normal/test.svg +15 -1
  479. package/src/assets/icons/normal/text-body.svg +8 -1
  480. package/src/assets/icons/normal/text-edit.svg +11 -1
  481. package/src/assets/icons/normal/text-style.svg +10 -1
  482. package/src/assets/icons/normal/time.svg +10 -1
  483. package/src/assets/icons/normal/toilet-paper.svg +15 -1
  484. package/src/assets/icons/normal/training-points.svg +16 -1
  485. package/src/assets/icons/normal/trash.svg +19 -1
  486. package/src/assets/icons/normal/underline.svg +8 -1
  487. package/src/assets/icons/normal/undo.svg +9 -1
  488. package/src/assets/icons/normal/unlock.svg +13 -1
  489. package/src/assets/icons/normal/upload.svg +10 -1
  490. package/src/assets/icons/normal/user-add.svg +14 -1
  491. package/src/assets/icons/normal/user-badge.svg +11 -1
  492. package/src/assets/icons/normal/user.svg +5 -1
  493. package/src/assets/icons/normal/video-off.svg +11 -1
  494. package/src/assets/icons/normal/video-on.svg +20 -1
  495. package/src/assets/icons/normal/video-rec.svg +23 -1
  496. package/src/assets/icons/normal/view-card.svg +10 -1
  497. package/src/assets/icons/normal/view-list.svg +18 -1
  498. package/src/assets/icons/normal/view.svg +8 -1
  499. package/src/assets/icons/normal/voice-off.svg +18 -1
  500. package/src/assets/icons/normal/voice-on.svg +15 -1
  501. package/src/assets/icons/normal/volume-down.svg +14 -1
  502. package/src/assets/icons/normal/volume-off.svg +18 -1
  503. package/src/assets/icons/normal/volume-up.svg +16 -1
  504. package/src/assets/icons/normal/warning.svg +16 -1
  505. package/src/assets/icons/normal/webinar.svg +36 -1
  506. package/src/assets/icons/normal/whiteboard.svg +17 -1
  507. package/src/assets/icons/normal/wine.svg +22 -1
  508. package/src/assets/icons/normal/zip.svg +19 -1
  509. package/src/assets/icons/normal/zoom-in.svg +16 -1
  510. package/src/assets/icons/normal/zoom-out.svg +14 -1
  511. package/src/assets/icons/normal.json +1 -1
  512. package/src/assets/icons/simple/add-circle.svg +12 -1
  513. package/src/assets/icons/simple/add.svg +8 -1
  514. package/src/assets/icons/simple/align-center.svg +12 -1
  515. package/src/assets/icons/simple/align-justify.svg +12 -1
  516. package/src/assets/icons/simple/align-left.svg +12 -1
  517. package/src/assets/icons/simple/align-right.svg +12 -1
  518. package/src/assets/icons/simple/analysis-2.svg +21 -1
  519. package/src/assets/icons/simple/analysis-3.svg +8 -1
  520. package/src/assets/icons/simple/analysis.svg +16 -1
  521. package/src/assets/icons/simple/apple.svg +18 -1
  522. package/src/assets/icons/simple/arrow-down.svg +8 -1
  523. package/src/assets/icons/simple/arrow-left.svg +8 -1
  524. package/src/assets/icons/simple/arrow-right.svg +8 -1
  525. package/src/assets/icons/simple/arrow-up.svg +8 -1
  526. package/src/assets/icons/simple/attachment.svg +10 -1
  527. package/src/assets/icons/simple/bck-to-front.svg +19 -1
  528. package/src/assets/icons/simple/bell-active.svg +14 -1
  529. package/src/assets/icons/simple/bell.svg +14 -1
  530. package/src/assets/icons/simple/bold.svg +8 -1
  531. package/src/assets/icons/simple/bookmark-active.svg +12 -1
  532. package/src/assets/icons/simple/bookmark.svg +12 -1
  533. package/src/assets/icons/simple/building.svg +25 -1
  534. package/src/assets/icons/simple/bulleted-list.svg +22 -1
  535. package/src/assets/icons/simple/calendar.svg +22 -1
  536. package/src/assets/icons/simple/camera-off.svg +12 -1
  537. package/src/assets/icons/simple/camera-on.svg +16 -1
  538. package/src/assets/icons/simple/catalog.svg +14 -1
  539. package/src/assets/icons/simple/certificate.svg +15 -1
  540. package/src/assets/icons/simple/chat.svg +9 -1
  541. package/src/assets/icons/simple/check-badge.svg +9 -1
  542. package/src/assets/icons/simple/check-circle.svg +10 -1
  543. package/src/assets/icons/simple/check.svg +6 -1
  544. package/src/assets/icons/simple/checkbox.svg +6 -1
  545. package/src/assets/icons/simple/chevron-down-circle.svg +10 -1
  546. package/src/assets/icons/simple/chevron-down.svg +6 -1
  547. package/src/assets/icons/simple/chevron-left-circle.svg +10 -1
  548. package/src/assets/icons/simple/chevron-left.svg +6 -1
  549. package/src/assets/icons/simple/chevron-right-circle.svg +10 -1
  550. package/src/assets/icons/simple/chevron-right.svg +7 -1
  551. package/src/assets/icons/simple/chevron-up-circle.svg +10 -1
  552. package/src/assets/icons/simple/chevron-up.svg +6 -1
  553. package/src/assets/icons/simple/circle.svg +8 -0
  554. package/src/assets/icons/simple/classroom.svg +38 -1
  555. package/src/assets/icons/simple/clear-field.svg +11 -1
  556. package/src/assets/icons/simple/clear-style.svg +15 -1
  557. package/src/assets/icons/simple/close-circle.svg +14 -1
  558. package/src/assets/icons/simple/close-loader.svg +6 -1
  559. package/src/assets/icons/simple/close.svg +10 -1
  560. package/src/assets/icons/simple/coffee.svg +28 -1
  561. package/src/assets/icons/simple/color.svg +20 -1
  562. package/src/assets/icons/simple/contact-us.svg +26 -1
  563. package/src/assets/icons/simple/copy.svg +10 -1
  564. package/src/assets/icons/simple/courses.svg +21 -1
  565. package/src/assets/icons/simple/dashboard.svg +20 -1
  566. package/src/assets/icons/simple/download.svg +10 -1
  567. package/src/assets/icons/simple/drag.svg +10 -1
  568. package/src/assets/icons/simple/duplicate.svg +24 -1
  569. package/src/assets/icons/simple/edit.svg +17 -1
  570. package/src/assets/icons/simple/elearning.svg +17 -1
  571. package/src/assets/icons/simple/email.svg +11 -1
  572. package/src/assets/icons/simple/error-2.svg +8 -1
  573. package/src/assets/icons/simple/error.svg +12 -1
  574. package/src/assets/icons/simple/exercise.svg +30 -1
  575. package/src/assets/icons/simple/external-link.svg +13 -1
  576. package/src/assets/icons/simple/extract.svg +17 -1
  577. package/src/assets/icons/simple/eye-off.svg +13 -1
  578. package/src/assets/icons/simple/eye-on.svg +11 -1
  579. package/src/assets/icons/simple/fail.svg +11 -1
  580. package/src/assets/icons/simple/fast-back.svg +20 -1
  581. package/src/assets/icons/simple/fast-forward.svg +19 -1
  582. package/src/assets/icons/simple/file-add.svg +20 -1
  583. package/src/assets/icons/simple/file-duplicate.svg +22 -1
  584. package/src/assets/icons/simple/file-remove.svg +18 -1
  585. package/src/assets/icons/simple/file-required.svg +24 -1
  586. package/src/assets/icons/simple/file.svg +14 -1
  587. package/src/assets/icons/simple/filter-2.svg +24 -1
  588. package/src/assets/icons/simple/filter-active.svg +13 -1
  589. package/src/assets/icons/simple/filter.svg +12 -1
  590. package/src/assets/icons/simple/flag.svg +12 -1
  591. package/src/assets/icons/simple/folder.svg +14 -1
  592. package/src/assets/icons/simple/full-width.svg +11 -1
  593. package/src/assets/icons/simple/go-to-back.svg +18 -1
  594. package/src/assets/icons/simple/grid.svg +20 -1
  595. package/src/assets/icons/simple/group-add.svg +24 -1
  596. package/src/assets/icons/simple/group.svg +18 -1
  597. package/src/assets/icons/simple/heart-active.svg +12 -1
  598. package/src/assets/icons/simple/heart.svg +12 -1
  599. package/src/assets/icons/simple/highlighter.svg +12 -1
  600. package/src/assets/icons/simple/home.svg +13 -1
  601. package/src/assets/icons/simple/hourglass.svg +11 -1
  602. package/src/assets/icons/simple/image.svg +15 -1
  603. package/src/assets/icons/simple/info-badge.svg +9 -1
  604. package/src/assets/icons/simple/information.svg +12 -1
  605. package/src/assets/icons/simple/italic.svg +12 -1
  606. package/src/assets/icons/simple/key.svg +11 -1
  607. package/src/assets/icons/simple/language.svg +12 -1
  608. package/src/assets/icons/simple/learning-path.svg +9 -1
  609. package/src/assets/icons/simple/light-off.svg +7 -1
  610. package/src/assets/icons/simple/light-on.svg +18 -1
  611. package/src/assets/icons/simple/link.svg +14 -1
  612. package/src/assets/icons/simple/lock.svg +13 -1
  613. package/src/assets/icons/simple/login.svg +11 -1
  614. package/src/assets/icons/simple/logout.svg +11 -1
  615. package/src/assets/icons/simple/maximaze.svg +12 -1
  616. package/src/assets/icons/simple/menu.svg +10 -1
  617. package/src/assets/icons/simple/merge.svg +20 -1
  618. package/src/assets/icons/simple/minimaze.svg +12 -1
  619. package/src/assets/icons/simple/mixed-class.svg +40 -1
  620. package/src/assets/icons/simple/more-horizontal.svg +8 -1
  621. package/src/assets/icons/simple/more-vertical.svg +8 -1
  622. package/src/assets/icons/simple/news.svg +12 -1
  623. package/src/assets/icons/simple/no-prerequisites.svg +17 -1
  624. package/src/assets/icons/simple/notes.svg +14 -1
  625. package/src/assets/icons/simple/number-code.svg +29 -1
  626. package/src/assets/icons/simple/numbered-list.svg +18 -1
  627. package/src/assets/icons/simple/on-site.svg +18 -1
  628. package/src/assets/icons/simple/order-down.svg +12 -1
  629. package/src/assets/icons/simple/order-up.svg +12 -1
  630. package/src/assets/icons/simple/paste.svg +14 -1
  631. package/src/assets/icons/simple/pausa.svg +8 -1
  632. package/src/assets/icons/simple/pdf.svg +12 -1
  633. package/src/assets/icons/simple/phone.svg +10 -1
  634. package/src/assets/icons/simple/pin-map.svg +13 -1
  635. package/src/assets/icons/simple/pin.svg +14 -1
  636. package/src/assets/icons/simple/pizza.svg +17 -1
  637. package/src/assets/icons/simple/play.svg +10 -1
  638. package/src/assets/icons/simple/plug-in.svg +10 -1
  639. package/src/assets/icons/simple/pointer.svg +6 -1
  640. package/src/assets/icons/simple/printer.svg +28 -1
  641. package/src/assets/icons/simple/profile-add.svg +28 -1
  642. package/src/assets/icons/simple/profile.svg +13 -1
  643. package/src/assets/icons/simple/push-pin-off.svg +11 -1
  644. package/src/assets/icons/simple/push-pin-on.svg +12 -1
  645. package/src/assets/icons/simple/qrcode.svg +26 -1
  646. package/src/assets/icons/simple/question-badge.svg +10 -1
  647. package/src/assets/icons/simple/radio.svg +8 -1
  648. package/src/assets/icons/simple/redo.svg +9 -1
  649. package/src/assets/icons/simple/relations.svg +28 -1
  650. package/src/assets/icons/simple/reload.svg +12 -1
  651. package/src/assets/icons/simple/remove-circle.svg +10 -1
  652. package/src/assets/icons/simple/remove.svg +6 -1
  653. package/src/assets/icons/simple/repeart.svg +14 -1
  654. package/src/assets/icons/simple/repository.svg +18 -1
  655. package/src/assets/icons/simple/request-form.svg +20 -1
  656. package/src/assets/icons/simple/resize-100%.svg +15 -1
  657. package/src/assets/icons/simple/resize-height.svg +12 -1
  658. package/src/assets/icons/simple/resize-width.svg +14 -1
  659. package/src/assets/icons/simple/search.svg +10 -1
  660. package/src/assets/icons/simple/sequential-prerequisites.svg +22 -1
  661. package/src/assets/icons/simple/settings.svg +17 -1
  662. package/src/assets/icons/simple/share.svg +21 -1
  663. package/src/assets/icons/simple/sketch.svg +13 -1
  664. package/src/assets/icons/simple/skills.svg +17 -1
  665. package/src/assets/icons/simple/skip-back.svg +14 -1
  666. package/src/assets/icons/simple/skip-forward.svg +14 -1
  667. package/src/assets/icons/simple/sms.svg +22 -1
  668. package/src/assets/icons/simple/sso-access.svg +20 -1
  669. package/src/assets/icons/simple/star-active.svg +6 -1
  670. package/src/assets/icons/simple/star.svg +6 -1
  671. package/src/assets/icons/simple/success.svg +12 -1
  672. package/src/assets/icons/simple/sun.svg +22 -1
  673. package/src/assets/icons/simple/sunrise.svg +18 -1
  674. package/src/assets/icons/simple/support.svg +18 -1
  675. package/src/assets/icons/simple/survey.svg +32 -1
  676. package/src/assets/icons/simple/table.svg +11 -1
  677. package/src/assets/icons/simple/tematic-channels.svg +15 -1
  678. package/src/assets/icons/simple/test.svg +23 -1
  679. package/src/assets/icons/simple/text-body.svg +7 -1
  680. package/src/assets/icons/simple/text-edit.svg +11 -1
  681. package/src/assets/icons/simple/text-style.svg +10 -1
  682. package/src/assets/icons/simple/time.svg +10 -1
  683. package/src/assets/icons/simple/toilet-paper.svg +17 -1
  684. package/src/assets/icons/simple/training-points.svg +18 -1
  685. package/src/assets/icons/simple/trash.svg +20 -1
  686. package/src/assets/icons/simple/underline.svg +9 -1
  687. package/src/assets/icons/simple/undo.svg +9 -1
  688. package/src/assets/icons/simple/unlock.svg +15 -1
  689. package/src/assets/icons/simple/upload.svg +10 -1
  690. package/src/assets/icons/simple/user-add.svg +18 -1
  691. package/src/assets/icons/simple/user-badge.svg +12 -1
  692. package/src/assets/icons/simple/user.svg +8 -1
  693. package/src/assets/icons/simple/video-off.svg +17 -1
  694. package/src/assets/icons/simple/video-on.svg +17 -1
  695. package/src/assets/icons/simple/video-rec.svg +20 -1
  696. package/src/assets/icons/simple/view-card.svg +12 -1
  697. package/src/assets/icons/simple/view-list.svg +20 -1
  698. package/src/assets/icons/simple/view.svg +17 -1
  699. package/src/assets/icons/simple/voice-off.svg +16 -1
  700. package/src/assets/icons/simple/voice-on.svg +16 -1
  701. package/src/assets/icons/simple/volume-down.svg +15 -1
  702. package/src/assets/icons/simple/volume-off.svg +16 -1
  703. package/src/assets/icons/simple/volume-up.svg +16 -1
  704. package/src/assets/icons/simple/warning.svg +14 -1
  705. package/src/assets/icons/simple/webinar.svg +19 -1
  706. package/src/assets/icons/simple/whiteboard.svg +16 -1
  707. package/src/assets/icons/simple/wine.svg +24 -1
  708. package/src/assets/icons/simple/zip.svg +22 -1
  709. package/src/assets/icons/simple/zoom-in.svg +18 -1
  710. package/src/assets/icons/simple/zoom-out.svg +17 -1
  711. package/src/assets/icons/simple.json +1 -1
  712. package/src/components/VvAccordion/VvAccordion.vue +16 -9
  713. package/src/components/VvAccordion/index.ts +5 -3
  714. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +16 -11
  715. package/src/components/VvBadge/VvBadge.vue +3 -3
  716. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +5 -5
  717. package/src/components/VvButton/VvButton.vue +82 -46
  718. package/src/components/VvButton/index.ts +20 -20
  719. package/src/components/VvButtonGroup/VvButtonGroup.vue +7 -10
  720. package/src/components/VvCard/VvCard.vue +6 -3
  721. package/src/components/VvCheckbox/VvCheckbox.vue +17 -12
  722. package/src/components/VvCheckbox/index.ts +7 -5
  723. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +21 -19
  724. package/src/components/VvCombobox/VvCombobox.vue +318 -101
  725. package/src/components/VvCombobox/index.ts +59 -5
  726. package/src/components/VvDialog/VvDialog.vue +14 -6
  727. package/src/components/VvDialog/index.ts +18 -1
  728. package/src/components/VvDropdown/VvDropdown.vue +344 -95
  729. package/src/components/VvDropdown/VvDropdownItem.vue +32 -0
  730. package/src/components/VvDropdown/index.ts +25 -23
  731. package/src/components/VvIcon/VvIcon.vue +16 -16
  732. package/src/components/VvInputText/VvInputText.vue +45 -34
  733. package/src/components/VvProgress/VvProgress.vue +7 -5
  734. package/src/components/VvRadio/VvRadio.vue +16 -14
  735. package/src/components/VvRadio/index.ts +6 -3
  736. package/src/components/VvRadioGroup/VvRadioGroup.vue +20 -16
  737. package/src/components/VvSelect/VvSelect.vue +69 -56
  738. package/src/components/VvSelect/index.ts +2 -2
  739. package/src/components/VvTextarea/VvTextarea.vue +46 -33
  740. package/src/components/VvTooltip/VvTooltip.vue +16 -10
  741. package/src/components/VvTooltip/index.ts +8 -11
  742. package/src/components/common/HintSlot.ts +5 -4
  743. package/src/composables/dropdown/useInjectDropdown.ts +51 -0
  744. package/src/composables/dropdown/useProvideDropdown.ts +97 -0
  745. package/src/composables/group/useInjectedGroupState.ts +7 -7
  746. package/src/composables/group/useProvideGroupState.ts +3 -3
  747. package/src/composables/useComponentIcon.ts +41 -0
  748. package/src/composables/useModifiers.ts +31 -91
  749. package/src/composables/useOptions.ts +11 -3
  750. package/src/composables/useUniqueId.ts +5 -0
  751. package/src/composables/useVolver.ts +6 -0
  752. package/src/constants.ts +38 -5
  753. package/src/directives/index.ts +5 -0
  754. package/src/directives/v-tooltip.ts +15 -0
  755. package/src/index.ts +1 -1
  756. package/src/props/index.ts +117 -13
  757. package/src/resolvers/unplugin.ts +4 -1
  758. package/src/shims.d.ts +1 -1
  759. package/src/stories/Accordion/Accordion.stories.mdx +9 -7
  760. package/src/stories/Accordion/Accordion.test.ts +1 -1
  761. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +6 -4
  762. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +10 -8
  763. package/src/stories/Badge/Badge.stories.mdx +4 -3
  764. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +4 -3
  765. package/src/stories/Breadcrumb/Breadcrumb.test.ts +14 -12
  766. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.mdx +8 -8
  767. package/src/stories/Button/Button.stories.mdx +7 -7
  768. package/src/stories/Button/Button.test.ts +6 -6
  769. package/src/stories/Button/ButtonModifiers.stories.mdx +2 -2
  770. package/src/stories/Button/ButtonSlots.stories.mdx +15 -11
  771. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +2 -2
  772. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.mdx +2 -2
  773. package/src/stories/Card/Card.stories.mdx +2 -2
  774. package/src/stories/Card/Card.test.ts +1 -1
  775. package/src/stories/Card/CardSlots.stories.mdx +2 -2
  776. package/src/stories/Checkbox/Checkbox.stories.mdx +7 -7
  777. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +7 -7
  778. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +9 -9
  779. package/src/stories/Combobox/Combobox.settings.ts +111 -4
  780. package/src/stories/Combobox/Combobox.stories.mdx +85 -4
  781. package/src/stories/Combobox/Combobox.test.ts +2 -2
  782. package/src/stories/Combobox/ComboboxIconPosition.stories.mdx +78 -0
  783. package/src/stories/Combobox/ComboboxMultiple.stories.mdx +1 -2
  784. package/src/stories/Combobox/ComboboxSlots.stories.mdx +107 -2
  785. package/src/stories/Dialog/Dialog.stories.mdx +2 -2
  786. package/src/stories/Dialog/Dialog.test.ts +4 -4
  787. package/src/stories/Dropdown/Dropdown.settings.ts +55 -37
  788. package/src/stories/Dropdown/Dropdown.stories.mdx +57 -58
  789. package/src/stories/Dropdown/Dropdown.test.ts +10 -32
  790. package/src/stories/Dropdown/DropdownSlots.stories.mdx +113 -0
  791. package/src/stories/Icon/Icon.stories.mdx +1 -1
  792. package/src/stories/Icon/IconsCollection.stories.mdx +2 -2
  793. package/src/stories/InputText/InputText.settings.ts +2 -1
  794. package/src/stories/InputText/InputText.stories.mdx +7 -4
  795. package/src/stories/InputText/InputTextIconPosition.stories.mdx +2 -2
  796. package/src/stories/InputText/InputTextSlots.stories.mdx +2 -2
  797. package/src/stories/Progress/Progress.stories.mdx +3 -1
  798. package/src/stories/Progress/Progress.test.ts +1 -1
  799. package/src/stories/Radio/Radio.stories.mdx +1 -1
  800. package/src/stories/RadioGroup/RadioGroup.stories.mdx +7 -7
  801. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +9 -9
  802. package/src/stories/Select/Select.settings.ts +2 -2
  803. package/src/stories/Select/Select.stories.mdx +3 -3
  804. package/src/stories/Select/SelectIconPosition.stories.mdx +78 -0
  805. package/src/stories/Select/SelectSlots.stories.mdx +2 -2
  806. package/src/stories/Textarea/Textarea.settings.ts +2 -1
  807. package/src/stories/Textarea/Textarea.stories.mdx +4 -4
  808. package/src/stories/Textarea/TextareaSlots.stories.mdx +2 -2
  809. package/src/stories/Textarea/TextareatIconPosition.stories.mdx +2 -2
  810. package/src/stories/Tooltip/Tooltip.settings.ts +13 -13
  811. package/src/stories/Tooltip/Tooltip.stories.mdx +24 -21
  812. package/src/stories/Tooltip/Tooltip.test.ts +22 -13
  813. package/src/stories/Tooltip/TooltipDirective.stories.mdx +98 -0
  814. package/src/stories/argTypes.ts +153 -4
  815. package/src/types/floating-ui.d.ts +7 -0
  816. package/src/types/generic.d.ts +0 -1
  817. package/src/types/group.d.ts +37 -0
  818. package/src/utils/ObjectUtilities.ts +4 -1
  819. package/dist/composables/group/types/IAccordionGroupState.d.ts +0 -9
  820. package/dist/composables/group/types/IButtonGroupState.d.ts +0 -13
  821. package/dist/composables/group/types/IGroupState.d.ts +0 -8
  822. package/dist/composables/group/types/IInputGroup.d.ts +0 -8
  823. package/dist/composables/useComponentIcons.d.ts +0 -27
  824. package/src/composables/group/types/IAccordionGroupState.ts +0 -10
  825. package/src/composables/group/types/IButtonGroupState.ts +0 -14
  826. package/src/composables/group/types/IGroupState.ts +0 -10
  827. package/src/composables/group/types/IInputGroup.ts +0 -9
  828. package/src/composables/useComponentIcons.ts +0 -96
  829. package/src/directives/.gitkeep +0 -0
  830. package/src/stories/Dropdown/DropdownOptions.stories.mdx +0 -96
@@ -1,251 +1,750 @@
1
- import { defineComponent as J, openBlock as f, createElementBlock as P, unref as t, normalizeClass as te, createElementVNode as O, toDisplayString as A, createCommentVNode as B, Fragment as oe, renderList as ce, withModifiers as _e, createTextVNode as pe, createBlock as L, mergeProps as N, renderSlot as U, normalizeProps as ie, withDirectives as me, isRef as fe, vModelSelect as Ie, createVNode as ee, withKeys as ue, vModelText as Be } from "vue";
2
- import { nanoid as le } from "nanoid";
3
- import { iconExists as z, Icon as Ce, addIcon as ke } from "@iconify/vue";
4
- const ve = {
1
+ import { defineComponent as ce, unref as t, openBlock as u, createBlock as Y, mergeProps as N, createCommentVNode as k, createElementBlock as v, Fragment as q, createVNode as de, withCtx as ne, renderSlot as A, normalizeProps as T, guardReactiveProps as R, Transition as tt, withDirectives as ke, createElementVNode as H, normalizeStyle as Be, normalizeClass as ve, vShow as xe, toDisplayString as F, isRef as _e, renderList as Se, vModelSelect as ot, createTextVNode as se, createSlots as lt, withModifiers as at, vModelText as st } from "vue";
2
+ import { iconExists as me, Icon as nt, addIcon as rt } from "@iconify/vue";
3
+ import { autoPlacement as De, flip as Ie, shift as Oe, size as Ce, offset as ge, arrow as it, useFloating as ut, autoUpdate as dt } from "@floating-ui/vue";
4
+ var we = /* @__PURE__ */ ((s) => (s.left = "left", s.right = "right", s.top = "top", s.bottom = "bottom", s))(we || {}), Fe = /* @__PURE__ */ ((s) => (s.topStart = "top-start", s.topEnd = "top-end", s.bottomStart = "bottom-start", s.bottomEnd = "bottom-end", s.leftStart = "left-start", s.leftEnd = "left-end", s.rightStart = "right-start", s.rightEnd = "right-end", s))(Fe || {}), Ve = /* @__PURE__ */ ((s) => (s.before = "before", s.after = "after", s))(Ve || {});
5
+ const Ne = {
5
6
  valid: Boolean,
6
7
  validLabel: [String, Array]
7
- }, be = {
8
+ }, Le = {
8
9
  invalid: Boolean,
9
10
  invalidLabel: [String, Array]
10
- }, he = {
11
+ }, Me = {
11
12
  loading: Boolean,
12
13
  loadingLabel: String
13
- }, ne = {
14
+ }, Te = {
15
+ /**
16
+ * Whether the form control is disabled
17
+ */
14
18
  disabled: Boolean
15
- }, ge = {
19
+ }, Re = {
20
+ /**
21
+ * The value is not editable
22
+ */
16
23
  readonly: Boolean
17
- }, se = {
24
+ }, he = {
25
+ /**
26
+ * Component BEM modifiers
27
+ */
18
28
  modifiers: [String, Array]
19
- }, ye = {
29
+ }, je = {
20
30
  hintLabel: { type: String, default: "" }
21
- }, ae = {
31
+ }, We = {
32
+ /**
33
+ * List of options, can be string[] or object[]
34
+ */
22
35
  options: {
23
36
  type: Array,
24
37
  default: () => []
25
38
  },
39
+ /**
40
+ * Used when options are objects: key to use for option label
41
+ */
26
42
  labelKey: { type: [String, Function], default: "label" },
27
- valueKey: { type: [String, Function], default: "value" }
28
- }, de = {
29
- LEFT: "left",
30
- RIGHT: "right"
31
- }, Ve = {
43
+ /**
44
+ * Used when options are objects: key to use for option label
45
+ */
46
+ valueKey: { type: [String, Function], default: "value" },
47
+ /**
48
+ * Used when options are objects: key to use for option disabled
49
+ */
50
+ disabledKey: { type: [String, Function], default: "disabled" }
51
+ }, ze = {
52
+ /**
53
+ * VvIcon name or props
54
+ * @see VVIcon
55
+ */
32
56
  icon: { type: [String, Object] },
57
+ /**
58
+ * VvIcon position
59
+ */
33
60
  iconPosition: {
34
61
  type: String,
35
- validation: (y) => Object.values(de).includes(y),
36
- default: de.RIGHT
62
+ default: Ve.before,
63
+ validation: (s) => Object.values(Ve).includes(s)
37
64
  }
38
- }, Se = {
65
+ }, qe = {
66
+ /**
67
+ * Global attribute tabindex
68
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
69
+ */
39
70
  tabindex: { type: [String, Number], default: 0 }
40
- }, $e = {
71
+ }, He = {
72
+ /**
73
+ * If true the label will be floating
74
+ */
41
75
  floating: Boolean
42
- }, Pe = {
76
+ }, Ke = {
77
+ /**
78
+ * If true the input will be unselectable
79
+ */
43
80
  unselectable: { type: Boolean, default: !0 }
44
- }, re = {
45
- id: [String, Number],
81
+ }, Ue = {
82
+ /**
83
+ * Global attribute id
84
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id
85
+ */
86
+ id: [String, Number]
87
+ }, $e = {
88
+ /**
89
+ * Dropdown placement
90
+ */
91
+ placement: {
92
+ type: String,
93
+ default: we.bottom,
94
+ validator: (s) => Object.values(we).includes(s) || Object.values(Fe).includes(s)
95
+ },
96
+ /**
97
+ * Dropdown show / hide transition name
98
+ */
99
+ transitionName: {
100
+ type: String
101
+ },
102
+ /**
103
+ * Offset of the dropdown from the trigger
104
+ * @see https://floating-ui.com/docs/offset
105
+ */
106
+ offset: {
107
+ type: [Number, String, Object],
108
+ default: 0
109
+ },
110
+ /**
111
+ * Move dropdown to the side if there is no space in the default position
112
+ * @see https://floating-ui.com/docs/shift
113
+ */
114
+ shift: {
115
+ type: [Boolean, Object],
116
+ default: !1
117
+ },
118
+ /**
119
+ * Flip dropdown position if there is no space in the default position
120
+ * @see https://floating-ui.com/docs/flip
121
+ */
122
+ flip: {
123
+ type: [Boolean, Object],
124
+ default: !0
125
+ },
126
+ /**
127
+ * Size of the dropdown
128
+ * @see https://floating-ui.com/docs/size
129
+ */
130
+ size: {
131
+ type: [Boolean, Object],
132
+ default: () => ({ padding: 10 })
133
+ },
134
+ /**
135
+ * Automatically change the position of the dropdown
136
+ * @see https://floating-ui.com/docs/autoPlacement
137
+ */
138
+ autoPlacement: {
139
+ type: [Boolean, Object],
140
+ default: !1
141
+ },
142
+ /**
143
+ * Add arrow to the dropdown
144
+ * @see https://floating-ui.com/docs/arrow
145
+ */
146
+ arrow: {
147
+ type: Boolean,
148
+ default: !1
149
+ },
150
+ /**
151
+ * Close dropdown on click outside
152
+ */
153
+ autoClose: {
154
+ type: Boolean,
155
+ default: !0
156
+ },
157
+ /**
158
+ * Autofocus first item on dropdown open
159
+ */
160
+ autofocusFirst: {
161
+ type: Boolean,
162
+ default: !0
163
+ },
164
+ /**
165
+ * Set dropdown width to the same as the trigger
166
+ */
167
+ triggerWidth: {
168
+ type: Boolean
169
+ }
170
+ }, Je = {
171
+ ...Ue,
172
+ /**
173
+ * Input / Textarea name
174
+ * Name of the form control. Submitted with the form as part of a name/value pair
175
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#name
176
+ */
46
177
  name: { type: String, required: !0 }
47
- }, Ne = {
178
+ }, ct = {
179
+ /**
180
+ * Global attribute autofocus
181
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus
182
+ */
48
183
  autofocus: Boolean
49
- }, Oe = {
184
+ }, ft = {
185
+ /**
186
+ * Global attribute autocomplete
187
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete
188
+ */
50
189
  autocomplete: { type: String, default: "off" }
51
- }, Ae = {
52
- ...re,
53
- ...ae,
54
- ...ne,
55
- ...se,
190
+ }, pt = [
191
+ "update:modelValue",
192
+ "change:search",
193
+ "focus",
194
+ "blur"
195
+ ], vt = {
196
+ ...Je,
197
+ ...qe,
198
+ ...Ne,
199
+ ...Le,
200
+ ...je,
201
+ ...Me,
202
+ ...Te,
203
+ ...Re,
204
+ ...he,
205
+ ...We,
206
+ ...ze,
207
+ ...He,
208
+ ...Ke,
209
+ ...$e,
210
+ /**
211
+ * modelValue can be a string, number, boolean, object or array of string, number, boolean, object
212
+ */
56
213
  modelValue: {
57
- type: [String, Number, Boolean, Object, Array]
214
+ type: [String, Number, Boolean, Object, Array],
215
+ default: void 0
58
216
  },
59
- labelNoResults: { type: String, default: "No results" },
217
+ /**
218
+ * Select input label
219
+ */
220
+ label: String,
221
+ /**
222
+ * Label for no search results
223
+ */
224
+ noResultsLabel: { type: String, default: "No results" },
225
+ /**
226
+ * Label for selected option hint
227
+ */
228
+ selectedLabel: { type: String, default: "Selected" },
229
+ /**
230
+ * Label for deselect button
231
+ */
232
+ deselectLabel: { type: String, default: "Deselect" },
233
+ /**
234
+ * Label for select option hint
235
+ */
236
+ pressToSelectLabel: { type: String, default: "Press enter to select" },
237
+ /**
238
+ * Label for deselected option hint
239
+ */
240
+ pressToDeselectLabel: { type: String, default: "Press enter to remove" },
241
+ /**
242
+ * Select input placeholder
243
+ */
244
+ placeholder: String,
245
+ /**
246
+ * Use input text to search on options
247
+ */
248
+ searchable: Boolean,
249
+ /**
250
+ * On searchable select is the input search placeholder
251
+ */
252
+ searchPlaceholder: {
253
+ type: String,
254
+ default: "Search..."
255
+ },
256
+ /**
257
+ * The input search debounce time in ms
258
+ */
259
+ debounceSearch: {
260
+ type: [Number, String],
261
+ default: 0
262
+ },
263
+ /**
264
+ * Manage modelValue as string[] or object[]
265
+ */
60
266
  multiple: Boolean,
267
+ /**
268
+ * The max number of selected values
269
+ */
61
270
  maxValues: [Number, String],
62
- unselectable: { type: Boolean, default: !0 }
63
- }, De = ["id"], Re = {
64
- key: 0,
65
- role: "option"
66
- }, Fe = ["aria-selected"], Le = ["for", "onClick"], Ee = ["id", "type", "value", "checked", "disabled", "name"], Ke = {
67
- name: "VvDropdown"
68
- }, Me = /* @__PURE__ */ J({
69
- ...Ke,
70
- props: Ae,
71
- emits: ["update:modelValue"],
72
- setup(y, { emit: r }) {
73
- const e = y, V = computed(() => String(e.id || le())), { modifiers: d, disabled: p } = toRefs(e), { getOptionLabel: s, getOptionValue: S } = useOptions(e), { bemCssClasses: g } = useBemModifiers("vv-dropdown", {
74
- modifiers: d,
75
- disabled: p
76
- });
77
- function c(n) {
78
- return Array.isArray(e.modelValue) ? contains(n, e.modelValue) || contains(S(n), e.modelValue) : equals(n, e.modelValue) || equals(S(n), e.modelValue);
79
- }
80
- function o(n) {
81
- return typeof n == "string" || n.disabled === void 0 ? p.value : n.disabled;
82
- }
83
- function l(n) {
84
- var v;
85
- if (e.disabled)
86
- return;
87
- let i = n;
88
- if (e.multiple)
89
- if (Array.isArray(e.modelValue)) {
90
- if (e.maxValues !== void 0 && e.maxValues >= 0 && ((v = e.modelValue) == null ? void 0 : v.length) >= e.maxValues && !contains(n, e.modelValue))
91
- return;
92
- i = contains(n, e.modelValue) ? removeFromList(n, e.modelValue) : [...e.modelValue, n];
93
- } else
94
- i = [n];
95
- else
96
- e.unselectable && n === e.modelValue && (i = void 0);
97
- r("update:modelValue", i);
98
- }
99
- return (n, i) => {
100
- var v;
101
- return f(), P("ul", {
102
- id: t(V),
103
- class: te(t(g)),
104
- role: "listbox"
105
- }, [
106
- (v = n.options) != null && v.length ? B("", !0) : (f(), P("li", Re, [
107
- O("label", null, A(n.labelNoResults), 1)
108
- ])),
109
- (f(!0), P(oe, null, ce(n.options, (m, $) => (f(), P("li", {
110
- key: $,
111
- role: "option",
112
- "aria-selected": c(m)
113
- }, [
114
- O("label", {
115
- for: `dropdown-${$}-${t(V)}`,
116
- onClick: _e((_) => l(t(S)(m)), ["prevent"])
117
- }, [
118
- O("input", {
119
- id: `dropdown-${$}-${t(V)}`,
120
- type: n.multiple ? "checkbox" : "radio",
121
- value: t(S)(m),
122
- checked: c(m),
123
- disabled: o(m),
124
- name: n.name,
125
- tabindex: "-1",
126
- "aria-hidden": "true"
127
- }, null, 8, Ee),
128
- pe(" " + A(t(s)(m)), 1)
129
- ], 8, Le)
130
- ], 8, Fe))), 128))
131
- ], 10, De);
132
- };
133
- }
134
- }), Te = "ds", He = {
271
+ /**
272
+ * The select label separator visible to the user
273
+ */
274
+ separator: { type: String, default: ", " },
275
+ /**
276
+ * Show native select
277
+ */
278
+ native: Boolean,
279
+ /**
280
+ * Show badges
281
+ */
282
+ badges: Boolean,
283
+ /**
284
+ * Badge modifiers
285
+ */
286
+ badgeModifiers: {
287
+ type: [String, Array],
288
+ default: "action sm"
289
+ },
290
+ /**
291
+ * Set dropdown width to the same as the trigger
292
+ */
293
+ triggerWidth: {
294
+ ...$e.triggerWidth,
295
+ default: !0
296
+ },
297
+ /**
298
+ * Dropdown modifiers
299
+ */
300
+ dropdownModifiers: {
301
+ type: [String, Array]
302
+ },
303
+ /**
304
+ * Open dropdown on focus
305
+ */
306
+ autoOpen: Boolean,
307
+ /**
308
+ * Close dropdown on select (not multiple)
309
+ */
310
+ autoClose: Boolean
311
+ }, mt = {
312
+ /**
313
+ * Color
314
+ */
135
315
  color: String,
316
+ /**
317
+ * Width
318
+ */
136
319
  width: {
137
320
  type: [String, Number]
138
321
  },
322
+ /**
323
+ * Height
324
+ */
139
325
  height: {
140
326
  type: [String, Number]
141
327
  },
328
+ /**
329
+ * Icon name
330
+ * Can be the full composition of iconify name "@{provider}:{prefix}:{name}" or "{prefix}:{name}" or "{name}"
331
+ * https://docs.iconify.design/api/providers.html#provider-in-icon-name
332
+ */
142
333
  name: {
143
334
  type: String,
144
335
  required: !0
145
336
  },
337
+ /**
338
+ * By default 'vv'
339
+ * If custom collection is not added with "addCollection" DS class method, this prop could not be used
340
+ * Icon provider: https://docs.iconify.design/api/providers.html#provider-in-icon-name
341
+ */
146
342
  provider: {
147
343
  type: String
148
344
  },
345
+ /**
346
+ * The name of icon set.
347
+ * Icon default options prefix: simple | normal | detailed
348
+ */
149
349
  prefix: {
150
350
  type: String,
151
351
  default: "normal"
152
352
  },
353
+ /**
354
+ * Url remote SVG icon
355
+ */
153
356
  src: String,
357
+ /**
358
+ * Horizontal flip
359
+ */
154
360
  horizontalFlip: Boolean,
361
+ /**
362
+ * Vertical flip
363
+ */
155
364
  verticalFlip: Boolean,
365
+ /**
366
+ * String alternative to "horizontalFlip" and "verticalFlip".
367
+ * Example: https://docs.iconify.design/icon-components/vue/transform.html
368
+ */
156
369
  flip: String,
370
+ /**
371
+ * Icon render mode
372
+ * 'style' = 'bg' or 'mask', depending on icon content
373
+ * 'bg' = span with style using `background`
374
+ * 'mask' = span with style using `mask`
375
+ * 'svg' = svg
376
+ * Iconify doc: https://docs.iconify.design/iconify-icon/modes.html
377
+ */
157
378
  mode: String,
379
+ /**
380
+ * Toggles inline or block mode
381
+ * Example https://docs.iconify.design/icon-components/vue/inline.html
382
+ */
158
383
  inline: Boolean,
384
+ /**
385
+ * rotates icon
386
+ * Example https://docs.iconify.design/icon-components/vue/transform.html
387
+ */
159
388
  rotate: [Number, String],
389
+ /**
390
+ * A callback that is called when icon data has been loaded
391
+ */
160
392
  onLoad: Function,
393
+ /**
394
+ * SVG icon string
395
+ */
161
396
  svg: String,
397
+ /**
398
+ * Icon modifiers: vv-icon css helper classes, value/s are concatened with prefix 'vv-icon--'
399
+ * @values string | Array<string>
400
+ */
162
401
  modifiers: {
163
402
  type: [String, Array]
164
403
  }
165
- }, je = {
404
+ }, bt = {
166
405
  name: "VvIcon"
167
- }, G = /* @__PURE__ */ J({
168
- ...je,
169
- props: He,
170
- setup(y) {
171
- const r = y, e = ref(!0), { modifiers: V } = toRefs(r), d = inject(Te), { bemCssClasses: p } = useBemModifiers("vv-icon", {
172
- modifiers: V
173
- }), s = computed(() => r.provider || (d == null ? void 0 : d.provider)), S = computed(() => {
174
- const o = r.name ?? "", l = `@${s.value}:${r.prefix}:${r.name}`;
175
- return z(o) ? o : z(l) ? l : (d == null ? void 0 : d.iconsCollections.find((n) => {
176
- const i = `@${s.value}:${n.prefix}:${o}`;
177
- if (z(i))
178
- return i;
179
- })) || o;
406
+ }, pe = /* @__PURE__ */ ce({
407
+ ...bt,
408
+ props: mt,
409
+ setup(s) {
410
+ const d = s, e = ref(!0), c = useVolver(), { modifiers: g } = toRefs(d), w = useBemModifiers("vv-icon", g), r = computed(() => d.provider || (c == null ? void 0 : c.provider)), V = computed(() => {
411
+ const a = d.name ?? "", n = `@${r.value}:${d.prefix}:${d.name}`;
412
+ return me(a) ? a : me(n) ? n : (c == null ? void 0 : c.iconsCollections.find(
413
+ (i) => {
414
+ const _ = `@${r.value}:${i.prefix}:${a}`;
415
+ if (me(_))
416
+ return _;
417
+ }
418
+ )) || a;
180
419
  });
181
- function g(o) {
182
- let l = null;
420
+ function $(a) {
421
+ let n = null;
183
422
  if (typeof window > "u") {
184
- const { JSDOM: m } = require("jsdom");
185
- l = new m().window;
423
+ const { JSDOM: B } = require("jsdom");
424
+ n = new B().window;
186
425
  }
187
- return (l ? new l.DOMParser() : new window.DOMParser()).parseFromString(o, "text/html").querySelector("svg");
426
+ return (n ? new n.DOMParser() : new window.DOMParser()).parseFromString(a, "text/html").querySelector("svg");
188
427
  }
189
- function c(o) {
190
- const l = g(o), n = (l == null ? void 0 : l.innerHTML.trim()) || "";
191
- l && n && ke(`@${s.value}:${r.prefix}:${r.name}`, {
192
- body: n,
193
- height: l.viewBox.baseVal.height,
194
- width: l.viewBox.baseVal.width
428
+ function b(a) {
429
+ const n = $(a), i = (n == null ? void 0 : n.innerHTML.trim()) || "";
430
+ n && i && rt(`@${r.value}:${d.prefix}:${d.name}`, {
431
+ body: i,
432
+ // Set height and width from svg content
433
+ height: n.viewBox.baseVal.height,
434
+ width: n.viewBox.baseVal.width
195
435
  });
196
436
  }
197
- return d && (r.src && !z(`@${s.value}:${r.prefix}:${r.name}`) ? (e.value = !1, d.fetchIcon(r.src).then((o) => {
198
- o && (c(o), e.value = !0);
199
- }).catch((o) => {
200
- throw new Error(`During fetch icon: ${o == null ? void 0 : o.message}`);
201
- })) : r.svg && c(r.svg)), (o, l) => t(e) ? (f(), L(t(Ce), N({
437
+ return c && (d.src && !me(`@${r.value}:${d.prefix}:${d.name}`) ? (e.value = !1, c.fetchIcon(d.src).then((a) => {
438
+ a && (b(a), e.value = !0);
439
+ }).catch((a) => {
440
+ throw new Error(`During fetch icon: ${a == null ? void 0 : a.message}`);
441
+ })) : d.svg && b(d.svg)), (a, n) => t(e) ? (u(), Y(t(nt), N({
202
442
  key: 0,
203
- class: t(p)
443
+ class: t(w)
204
444
  }, {
205
- inline: o.inline,
206
- width: o.width,
207
- height: o.height,
208
- horizontalFlip: o.horizontalFlip,
209
- verticalFlip: o.verticalFlip,
210
- flip: o.flip,
211
- rotate: o.rotate,
212
- color: o.color,
213
- onLoad: o.onLoad,
214
- icon: t(S)
215
- }), null, 16, ["class"])) : B("", !0);
445
+ inline: a.inline,
446
+ width: a.width,
447
+ height: a.height,
448
+ horizontalFlip: a.horizontalFlip,
449
+ verticalFlip: a.verticalFlip,
450
+ flip: a.flip,
451
+ rotate: a.rotate,
452
+ color: a.color,
453
+ onLoad: a.onLoad,
454
+ icon: t(V)
455
+ }), null, 16, ["class"])) : k("", !0);
456
+ }
457
+ }), Ae = ["listbox", "menu"], ht = {
458
+ ...Ue,
459
+ ...he,
460
+ ...$e,
461
+ /**
462
+ * Show / hide dropdown programmatically
463
+ */
464
+ modelValue: {
465
+ type: Boolean,
466
+ default: void 0
467
+ },
468
+ /**
469
+ * Dropdown trigger element
470
+ */
471
+ reference: {
472
+ type: Object,
473
+ default: null
474
+ },
475
+ /**
476
+ * Dropdown role
477
+ */
478
+ role: {
479
+ type: String,
480
+ default: Ae[1],
481
+ validator: (s) => Ae.includes(s)
482
+ }
483
+ }, yt = ["id", "tabindex", "role", "aria-labelledby"], gt = {
484
+ name: "VvDropdown",
485
+ inheritAttrs: !1
486
+ }, Ge = /* @__PURE__ */ ce({
487
+ ...gt,
488
+ props: ht,
489
+ emits: ["update:modelValue"],
490
+ setup(s, { emit: d }) {
491
+ const e = s, { id: c } = toRefs(e), g = useUniqueId(c), w = useAttrs(), r = ref("auto"), V = ref("auto"), $ = ref(null), b = ref(null), a = ref(null), n = ref(null), i = computed({
492
+ get: () => e.reference ?? $.value,
493
+ set: (o) => {
494
+ $.value = o;
495
+ }
496
+ }), _ = computed(() => {
497
+ const o = [];
498
+ if (e.autoPlacement ? typeof e.autoPlacement == "boolean" ? o.push(De()) : o.push(
499
+ De(e.autoPlacement)
500
+ ) : e.flip && (typeof e.flip == "boolean" ? o.push(Ie()) : o.push(Ie(e.flip))), e.shift && (typeof e.shift == "boolean" ? o.push(Oe()) : o.push(Oe(e.shift))), e.size) {
501
+ const p = ({
502
+ availableWidth: M,
503
+ availableHeight: le
504
+ }) => {
505
+ r.value = `${M}px`, V.value = `${le}px`;
506
+ };
507
+ typeof e.size == "boolean" ? o.push(
508
+ Ce({
509
+ apply: p
510
+ })
511
+ ) : o.push(
512
+ Ce({
513
+ ...e.size,
514
+ apply: p
515
+ })
516
+ );
517
+ }
518
+ return e.offset && (o.push(ge(Number(e.offset))), ["string", "number"].includes(typeof e.offset) ? o.push(ge(Number(e.offset))) : o.push(ge(e.offset))), e.arrow && o.push(
519
+ it({
520
+ element: a
521
+ })
522
+ ), o;
523
+ }), { x: P, y: B, strategy: K, middlewareData: L, placement: U } = ut(
524
+ i,
525
+ b,
526
+ {
527
+ whileElementsMounted: dt,
528
+ placement: e.placement,
529
+ middleware: _
530
+ }
531
+ ), j = computed(() => ({
532
+ position: K.value,
533
+ top: `${B.value ?? 0}px`,
534
+ left: `${P.value ?? 0}px`,
535
+ maxWidth: r.value,
536
+ maxHeight: V.value,
537
+ width: e.triggerWidth && i.value ? `${i.value.offsetWidth}px` : void 0
538
+ })), I = computed(() => U.value.split("-")[0]), D = computed(
539
+ () => ({
540
+ top: "bottom",
541
+ right: "left",
542
+ bottom: "top",
543
+ left: "right"
544
+ })[I.value] ?? "bottom"
545
+ ), x = computed(() => {
546
+ var o, p, M, le;
547
+ return ["bottom", "top"].includes(D.value) ? {
548
+ right: `${((o = L.value.arrow) == null ? void 0 : o.x) ?? 0}px`,
549
+ [D.value]: `${-(((p = a.value) == null ? void 0 : p.offsetWidth) ?? 0) / 2}px`
550
+ } : {
551
+ top: `${((M = L.value.arrow) == null ? void 0 : M.y) ?? 0}px`,
552
+ [D.value]: `${-(((le = a.value) == null ? void 0 : le.offsetWidth) ?? 0) / 2}px`
553
+ };
554
+ }), W = useVModel(e, "modelValue", d), J = ref(!1), m = computed({
555
+ get: () => W.value ?? J.value,
556
+ set: (o) => {
557
+ if (W.value === void 0) {
558
+ J.value = o;
559
+ return;
560
+ }
561
+ W.value = o;
562
+ }
563
+ }), z = () => {
564
+ m.value = !0;
565
+ }, O = () => {
566
+ m.value = !1;
567
+ }, Z = () => {
568
+ m.value = !m.value;
569
+ }, re = (o) => {
570
+ i.value = o;
571
+ };
572
+ watch(m, (o) => {
573
+ o && e.autofocusFirst && nextTick(() => {
574
+ const p = E(
575
+ b.value
576
+ );
577
+ p.length > 0 && p[0].focus();
578
+ });
579
+ }), onClickOutside(
580
+ b,
581
+ () => {
582
+ e.autoClose && (m.value = !1);
583
+ },
584
+ { ignore: [i] }
585
+ );
586
+ const ie = computed(() => {
587
+ var o;
588
+ return ((o = i.value) == null ? void 0 : o.getAttribute("id")) ?? void 0;
589
+ }), G = computed(() => ({
590
+ "aria-controls": g.value,
591
+ "aria-haspopup": !0,
592
+ "aria-expanded": m.value
593
+ })), { component: ee, bus: ue } = useProvideDropdownTrigger({
594
+ reference: i,
595
+ id: g,
596
+ expanded: m,
597
+ aria: G
598
+ });
599
+ ue.on("click", Z);
600
+ const { role: te, modifiers: fe } = toRefs(e), { itemRole: Q } = useProvideDropdownItem({ role: te, expanded: m }), y = useBemModifiers(
601
+ "vv-dropdown",
602
+ fe,
603
+ computed(() => ({
604
+ arrow: e.arrow
605
+ }))
606
+ ), { focused: C } = useFocusWithin(b);
607
+ function E(o) {
608
+ return o ? [
609
+ ...o.querySelectorAll(
610
+ 'a[href], button, input, textarea, select, details,[tabindex]:not([tabindex="-1"])'
611
+ )
612
+ ].filter(
613
+ (p) => !p.hasAttribute("disabled") && !p.getAttribute("aria-hidden")
614
+ ) : [];
615
+ }
616
+ const X = () => {
617
+ nextTick(() => {
618
+ if (C.value) {
619
+ const o = E(
620
+ b.value
621
+ );
622
+ if (o.length === 0 || !document.activeElement)
623
+ return;
624
+ const p = o.indexOf(
625
+ document.activeElement
626
+ );
627
+ p < o.length - 1 ? o[p + 1].focus() : o[0].focus();
628
+ }
629
+ });
630
+ }, oe = () => {
631
+ nextTick(() => {
632
+ if (C.value) {
633
+ const o = E(
634
+ b.value
635
+ );
636
+ if (o.length === 0 || !document.activeElement)
637
+ return;
638
+ const p = o.indexOf(
639
+ document.activeElement
640
+ );
641
+ p > 0 ? o[p - 1].focus() : o[o.length - 1].focus();
642
+ }
643
+ });
644
+ };
645
+ return onKeyStroke("Escape", (o) => {
646
+ m.value && (o.preventDefault(), O());
647
+ }), onKeyStroke("ArrowDown", (o) => {
648
+ m.value && C.value && (o.preventDefault(), X());
649
+ }), onKeyStroke("ArrowUp", (o) => {
650
+ m.value && C.value && (o.preventDefault(), oe());
651
+ }), onKeyStroke([" ", "Enter"], (o) => {
652
+ m.value && C.value && (o.preventDefault(), document.activeElement.click());
653
+ }), (o, p) => (u(), v(q, null, [
654
+ de(t(ee), null, {
655
+ default: ne(() => [
656
+ A(o.$slots, "default", T(R({ init: re, show: z, hide: O, toggle: Z, expanded: t(m), aria: t(G) })))
657
+ ]),
658
+ _: 3
659
+ }),
660
+ de(tt, { name: o.transitionName }, {
661
+ default: ne(() => [
662
+ ke(H("div", {
663
+ ref_key: "floatingEl",
664
+ ref: b,
665
+ style: Be(t(j)),
666
+ class: ve(t(y))
667
+ }, [
668
+ e.arrow ? (u(), v("div", {
669
+ key: 0,
670
+ ref_key: "arrowEl",
671
+ ref: a,
672
+ style: Be(t(x)),
673
+ class: "vv-dropdown__arrow"
674
+ }, null, 4)) : k("", !0),
675
+ A(o.$slots, "before", T(R({ expanded: t(m) }))),
676
+ H("ul", N(t(w), {
677
+ id: t(g),
678
+ ref_key: "listEl",
679
+ ref: n,
680
+ tabindex: t(m) ? void 0 : -1,
681
+ role: t(te),
682
+ "aria-labelledby": t(ie),
683
+ class: "vv-dropdown__list"
684
+ }), [
685
+ A(o.$slots, "items", T(R({
686
+ role: t(Q)
687
+ })))
688
+ ], 16, yt),
689
+ A(o.$slots, "after", T(R({ expanded: t(m) })))
690
+ ], 6), [
691
+ [xe, t(m)]
692
+ ])
693
+ ]),
694
+ _: 3
695
+ }, 8, ["name"])
696
+ ], 64));
697
+ }
698
+ }), _t = {
699
+ name: "VvDropdownItem"
700
+ }, Qe = /* @__PURE__ */ ce({
701
+ ..._t,
702
+ setup(s) {
703
+ const { role: d, expanded: e } = useInjectedDropdownItem(), c = ref(null);
704
+ useProvideDropdownAction({ expanded: e });
705
+ const g = useElementHover(c), { focused: w } = useFocus(c), { focused: r } = useFocusWithin(c);
706
+ return watch(g, (V) => {
707
+ V && (w.value = !0);
708
+ }), (V, $) => (u(), v("li", N({ role: t(d) }, {
709
+ ref_key: "element",
710
+ ref: c,
711
+ class: ["vv-dropdown__item", { "focus-visible": t(w) || t(r) }]
712
+ }), [
713
+ A(V.$slots, "default")
714
+ ], 16));
216
715
  }
217
716
  });
218
- function x(y) {
219
- return Array.isArray(y) ? y.filter((r) => isString(r)).join(" ") : y;
717
+ function be(s) {
718
+ return Array.isArray(s) ? s.filter((d) => isString(d)).join(" ") : s;
220
719
  }
221
- function we(y, r) {
720
+ function Xe(s, d) {
222
721
  const {
223
722
  invalid: e,
224
- valid: V,
225
- hint: d,
226
- loading: p
227
- } = r, {
228
- hintLabel: s,
229
- modelValue: S,
230
- valid: g,
231
- validLabel: c,
232
- invalid: o,
233
- invalidLabel: l,
234
- ...n
235
- } = toRefs(y), i = resolveFieldData(n, "loading"), v = resolveFieldData(n, "loadingLabel"), m = computed(() => o.value ? !!(o.value && e || l != null && l.value && Array.isArray(l.value) && l.value.length > 0 || l != null && l.value && !isEmpty(l)) : !1), $ = computed(
236
- () => !!(s && s.value || d)
237
- ), _ = computed(
238
- () => !!(c && c.value || V)
239
- ), I = computed(
240
- () => !!(i != null && i.value && p || i != null && i.value && (v != null && v.value))
241
- ), C = computed(
242
- () => $.value || _.value || m.value || I.value
723
+ valid: c,
724
+ hint: g,
725
+ loading: w
726
+ } = d, {
727
+ hintLabel: r,
728
+ modelValue: V,
729
+ valid: $,
730
+ validLabel: b,
731
+ invalid: a,
732
+ invalidLabel: n,
733
+ ...i
734
+ } = toRefs(s), _ = resolveFieldData(i, "loading"), P = resolveFieldData(i, "loadingLabel"), B = computed(() => a.value ? !!(a.value && e || n != null && n.value && Array.isArray(n.value) && n.value.length > 0 || n != null && n.value && !isEmpty(n)) : !1), K = computed(
735
+ () => !!(r && r.value || g)
736
+ ), L = computed(
737
+ () => !!(b && b.value || c)
738
+ ), U = computed(
739
+ () => !!(_ != null && _.value && w || _ != null && _.value && (P != null && P.value))
740
+ ), j = computed(
741
+ () => K.value || L.value || B.value || U.value
243
742
  );
244
743
  return {
245
- hasInvalid: m,
246
- hasHint: $,
247
- hasValid: _,
248
- hasLoading: I,
744
+ hasInvalid: B,
745
+ hasHint: K,
746
+ hasValid: L,
747
+ hasLoading: U,
249
748
  HintSlot: {
250
749
  name: "HintSlot",
251
750
  props: {
@@ -254,26 +753,26 @@ function we(y, r) {
254
753
  default: () => ({})
255
754
  }
256
755
  },
257
- setup(D) {
258
- const R = computed(() => {
259
- const w = toReactive({
260
- hintLabel: s,
261
- modelValue: S,
262
- valid: g,
263
- validLabel: c,
264
- invalid: o,
265
- invalidLabel: l,
266
- loading: i,
267
- loadingLabel: v,
268
- ...D.params
756
+ setup(I) {
757
+ const D = computed(() => {
758
+ const x = toReactive({
759
+ hintLabel: r,
760
+ modelValue: V,
761
+ valid: $,
762
+ validLabel: b,
763
+ invalid: a,
764
+ invalidLabel: n,
765
+ loading: _,
766
+ loadingLabel: P,
767
+ ...I.params
269
768
  });
270
- return o != null && o.value ? (e == null ? void 0 : e(w)) || x(l == null ? void 0 : l.value) || (s == null ? void 0 : s.value) : g != null && g.value ? (V == null ? void 0 : V(w)) || x(c == null ? void 0 : c.value) || (s == null ? void 0 : s.value) : i != null && i.value ? (p == null ? void 0 : p(w)) || x(v == null ? void 0 : v.value) || (s == null ? void 0 : s.value) : (d == null ? void 0 : d(w)) || x(s == null ? void 0 : s.value) || (s == null ? void 0 : s.value);
769
+ return a != null && a.value ? (e == null ? void 0 : e(x)) || be(n == null ? void 0 : n.value) || (r == null ? void 0 : r.value) : $ != null && $.value ? (c == null ? void 0 : c(x)) || be(b == null ? void 0 : b.value) || (r == null ? void 0 : r.value) : _ != null && _.value ? (w == null ? void 0 : w(x)) || be(P == null ? void 0 : P.value) || (r == null ? void 0 : r.value) : (g == null ? void 0 : g(x)) || be(r == null ? void 0 : r.value) || (r == null ? void 0 : r.value);
271
770
  });
272
771
  return {
273
- isVisible: C,
274
- hasInvalid: m,
275
- hasValid: _,
276
- hintContent: R
772
+ isVisible: j,
773
+ hasInvalid: B,
774
+ hasValid: L,
775
+ hintContent: D
277
776
  };
278
777
  },
279
778
  render() {
@@ -281,7 +780,7 @@ function we(y, r) {
281
780
  return h(
282
781
  "small",
283
782
  {
284
- role: this.hasInvalid || this.hasValid ? "alert" : void 0
783
+ role: this.hasInvalid ? "alert" : this.hasValid ? "status" : void 0
285
784
  },
286
785
  this.hintContent
287
786
  );
@@ -289,259 +788,331 @@ function we(y, r) {
289
788
  }
290
789
  };
291
790
  }
292
- const qe = {
293
- ...re,
791
+ const St = {
792
+ ...Je,
793
+ ...ct,
794
+ ...ft,
795
+ ...qe,
294
796
  ...Ne,
295
- ...Oe,
296
- ...Se,
297
- ...ve,
298
- ...be,
299
- ...ye,
797
+ ...Le,
798
+ ...je,
799
+ ...Me,
800
+ ...Te,
801
+ ...Re,
300
802
  ...he,
301
- ...ne,
302
- ...ge,
303
- ...se,
304
- ...ae,
305
- ...Ve,
306
- ...$e,
307
- ...Pe,
803
+ ...We,
804
+ ...ze,
805
+ ...He,
806
+ ...Ke,
807
+ /**
808
+ * This Boolean attribute indicates that multiple options can be selected in the list.
809
+ * If it is not specified, then only one option can be selected at a time.
810
+ * When multiple is specified, most browsers will show a scrolling list box instead of a single line dropdown.
811
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-multiple
812
+ */
308
813
  multiple: Boolean,
814
+ /**
815
+ * A Boolean attribute indicating that an option with a non-empty string value must be selected.
816
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-required
817
+ */
309
818
  required: Boolean,
819
+ /**
820
+ * If the control is presented as a scrolling list box (e.g. when multiple is specified),
821
+ * this attribute represents the number of rows in the list that should be visible at one time.
822
+ * Browsers are not required to present a select element as a scrolled list box. The default value is 0.
823
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-size
824
+ */
310
825
  size: [String, Number],
826
+ /**
827
+ * modelValue can be a string, number, boolean, object or array of string, number, boolean, object
828
+ */
311
829
  modelValue: {
312
830
  type: [String, Number, Boolean, Object, Array],
313
831
  default: void 0
314
832
  },
833
+ /**
834
+ * <label> value for the select
835
+ */
315
836
  label: String,
837
+ /**
838
+ * Select placeholder
839
+ */
316
840
  placeholder: String
317
- }, ze = ["update:modelValue", "focus", "blur"], xe = ["for"], Ue = { class: "vv-select__wrapper" }, Ge = ["id"], Je = ["disabled", "hidden"], Xe = ["disabled", "value"], Qe = {
841
+ }, wt = ["update:modelValue", "focus", "blur"], Vt = ["for"], $t = { class: "vv-select__wrapper" }, kt = {
842
+ key: 0,
843
+ class: "vv-select__input-before"
844
+ }, Pt = { class: "vv-select__inner" }, Et = ["id"], Bt = ["disabled", "hidden"], Dt = ["disabled", "value"], It = {
845
+ key: 1,
846
+ class: "vv-select__input-after"
847
+ }, Ot = {
318
848
  name: "VvSelect"
319
- }, We = /* @__PURE__ */ J({
320
- ...Qe,
321
- props: qe,
322
- emits: ze,
323
- setup(y, { emit: r }) {
324
- const e = y, V = useSlots(), d = ref(), { HintSlot: p, hasHint: s, hasInvalid: S } = we(e, V), {
325
- modifiers: g,
326
- disabled: c,
327
- readonly: o,
328
- loading: l,
329
- icon: n,
330
- iconPosition: i,
331
- invalid: v,
332
- valid: m,
333
- floating: $,
334
- multiple: _
335
- } = toRefs(e), I = computed(() => String(e.id || le())), C = computed(() => `${I.value}-hint`), { focused: D } = useComponentFocus(d, r), R = useElementVisibility(d);
336
- watch(R, (u) => {
337
- u && e.autofocus && (D.value = !0);
849
+ }, Ct = /* @__PURE__ */ ce({
850
+ ...Ot,
851
+ props: St,
852
+ emits: wt,
853
+ setup(s, { emit: d }) {
854
+ const e = s, c = useSlots(), g = ref(), { HintSlot: w, hasHint: r, hasInvalid: V } = Xe(e, c), {
855
+ id: $,
856
+ modifiers: b,
857
+ disabled: a,
858
+ readonly: n,
859
+ loading: i,
860
+ icon: _,
861
+ iconPosition: P,
862
+ invalid: B,
863
+ valid: K,
864
+ floating: L,
865
+ multiple: U
866
+ } = toRefs(e), j = useUniqueId($), I = computed(() => `${j.value}-hint`), { focused: D } = useComponentFocus(g, d), x = useElementVisibility(g);
867
+ watch(x, (y) => {
868
+ y && e.autofocus && (D.value = !0);
338
869
  });
339
- const { hasIcon: w, hasIconLeft: E, hasIconRight: M } = useComponentIcon(
340
- n,
341
- i
342
- ), T = computed(() => !isEmpty(e.modelValue)), H = computed(() => e.disabled || e.readonly), j = computed(() => H.value ? -1 : e.tabindex), q = computed(() => {
870
+ const { hasIcon: W, hasIconBefore: J, hasIconAfter: m } = useComponentIcon(
871
+ _,
872
+ P
873
+ ), z = computed(() => !isEmpty(e.modelValue)), O = computed(() => e.disabled || e.readonly), Z = computed(() => O.value ? -1 : e.tabindex), re = computed(() => {
343
874
  if (e.invalid === !0)
344
875
  return !0;
345
876
  if (e.valid === !0)
346
877
  return !1;
347
- }), { bemCssClasses: X } = useBemModifiers("vv-select", {
348
- modifiers: g,
349
- valid: m,
350
- invalid: v,
351
- loading: l,
352
- disabled: c,
353
- readonly: o,
354
- iconLeft: E,
355
- iconRight: M,
356
- dirty: T,
357
- focus: D,
358
- floating: $,
359
- multiple: _
360
- }), Q = computed(() => ({
878
+ }), ie = useBemModifiers(
879
+ "vv-select",
880
+ b,
881
+ computed(() => ({
882
+ valid: K.value,
883
+ invalid: B.value,
884
+ loading: i.value,
885
+ disabled: a.value,
886
+ readonly: n.value,
887
+ "icon-before": J.value,
888
+ "icon-after": m.value,
889
+ dirty: z.value,
890
+ focus: D.value,
891
+ floating: L.value,
892
+ multiple: U.value
893
+ }))
894
+ ), G = computed(() => ({
361
895
  name: e.name,
362
- tabindex: j.value,
363
- disabled: H.value,
896
+ tabindex: Z.value,
897
+ disabled: O.value,
364
898
  required: e.required,
365
899
  size: e.size,
366
900
  autocomplete: e.autocomplete,
367
901
  multiple: e.multiple,
368
- "aria-invalid": q.value,
369
- "aria-describedby": !S.value && s.value ? C.value : void 0,
370
- "aria-errormessage": S.value ? C.value : void 0
371
- })), { getOptionLabel: W, getOptionValue: Y } = useOptions(e);
372
- function Z(u) {
373
- return typeof u == "string" || u.disabled === void 0 ? c.value : u.disabled;
374
- }
375
- const K = computed({
902
+ "aria-invalid": re.value,
903
+ "aria-describedby": !V.value && r.value ? I.value : void 0,
904
+ "aria-errormessage": V.value ? I.value : void 0
905
+ })), ee = computed(() => ({
906
+ valid: e.valid,
907
+ invalid: e.invalid,
908
+ modelValue: e.modelValue
909
+ })), { getOptionLabel: ue, getOptionValue: te, getOptionDisabled: fe } = useOptions(e), Q = computed({
376
910
  get: () => e.modelValue,
377
- set: (u) => {
378
- Array.isArray(u) && (u = u.filter((F) => F !== void 0)), r("update:modelValue", u);
911
+ set: (y) => {
912
+ Array.isArray(y) && (y = y.filter((C) => C !== void 0)), d("update:modelValue", y);
379
913
  }
380
914
  });
381
- return (u, F) => (f(), P("div", {
382
- class: te(t(X))
915
+ return (y, C) => (u(), v("div", {
916
+ class: ve(t(ie))
383
917
  }, [
384
- u.label ? (f(), P("label", {
918
+ y.label ? (u(), v("label", {
385
919
  key: 0,
386
- for: t(I)
387
- }, A(u.label), 9, xe)) : B("", !0),
388
- O("div", Ue, [
389
- U(u.$slots, "before", {}, () => [
390
- t(E) ? (f(), L(G, ie(N({ key: 0 }, t(w))), null, 16)) : B("", !0)
391
- ]),
392
- me(O("select", N({
393
- id: t(I),
394
- ref_key: "select",
395
- ref: d,
396
- "onUpdate:modelValue": F[0] || (F[0] = (a) => fe(K) ? K.value = a : null)
397
- }, t(Q)), [
398
- u.placeholder ? (f(), P("option", {
920
+ for: t(j)
921
+ }, F(y.label), 9, Vt)) : k("", !0),
922
+ H("div", $t, [
923
+ y.$slots.before ? (u(), v("div", kt, [
924
+ A(y.$slots, "before", T(R(t(ee))))
925
+ ])) : k("", !0),
926
+ H("div", Pt, [
927
+ t(J) ? (u(), Y(pe, N({
399
928
  key: 0,
400
- value: void 0,
401
- disabled: !u.unselectable,
402
- hidden: !u.unselectable
403
- }, A(u.placeholder), 9, Je)) : B("", !0),
404
- (f(!0), P(oe, null, ce(u.options, (a, b) => (f(), P("option", {
405
- key: b,
406
- disabled: Z(a),
407
- value: t(Y)(a)
408
- }, A(t(W)(a)), 9, Xe))), 128))
409
- ], 16, Ge), [
410
- [Ie, t(K)]
929
+ class: "vv-select__icon"
930
+ }, t(W)), null, 16)) : k("", !0),
931
+ ke(H("select", N({
932
+ id: t(j),
933
+ ref_key: "select",
934
+ ref: g,
935
+ "onUpdate:modelValue": C[0] || (C[0] = (E) => _e(Q) ? Q.value = E : null)
936
+ }, t(G)), [
937
+ y.placeholder ? (u(), v("option", {
938
+ key: 0,
939
+ value: void 0,
940
+ disabled: !y.unselectable,
941
+ hidden: !y.unselectable
942
+ }, F(y.placeholder), 9, Bt)) : k("", !0),
943
+ (u(!0), v(q, null, Se(y.options, (E, X) => (u(), v("option", {
944
+ key: X,
945
+ disabled: t(fe)(E),
946
+ value: t(te)(E)
947
+ }, F(t(ue)(E)), 9, Dt))), 128))
948
+ ], 16, Et), [
949
+ [ot, t(Q)]
950
+ ]),
951
+ t(m) ? (u(), Y(pe, N({
952
+ key: 1,
953
+ class: "vv-select__icon vv-select__icon-after"
954
+ }, t(W)), null, 16)) : k("", !0)
411
955
  ]),
412
- U(u.$slots, "after", {}, () => [
413
- t(M) ? (f(), L(G, ie(N({ key: 0 }, t(w))), null, 16)) : B("", !0)
414
- ])
956
+ y.$slots.after ? (u(), v("div", It, [
957
+ A(y.$slots, "after", T(R(t(ee))))
958
+ ])) : k("", !0)
415
959
  ]),
416
- ee(t(p), {
417
- id: t(C),
960
+ de(t(w), {
961
+ id: t(I),
418
962
  class: "vv-select__hint"
419
963
  }, null, 8, ["id"])
420
964
  ], 2));
421
965
  }
422
- }), Ye = [
423
- "update:modelValue",
424
- "change:search",
425
- "focus",
426
- "blur"
427
- ], Ze = {
428
- ...re,
429
- ...Se,
430
- ...ve,
431
- ...be,
432
- ...ye,
966
+ }), At = {
433
967
  ...he,
434
- ...ne,
435
- ...ge,
436
- ...se,
437
- ...ae,
438
- ...Ve,
439
- ...$e,
440
- ...Pe,
441
- modelValue: {
442
- type: [String, Number, Boolean, Object, Array],
443
- default: void 0
444
- },
445
- label: String,
446
- labelNoResults: { type: String, default: "No results" },
447
- placeholder: String,
448
- searchable: Boolean,
449
- searchPlaceholder: String,
450
- debounceSearch: {
451
- type: [Number, String],
452
- default: 0
453
- },
454
- multiple: Boolean,
455
- maxValues: [Number, String],
456
- separator: { type: String, default: ", " },
457
- native: Boolean
458
- }, et = ["id"], tt = ["id", "for"], ot = ["tabindex"], lt = ["id", "placeholder"], nt = {
459
- name: "VvCombobox"
460
- }, it = /* @__PURE__ */ J({
461
- ...nt,
462
- props: Ze,
463
- emits: Ye,
464
- setup(y, { emit: r }) {
465
- const e = y, V = useSlots(), { HintSlot: d } = we(e, V), p = ref(), s = ref(), { focused: S } = useComponentFocus(p, r), g = computed(() => String(e.id || le())), c = ref(""), o = refDebounced(
466
- c,
968
+ value: [String, Number]
969
+ }, xt = {
970
+ name: "VvBadge"
971
+ }, Ft = /* @__PURE__ */ ce({
972
+ ...xt,
973
+ props: At,
974
+ setup(s) {
975
+ const d = s, { modifiers: e } = toRefs(d), c = useBemModifiers("vv-badge", e);
976
+ return (g, w) => (u(), v("span", {
977
+ class: ve(t(c)),
978
+ role: "status"
979
+ }, [
980
+ A(g.$slots, "default", {}, () => [
981
+ se(F(g.value), 1)
982
+ ])
983
+ ], 2));
984
+ }
985
+ }), Nt = ["id"], Lt = ["id", "for"], Mt = ["id", "aria-controls", "aria-labelledby", "aria-describedby", "placeholder"], Tt = {
986
+ key: 0,
987
+ class: "vv-select__input-before"
988
+ }, Rt = { class: "vv-select__inner" }, jt = ["aria-labelledby", "tabindex"], Wt = ["aria-label", "onClick"], zt = {
989
+ key: 1,
990
+ class: "vv-select__input-after"
991
+ }, qt = { class: "vv-dropdown-action__hint" }, Ht = {
992
+ name: "VvCombobox",
993
+ components: { VvDropdown: Ge, VvDropdownItem: Qe }
994
+ }, Qt = /* @__PURE__ */ ce({
995
+ ...Ht,
996
+ props: vt,
997
+ emits: pt,
998
+ setup(s, { emit: d }) {
999
+ const e = s, c = useSlots(), { HintSlot: g } = Xe(e, c), w = ref(null), r = ref(null), V = ref(null), { focused: $ } = useComponentFocus(w, d), { focused: b } = useFocusWithin(V);
1000
+ watch($, (l) => {
1001
+ if (e.autoOpen) {
1002
+ if (l && !i.value) {
1003
+ P();
1004
+ return;
1005
+ }
1006
+ !l && i.value && !b.value && B();
1007
+ }
1008
+ }), watch(b, (l) => {
1009
+ !$.value && !l && i.value && B();
1010
+ });
1011
+ const a = ref(""), n = refDebounced(
1012
+ a,
467
1013
  Number(e.debounceSearch)
468
- ), l = ref(!1), {
469
- icon: n,
470
- iconPosition: i,
471
- modifiers: v,
472
- disabled: m,
473
- readonly: $,
474
- loading: _,
475
- valid: I,
476
- invalid: C,
477
- floating: D
478
- } = toRefs(e);
479
- watch(
480
- o,
481
- () => r("change:search", o.value)
482
1014
  );
483
- const { hasIcon: R, hasIconLeft: w, hasIconRight: E } = useComponentIcon(
1015
+ watch(
484
1016
  n,
485
- i
486
- ), M = computed(() => !isEmpty(e.modelValue)), T = computed(() => m.value || $.value ? -1 : e.tabindex), { bemCssClasses: H } = useBemModifiers("vv-select", {
487
- modifiers: v,
488
- disabled: m,
489
- loading: _,
490
- readonly: $,
491
- iconLeft: w,
492
- iconRight: E,
493
- valid: I,
494
- invalid: C,
495
- dirty: M,
496
- focus: S,
497
- floating: D
498
- }), j = computed(
499
- () => e.searchable ? Q.value : e.options
500
- ), { getOptionLabel: q, getOptionValue: X } = useOptions(e), Q = computed(() => {
501
- var a;
502
- return (a = e.options) == null ? void 0 : a.filter((b) => q(b).toLowerCase().includes(o.value.toLowerCase().trim()));
503
- }), W = computed(() => {
504
- let a = [];
505
- return Array.isArray(e.modelValue) ? a = e.modelValue : e.modelValue && (a = [e.modelValue]), e.options.filter(
506
- (b) => a.includes(X(b))
507
- );
508
- }), Y = computed(() => W.value.map((a) => q(a)).join(e.separator));
509
- onClickOutside(p, () => {
510
- p.value.open = !1;
1017
+ () => d("change:search", n.value)
1018
+ );
1019
+ const i = ref(!1), _ = () => {
1020
+ e.disabled || e.readonly || (i.value = !i.value);
1021
+ }, P = () => {
1022
+ e.disabled || e.readonly || i.value || (i.value = !0);
1023
+ }, B = () => {
1024
+ e.disabled || e.readonly || !i.value || (i.value = !1);
1025
+ };
1026
+ watch(i, (l) => {
1027
+ z.value && nextTick(() => {
1028
+ if (l) {
1029
+ r.value && r.value.focus();
1030
+ return;
1031
+ }
1032
+ a.value = "";
1033
+ });
511
1034
  });
512
- function Z(a) {
513
- const b = a.target;
514
- l.value = b.open;
515
- }
516
- function K(a) {
517
- p.value && !e.multiple && (p.value.open = !1), r("update:modelValue", a);
1035
+ const {
1036
+ id: K,
1037
+ icon: L,
1038
+ iconPosition: U,
1039
+ modifiers: j,
1040
+ disabled: I,
1041
+ readonly: D,
1042
+ loading: x,
1043
+ valid: W,
1044
+ invalid: J,
1045
+ floating: m,
1046
+ searchable: z
1047
+ } = toRefs(e), O = useUniqueId(K), Z = computed(() => `${O.value}-hint`), re = computed(() => `${O.value}-dropdown`), ie = computed(() => `${O.value}-search`), G = computed(() => `${O.value}-label`), { hasIcon: ee, hasIconBefore: ue, hasIconAfter: te } = useComponentIcon(
1048
+ L,
1049
+ U
1050
+ ), fe = computed(() => !isEmpty(e.modelValue)), Q = computed(() => I.value || D.value ? -1 : e.tabindex), y = useBemModifiers(
1051
+ "vv-select",
1052
+ j,
1053
+ computed(() => ({
1054
+ disabled: I.value,
1055
+ loading: x.value,
1056
+ readonly: D.value,
1057
+ "icon-before": Boolean(ue.value),
1058
+ "icon-after": Boolean(te.value),
1059
+ valid: W.value,
1060
+ invalid: J.value,
1061
+ dirty: fe.value,
1062
+ focus: $.value,
1063
+ floating: m.value
1064
+ }))
1065
+ ), C = computed(
1066
+ () => e.searchable ? o.value : e.options
1067
+ ), { getOptionLabel: E, getOptionValue: X, getOptionDisabled: oe } = useOptions(e), o = computed(() => {
1068
+ var l;
1069
+ return (l = e.options) == null ? void 0 : l.filter((S) => E(S).toLowerCase().includes(n.value.toLowerCase().trim()));
1070
+ });
1071
+ function p(l) {
1072
+ return Array.isArray(e.modelValue) ? contains(l, e.modelValue) || contains(X(l), e.modelValue) : equals(l, e.modelValue) || equals(X(l), e.modelValue);
518
1073
  }
519
- const u = computed(() => ({
520
- name: e.name,
521
- options: j.value,
522
- labelKey: e.labelKey,
523
- valueKey: e.valueKey,
524
- disabled: e.disabled,
525
- labelNoResults: e.labelNoResults,
526
- multiple: e.multiple,
527
- maxValues: e.maxValues,
528
- modelValue: e.modelValue,
529
- unselectable: e.unselectable
530
- })), F = computed(() => ({
531
- id: g.value,
1074
+ const M = computed(() => {
1075
+ let l = [];
1076
+ return Array.isArray(e.modelValue) ? l = e.modelValue : e.modelValue && (l = [e.modelValue]), e.options.filter(
1077
+ (S) => l.includes(X(S))
1078
+ );
1079
+ }), le = computed(() => M.value.map((l) => E(l)).join(e.separator));
1080
+ watch(M, () => {
1081
+ !e.multiple && e.autoClose && B();
1082
+ });
1083
+ const Ye = () => {
1084
+ e.autoOpen ? P() : _();
1085
+ }, ye = (l) => {
1086
+ var ae;
1087
+ if (e.disabled || e.readonly)
1088
+ return;
1089
+ const S = X(l);
1090
+ let f = S;
1091
+ if (e.multiple)
1092
+ if (Array.isArray(e.modelValue)) {
1093
+ if (e.maxValues !== void 0 && e.maxValues >= 0 && ((ae = e.modelValue) == null ? void 0 : ae.length) >= e.maxValues && !contains(S, e.modelValue))
1094
+ return;
1095
+ f = contains(S, e.modelValue) ? removeFromList(S, e.modelValue) : [...e.modelValue, S];
1096
+ } else
1097
+ f = [S];
1098
+ else
1099
+ e.unselectable && S === e.modelValue && (f = void 0);
1100
+ d("update:modelValue", f);
1101
+ }, Ze = computed(() => ({
1102
+ id: O.value,
532
1103
  name: e.name,
533
- tabindex: T.value,
534
- valid: I.value,
1104
+ tabindex: Q.value,
1105
+ valid: W.value,
535
1106
  validLabel: e.validLabel,
536
- invalid: C.value,
1107
+ invalid: J.value,
537
1108
  invalidLabel: e.invalidLabel,
538
1109
  hintLabel: e.hintLabel,
539
- loading: _.value,
1110
+ loading: x.value,
540
1111
  loadingLabel: e.loadingLabel,
541
- disabled: m.value,
542
- readonly: $.value,
1112
+ disabled: I.value,
1113
+ readonly: D.value,
543
1114
  modifiers: e.modifiers,
544
- options: j.value,
1115
+ options: C.value,
545
1116
  labelKey: e.labelKey,
546
1117
  valueKey: e.valueKey,
547
1118
  icon: e.icon,
@@ -552,67 +1123,171 @@ const qe = {
552
1123
  label: e.label,
553
1124
  placeholder: e.placeholder,
554
1125
  modelValue: e.modelValue
1126
+ })), et = computed(() => ({
1127
+ id: re.value,
1128
+ reference: V.value,
1129
+ placement: e.placement,
1130
+ transitionName: e.transitionName,
1131
+ offset: e.offset,
1132
+ shift: e.shift,
1133
+ flip: e.flip,
1134
+ autoPlacement: e.autoPlacement,
1135
+ arrow: e.arrow,
1136
+ autoClose: e.autoClose,
1137
+ autofocusFirst: z.value ? !1 : e.autofocusFirst,
1138
+ triggerWidth: e.triggerWidth,
1139
+ modifiers: e.dropdownModifiers
1140
+ })), Pe = computed(() => ({
1141
+ valid: e.valid,
1142
+ invalid: e.invalid,
1143
+ modelValue: e.modelValue
555
1144
  }));
556
- return (a, b) => a.native ? (f(), L(We, N({ key: 1 }, t(F), {
557
- "onUpdate:modelValue": b[4] || (b[4] = (k) => r("update:modelValue", k))
558
- }), null, 16)) : (f(), P("div", {
1145
+ return onKeyStroke([" ", "Enter"], (l) => {
1146
+ e.autoOpen || !i.value && $.value && (l.preventDefault(), l.stopImmediatePropagation(), _());
1147
+ }), (l, S) => l.native ? (u(), Y(Ct, N({ key: 1 }, t(Ze), {
1148
+ "onUpdate:modelValue": S[2] || (S[2] = (f) => d("update:modelValue", f))
1149
+ }), null, 16)) : (u(), v("div", {
559
1150
  key: 0,
560
- id: t(g),
561
- class: te(t(H))
1151
+ id: t(O),
1152
+ class: ve(t(y))
562
1153
  }, [
563
- a.label ? (f(), P("label", {
1154
+ l.label ? (u(), v("label", {
564
1155
  key: 0,
565
- id: `${t(g)}-label`,
566
- for: a.searchable && t(l) ? `${t(g)}-input` : void 0
567
- }, A(a.label), 9, tt)) : B("", !0),
568
- O("details", {
569
- ref_key: "dropdown",
570
- ref: p,
571
- class: "vv-select__wrapper",
572
- onClick: b[2] || (b[2] = (k) => t(m) || t($) ? k.preventDefault() : null),
573
- onKeyup: b[3] || (b[3] = ue((k) => t(p).open = !1, ["esc"])),
574
- onToggle: Z
1156
+ id: t(G),
1157
+ for: t(z) ? t(ie) : void 0
1158
+ }, F(l.label), 9, Lt)) : k("", !0),
1159
+ H("div", {
1160
+ ref_key: "wrapperEl",
1161
+ ref: V,
1162
+ class: "vv-select__wrapper"
575
1163
  }, [
576
- O("summary", {
577
- class: "vv-select__input",
578
- tabindex: t(T),
579
- onKeyup: b[1] || (b[1] = ue((k) => a.searchable ? k.preventDefault() : null, ["space"]))
580
- }, [
581
- U(a.$slots, "before", {}, () => [
582
- t(w) ? (f(), L(G, N({
583
- key: 0,
584
- class: "vv-select__icon-left"
585
- }, t(R)), null, 16)) : B("", !0)
1164
+ de(Ge, N({
1165
+ modelValue: t(i),
1166
+ "onUpdate:modelValue": S[1] || (S[1] = (f) => _e(i) ? i.value = f : null)
1167
+ }, t(et), { role: "listbox" }), lt({
1168
+ default: ne(({ aria: f }) => [
1169
+ l.$slots.before ? (u(), v("div", Tt, [
1170
+ A(l.$slots, "before", T(R(t(Pe))))
1171
+ ])) : k("", !0),
1172
+ H("div", Rt, [
1173
+ t(ue) ? (u(), Y(pe, N({
1174
+ key: 0,
1175
+ class: "vv-select__icon"
1176
+ }, t(ee)), null, 16)) : k("", !0),
1177
+ H("div", N({
1178
+ ref_key: "inputEl",
1179
+ ref: w
1180
+ }, f, {
1181
+ "aria-labelledby": t(G),
1182
+ class: "vv-select__input",
1183
+ role: "combobox",
1184
+ tabindex: t(Q),
1185
+ onClickPassive: Ye
1186
+ }), [
1187
+ A(l.$slots, "value", T(R({ selectedOptions: t(M), onInput: ye })), () => [
1188
+ t(le) ? (u(), v(q, { key: 0 }, [
1189
+ l.badges ? (u(!0), v(q, { key: 1 }, Se(t(M), (ae, Ee) => (u(), Y(Ft, {
1190
+ key: Ee,
1191
+ modifiers: l.badgeModifiers,
1192
+ class: "vv-select__badge"
1193
+ }, {
1194
+ default: ne(() => [
1195
+ se(F(t(E)(ae)) + " ", 1),
1196
+ l.unselectable && !t(D) && !t(I) ? (u(), v("button", {
1197
+ key: 0,
1198
+ "aria-label": l.deselectLabel,
1199
+ onClick: at((Kt) => ye(ae), ["stop"])
1200
+ }, [
1201
+ de(pe, { name: "close" })
1202
+ ], 8, Wt)) : k("", !0)
1203
+ ]),
1204
+ _: 2
1205
+ }, 1032, ["modifiers"]))), 128)) : (u(), v(q, { key: 0 }, [
1206
+ se(F(t(le)), 1)
1207
+ ], 64))
1208
+ ], 64)) : (u(), v(q, { key: 1 }, [
1209
+ se(F(l.placeholder), 1)
1210
+ ], 64))
1211
+ ])
1212
+ ], 16, jt),
1213
+ t(te) ? (u(), Y(pe, N({
1214
+ key: 1,
1215
+ class: "vv-select__icon vv-select__icon-after"
1216
+ }, t(ee)), null, 16)) : k("", !0)
1217
+ ]),
1218
+ l.$slots.after ? (u(), v("div", zt, [
1219
+ A(l.$slots, "after", T(R(t(Pe))))
1220
+ ])) : k("", !0)
586
1221
  ]),
587
- a.searchable && t(l) ? me((f(), P("input", {
588
- key: 0,
589
- id: `${t(g)}-input`,
590
- ref_key: "inputSearch",
591
- ref: s,
592
- "onUpdate:modelValue": b[0] || (b[0] = (k) => fe(c) ? c.value = k : null),
593
- role: "combobox",
594
- type: "search",
595
- placeholder: a.searchPlaceholder
596
- }, null, 8, lt)), [
597
- [Be, t(c)]
598
- ]) : (f(), P(oe, { key: 1 }, [
599
- pe(A(t(Y) || a.placeholder), 1)
600
- ], 64)),
601
- U(a.$slots, "after", {}, () => [
602
- t(E) ? (f(), L(G, N({
603
- key: 0,
604
- class: "vv-select__icon-right"
605
- }, t(R)), null, 16)) : B("", !0)
606
- ])
607
- ], 40, ot),
608
- ee(Me, N({
609
- id: `${t(g)}-dropdown`
610
- }, t(u), { "onUpdate:modelValue": K }), null, 16, ["id"])
611
- ], 544),
612
- ee(t(d), { class: "vv-select__hint" })
613
- ], 10, et));
1222
+ items: ne(() => [
1223
+ (u(!0), v(q, null, Se(t(o), (f, ae) => (u(), Y(Qe, {
1224
+ key: ae,
1225
+ class: ve(["vv-dropdown-action", {
1226
+ disabled: t(oe)(f),
1227
+ selected: p(f),
1228
+ "vv-dropdown-action--unselectable": l.unselectable && p(f)
1229
+ }]),
1230
+ tabindex: t(oe)(f) ? -1 : 0,
1231
+ "aria-selected": p(f),
1232
+ "aria-disabled": t(oe)(f),
1233
+ onClickPassive: (Ee) => ye(f)
1234
+ }, {
1235
+ default: ne(() => [
1236
+ A(l.$slots, "option", T(R({
1237
+ option: f,
1238
+ selectedOptions: t(M),
1239
+ selected: p(f),
1240
+ disabled: t(oe)(f)
1241
+ })), () => [
1242
+ se(F(t(E)(f)) + " ", 1),
1243
+ H("span", qt, [
1244
+ p(f) ? (u(), v(q, { key: 0 }, [
1245
+ se(F(l.unselectable ? l.pressToDeselectLabel : l.selectedLabel), 1)
1246
+ ], 64)) : t(oe)(f) ? k("", !0) : (u(), v(q, { key: 1 }, [
1247
+ se(F(l.pressToSelectLabel), 1)
1248
+ ], 64))
1249
+ ])
1250
+ ])
1251
+ ]),
1252
+ _: 2
1253
+ }, 1032, ["tabindex", "class", "aria-selected", "aria-disabled", "onClickPassive"]))), 128))
1254
+ ]),
1255
+ _: 2
1256
+ }, [
1257
+ t(z) ? {
1258
+ name: "before",
1259
+ fn: ne(() => [
1260
+ t(z) ? ke((u(), v("input", {
1261
+ key: 0,
1262
+ id: t(ie),
1263
+ ref_key: "inputSearchEl",
1264
+ ref: r,
1265
+ "onUpdate:modelValue": S[0] || (S[0] = (f) => _e(a) ? a.value = f : null),
1266
+ "aria-autocomplete": "list",
1267
+ "aria-controls": t(re),
1268
+ "aria-labelledby": t(G),
1269
+ "aria-describedby": t(Z),
1270
+ autocomplete: "off",
1271
+ spellcheck: "false",
1272
+ type: "search",
1273
+ class: "vv-dropdown__search",
1274
+ placeholder: l.searchPlaceholder
1275
+ }, null, 8, Mt)), [
1276
+ [xe, t(i)],
1277
+ [st, t(a)]
1278
+ ]) : k("", !0)
1279
+ ]),
1280
+ key: "0"
1281
+ } : void 0
1282
+ ]), 1040, ["modelValue"])
1283
+ ], 512),
1284
+ de(t(g), {
1285
+ id: t(Z),
1286
+ class: "vv-select__hint"
1287
+ }, null, 8, ["id"])
1288
+ ], 10, Nt));
614
1289
  }
615
1290
  });
616
1291
  export {
617
- it as default
1292
+ Qt as default
618
1293
  };