@volverjs/ui-vue 0.0.13 → 0.0.15

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 (343) hide show
  1. package/dist/Volver.d.ts +121 -0
  2. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +68 -0
  3. package/dist/components/VvAccordion/index.d.ts +47 -0
  4. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +98 -0
  5. package/dist/components/VvAccordionGroup/index.d.ts +54 -0
  6. package/dist/components/VvAction/VvAction.es.js +26 -26
  7. package/dist/components/VvAction/VvAction.umd.js +1 -1
  8. package/dist/components/VvAction/VvAction.vue.d.ts +110 -0
  9. package/dist/components/VvAction/index.d.ts +2 -0
  10. package/dist/components/VvAlert/VvAlert.es.js +43 -44
  11. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  12. package/dist/components/VvAlert/VvAlert.vue.d.ts +124 -0
  13. package/dist/components/VvAlert/index.d.ts +104 -0
  14. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +54 -55
  15. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  16. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +97 -0
  17. package/dist/components/VvAlertGroup/index.d.ts +47 -0
  18. package/dist/components/VvAvatar/VvAvatar.vue.d.ts +24 -0
  19. package/dist/components/VvAvatar/index.d.ts +10 -0
  20. package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +50 -0
  21. package/dist/components/VvAvatarGroup/index.d.ts +28 -0
  22. package/dist/components/VvBadge/VvBadge.vue.d.ts +24 -0
  23. package/dist/components/VvBadge/index.d.ts +7 -0
  24. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +34 -34
  25. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  26. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +39 -0
  27. package/dist/components/VvBreadcrumb/index.d.ts +8 -0
  28. package/dist/components/VvButton/VvButton.es.js +186 -187
  29. package/dist/components/VvButton/VvButton.umd.js +1 -1
  30. package/dist/components/VvButton/VvButton.vue.d.ts +221 -0
  31. package/dist/components/VvButton/index.d.ts +131 -0
  32. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +84 -0
  33. package/dist/components/VvButtonGroup/index.d.ts +37 -0
  34. package/dist/components/VvCard/VvCard.vue.d.ts +30 -0
  35. package/dist/components/VvCard/index.d.ts +7 -0
  36. package/dist/components/VvCheckbox/VvCheckbox.es.js +215 -217
  37. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  38. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +187 -0
  39. package/dist/components/VvCheckbox/index.d.ts +94 -0
  40. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +235 -237
  41. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  42. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +212 -0
  43. package/dist/components/VvCheckboxGroup/index.d.ts +2 -0
  44. package/dist/components/VvCombobox/VvCombobox.es.js +810 -813
  45. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  46. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +346 -0
  47. package/dist/components/VvCombobox/index.d.ts +694 -0
  48. package/dist/components/VvDialog/VvDialog.vue.d.ts +73 -0
  49. package/dist/components/VvDialog/index.d.ts +45 -0
  50. package/dist/components/VvDropdown/VvDropdown.es.js +4 -4
  51. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  52. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +258 -0
  53. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +118 -0
  54. package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +22 -0
  55. package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +22 -0
  56. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +82 -0
  57. package/dist/components/VvDropdown/index.d.ts +120 -0
  58. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +50 -50
  59. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  60. package/dist/components/VvIcon/VvIcon.es.js +30 -31
  61. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  62. package/dist/components/VvIcon/VvIcon.vue.d.ts +6 -0
  63. package/dist/components/VvIcon/index.d.ts +86 -0
  64. package/dist/components/VvInputFile/VvInputFile.es.js +415 -418
  65. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
  66. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +361 -0
  67. package/dist/components/VvInputFile/index.d.ts +204 -0
  68. package/dist/components/VvInputText/VvInputText.es.js +595 -588
  69. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  70. package/dist/components/VvInputText/VvInputText.vue.d.ts +524 -0
  71. package/dist/components/VvInputText/VvInputTextActions.d.ts +4 -0
  72. package/dist/components/VvInputText/index.d.ts +313 -0
  73. package/dist/components/VvNav/VvNav.es.js +63 -63
  74. package/dist/components/VvNav/VvNav.umd.js +1 -1
  75. package/dist/components/VvNav/VvNav.vue.d.ts +48 -0
  76. package/dist/components/VvNav/VvNavItem.vue.d.ts +14 -0
  77. package/dist/components/VvNav/VvNavSeparator.vue.d.ts +3 -0
  78. package/dist/components/VvNav/index.d.ts +11 -0
  79. package/dist/components/VvNavItem/VvNavItem.es.js +41 -41
  80. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  81. package/dist/components/VvProgress/VvProgress.vue.d.ts +38 -0
  82. package/dist/components/VvProgress/index.d.ts +33 -0
  83. package/dist/components/VvRadio/VvRadio.es.js +222 -224
  84. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  85. package/dist/components/VvRadio/VvRadio.vue.d.ts +179 -0
  86. package/dist/components/VvRadio/index.d.ts +80 -0
  87. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +234 -236
  88. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  89. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +212 -0
  90. package/dist/components/VvRadioGroup/index.d.ts +2 -0
  91. package/dist/components/VvSelect/VvSelect.es.js +200 -203
  92. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  93. package/dist/components/VvSelect/VvSelect.vue.d.ts +183 -0
  94. package/dist/components/VvSelect/index.d.ts +298 -0
  95. package/dist/components/VvTab/VvTab.es.js +35 -35
  96. package/dist/components/VvTab/VvTab.umd.js +1 -1
  97. package/dist/components/VvTab/VvTab.vue.d.ts +64 -0
  98. package/dist/components/VvTab/index.d.ts +19 -0
  99. package/dist/components/VvTextarea/VvTextarea.es.js +341 -344
  100. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  101. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +384 -0
  102. package/dist/components/VvTextarea/index.d.ts +190 -0
  103. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +37 -0
  104. package/dist/components/VvTooltip/index.d.ts +19 -0
  105. package/dist/components/VvVirtualScroll/VvVirtualScroll.vue.d.ts +51 -0
  106. package/dist/components/common/HintSlot.d.ts +57 -0
  107. package/dist/components/common/VvInputClearAction.d.ts +52 -0
  108. package/dist/components/common/VvInputPasswordAction.d.ts +71 -0
  109. package/dist/components/common/VvInputStepAction.d.ts +50 -0
  110. package/dist/components/index.d.ts +34 -0
  111. package/dist/components/index.es.js +1965 -1958
  112. package/dist/components/index.umd.js +1 -1
  113. package/dist/composables/alert/useAlerInject.d.ts +4 -0
  114. package/dist/composables/alert/useAlert.d.ts +92 -0
  115. package/dist/composables/alert/useAlertProvide.d.ts +10 -0
  116. package/dist/composables/dropdown/useDropdownContextmenu.d.ts +18 -0
  117. package/dist/composables/dropdown/useDropdownInject.d.ts +12 -0
  118. package/dist/composables/dropdown/useDropdownProvide.d.ts +40 -0
  119. package/dist/composables/dropdown/useDropdownVirtualElement.d.ts +17 -0
  120. package/dist/composables/group/useGroupStateInject.d.ts +9 -0
  121. package/dist/composables/group/useGroupStateProvide.d.ts +6 -0
  122. package/dist/composables/index.d.ts +5 -0
  123. package/dist/composables/index.es.js +34 -34
  124. package/dist/composables/index.umd.js +2 -2
  125. package/dist/composables/useBlurhash.d.ts +7 -0
  126. package/dist/composables/useComponentFocus.d.ts +4 -0
  127. package/dist/composables/useComponentIcon.d.ts +11 -0
  128. package/dist/composables/useDebouncedInput.d.ts +5 -0
  129. package/dist/composables/useDefaults.d.ts +2 -0
  130. package/dist/composables/useModifiers.d.ts +2 -0
  131. package/dist/composables/useOptions.d.ts +8 -0
  132. package/dist/composables/usePersistence.d.ts +3 -0
  133. package/dist/composables/useTextCount.d.ts +10 -0
  134. package/dist/composables/useUniqueId.d.ts +2 -0
  135. package/dist/composables/useVirtualScroll.d.ts +35 -0
  136. package/dist/composables/useVolver.d.ts +4 -0
  137. package/dist/constants.d.ts +104 -0
  138. package/dist/directives/index.d.ts +3 -0
  139. package/dist/directives/index.es.js +22 -22
  140. package/dist/directives/index.umd.js +1 -1
  141. package/dist/directives/v-contextmenu.d.ts +3 -0
  142. package/dist/directives/v-contextmenu.es.js +13 -13
  143. package/dist/directives/v-contextmenu.umd.js +1 -1
  144. package/dist/directives/v-tooltip.d.ts +3 -0
  145. package/dist/icons.d.ts +1889 -0
  146. package/dist/index.d.ts +10 -0
  147. package/dist/index.es.js +19 -19
  148. package/dist/index.umd.js +1 -1
  149. package/dist/json-render/catalog.d.ts +395 -0
  150. package/dist/json-render/components.d.ts +111 -0
  151. package/dist/json-render/definitions.d.ts +697 -0
  152. package/dist/json-render/index.d.ts +55 -0
  153. package/dist/json-render/index.es.js +1877 -1870
  154. package/dist/json-render/index.umd.js +1 -1
  155. package/dist/json-render/registry.d.ts +34 -0
  156. package/dist/props/index.d.ts +959 -0
  157. package/dist/resolvers/unplugin.d.ts +38 -0
  158. package/dist/resolvers/unplugin.es.js +28 -28
  159. package/dist/resolvers/unplugin.umd.js +1 -1
  160. package/dist/stories/Accordion/Accordion.settings.d.ts +9 -0
  161. package/dist/stories/Accordion/Accordion.stories.d.ts +7 -0
  162. package/dist/stories/Accordion/Accordion.test.d.ts +2 -0
  163. package/dist/stories/Accordion/AccordionSlots.stories.d.ts +7 -0
  164. package/dist/stories/AccordionGroup/AccordionGroup.settings.d.ts +13 -0
  165. package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +9 -0
  166. package/dist/stories/AccordionGroup/AccordionGroup.test.d.ts +2 -0
  167. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +1788 -0
  168. package/dist/stories/Alert/Alert.settings.d.ts +4 -0
  169. package/dist/stories/Alert/Alert.stories.d.ts +9 -0
  170. package/dist/stories/Alert/Alert.test.d.ts +2 -0
  171. package/dist/stories/Alert/AlertModifiers.stories.d.ts +13 -0
  172. package/dist/stories/Alert/AlertSlots.stories.d.ts +10 -0
  173. package/dist/stories/AlertGroup/AlertGroup.settings.d.ts +14 -0
  174. package/dist/stories/AlertGroup/AlertGroup.stories.d.ts +8 -0
  175. package/dist/stories/AlertGroup/AlertGroup.test.d.ts +2 -0
  176. package/dist/stories/AlertGroup/AlertGroupPosition.stories.d.ts +14 -0
  177. package/dist/stories/AlertGroup/AlertGroupSlots.stories.d.ts +8 -0
  178. package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +4 -0
  179. package/dist/stories/Avatar/Avatar.settings.d.ts +5 -0
  180. package/dist/stories/Avatar/Avatar.stories.d.ts +7 -0
  181. package/dist/stories/Avatar/Avatar.test.d.ts +2 -0
  182. package/dist/stories/Avatar/AvatarBadge.stories.d.ts +6 -0
  183. package/dist/stories/Avatar/AvatarModifiers.stories.d.ts +13 -0
  184. package/dist/stories/Avatar/AvatarSlots.stories.d.ts +6 -0
  185. package/dist/stories/AvatarGroup/AvatarGroup.settings.d.ts +14 -0
  186. package/dist/stories/AvatarGroup/AvatarGroup.stories.d.ts +6 -0
  187. package/dist/stories/AvatarGroup/AvatarGroup.test.d.ts +2 -0
  188. package/dist/stories/AvatarGroup/AvatarGroupModifiers.stories.d.ts +7 -0
  189. package/dist/stories/AvatarGroup/AvatarGroupSlotDefault.stories.d.ts +6 -0
  190. package/dist/stories/Badge/Badge.settings.d.ts +5 -0
  191. package/dist/stories/Badge/Badge.stories.d.ts +7 -0
  192. package/dist/stories/Badge/Badge.test.d.ts +2 -0
  193. package/dist/stories/Badge/BadgeSlots.stories.d.ts +6 -0
  194. package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
  195. package/dist/stories/Breadcrumb/Breadcrumb.settings.d.ts +13 -0
  196. package/dist/stories/Breadcrumb/Breadcrumb.stories.d.ts +7 -0
  197. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +2 -0
  198. package/dist/stories/Breadcrumb/BreadcrumbSlots.stories.d.ts +6 -0
  199. package/dist/stories/Button/Button.settings.d.ts +4 -0
  200. package/dist/stories/Button/Button.stories.d.ts +6 -0
  201. package/dist/stories/Button/Button.test.d.ts +2 -0
  202. package/dist/stories/Button/ButtonIcon.stories.d.ts +10 -0
  203. package/dist/stories/Button/ButtonLink.stories.d.ts +7 -0
  204. package/dist/stories/Button/ButtonLoading.stories.d.ts +8 -0
  205. package/dist/stories/Button/ButtonModifiers.stories.d.ts +17 -0
  206. package/dist/stories/Button/ButtonSlots.stories.d.ts +9 -0
  207. package/dist/stories/Button/ButtonState.stories.d.ts +8 -0
  208. package/dist/stories/Button/ButtonToggle.stories.d.ts +9 -0
  209. package/dist/stories/ButtonGroup/ButtonGroup.settings.d.ts +5 -0
  210. package/dist/stories/ButtonGroup/ButtonGroup.stories.d.ts +6 -0
  211. package/dist/stories/ButtonGroup/ButtonGroup.test.d.ts +2 -0
  212. package/dist/stories/ButtonGroup/ButtonGroupModifiers.stories.d.ts +8 -0
  213. package/dist/stories/ButtonGroup/ButtonGroupSlots.stories.d.ts +6 -0
  214. package/dist/stories/ButtonGroup/ButtonGroupToggle.stories.d.ts +8 -0
  215. package/dist/stories/Card/Card.settings.d.ts +6 -0
  216. package/dist/stories/Card/Card.stories.d.ts +6 -0
  217. package/dist/stories/Card/Card.test.d.ts +2 -0
  218. package/dist/stories/Card/CardSlots.stories.d.ts +9 -0
  219. package/dist/stories/Checkbox/Checkbox.settings.d.ts +15 -0
  220. package/dist/stories/Checkbox/Checkbox.stories.d.ts +13 -0
  221. package/dist/stories/Checkbox/Checkbox.test.d.ts +2 -0
  222. package/dist/stories/Checkbox/CheckboxBinary.stories.d.ts +7 -0
  223. package/dist/stories/Checkbox/CheckboxSlots.stories.d.ts +7 -0
  224. package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +12 -0
  225. package/dist/stories/CheckboxGroup/CheckboxGroup.stories.d.ts +12 -0
  226. package/dist/stories/CheckboxGroup/CheckboxGroup.test.d.ts +2 -0
  227. package/dist/stories/CheckboxGroup/CheckboxGroupOptions.stories.d.ts +8 -0
  228. package/dist/stories/CheckboxGroup/CheckboxGroupSlots.stories.d.ts +7 -0
  229. package/dist/stories/Combobox/Combobox.settings.d.ts +4 -0
  230. package/dist/stories/Combobox/Combobox.stories.d.ts +24 -0
  231. package/dist/stories/Combobox/Combobox.test.d.ts +2 -0
  232. package/dist/stories/Combobox/ComboboxIconPosition.stories.d.ts +8 -0
  233. package/dist/stories/Combobox/ComboboxMultiple.stories.d.ts +9 -0
  234. package/dist/stories/Combobox/ComboboxOptions.stories.d.ts +11 -0
  235. package/dist/stories/Combobox/ComboboxSlots.stories.d.ts +10 -0
  236. package/dist/stories/Dialog/Dialog.settings.d.ts +10 -0
  237. package/dist/stories/Dialog/Dialog.stories.d.ts +7 -0
  238. package/dist/stories/Dialog/Dialog.test.d.ts +2 -0
  239. package/dist/stories/Dialog/DialogModifiers.stories.d.ts +8 -0
  240. package/dist/stories/Dialog/DialogSlots.stories.d.ts +8 -0
  241. package/dist/stories/Dropdown/Dropdown.settings.d.ts +5 -0
  242. package/dist/stories/Dropdown/Dropdown.stories.d.ts +9 -0
  243. package/dist/stories/Dropdown/Dropdown.test.d.ts +2 -0
  244. package/dist/stories/Dropdown/DropdownContextmenuDirective.stories.d.ts +6 -0
  245. package/dist/stories/Dropdown/DropdownMultilevel.stories.d.ts +6 -0
  246. package/dist/stories/Dropdown/DropdownSlots.stories.d.ts +8 -0
  247. package/dist/stories/Icon/Icon.settings.d.ts +7 -0
  248. package/dist/stories/Icon/Icon.stories.d.ts +8 -0
  249. package/dist/stories/Icon/IconsCollection.stories.d.ts +6 -0
  250. package/dist/stories/InputFile/InputFile.settings.d.ts +6 -0
  251. package/dist/stories/InputFile/InputFile.stories.d.ts +13 -0
  252. package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
  253. package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
  254. package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
  255. package/dist/stories/InputText/InputText.settings.d.ts +11 -0
  256. package/dist/stories/InputText/InputText.stories.d.ts +16 -0
  257. package/dist/stories/InputText/InputText.test.d.ts +5 -0
  258. package/dist/stories/InputText/InputTextIconPosition.stories.d.ts +8 -0
  259. package/dist/stories/InputText/InputTextIso.stories.d.ts +10 -0
  260. package/dist/stories/InputText/InputTextLength.stories.d.ts +10 -0
  261. package/dist/stories/InputText/InputTextMask.stories.d.ts +12 -0
  262. package/dist/stories/InputText/InputTextMinMax.stories.d.ts +9 -0
  263. package/dist/stories/InputText/InputTextSlots.stories.d.ts +8 -0
  264. package/dist/stories/InputText/InputTextSuggestions.stories.d.ts +8 -0
  265. package/dist/stories/InputText/InputTextType.stories.d.ts +18 -0
  266. package/dist/stories/Nav/Nav.settings.d.ts +4 -0
  267. package/dist/stories/Nav/Nav.stories.d.ts +6 -0
  268. package/dist/stories/Nav/Nav.test.d.ts +2 -0
  269. package/dist/stories/Nav/NavModifiers.stories.d.ts +9 -0
  270. package/dist/stories/Progress/Progress.settings.d.ts +7 -0
  271. package/dist/stories/Progress/Progress.stories.d.ts +7 -0
  272. package/dist/stories/Progress/Progress.test.d.ts +2 -0
  273. package/dist/stories/Radio/Radio.settings.d.ts +12 -0
  274. package/dist/stories/Radio/Radio.stories.d.ts +11 -0
  275. package/dist/stories/Radio/Radio.test.d.ts +2 -0
  276. package/dist/stories/Radio/RadioSlots.stories.d.ts +7 -0
  277. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +12 -0
  278. package/dist/stories/RadioGroup/RadioGroup.stories.d.ts +12 -0
  279. package/dist/stories/RadioGroup/RadioGroup.test.d.ts +2 -0
  280. package/dist/stories/RadioGroup/RadioGroupOptions.stories.d.ts +8 -0
  281. package/dist/stories/RadioGroup/RadioGroupSlots.stories.d.ts +7 -0
  282. package/dist/stories/Select/Select.settings.d.ts +8 -0
  283. package/dist/stories/Select/Select.stories.d.ts +16 -0
  284. package/dist/stories/Select/Select.test.d.ts +2 -0
  285. package/dist/stories/Select/SelectIconPosition.stories.d.ts +8 -0
  286. package/dist/stories/Select/SelectOptions.stories.d.ts +9 -0
  287. package/dist/stories/Select/SelectSlots.stories.d.ts +8 -0
  288. package/dist/stories/Tab/Tab.settings.d.ts +4 -0
  289. package/dist/stories/Tab/Tab.stories.d.ts +6 -0
  290. package/dist/stories/Tab/Tab.test.d.ts +2 -0
  291. package/dist/stories/Textarea/Textarea.settings.d.ts +9 -0
  292. package/dist/stories/Textarea/Textarea.stories.d.ts +14 -0
  293. package/dist/stories/Textarea/Textarea.test.d.ts +2 -0
  294. package/dist/stories/Textarea/TextareaLength.stories.d.ts +10 -0
  295. package/dist/stories/Textarea/TextareaSlots.stories.d.ts +8 -0
  296. package/dist/stories/Textarea/TextareatIconPosition.stories.d.ts +8 -0
  297. package/dist/stories/Tooltip/Tooltip.settings.d.ts +5 -0
  298. package/dist/stories/Tooltip/Tooltip.stories.d.ts +6 -0
  299. package/dist/stories/Tooltip/Tooltip.test.d.ts +2 -0
  300. package/dist/stories/Tooltip/TooltipDirective.stories.d.ts +10 -0
  301. package/dist/stories/VirtualScroll/VirtualScroll.settings.d.ts +5 -0
  302. package/dist/stories/VirtualScroll/VirtualScroll.stories.d.ts +7 -0
  303. package/dist/stories/VirtualScroll/VirtualScroll.test.d.ts +2 -0
  304. package/dist/stories/VirtualScroll/VirtualScrollWithComposable.stories.d.ts +4 -0
  305. package/dist/stories/argTypes.d.ts +56 -0
  306. package/dist/test/expect.d.ts +18 -0
  307. package/dist/test/options.d.ts +1 -0
  308. package/dist/test/sleep.d.ts +1 -0
  309. package/dist/types/alert.d.ts +15 -0
  310. package/dist/types/blurhash.d.ts +12 -0
  311. package/dist/types/floating-ui.d.ts +15 -0
  312. package/dist/types/generic.d.ts +4 -0
  313. package/dist/types/group.d.ts +59 -0
  314. package/dist/types/index.d.ts +7 -0
  315. package/dist/types/input-file.d.ts +9 -0
  316. package/dist/types/nav.d.ts +17 -0
  317. package/dist/utils/DateUtilities.d.ts +14 -0
  318. package/dist/utils/DomUtilities.d.ts +1 -0
  319. package/dist/utils/FileUtilities.d.ts +14 -0
  320. package/dist/utils/ObjectUtilities.d.ts +76 -0
  321. package/dist/workers/blurhash.d.ts +1 -0
  322. package/package.json +3 -2
  323. package/src/Volver.ts +8 -6
  324. package/src/components/VvAction/index.ts +1 -3
  325. package/src/components/VvButton/VvButton.vue +1 -1
  326. package/src/components/VvCheckboxGroup/index.ts +1 -3
  327. package/src/components/VvCombobox/VvCombobox.vue +3 -3
  328. package/src/components/VvDropdown/VvDropdown.vue +8 -8
  329. package/src/components/VvIcon/VvIcon.vue +3 -6
  330. package/src/components/VvInputFile/VvInputFile.vue +6 -6
  331. package/src/components/VvInputText/VvInputText.vue +95 -78
  332. package/src/components/VvRadioGroup/index.ts +1 -3
  333. package/src/composables/useBlurhash.ts +1 -1
  334. package/src/composables/useDebouncedInput.ts +1 -1
  335. package/src/composables/useDefaults.ts +55 -44
  336. package/src/composables/useModifiers.ts +1 -1
  337. package/src/index.ts +2 -2
  338. package/src/resolvers/unplugin.ts +6 -6
  339. package/src/types/alert.ts +1 -1
  340. package/src/types/nav.ts +1 -1
  341. package/src/utils/DateUtilities.ts +3 -3
  342. package/src/utils/DomUtilities.ts +7 -1
  343. package/src/utils/ObjectUtilities.ts +60 -59
@@ -1 +1 @@
1
- (function(e,W){typeof exports=="object"&&typeof module<"u"?module.exports=W(require("vue"),require("@iconify/vue"),require("@floating-ui/vue"),require("@vueuse/core"),require("mitt"),require("dot-prop")):typeof define=="function"&&define.amd?define(["vue","@iconify/vue","@floating-ui/vue","@vueuse/core","mitt","dot-prop"],W):(e=typeof globalThis<"u"?globalThis:e||self,e.VvCombobox=W(e.Vue,e.IconifyVue,e.FloatingUiVue,e.VueuseCore,e.mitt,e.dotProp))})(this,function(e,W,F,L,Fe,je){var Lt=Object.create,Qe=Object.defineProperty,Et=Object.getOwnPropertyDescriptor,$t=Object.getOwnPropertyNames,_t=Object.getPrototypeOf,Nt=Object.prototype.hasOwnProperty,Dt=(t,o,r,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(var i=$t(o),l=0,f=i.length,u;l<f;l++)u=i[l],!Nt.call(t,u)&&u!==r&&Qe(t,u,{get:(g=>o[g]).bind(null,u),enumerable:!(n=Et(o,u))||n.enumerable});return t},It=(t,o,r)=>(r=t!=null?Lt(_t(t)):{},Dt(o||!t||!t.__esModule?Qe(r,"default",{value:t,enumerable:!0}):r,t));Fe=It(Fe,1);var At={showPassword:"eye-on",hidePassword:"eye-off",showDatePicker:"calendar",showTimePicker:"time",showColorPicker:"color",clear:"close",add:"add",remove:"trash",edit:"edit",download:"download"},xt={prefix:"normal"},Xe=(function(t){return t.local="local",t.session="session",t})({}),Ze=(function(t){return t.absolute="absolute",t.fixed="fixed",t})({}),O=(function(t){return t.left="left",t.right="right",t.top="top",t.bottom="bottom",t})({}),Ft=(function(t){return t.topStart="top-start",t.topEnd="top-end",t.bottomStart="bottom-start",t.bottomEnd="bottom-end",t.leftStart="left-start",t.leftEnd="left-end",t.rightStart="right-start",t.rightEnd="right-end",t})({}),Le=(function(t){return t.before="before",t.after="after",t})({}),et=(function(t){return t.button="button",t.submit="submit",t.reset="reset",t})({}),U=(function(t){return t.nuxtLink="nuxt-link",t.routerLink="router-link",t.a="a",t.button="button",t})({}),jt=(function(t){return t.button="button",t.link="link",t.menuitem="menuitem",t})({}),Ee=(function(t){return t.listbox="listbox",t.menu="menu",t})({}),tt=(function(t){return t.option="option",t.presentation="presentation",t})({}),Rt=Symbol.for("volver"),Tt=Symbol.for("buttonGroup"),rt=Symbol.for("dropdownTrigger"),ot=Symbol.for("dropdownItem"),lt=Symbol.for("dropdownAction"),Ht={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},ke={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},Be={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},pe={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},ie={disabled:{type:Boolean,default:!1}},Re={required:{type:Boolean,default:!1}},zt={selected:{type:Boolean,default:!1}},Mt={active:{type:Boolean,default:!1}},Kt={current:{type:Boolean,default:!1}},nt={showClearAction:{type:Boolean,default:!1},iconClear:{type:[String,Object],default:At.clear},labelClear:{type:String,default:"Clear"}},qt={pressed:{type:Boolean,default:!1}},se={label:{type:[String,Number],default:void 0}},Ve={readonly:{type:Boolean,default:!1}},J={modifiers:{type:[String,Array],default:void 0}},Pe={hintLabel:{type:String,default:""}},Te={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},Gt={count:{type:[Boolean,String],default:!1,validator:t=>[!0,!1,"limit","countdown"].includes(t)}},Wt={debounce:{type:[Number,String],default:void 0}},$e={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:Le.before,validation:t=>Object.values(Le).includes(t)}},_e={tabindex:{type:[String,Number],default:0}},He={floating:{type:Boolean,default:!1}},ze={unselectable:{type:Boolean,default:!0}},Me={id:[String,Number]},Ke={placement:{type:String,default:O.bottom,validator:t=>Object.values(O).includes(t)||Object.values(Ft).includes(t)},strategy:{type:String,default:void 0,validator:t=>Object.values(Ze).includes(t)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},Ne={...Me,name:{type:String,required:!0}},at={autofocus:{type:Boolean,default:!1}},it={autocomplete:{type:String,default:"off"}},mo={...Ne,...at,...it,..._e,...ie,...Ve,...ke,...Be,...Pe,...pe,...J,...Gt,...Wt,...$e,...He,...se,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...Re},bo={...Ne,..._e,...ke,...Be,...Pe,...ie,...Ve,...J,...se,...pe,value:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[Object,Number,Boolean,String],default:void 0}},go={...ke,...Be,...Te,...Pe,...ie,...Ve,...J,...se,...pe,...Re,modelValue:{type:[String,Array,Boolean,Number,Symbol],default:void 0},name:{type:String,required:!0},vertical:{type:Boolean,default:!1}},st={...ie,...se,...qt,...Mt,...Kt,...Ht,type:{type:String,default:et.button,validator:t=>Object.values(et).includes(t)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:U.button}},ho={storageType:{type:String,default:Xe.local,validator:t=>Object.values(Xe).includes(t)},storageKey:String},qe={...Ne,..._e,...ke,...Be,...Pe,...pe,...ie,...Ve,...J,...Te,...$e,...He,...Ke,...se,...Re,...nt,transitionName:{type:String,default:"vv-dropdown--mobile-fade-block"},modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},selectedOptionNotFoundLabel:{type:String,default:"Selected option not found"},selectedHintLabel:{type:String,default:"Selected"},deselectActionLabel:{type:String,default:"Deselect"},selectHintLabel:{type:String,default:"Press enter to select"},deselectHintLabel:{type:String,default:"Press enter to remove"},addOptionHintLabel:{type:String,default:"Press enter to add"},closeLabel:{type:String,default:"Close"},placeholder:String,addable:Boolean,searchable:Boolean,keepSearch:Boolean,searchFunction:{type:Function,default:void 0},searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,minValues:{type:[Number,String],default:0},maxValues:[Number,String],unselectable:{type:Boolean,default:!0},separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...Ke.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array],default:"mobile"},autoOpen:{type:Boolean,default:!1},autoselectFirst:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0}};function dt(){return{...qe,options:{...qe.options,type:Array},searchFunction:{...qe.searchFunction,type:Function}}}function ct(t,o,r){return r?ut(t,r)===ut(o,r):Ge(t,o)}function Ge(t,o){if(t===o)return!0;if(t&&o&&typeof t=="object"&&typeof o=="object"){const r=Array.isArray(t),n=Array.isArray(o);let i,l,f;if(r&&n){if(l=t.length,l!==o.length)return!1;for(i=l;i--!==0;)if(!Ge(t[i],o[i]))return!1;return!0}if(r!==n)return!1;const u=t instanceof Date,g=o instanceof Date;if(u!==g)return!1;if(u&&g)return t.getTime()===o.getTime();const s=t instanceof RegExp,y=o instanceof RegExp;if(s!==y)return!1;if(s&&y)return t.toString()===o.toString();const c=Object.keys(t);if(l=c.length,l!==Object.keys(o).length)return!1;for(i=l;i--!==0;)if(!Object.hasOwn(o,c[i]))return!1;for(i=l;i--!==0;)if(f=c[i],!Ge(t[f],o[f]))return!1;return!0}return Number.isNaN(t)&&Number.isNaN(o)}function ut(t,o){if(t&&Object.keys(t).length&&o)if(o.includes(".")){const r=o.split(".");let n=t;for(let i=0,l=r.length;i<l;++i){if(t==null)return null;n=n[r[i]]}return n}else return t[o];else return null}function ft(t,o){if(t!=null&&o&&o.length){for(const r of o)if(ct(t,r))return!0}return!1}function Ut(t){return typeof t=="string"}function pt(t){return Array.isArray(t)?t.filter(o=>Ut(o)).join(" "):t}function mt(t,o){const r=(0,e.computed)(()=>(0,e.isRef)(t)?t.value:t),n=(0,e.computed)(()=>pt(r.value.invalidLabel)),i=(0,e.computed)(()=>pt(r.value.validLabel)),l=(0,e.computed)(()=>r.value.loadingLabel),f=(0,e.computed)(()=>r.value.hintLabel),u=(0,e.computed)(()=>!!(r.value.loading&&(o.loading||l.value))),g=(0,e.computed)(()=>!u.value&&!!(r.value.invalid&&(o.invalid||n.value))),s=(0,e.computed)(()=>!u.value&&!g.value&&!!(r.value.valid&&(o.valid||i.value))),y=(0,e.computed)(()=>!u.value&&!g.value&&!s.value&&!!(o.hint||f.value)),c=(0,e.computed)(()=>g.value||s.value||u.value||y.value);return{hasInvalidLabelOrSlot:g,hasHintLabelOrSlot:y,hasValidLabelOrSlot:s,hasLoadingLabelOrSlot:u,hintSlotScope:(0,e.computed)(()=>({modelValue:r.value.modelValue,valid:r.value.valid,invalid:r.value.invalid,loading:r.value.loading})),HintSlot:(0,e.defineComponent)({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup(){return{isVisible:c,invalidLabel:n,validLabel:i,loadingLabel:l,hintLabel:f,hasInvalidLabelOrSlot:g,hasValidLabelOrSlot:s,hasLoadingLabelOrSlot:u,hasHintLabelOrSlot:y}},render(){if(this.isVisible){let p;return this.hasInvalidLabelOrSlot&&(p="alert"),this.hasValidLabelOrSlot&&(p="status"),this.hasLoadingLabelOrSlot?(0,e.h)(this.tag,{role:p},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?(0,e.h)(this.tag,{role:p},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?(0,e.h)(this.tag,{role:p},this.$slots.valid?.()??this.validLabel):(0,e.h)(this.tag,{role:p},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}})}}function We(){return(0,e.inject)(Rt,void 0)}function de(t,o,r){return(0,e.computed)(()=>{const n={[t]:!0},i=typeof o?.value=="string"?o.value.split(" "):o?.value;return i&&Array.isArray(i)&&i.forEach(l=>{l&&(n[`${t}--${l}`]=!0)}),r&&Object.keys(r.value).forEach(l=>{n[`${t}--${l}`]=(0,e.unref)(r.value[l])}),n})}var Jt={name:"VvIcon"},Yt=(0,e.defineComponent)({...Jt,props:(0,e.mergeDefaults)({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},xt),setup(t){const o=t,r=(0,e.computed)(()=>typeof o.rotate=="string"?Number.parseFloat(o.rotate):o.rotate),n=(0,e.ref)(!0),i=We(),{modifiers:l}=(0,e.toRefs)(o),f=de("vv-icon",l),u=(0,e.computed)(()=>o.provider||i?.iconsProvider),g=(0,e.computed)(()=>{const c=o.name??"",p=`@${u.value}:${o.prefix}:${c}`;if((0,W.iconLoaded)(p))return p;const w=i?.iconsCollections.find(P=>(0,W.iconLoaded)(`@${u.value}:${P.prefix}:${c}`));return w?`@${u.value}:${w.prefix}:${c}`:c});function s(c){const p=typeof window<"u"?new window.DOMParser:null;return p?p.parseFromString(c,"text/html").querySelector("svg"):null}function y(c){const p=s(c),w=p?.innerHTML.trim()||"";p&&w&&(0,W.addIcon)(`@${u.value}:${o.prefix}:${o.name}`,{body:w,height:p.viewBox.baseVal.height,width:p.viewBox.baseVal.width})}return i&&o.src&&!(0,W.iconLoaded)(`@${u.value}:${o.prefix}:${o.name}`)&&(n.value=!1,i.fetchIcon(o.src).then(c=>{c&&y(c),n.value=!0}).catch(c=>{throw n.value=!0,new Error(`Error during fetch icon: ${c?.message}`)})),o.svg&&y(o.svg),(c,p)=>(0,e.unref)(n)?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(W.Icon),(0,e.mergeProps)({key:0,class:(0,e.unref)(f)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:(0,e.unref)(r),color:t.color,icon:(0,e.unref)(g)},{onLoad:t.onLoad}),null,16,["class","onLoad"])):(0,e.createCommentVNode)("v-if",!0)}}),Y=Yt;function De(t,o){const r=(0,e.computed)(()=>typeof t?.value=="string"?{name:t?.value}:t?.value),n=(0,e.computed)(()=>o?.value===Le.before?r.value:void 0),i=(0,e.computed)(()=>o?.value===Le.after?r.value:void 0);return{hasIcon:r,hasIconLeft:(0,e.computed)(()=>o?.value===O.left?r.value:void 0),hasIconRight:(0,e.computed)(()=>o?.value===O.right?r.value:void 0),hasIconTop:(0,e.computed)(()=>o?.value===O.top?r.value:void 0),hasIconBottom:(0,e.computed)(()=>o?.value===O.bottom?r.value:void 0),hasIconBefore:n,hasIconAfter:i}}var bt=(0,e.defineComponent)({components:{VvIcon:Y},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:[String,Object],default:"close"}},emits:["clear"],setup(t,{emit:o}){const{hasIcon:r}=De((0,e.computed)(()=>t.icon));function n(i){i?.stopPropagation(),t.disabled||o("clear")}return{hasIcon:r,onClick:n}},render(){const t=this.hasIcon?(0,e.h)(Y,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return(0,e.h)("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.label,type:"button",onClick:this.onClick},t)}}),Qt={...J,value:[String,Number]},Xt={name:"VvBadge"},Zt=(0,e.defineComponent)({...Xt,props:Qt,setup(t){const{modifiers:o}=(0,e.toRefs)(t),r=de("vv-badge",o);return(n,i)=>((0,e.openBlock)(),(0,e.createElementBlock)("span",{class:(0,e.normalizeClass)((0,e.unref)(r))},[(0,e.renderSlot)(n.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(n.value),1)])],2))}}),er=Zt;function tr(t){const o=(0,e.inject)(t,void 0),r=(0,e.computed)(()=>o!==void 0);function n(i,l,f){const u=o?.[i];if(u)return(0,e.computed)({get(){return u.value},set(s){u.value=s}});const g=(0,e.toRef)(l,i);return(0,e.computed)({get(){return g.value},set(s){f&&f(`update:${i}`,s)}})}return{group:o,isInGroup:r,getGroupOrLocalRef:n}}var rr=["update:modelValue"],or={...st,...Me,...J,...ze,...pe,...$e,iconPosition:{type:String,default:O.left,validator:t=>Object.values(O).includes(t)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};function lr(t,o){const{group:r,isInGroup:n,getGroupOrLocalRef:i}=tr(Tt),{id:l,iconPosition:f,icon:u,label:g,pressed:s}=(0,e.toRefs)(t);return{group:r,isInGroup:n,modelValue:i("modelValue",t,o),toggle:i("toggle",t),unselectable:i("unselectable",t),multiple:(0,e.computed)(()=>r?.multiple.value??!1),modifiers:(0,e.computed)(()=>{let y=t.modifiers,c=r?.modifiers.value;const p=new Set;return y&&(Array.isArray(y)||(y=y.split(" ")),y.forEach(w=>p.add(w))),c&&(Array.isArray(c)||(c=c.split(" ")),c.forEach(w=>p.add(w))),[...p]}),disabled:(0,e.computed)(()=>!!(t.disabled||r?.disabled.value)),id:l,pressed:s,iconPosition:f,icon:u,label:g}}var nr=["click","mouseover","mouseleave"],ar=st;function ir(){return(0,e.inject)(rt,{})}function sr(){return(0,e.inject)(ot,{})}function dr(){return(0,e.inject)(lt,{})}var cr={name:"VvAction"},ur=(0,e.defineComponent)({...cr,props:ar,emits:nr,setup(t,{expose:o,emit:r}){const n=t,i=r,l=(0,e.getCurrentInstance)(),f=We(),u=(0,e.ref)(null);o({$el:u});const{reference:g,bus:s,aria:y,expanded:c}=ir();(0,e.watch)(()=>u.value,S=>{g&&(g.value=S)});const p=(0,e.computed)(()=>n.pressed||c?.value),{role:w}=dr(),P=(0,e.computed)(()=>{switch(!0){case n.disabled:return U.button;case n.to!==void 0:return f?.nuxt?(0,e.resolveComponent)(U.nuxtLink):U.routerLink;case n.href!==void 0:return U.a;default:return n.defaultTag}}),D=(0,e.computed)(()=>{const S={...y?.value,ariaPressed:p.value?!0:void 0,ariaLabel:n.ariaLabel,role:w?.value};switch(P.value){case U.a:return{...S,href:n.href,target:n.target,rel:n.rel};case U.routerLink:case U.nuxtLink:return{...S,to:n.to,target:n.target};case U.button:return{...S,type:n.type,disabled:n.disabled};default:return S}});function E(S){if(n.disabled){S.preventDefault();return}if(l?.vnode.props?.onClick){i("click",S);return}s?.emit("click",S)}function R(S){if(l?.vnode.props?.onMouseover){i("mouseover",S);return}s?.emit("mouseover",S)}function I(S){if(l?.vnode.props?.onMouseleave){i("mouseleave",S);return}s?.emit("mouseleave",S)}return(S,V)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(P)),(0,e.mergeProps)((0,e.unref)(D),{ref_key:"rootEl",ref:u,class:{active:S.active,pressed:(0,e.unref)(p),disabled:S.disabled,current:S.current},onClickPassive:E,onMouseoverPassive:R,onMouseleavePassive:I}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(S.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(S.label),1)])]),_:3},16,["class"]))}}),fr=ur;function Ie(t){return(0,e.computed)(()=>String(t?.value||(0,e.useId)()))}var pr={key:1,class:"vv-button__label"},mr={key:1,class:"vv-button__label"},br={name:"VvButton",inheritAttrs:!1},gr=(0,e.defineComponent)({...br,props:or,emits:rr,setup(t,{expose:o,emit:r}){const n=t,i=r,l=(0,e.useAttrs)(),f=(0,e.useSlots)(),{id:u,modifiers:g,iconPosition:s,icon:y,label:c,modelValue:p,disabled:w,toggle:P,unselectable:D}=lr(n,i),E=Ie(u),R=(0,e.computed)(()=>l?.name||E.value),I=(0,e.ref)(null);o({$el:(0,e.computed)(()=>I.value?.$el)});const S=(0,e.computed)(()=>P.value?Array.isArray(p.value)?ft(R.value,p.value):ct(R.value,p.value):n.pressed),V=de("vv-button",g,(0,e.computed)(()=>({reverse:[O.right,O.bottom].includes(s.value),column:[O.top,O.bottom].includes(s.value),"icon-only":!!(y?.value&&!c?.value&&!f.default)}))),{hasIcon:Q}=De(y),T=(0,e.computed)(()=>n.value!==void 0?n.value:R.value),te=(0,e.computed)(()=>{if(P.value)return{onClick:X}});function X(){if(P.value){if(Array.isArray(p.value)){if(ft(T.value,p.value)){D.value&&(p.value=p.value.filter(B=>B!==T.value));return}p.value.push(T.value);return}if(T.value===p.value&&D.value){p.value=n.uncheckedValue;return}p.value=T.value}}return(B,$)=>((0,e.openBlock)(),(0,e.createBlock)(fr,(0,e.mergeProps)({...(0,e.unref)(l),...(0,e.unref)(te),disabled:(0,e.unref)(w),pressed:(0,e.unref)(S),active:B.active,type:B.type,to:B.to,href:B.href,target:B.target,rel:B.rel,ariaLabel:B.ariaLabel},{id:(0,e.unref)(E),ref_key:"rootEl",ref:I,class:(0,e.unref)(V)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(B.$slots,"default",{},()=>[B.loading?(0,e.renderSlot)(B.$slots,"loading",{key:0},()=>[B.loadingIcon?((0,e.openBlock)(),(0,e.createBlock)(Y,{key:0,class:"vv-button__loading-icon",name:B.loadingIcon},null,8,["name"])):(0,e.createCommentVNode)("v-if",!0),B.loadingLabel?((0,e.openBlock)(),(0,e.createElementBlock)("span",pr,(0,e.toDisplayString)(B.loadingLabel),1)):(0,e.createCommentVNode)("v-if",!0)]):((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:1},[(0,e.renderSlot)(B.$slots,"before"),(0,e.unref)(Q)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(Q),{class:"vv-button__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.unref)(c)?((0,e.openBlock)(),(0,e.createElementBlock)("span",mr,[(0,e.renderSlot)(B.$slots,"label",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(c)),1)])])):(0,e.createCommentVNode)("v-if",!0),(0,e.renderSlot)(B.$slots,"after")],64))])]),_:3},16,["id","class"]))}}),gt=gr,hr={...Me,...Ke,...J,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:Ee.menu,validator:t=>Object.values(Ee).includes(t)}},yr={focusOnHover:{type:Boolean,default:!1}},vr={...ie,...zt,...ze,...J,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function Sr({reference:t,id:o,expanded:r,aria:n}){const i=(0,Fe.default)();return{bus:i,component:(0,e.defineComponent)({name:"VvDropdownTriggerProvider",setup(){(0,e.provide)(rt,{reference:t,id:o,expanded:r,aria:n,bus:i})},render(){return(0,e.h)(e.Fragment,{},this.$slots.default?.())}})}}function kr({role:t,...o}){const r=(0,e.computed)(()=>t.value===Ee.listbox?tt.option:tt.presentation);return(0,e.provide)(ot,{role:r,...o}),{itemRole:r}}function Br({expanded:t}){(0,e.provide)(lt,{role:(0,e.ref)(jt.menuitem),expanded:t})}var Vr=["id","tabindex","role","aria-labelledby"],Pr={name:"VvDropdown",inheritAttrs:!1},wr=(0,e.defineComponent)({...Pr,props:hr,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(t,{expose:o,emit:r}){const n=t,i=r,{id:l}=(0,e.toRefs)(n),f=Ie(l),u=(0,e.useAttrs)(),g=(0,e.ref)("auto"),s=(0,e.ref)("auto"),y=(0,e.ref)(),c=(0,e.ref)(),p=(0,e.ref)(),w=(0,e.ref)(),P=(0,e.computed)({get:()=>n.reference??y.value,set:d=>{y.value=d}}),D=(0,e.ref)(!1);(0,e.onMounted)(()=>{(0,L.useMutationObserver)(c.value,()=>{D.value=window.getComputedStyle(c.value).getPropertyValue("--dropdown-custom-position")?.trim()==="true"},{attributeFilter:["style"],window})});function E(d,k,ae){return typeof d=="boolean"?k():ae(d)}const R=(0,e.computed)(()=>{const d=[];if(n.autoPlacement?d.push(E(n.autoPlacement,()=>(0,F.autoPlacement)(),k=>(0,F.autoPlacement)(k))):n.flip&&d.push(E(n.flip,()=>(0,F.flip)({fallbackStrategy:"initialPlacement"}),k=>(0,F.flip)(k))),n.shift&&d.push(E(n.shift,()=>(0,F.shift)(),k=>(0,F.shift)(k))),n.size){const k=({availableWidth:ae,availableHeight:Ce})=>{g.value=`${ae}px`,s.value=`${Ce}px`};d.push(E(n.size,()=>(0,F.size)({apply:k}),ae=>(0,F.size)({...ae,apply:k})))}return n.offset&&d.push(["string","number"].includes(typeof n.offset)?(0,F.offset)(Number(n.offset)):(0,F.offset)(n.offset)),n.arrow&&d.push((0,F.arrow)({element:p})),d}),{x:I,y:S,middlewareData:V,placement:Q,strategy:T}=(0,F.useFloating)(P,c,{whileElementsMounted:(...d)=>(0,F.autoUpdate)(...d,{animationFrame:n.strategy===Ze.fixed}),placement:(0,e.computed)(()=>n.placement),strategy:(0,e.computed)(()=>n.strategy),middleware:R}),te=(0,e.computed)(()=>{if(D.value)return;const d=n.triggerWidth&&P.value?`${P.value?.offsetWidth}px`:void 0;return{position:T.value,top:`${S.value??0}px`,left:`${I.value??0}px`,maxWidth:d?void 0:g.value,maxHeight:s.value,width:d}}),X=(0,e.computed)(()=>Q.value.split("-")[0]),B=(0,e.computed)(()=>{if(D.value)return;const d={[O.top]:O.bottom,[O.right]:O.left,[O.bottom]:O.top,[O.left]:O.right}[X.value];return{left:V.value.arrow?.x!==void 0?`${V.value.arrow?.x}px`:void 0,top:V.value.arrow?.y!==void 0?`${V.value.arrow?.y}px`:void 0,[d]:`${-(p.value?.offsetWidth??0)/2}px`}}),$=(0,L.useVModel)(n,"modelValue",i),me=(0,e.ref)(!1),v=(0,e.computed)({get:()=>$.value??me.value,set:d=>{if($.value===void 0){me.value=d;return}$.value=d}});function M(){v.value=!0}function H(){v.value=!1}function A(){v.value=!v.value}function re(d){P.value=d}(0,L.onClickOutside)(c,()=>{!n.keepOpen&&v.value&&(v.value=!1)},{ignore:[P]});const be=(0,e.computed)(()=>P.value?.getAttribute?.("id")??void 0),ge=(0,e.computed)(()=>({"aria-controls":f.value,"aria-haspopup":!0,"aria-expanded":v.value})),{component:oe,bus:le}=Sr({reference:P,id:f,expanded:v,aria:ge});le.on("click",A);const{role:ne,modifiers:K}=(0,e.toRefs)(n),ce=de("vv-dropdown",K,(0,e.computed)(()=>({arrow:n.arrow}))),{focused:z}=(0,L.useFocusWithin)(c);function q(d){return d?[...d.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(k=>!k.hasAttribute("disabled")&&!k.getAttribute("aria-hidden")):[]}function h(){(0,e.nextTick)(()=>{const d=q(c.value);d.length>0&&d[0].focus({preventScroll:!0})})}function _(){(0,e.nextTick)(()=>{const d=q(w.value);d.length>0&&d[0].focus({preventScroll:!0})})}function x(){(0,e.nextTick)(()=>{if(z.value){const d=q(c.value);if(d.length===0||!document.activeElement)return;const k=d.indexOf(document.activeElement);k<d.length-1?d[k+1].focus({preventScroll:!0}):d[0].focus({preventScroll:!0})}})}function N(){(0,e.nextTick)(()=>{if(z.value){const d=q(c.value);if(d.length===0||!document.activeElement)return;const k=d.indexOf(document.activeElement);if(k>0){d[k-1].focus({preventScroll:!0});return}d.at(-1)?.focus({preventScroll:!0})}})}(0,e.watch)(v,d=>{d&&n.autofocusFirst&&h()}),o({toggle:A,show:M,hide:H,init:re,focusFirst:h,focusFirstListElement:_,focusNext:x,focusPrev:N,customPosition:D});const{itemRole:Z}=kr({role:ne,expanded:v,focused:z,hovered:(0,L.useElementHover)(c)});(0,L.onKeyStroke)("Escape",d=>{v.value&&(d.preventDefault(),H())}),(0,L.onKeyStroke)("ArrowDown",d=>{v.value&&z.value&&(d.preventDefault(),x())}),(0,L.onKeyStroke)("ArrowUp",d=>{v.value&&z.value&&(d.preventDefault(),N())}),(0,L.onKeyStroke)([" ","Enter"],d=>{const k=d.target;v.value&&z.value&&k&&k?.click()});const ue={"before-enter":()=>{i(v.value?"beforeExpand":"beforeCollapse"),i("beforeEnter")},"after-leave":()=>{i(v.value?"afterExpand":"afterCollapse"),i("afterLeave")},enter:()=>{i("enter")},"after-enter":()=>{i("afterEnter")},"enter-cancelled":()=>{i("enterCancelled")},"before-leave":()=>{i("beforeLeave")},leave:()=>{i("leave")},"leave-cancelled":()=>{i("leaveCancelled")}};return(d,k)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[(0,e.createVNode)((0,e.unref)(oe),null,{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(d.$slots,"default",(0,e.normalizeProps)((0,e.guardReactiveProps)({init:re,show:M,hide:H,toggle:A,expanded:(0,e.unref)(v),aria:(0,e.unref)(ge)})))]),_:3}),(0,e.createVNode)(e.Transition,(0,e.mergeProps)({name:d.transitionName},(0,e.toHandlers)(ue),{persisted:""}),{default:(0,e.withCtx)(()=>[(0,e.withDirectives)((0,e.createElementVNode)("div",{ref_key:"floatingEl",ref:c,style:(0,e.normalizeStyle)((0,e.unref)(te)),class:(0,e.normalizeClass)((0,e.unref)(ce))},[n.arrow?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,ref_key:"arrowEl",ref:p,style:(0,e.normalizeStyle)((0,e.unref)(B)),class:"vv-dropdown__arrow"},null,4)):(0,e.createCommentVNode)("v-if",!0),(0,e.renderSlot)(d.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(v)}))),(0,e.createElementVNode)("div",(0,e.mergeProps)((0,e.unref)(u),{id:(0,e.unref)(f),ref_key:"listEl",ref:w,tabindex:(0,e.unref)(v)?void 0:-1,role:(0,e.unref)(ne),"aria-labelledby":(0,e.unref)(be),class:"vv-dropdown__list"}),[(0,e.renderSlot)(d.$slots,"items",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(v),role:(0,e.unref)(Z)})))],16,Vr),(0,e.renderSlot)(d.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(v)})))],6),[[e.vShow,(0,e.unref)(v)]])]),_:3},16,["name"])],64))}}),ht=wr,Cr={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"},Or={name:"VvDropdownOptgroup"},Lr=(0,e.defineComponent)({...Or,props:{...se},setup(t){const o=t;return(r,n)=>((0,e.openBlock)(),(0,e.createElementBlock)("li",Cr,[(0,e.renderSlot)(r.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(o.label),1)])]))}}),yt=Lr,Er={name:"VvDropdownItem"},$r=(0,e.defineComponent)({...Er,props:yr,setup(t){const o=t,{role:r,expanded:n}=sr(),i=(0,e.ref)(null);Br({expanded:n});const l=(0,L.useElementHover)(i),{focused:f}=(0,L.useFocus)(i),{focused:u}=(0,L.useFocusWithin)(i);return(0,e.watch)(l,g=>{g&&o.focusOnHover&&(f.value=!0)}),(g,s)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.mergeProps)({role:(0,e.unref)(r)},{ref_key:"element",ref:i,class:["vv-dropdown__item",{"focus-visible":(0,e.unref)(f)||(0,e.unref)(u)}]}),[(0,e.renderSlot)(g.$slots,"default")],16))}}),_r=$r,Nr=["title"],Dr={name:"VvDropdownOption"},Ir=(0,e.defineComponent)({...Dr,props:vr,setup(t){const o=t,{modifiers:r}=(0,e.toRefs)(o),n=de("vv-dropdown-option",r,(0,e.computed)(()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected}))),i=(0,e.computed)(()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?"":o.selectHintLabel);return(l,f)=>((0,e.openBlock)(),(0,e.createBlock)(_r,{class:(0,e.normalizeClass)((0,e.unref)(n)),tabindex:l.disabled?-1:0,"aria-selected":l.selected,"aria-disabled":l.disabled,"focus-on-hover":l.focusOnHover},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(l.$slots,"default"),(0,e.createElementVNode)("span",{class:"vv-dropdown-option__hint",title:(0,e.unref)(i)},[(0,e.renderSlot)(l.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)({disabled:l.disabled,selected:l.selected,unselectable:l.unselectable})),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(i)),1)])],8,Nr)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}}),we=Ir,vt={...Ne,...at,...it,..._e,...ke,...Be,...Pe,...pe,...ie,...Ve,...J,...Te,...$e,...He,...ze,...se,...nt,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},autoselectFirst:{type:Boolean,default:!1},placeholder:String};function St(){return{...vt,options:{...vt.options,type:Array,default:()=>[]}}}function kt(t,o,r){const n=We(),i=(0,e.computed)(()=>{if(!(!n||!n.defaults.value?.[t]))return n.defaults.value[t]});return(0,e.computed)(()=>{if(i.value===void 0)return r;const l=i.value,f=o,u=r;return Object.keys(f).reduce((g,s)=>{const y=u[s];if(g[s]=y,s in l){if(Array.isArray(f[s])){const c=f[s];c.length&&c[0]===y&&(g[s]=l[s])}if(typeof f[s]=="function"){const c=f[s];c()===y&&(g[s]=l[s])}if(typeof f[s]=="object"){let c=f[s].default;typeof c=="function"&&(c=c()),typeof c=="object"?JSON.stringify(c)===JSON.stringify(y)&&(g[s]=l[s]):c===y&&(g[s]=l[s])}}return g},{})})}function Bt(t,o){const{focused:r}=(0,L.useFocus)(t);return(0,e.watch)(r,n=>{o(n?"focus":"blur",(0,e.unref)(t))}),{focused:r}}function Vt(t){const{options:o,labelKey:r,valueKey:n,disabledKey:i}=(0,e.toRefs)(t);return{options:o,getOptionLabel:s=>typeof s=="string"?s:typeof r.value=="function"?r.value(s):String(r.value?(0,je.getProperty)(s,r.value):s),getOptionValue:s=>typeof s=="string"?s:typeof n.value=="function"?n.value(s):n.value?(0,je.getProperty)(s,n.value):s,isOptionDisabled:s=>typeof s=="string"?!1:typeof i.value=="function"?i.value(s):i.value?!!(0,je.getProperty)(s,i.value):!1,getOptionGrouped:s=>typeof s=="string"?[]:typeof s=="object"&&s&&"options"in s?s.options:[]}}var Ar=["for"],xr={class:"vv-select__wrapper"},Fr={key:0,class:"vv-select__input-before"},jr={class:"vv-select__inner"},Rr=["id"],Tr=["disabled","hidden"],Hr=["disabled","value"],zr=["disabled","label"],Mr=["disabled","value"],Kr={key:2,class:"vv-select__input-after"},qr={name:"VvSelect"},Gr=(0,e.defineComponent)({...qr,props:St(),emits:["update:modelValue","focus","blur","clear"],setup(t,{emit:o}){const r=t,n=o,i=(0,e.useSlots)(),l=kt("VvSelect",St(),r),f=(0,e.ref)(),{HintSlot:u,hasHintLabelOrSlot:g,hasInvalidLabelOrSlot:s,hintSlotScope:y}=mt(l,i),{focused:c}=Bt(f,n);function p(h){return typeof h=="string"?!1:h.options?.length}const{id:w,modifiers:P,disabled:D,readonly:E,loading:R,icon:I,iconPosition:S,invalid:V,valid:Q,floating:T,multiple:te}=(0,e.toRefs)(r),X=Ie(w),B=(0,e.computed)(()=>`${X.value}-hint`),$=(0,e.computed)(()=>r.disabled||r.readonly),me=(0,e.computed)(()=>$.value?-1:r.tabindex),v=(0,e.computed)({get:()=>r.modelValue,set:h=>{if(Array.isArray(h)&&(h=h.filter(_=>_!==void 0),h.length===0&&!r.unselectable&&f.value)){f.value.value=String(r.modelValue);return}n("update:modelValue",h)}}),M=(0,e.computed)(()=>Array.isArray(v.value)?v.value.length>0:v.value!==void 0&&v.value!==null),H=(0,e.computed)(()=>$.value?!1:r.unselectable);(0,e.watch)((0,L.useElementVisibility)(f),h=>{h&&r.autofocus&&(c.value=!0)});const{hasIconBefore:A,hasIconAfter:re}=De(I,S),be=(0,e.computed)(()=>{if(r.invalid===!0)return!0;if(r.valid===!0)return!1}),ge=de("vv-select",P,(0,e.computed)(()=>({valid:Q.value,invalid:V.value,loading:R.value,disabled:D.value,readonly:E.value,"icon-before":A.value!==void 0,"icon-after":re.value!==void 0,dirty:M.value,focus:c.value&&!$.value,floating:T.value,multiple:te.value}))),{getOptionLabel:oe,getOptionValue:le,isOptionDisabled:ne,getOptionGrouped:K}=Vt(r);(0,e.watch)(()=>r.options,h=>{if(h?.length&&r.autoselectFirst&&!M.value){const _=le(h[0]);v.value=r.multiple?[_]:_}},{immediate:!0});function ce(){Array.isArray(v.value)?v.value=[]:v.value=void 0,n("clear")}const z=(0,e.computed)(()=>({name:r.name,tabindex:me.value,disabled:$.value,required:r.required,size:r.size,autocomplete:r.autocomplete,multiple:r.multiple,"aria-invalid":be.value,"aria-describedby":g.value?B.value:void 0,"aria-errormessage":s.value?B.value:void 0})),q=(0,e.computed)(()=>({valid:r.valid,invalid:r.invalid,modelValue:r.modelValue}));return(h,_)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",{class:(0,e.normalizeClass)((0,e.unref)(ge))},[h.label?((0,e.openBlock)(),(0,e.createElementBlock)("label",{key:0,for:(0,e.unref)(X)},(0,e.toDisplayString)(h.label),9,Ar)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",xr,[h.$slots.before?((0,e.openBlock)(),(0,e.createElementBlock)("div",Fr,[(0,e.renderSlot)(h.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(q))))])):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",jr,[(0,e.unref)(A)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(A),{class:"vv-select__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.withDirectives)((0,e.createElementVNode)("select",(0,e.mergeProps)({id:(0,e.unref)(X),ref_key:"selectEl",ref:f},(0,e.unref)(z),{"onUpdate:modelValue":_[0]||(_[0]=x=>(0,e.isRef)(v)?v.value=x:null)}),[h.placeholder?((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:0,value:void 0,disabled:!(0,e.unref)(H),hidden:!(0,e.unref)(H)},(0,e.toDisplayString)(h.placeholder),9,Tr)):(0,e.createCommentVNode)("v-if",!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(h.options,(x,N)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[p(x)?((0,e.openBlock)(),(0,e.createElementBlock)("optgroup",{key:`group-${N}`,disabled:(0,e.unref)(ne)(x),label:(0,e.unref)(oe)(x)},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(K)(x),(Z,ue)=>((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:`group-${N}-item-${ue}`,disabled:(0,e.unref)(ne)(Z),value:(0,e.unref)(le)(Z)},(0,e.toDisplayString)((0,e.unref)(oe)(Z)),9,Mr))),128))],8,zr)):((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:N,disabled:(0,e.unref)(ne)(x),value:(0,e.unref)(le)(x)},(0,e.toDisplayString)((0,e.unref)(oe)(x)),9,Hr))],64))),256))],16,Rr),[[e.vModelSelect,(0,e.unref)(v)]]),(0,e.unref)(re)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:1},(0,e.unref)(re),{class:"vv-select__icon vv-select__icon-after"}),null,16)):(0,e.createCommentVNode)("v-if",!0)]),(0,e.unref)(H)&&(0,e.unref)(l).showClearAction?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(bt),{key:1,"input-type":"select",label:h.labelClear,icon:h.iconClear,disabled:!(0,e.unref)(M),onClear:ce},null,8,["label","icon","disabled"])):(0,e.createCommentVNode)("v-if",!0),h.$slots.after?((0,e.openBlock)(),(0,e.createElementBlock)("div",Kr,[(0,e.renderSlot)(h.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(q))))])):(0,e.createCommentVNode)("v-if",!0)]),(0,e.createVNode)((0,e.unref)(u),{id:(0,e.unref)(B),class:"vv-select__hint"},(0,e.createSlots)({_:2},[h.$slots.hint?{name:"hint",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(h.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(y))))]),key:"0"}:void 0,h.$slots.loading?{name:"loading",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(h.$slots,"loading",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(y))))]),key:"1"}:void 0,h.$slots.valid?{name:"valid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(h.$slots,"valid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(y))))]),key:"2"}:void 0,h.$slots.invalid?{name:"invalid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(h.$slots,"invalid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(y))))]),key:"3"}:void 0]),1032,["id"])],2))}}),Wr=Gr,Ur=["id"],Jr=["id","for"],Yr=["id","aria-controls","placeholder"],Qr={key:0,class:"vv-select__input-before"},Xr={class:"vv-select__inner"},Zr=["aria-controls","aria-expanded","aria-labelledby","aria-describedby","aria-errormessage","tabindex"],eo={key:0,class:"vv-select__value"},to=["aria-label","onClick"],ro={key:2,class:"vv-select__input-after"},oo={name:"VvCombobox",components:{VvDropdown:ht,VvDropdownOption:we,VvDropdownOptgroup:yt,VvButton:gt}},lo=(0,e.defineComponent)({...oo,props:(0,e.mergeModels)(dt(),{search:{type:String,default:"",required:!1},searchModifiers:{}}),emits:(0,e.mergeModels)(["update:modelValue","update:search","update:options","focus","blur","clear","change:search"],["update:search"]),setup(t,{emit:o}){const r=t,n=o,i=(0,e.useSlots)(),l=kt("VvCombobox",dt(),r),f=(0,e.ref)(null),u=(0,e.ref)(null),g=(0,e.ref)(null),s=(0,e.ref)(),{HintSlot:y,hasHintLabelOrSlot:c,hasInvalidLabelOrSlot:p,hintSlotScope:w}=mt(l,i),{focused:P}=Bt(f,n),{focused:D}=(0,L.useFocusWithin)(g);let E;function R(){clearTimeout(E),E=setTimeout(()=>{!P.value&&!D.value&&V.value&&te()},50)}(0,e.onBeforeUnmount)(()=>clearTimeout(E)),(0,e.watch)(P,a=>{if(r.autoOpen){if(a&&!V.value){clearTimeout(E),T();return}!a&&V.value&&!D.value&&R()}}),(0,e.watch)(D,a=>{if(a){clearTimeout(E);return}!P.value&&V.value&&R()});const I=(0,e.useModel)(t,"search"),S=(0,L.refDebounced)(I,(0,e.computed)(()=>Number(r.debounceSearch)));(0,e.watch)(S,()=>{n("update:search",S.value),n("change:search",S.value)});const V=(0,e.ref)(!1);function Q(){_.value||(V.value=!V.value)}function T(){_.value||V.value||(V.value=!0)}function te(){_.value||!V.value||(V.value=!1)}function X(){l.value.searchable&&u.value&&u.value.focus({preventScroll:!0})}function B(){l.value.keepSearch||(I.value="")}function $(a){return typeof a=="string"?!1:a.options?.length}const{id:me,icon:v,iconPosition:M,modifiers:H,disabled:A,required:re,readonly:be,loading:ge,valid:oe,invalid:le,floating:ne}=(0,e.toRefs)(r),K=Ie(me),ce=(0,e.computed)(()=>`${K.value}-hint`),z=(0,e.computed)(()=>`${K.value}-dropdown`),q=(0,e.computed)(()=>`${K.value}-search`),h=(0,e.computed)(()=>`${K.value}-label`),_=(0,e.computed)(()=>r.disabled||r.readonly),x=(0,e.computed)(()=>_.value?-1:r.tabindex),N=(0,e.computed)({get:()=>Array.isArray(r.modelValue)?r.modelValue:r.modelValue!==void 0&&r.modelValue!==null?[r.modelValue]:[],set:a=>{n("update:modelValue",r.multiple||Array.isArray(r.modelValue)?a:a.pop())}}),Z=(0,e.computed)(()=>N.value.length),ue=(0,e.computed)(()=>Z.value>0),d=(0,e.computed)(()=>r.multiple?r.maxValues===void 0?1/0:Number(r.maxValues):1),k=(0,e.computed)(()=>_.value||!r.unselectable?!1:Number(r.minValues)===0||Z.value>Number(r.minValues)),ae=(0,e.computed)(()=>_.value?!1:r.multiple?Z.value<d.value:!0),Ce=(0,e.ref)(!1),Pt=(0,e.computed)(()=>Ce.value||ge.value),{hasIconBefore:Ue,hasIconAfter:Je}=De(v,M),ao=de("vv-select",H,(0,e.computed)(()=>({disabled:A.value,required:re.value,loading:Pt.value,readonly:be.value,"icon-before":Ue.value!==void 0,"icon-after":Je.value!==void 0,valid:oe.value,invalid:le.value,dirty:ue.value,focus:(P.value||D.value||V.value)&&!_.value,floating:ne.value,badges:r.badges}))),Ae=(0,e.ref)(new Set),{getOptionLabel:G,getOptionValue:Ye,getOptionGrouped:he,isOptionDisabled:io}=Vt(r),wt=(0,e.computed)(()=>{const a=[...Ae.value];for(const b of r.options)$(b)?a.push(...he(b)):a.push(b);return a}),ye=(0,e.computed)(()=>{const a=[...r.options,...Ae.value];for(const b of N.value)wt.value.some(m=>{const C=Ye(m);return typeof C=="object"&&typeof b=="object"?JSON.stringify(C)===JSON.stringify(b):C===b})||a.push(b);return a});(0,e.watch)(Ae,a=>{a.size>0&&n("update:options",ye.value)});function xe(a){return io(a)||!ae.value&&!fe(a)}const Oe=(0,L.computedAsync)(async()=>{if(l.value.searchFunction){Ce.value=!0;const b=await Promise.resolve(l.value.searchFunction(S.value,ye.value));return Ce.value=!1,b}const a=S.value.toLowerCase().trim();return a?ye.value?.reduce((b,m)=>{if($(m)){const C=G(m).toLowerCase(),j=he(m).filter(Se=>G(Se).toLowerCase().includes(a));if(C.includes(a))b.push(m);else if(j.length>0){const Se=typeof m=="object"?{...m,options:j}:m;b.push(Se)}return b}return G(m).toLowerCase().includes(a)&&b.push(m),b},[]):ye.value});function fe(a){const b=Ye(a);return typeof b=="object"?N.value.some(m=>typeof m=="object"?JSON.stringify(m)===JSON.stringify(b):!1):N.value.includes(b)}const ve=(0,e.computed)(()=>ye.value.reduce((a,b)=>$(b)?[...a,...he(b)]:[...a,b],[]).filter(a=>fe(a))),Ct=(0,e.computed)(()=>ve.value.map(a=>G(a)).join(r.separator));function so(){r.autoOpen?T():Q()}function ee(a){const b=fe(a),m=Ye(a);b&&k.value?N.value=N.value.filter(C=>typeof m=="object"&&typeof C=="object"?JSON.stringify(C)!==JSON.stringify(m):C!==m):!b&&ae.value&&(r.multiple?N.value=[...N.value,m]:N.value=[m]),!r.multiple&&!r.keepOpen&&te()}function co(){N.value=[],n("update:search",""),n("clear")}(0,e.watch)(ye,a=>{if(a?.length&&r.autoselectFirst&&!ue.value){const b=a.find(C=>!$(C));if(b){ee(b);return}const m=a.find(C=>$(C));if(m){const C=he(m);C.length&&ee(C[0])}}},{immediate:!0});const uo=(0,e.computed)(()=>({id:K.value,name:r.name,tabindex:x.value,valid:oe.value,validLabel:l.value.validLabel,invalid:le.value,invalidLabel:l.value.invalidLabel,hintLabel:l.value.hintLabel,loading:Pt.value,loadingLabel:l.value.loadingLabel,disabled:A.value,readonly:be.value,modifiers:l.value.modifiers,options:l.value.options,labelKey:l.value.labelKey,valueKey:l.value.valueKey,icon:l.value.icon,iconPosition:l.value.iconPosition,floating:l.value.floating,unselectable:k.value,autoselectFirst:l.value.autoselectFirst,multiple:l.value.multiple,label:l.value.label,placeholder:l.value.placeholder,modelValue:r.modelValue})),fo=(0,e.computed)(()=>({id:z.value,reference:g.value,placement:l.value.placement,strategy:l.value.strategy,transitionName:l.value.transitionName,offset:l.value.offset,shift:l.value.shift,flip:l.value.flip,autoPlacement:l.value.autoPlacement,arrow:l.value.arrow,autofocusFirst:l.value.searchable?!0:l.value.autofocusFirst,triggerWidth:l.value.triggerWidth,modifiers:l.value.dropdownModifiers})),Ot=(0,e.computed)(()=>({valid:r.valid,invalid:r.invalid,modelValue:r.modelValue}));(0,L.onKeyStroke)([" ","Enter"],a=>{r.autoOpen||!V.value&&P.value&&(a.preventDefault(),a.stopImmediatePropagation(),Q())},{target:f});function po(){if(Oe.value?.length){if(Oe.value.length===1){const a=Oe.value[0];if($(a)){const b=he(a);b.length&&ee(b[0]);return}ee(a);return}s.value?.focusFirstListElement();return}if(l.value.addable){const a=I.value.trim();if(!a||wt.value.some(b=>G(b).toLowerCase()===a.toLowerCase()))return;Ae.value.add(a),ee(a)}}return(a,b)=>a.native?((0,e.openBlock)(),(0,e.createBlock)(Wr,(0,e.mergeProps)({key:1},(0,e.unref)(uo),{"onUpdate:modelValue":b[3]||(b[3]=m=>n("update:modelValue",m))}),null,16)):((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,id:(0,e.unref)(K),class:(0,e.normalizeClass)((0,e.unref)(ao))},[a.label?((0,e.openBlock)(),(0,e.createElementBlock)("label",{key:0,id:(0,e.unref)(h),for:(0,e.unref)(l).searchable?(0,e.unref)(q):void 0},(0,e.toDisplayString)(a.label),9,Jr)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",{ref_key:"wrapperEl",ref:g,class:"vv-select__wrapper"},[(0,e.createVNode)(ht,(0,e.mergeProps)({ref_key:"dropdownEl",ref:s,modelValue:(0,e.unref)(V),"onUpdate:modelValue":b[2]||(b[2]=m=>(0,e.isRef)(V)?V.value=m:null)},(0,e.unref)(fo),{role:(0,e.unref)(Ee).listbox,onAfterExpand:X,onAfterCollapse:B}),(0,e.createSlots)({default:(0,e.withCtx)(({aria:m})=>[a.$slots.before?((0,e.openBlock)(),(0,e.createElementBlock)("div",Qr,[(0,e.renderSlot)(a.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(Ot))))])):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",Xr,[(0,e.unref)(Ue)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(Ue),{class:"vv-select__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",(0,e.mergeProps)({ref_key:"inputEl",ref:f},m,{class:"vv-select__input",role:"combobox","aria-controls":(0,e.unref)(z),"aria-expanded":(0,e.unref)(V),"aria-labelledby":(0,e.unref)(h),"aria-describedby":(0,e.unref)(c)?(0,e.unref)(ce):void 0,"aria-errormessage":(0,e.unref)(p)?(0,e.unref)(ce):void 0,tabindex:(0,e.unref)(x),onClickPassive:so}),[(0,e.unref)(Ct)?(0,e.renderSlot)(a.$slots,"value",(0,e.normalizeProps)((0,e.mergeProps)({key:0},{selectedOptions:(0,e.unref)(ve),onInput:ee})),()=>[a.badges?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:1},(0,e.renderList)((0,e.unref)(ve),(C,j)=>((0,e.openBlock)(),(0,e.createBlock)(er,{key:j,modifiers:a.badgeModifiers,class:"vv-select__badge"},{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(C))+" ",1),(0,e.unref)(k)?((0,e.openBlock)(),(0,e.createElementBlock)("button",{key:0,"aria-label":(0,e.unref)(l).deselectActionLabel,type:"button",onClick:(0,e.withModifiers)(Se=>ee(C),["stop"])},[(0,e.createVNode)(Y,{name:"close"})],8,to)):(0,e.createCommentVNode)("v-if",!0)]),_:2},1032,["modifiers"]))),128)):((0,e.openBlock)(),(0,e.createElementBlock)("div",eo,(0,e.toDisplayString)((0,e.unref)(Ct)),1))]):(0,e.renderSlot)(a.$slots,"placeholder",{key:1},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(a.placeholder),1)])],16,Zr),(0,e.unref)(Je)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:1},(0,e.unref)(Je),{class:"vv-select__icon vv-select__icon-after"}),null,16)):(0,e.createCommentVNode)("v-if",!0)]),(0,e.unref)(k)&&(0,e.unref)(l).showClearAction?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(bt),{key:1,"input-type":"select",label:a.labelClear,icon:a.iconClear,disabled:!(0,e.unref)(ue),onClear:co},null,8,["label","icon","disabled"])):(0,e.createCommentVNode)("v-if",!0),a.$slots.after?((0,e.openBlock)(),(0,e.createElementBlock)("div",ro,[(0,e.renderSlot)(a.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(Ot))))])):(0,e.createCommentVNode)("v-if",!0)]),items:(0,e.withCtx)(()=>[!(0,e.unref)(A)&&(0,e.unref)(Oe)?.length?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:0},(0,e.renderList)((0,e.unref)(Oe),(m,C)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:C},[$(m)?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createVNode)(yt,{label:(0,e.unref)(G)(m)},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"option-group",(0,e.mergeProps)({ref_for:!0},{option:m,selectedOptions:(0,e.unref)(ve)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(m)),1)])]),_:2},1032,["label"]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(he)(m),(j,Se)=>((0,e.openBlock)(),(0,e.createBlock)(we,(0,e.mergeProps)({ref_for:!0},{selected:fe(j),disabled:xe(j),unselectable:(0,e.unref)(k),deselectHintLabel:(0,e.unref)(l).deselectHintLabel,selectHintLabel:(0,e.unref)(l).selectHintLabel,selectedHintLabel:(0,e.unref)(l).selectedHintLabel,focusOnHover:a.focusOnHover},{key:Se,class:"vv-dropdown-option",onClickPassive:yo=>ee(j)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"option",(0,e.mergeProps)({ref_for:!0},{option:j,selectedOptions:(0,e.unref)(ve),selected:fe(j),disabled:xe(j)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(j)),1)])]),_:2},1040,["onClickPassive"]))),128))],64)):((0,e.openBlock)(),(0,e.createBlock)(we,(0,e.mergeProps)({key:1,ref_for:!0},{selected:fe(m),disabled:xe(m),unselectable:(0,e.unref)(k),deselectHintLabel:(0,e.unref)(l).deselectHintLabel,selectHintLabel:(0,e.unref)(l).selectHintLabel,selectedHintLabel:(0,e.unref)(l).selectedHintLabel,focusOnHover:a.focusOnHover},{class:"vv-dropdown-option",onClickPassive:j=>ee(m)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"option",(0,e.mergeProps)({ref_for:!0},{option:m,selectedOptions:(0,e.unref)(ve),selected:fe(m),disabled:xe(m)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(m)),1)])]),_:2},1040,["onClickPassive"]))],64))),128)):a.options.length?((0,e.openBlock)(),(0,e.createBlock)(we,{key:2,modifiers:"inert"},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"no-results",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(l).addable?(0,e.unref)(l).addOptionHintLabel:(0,e.unref)(l).noResultsLabel),1)])]),_:3})):((0,e.openBlock)(),(0,e.createBlock)(we,{key:1,modifiers:"inert"},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"no-options",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(l).addable&&I.value.length?(0,e.unref)(l).addOptionHintLabel:(0,e.unref)(l).noOptionsLabel),1)])]),_:3}))]),after:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"dropdown::after",{},()=>[(0,e.unref)(s)?.customPosition?((0,e.openBlock)(),(0,e.createBlock)(gt,{key:0,label:(0,e.unref)(l).closeLabel,modifiers:"secondary",onClick:b[1]||(b[1]=m=>(0,e.unref)(s).hide())},null,8,["label"])):(0,e.createCommentVNode)("v-if",!0)])]),_:2},[(0,e.unref)(l).searchable||a.$slots["dropdown::before"]?{name:"before",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"dropdown::before"),(0,e.unref)(l).searchable&&!(0,e.unref)(A)?(0,e.withDirectives)(((0,e.openBlock)(),(0,e.createElementBlock)("input",{key:0,id:(0,e.unref)(q),ref_key:"inputSearchEl",ref:u,"onUpdate:modelValue":b[0]||(b[0]=m=>I.value=m),"aria-autocomplete":"list","aria-controls":(0,e.unref)(z),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:(0,e.unref)(l).searchPlaceholder,onKeyup:(0,e.withKeys)(po,["enter"])},null,40,Yr)),[[e.vModelText,I.value]]):(0,e.createCommentVNode)("v-if",!0)]),key:"0"}:void 0]),1040,["modelValue","role"])],512),(0,e.createVNode)((0,e.unref)(y),{id:(0,e.unref)(ce),class:"vv-select__hint"},(0,e.createSlots)({_:2},[a.$slots.hint?{name:"hint",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"0"}:void 0,a.$slots.loading?{name:"loading",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"loading",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"1"}:void 0,a.$slots.valid?{name:"valid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"valid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"2"}:void 0,a.$slots.invalid?{name:"invalid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"invalid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"3"}:void 0]),1032,["id"])],10,Ur))}}),no=lo;return no});
1
+ (function(e,W){typeof exports=="object"&&typeof module<"u"?module.exports=W(require("vue"),require("@iconify/vue"),require("@floating-ui/vue"),require("@vueuse/core"),require("mitt"),require("dot-prop")):typeof define=="function"&&define.amd?define(["vue","@iconify/vue","@floating-ui/vue","@vueuse/core","mitt","dot-prop"],W):(e=typeof globalThis<"u"?globalThis:e||self,e.VvCombobox=W(e.Vue,e.IconifyVue,e.FloatingUiVue,e.VueuseCore,e.mitt,e.dotProp))})(this,function(e,W,F,L,Fe,Te){var Lt=Object.create,Qe=Object.defineProperty,Et=Object.getOwnPropertyDescriptor,$t=Object.getOwnPropertyNames,_t=Object.getPrototypeOf,Nt=Object.prototype.hasOwnProperty,Dt=(t,o,r,l)=>{if(o&&typeof o=="object"||typeof o=="function")for(var n=$t(o),a=0,b=n.length,c;a<b;a++)c=n[a],!Nt.call(t,c)&&c!==r&&Qe(t,c,{get:(y=>o[y]).bind(null,c),enumerable:!(l=Et(o,c))||l.enumerable});return t},It=(t,o,r)=>(r=t!=null?Lt(_t(t)):{},Dt(o||!t||!t.__esModule?Qe(r,"default",{value:t,enumerable:!0}):r,t));Fe=It(Fe,1);var At={showPassword:"eye-on",hidePassword:"eye-off",showDatePicker:"calendar",showTimePicker:"time",showColorPicker:"color",clear:"close",add:"add",remove:"trash",edit:"edit",download:"download"},xt={prefix:"normal"},Xe=(function(t){return t.local="local",t.session="session",t})({}),Ze=(function(t){return t.absolute="absolute",t.fixed="fixed",t})({}),O=(function(t){return t.left="left",t.right="right",t.top="top",t.bottom="bottom",t})({}),Ft=(function(t){return t.topStart="top-start",t.topEnd="top-end",t.bottomStart="bottom-start",t.bottomEnd="bottom-end",t.leftStart="left-start",t.leftEnd="left-end",t.rightStart="right-start",t.rightEnd="right-end",t})({}),Le=(function(t){return t.before="before",t.after="after",t})({}),et=(function(t){return t.button="button",t.submit="submit",t.reset="reset",t})({}),U=(function(t){return t.nuxtLink="nuxt-link",t.routerLink="router-link",t.a="a",t.button="button",t})({}),Tt=(function(t){return t.button="button",t.link="link",t.menuitem="menuitem",t})({}),Ee=(function(t){return t.listbox="listbox",t.menu="menu",t})({}),tt=(function(t){return t.option="option",t.presentation="presentation",t})({}),jt=Symbol.for("volver"),Rt=Symbol.for("buttonGroup"),rt=Symbol.for("dropdownTrigger"),ot=Symbol.for("dropdownItem"),lt=Symbol.for("dropdownAction"),Ht={to:{type:[String,Object]},href:String,target:String,rel:{type:String,default:"noopener noreferrer"}},ke={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},Be={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},pe={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},ie={disabled:{type:Boolean,default:!1}},je={required:{type:Boolean,default:!1}},zt={selected:{type:Boolean,default:!1}},Mt={active:{type:Boolean,default:!1}},Kt={current:{type:Boolean,default:!1}},at={showClearAction:{type:Boolean,default:!1},iconClear:{type:[String,Object],default:At.clear},labelClear:{type:String,default:"Clear"}},qt={pressed:{type:Boolean,default:!1}},se={label:{type:[String,Number],default:void 0}},Ve={readonly:{type:Boolean,default:!1}},J={modifiers:{type:[String,Array],default:void 0}},Pe={hintLabel:{type:String,default:""}},Re={options:{type:Array,default:()=>[]},labelKey:{type:[String,Function],default:"label"},valueKey:{type:[String,Function],default:"value"},disabledKey:{type:[String,Function],default:"disabled"}},Gt={count:{type:[Boolean,String],default:!1,validator:t=>[!0,!1,"limit","countdown"].includes(t)}},Wt={debounce:{type:[Number,String],default:void 0}},$e={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:Le.before,validation:t=>Object.values(Le).includes(t)}},_e={tabindex:{type:[String,Number],default:0}},He={floating:{type:Boolean,default:!1}},ze={unselectable:{type:Boolean,default:!0}},Me={id:[String,Number]},Ke={placement:{type:String,default:O.bottom,validator:t=>Object.values(O).includes(t)||Object.values(Ft).includes(t)},strategy:{type:String,default:void 0,validator:t=>Object.values(Ze).includes(t)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},Ne={...Me,name:{type:String,required:!0}},nt={autofocus:{type:Boolean,default:!1}},it={autocomplete:{type:String,default:"off"}},go={...Ne,...nt,...it,..._e,...ie,...Ve,...ke,...Be,...Pe,...pe,...J,...Gt,...Wt,...$e,...He,...se,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...je},ho={...Ne,..._e,...ke,...Be,...Pe,...ie,...Ve,...J,...se,...pe,value:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[Object,Number,Boolean,String],default:void 0}},yo={...ke,...Be,...Re,...Pe,...ie,...Ve,...J,...se,...pe,...je,modelValue:{type:[String,Array,Boolean,Number,Symbol],default:void 0},name:{type:String,required:!0},vertical:{type:Boolean,default:!1}},st={...ie,...se,...qt,...Mt,...Kt,...Ht,type:{type:String,default:et.button,validator:t=>Object.values(et).includes(t)},ariaLabel:{type:String,default:void 0},defaultTag:{type:String,default:U.button}},vo={storageType:{type:String,default:Xe.local,validator:t=>Object.values(Xe).includes(t)},storageKey:String},qe={...Ne,..._e,...ke,...Be,...Pe,...pe,...ie,...Ve,...J,...Re,...$e,...He,...Ke,...se,...je,...at,transitionName:{type:String,default:"vv-dropdown--mobile-fade-block"},modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},noResultsLabel:{type:String,default:"No results"},noOptionsLabel:{type:String,default:"No options available"},selectedOptionNotFoundLabel:{type:String,default:"Selected option not found"},selectedHintLabel:{type:String,default:"Selected"},deselectActionLabel:{type:String,default:"Deselect"},selectHintLabel:{type:String,default:"Press enter to select"},deselectHintLabel:{type:String,default:"Press enter to remove"},addOptionHintLabel:{type:String,default:"Press enter to add"},closeLabel:{type:String,default:"Close"},placeholder:String,addable:Boolean,searchable:Boolean,keepSearch:Boolean,searchFunction:{type:Function,default:void 0},searchPlaceholder:{type:String,default:"Search..."},debounceSearch:{type:[Number,String],default:0},multiple:Boolean,minValues:{type:[Number,String],default:0},maxValues:[Number,String],unselectable:{type:Boolean,default:!0},separator:{type:String,default:", "},native:Boolean,badges:Boolean,badgeModifiers:{type:[String,Array],default:"action sm"},triggerWidth:{...Ke.triggerWidth,default:!0},dropdownModifiers:{type:[String,Array],default:"mobile"},autoOpen:{type:Boolean,default:!1},autoselectFirst:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0}};function dt(){return{...qe,options:{...qe.options,type:Array},searchFunction:{...qe.searchFunction,type:Function}}}function ct(t,o,r){return r?ut(t,r)===ut(o,r):Ge(t,o)}function Ut(t,o){if(t.length!==o.length)return!1;for(let r=t.length;r--!==0;)if(!Ge(t[r],o[r]))return!1;return!0}function Jt(t,o){const r=Object.keys(t),{length:l}=r;if(l!==Object.keys(o).length)return!1;for(let n=l;n--!==0;)if(!Object.hasOwn(o,r[n]))return!1;for(let n=l;n--!==0;){const a=r[n];if(!Ge(t[a],o[a]))return!1}return!0}function Ge(t,o){if(t===o)return!0;if(!t||!o||typeof t!="object"||typeof o!="object")return Number.isNaN(t)&&Number.isNaN(o);const r=Array.isArray(t),l=Array.isArray(o);if(r!==l)return!1;if(r&&l)return Ut(t,o);const n=t instanceof Date,a=o instanceof Date;if(n!==a)return!1;if(n&&a)return t.getTime()===o.getTime();const b=t instanceof RegExp,c=o instanceof RegExp;return b!==c?!1:b&&c?t.toString()===o.toString():Jt(t,o)}function ut(t,o){if(t&&Object.keys(t).length&&o){if(!o.includes("."))return t[o];const r=o.split(".");let l=t;for(let n=0,a=r.length;n<a;++n){if(l==null)return null;l=l[r[n]]}return l}else return null}function ft(t,o){if(t!=null&&o?.length){for(const r of o)if(ct(t,r))return!0}return!1}function Yt(t){return typeof t=="string"}function pt(t){return Array.isArray(t)?t.filter(o=>Yt(o)).join(" "):t}function mt(t,o){const r=(0,e.computed)(()=>(0,e.isRef)(t)?t.value:t),l=(0,e.computed)(()=>pt(r.value.invalidLabel)),n=(0,e.computed)(()=>pt(r.value.validLabel)),a=(0,e.computed)(()=>r.value.loadingLabel),b=(0,e.computed)(()=>r.value.hintLabel),c=(0,e.computed)(()=>!!(r.value.loading&&(o.loading||a.value))),y=(0,e.computed)(()=>!c.value&&!!(r.value.invalid&&(o.invalid||l.value))),d=(0,e.computed)(()=>!c.value&&!y.value&&!!(r.value.valid&&(o.valid||n.value))),S=(0,e.computed)(()=>!c.value&&!y.value&&!d.value&&!!(o.hint||b.value)),f=(0,e.computed)(()=>y.value||d.value||c.value||S.value);return{hasInvalidLabelOrSlot:y,hasHintLabelOrSlot:S,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:c,hintSlotScope:(0,e.computed)(()=>({modelValue:r.value.modelValue,valid:r.value.valid,invalid:r.value.invalid,loading:r.value.loading})),HintSlot:(0,e.defineComponent)({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup(){return{isVisible:f,invalidLabel:l,validLabel:n,loadingLabel:a,hintLabel:b,hasInvalidLabelOrSlot:y,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:c,hasHintLabelOrSlot:S}},render(){if(this.isVisible){let m;return this.hasInvalidLabelOrSlot&&(m="alert"),this.hasValidLabelOrSlot&&(m="status"),this.hasLoadingLabelOrSlot?(0,e.h)(this.tag,{role:m},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?(0,e.h)(this.tag,{role:m},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?(0,e.h)(this.tag,{role:m},this.$slots.valid?.()??this.validLabel):(0,e.h)(this.tag,{role:m},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}})}}function We(){return(0,e.inject)(jt,void 0)}function de(t,o,r){return(0,e.computed)(()=>{const l={[t]:!0},n=typeof o?.value=="string"?o.value.split(" "):o?.value;return n&&Array.isArray(n)&&n.forEach(a=>{a&&(l[`${t}--${a}`]=!0)}),r&&Object.keys(r.value).forEach(a=>{l[`${t}--${a}`]=(0,e.unref)(r.value[a])}),l})}var Qt={name:"VvIcon"},Xt=(0,e.defineComponent)({...Qt,props:(0,e.mergeDefaults)({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},xt),setup(t){const o=t,r=(0,e.computed)(()=>typeof o.rotate=="string"?Number.parseFloat(o.rotate):o.rotate),l=(0,e.ref)(!0),n=We(),{modifiers:a}=(0,e.toRefs)(o),b=de("vv-icon",a),c=(0,e.computed)(()=>o.provider||n?.iconsProvider),y=(0,e.computed)(()=>{const f=o.name??"",m=`@${c.value}:${o.prefix}:${f}`;if((0,W.iconLoaded)(m))return m;const w=n?.iconsCollections.find(P=>(0,W.iconLoaded)(`@${c.value}:${P.prefix}:${f}`));return w?`@${c.value}:${w.prefix}:${f}`:f});function d(f){return globalThis.window===void 0?null:new globalThis.DOMParser().parseFromString(f,"text/html").querySelector("svg")}function S(f){const m=d(f),w=m?.innerHTML.trim()||"";m&&w&&(0,W.addIcon)(`@${c.value}:${o.prefix}:${o.name}`,{body:w,height:m.viewBox.baseVal.height,width:m.viewBox.baseVal.width})}return n&&o.src&&!(0,W.iconLoaded)(`@${c.value}:${o.prefix}:${o.name}`)&&(l.value=!1,n.fetchIcon(o.src).then(f=>{f&&S(f),l.value=!0}).catch(f=>{throw l.value=!0,new Error(`Error during fetch icon: ${f?.message}`)})),o.svg&&S(o.svg),(f,m)=>(0,e.unref)(l)?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(W.Icon),(0,e.mergeProps)({key:0,class:(0,e.unref)(b)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:(0,e.unref)(r),color:t.color,icon:(0,e.unref)(y)},{onLoad:t.onLoad}),null,16,["class","onLoad"])):(0,e.createCommentVNode)("v-if",!0)}}),Y=Xt;function De(t,o){const r=(0,e.computed)(()=>typeof t?.value=="string"?{name:t?.value}:t?.value),l=(0,e.computed)(()=>o?.value===Le.before?r.value:void 0),n=(0,e.computed)(()=>o?.value===Le.after?r.value:void 0);return{hasIcon:r,hasIconLeft:(0,e.computed)(()=>o?.value===O.left?r.value:void 0),hasIconRight:(0,e.computed)(()=>o?.value===O.right?r.value:void 0),hasIconTop:(0,e.computed)(()=>o?.value===O.top?r.value:void 0),hasIconBottom:(0,e.computed)(()=>o?.value===O.bottom?r.value:void 0),hasIconBefore:l,hasIconAfter:n}}var bt=(0,e.defineComponent)({components:{VvIcon:Y},props:{inputType:{type:String,default:"input-text"},disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:[String,Object],default:"close"}},emits:["clear"],setup(t,{emit:o}){const{hasIcon:r}=De((0,e.computed)(()=>t.icon));function l(n){n?.stopPropagation(),t.disabled||o("clear")}return{hasIcon:r,onClick:l}},render(){const t=this.hasIcon?(0,e.h)(Y,{...this.hasIcon,class:`vv-${this.inputType}__icon`}):void 0;return(0,e.h)("button",{disabled:this.disabled,class:`vv-${this.inputType}__action`,ariaLabel:this.label,type:"button",onClick:this.onClick},t)}}),Zt={...J,value:[String,Number]},er={name:"VvBadge"},tr=(0,e.defineComponent)({...er,props:Zt,setup(t){const{modifiers:o}=(0,e.toRefs)(t),r=de("vv-badge",o);return(l,n)=>((0,e.openBlock)(),(0,e.createElementBlock)("span",{class:(0,e.normalizeClass)((0,e.unref)(r))},[(0,e.renderSlot)(l.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(l.value),1)])],2))}}),rr=tr;function or(t){const o=(0,e.inject)(t,void 0),r=(0,e.computed)(()=>o!==void 0);function l(n,a,b){const c=o?.[n];if(c)return(0,e.computed)({get(){return c.value},set(d){c.value=d}});const y=(0,e.toRef)(a,n);return(0,e.computed)({get(){return y.value},set(d){b&&b(`update:${n}`,d)}})}return{group:o,isInGroup:r,getGroupOrLocalRef:l}}var lr=["update:modelValue"],ar={...st,...Me,...J,...ze,...pe,...$e,iconPosition:{type:String,default:O.left,validator:t=>Object.values(O).includes(t)},loadingIcon:{type:String,default:"eos-icons:bubble-loading"},toggle:{type:Boolean,default:!1},value:{type:[String,Number,Boolean],default:void 0},uncheckedValue:{type:[String,Number,Boolean],default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0}};function nr(t,o){const{group:r,isInGroup:l,getGroupOrLocalRef:n}=or(Rt),{id:a,iconPosition:b,icon:c,label:y,pressed:d}=(0,e.toRefs)(t);return{group:r,isInGroup:l,modelValue:n("modelValue",t,o),toggle:n("toggle",t),unselectable:n("unselectable",t),multiple:(0,e.computed)(()=>r?.multiple.value??!1),modifiers:(0,e.computed)(()=>{let S=t.modifiers,f=r?.modifiers.value;const m=new Set;return S&&(Array.isArray(S)||(S=S.split(" ")),S.forEach(w=>m.add(w))),f&&(Array.isArray(f)||(f=f.split(" ")),f.forEach(w=>m.add(w))),[...m]}),disabled:(0,e.computed)(()=>!!(t.disabled||r?.disabled.value)),id:a,pressed:d,iconPosition:b,icon:c,label:y}}var ir=["click","mouseover","mouseleave"];function sr(){return(0,e.inject)(rt,{})}function dr(){return(0,e.inject)(ot,{})}function cr(){return(0,e.inject)(lt,{})}var ur={name:"VvAction"},fr=(0,e.defineComponent)({...ur,props:st,emits:ir,setup(t,{expose:o,emit:r}){const l=t,n=r,a=(0,e.getCurrentInstance)(),b=We(),c=(0,e.ref)(null);o({$el:c});const{reference:y,bus:d,aria:S,expanded:f}=sr();(0,e.watch)(()=>c.value,v=>{y&&(y.value=v)});const m=(0,e.computed)(()=>l.pressed||f?.value),{role:w}=cr(),P=(0,e.computed)(()=>{switch(!0){case l.disabled:return U.button;case l.to!==void 0:return b?.nuxt?(0,e.resolveComponent)(U.nuxtLink):U.routerLink;case l.href!==void 0:return U.a;default:return l.defaultTag}}),D=(0,e.computed)(()=>{const v={...S?.value,ariaPressed:m.value?!0:void 0,ariaLabel:l.ariaLabel,role:w?.value};switch(P.value){case U.a:return{...v,href:l.href,target:l.target,rel:l.rel};case U.routerLink:case U.nuxtLink:return{...v,to:l.to,target:l.target};case U.button:return{...v,type:l.type,disabled:l.disabled};default:return v}});function E(v){if(l.disabled){v.preventDefault();return}if(a?.vnode.props?.onClick){n("click",v);return}d?.emit("click",v)}function j(v){if(a?.vnode.props?.onMouseover){n("mouseover",v);return}d?.emit("mouseover",v)}function I(v){if(a?.vnode.props?.onMouseleave){n("mouseleave",v);return}d?.emit("mouseleave",v)}return(v,V)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(P)),(0,e.mergeProps)((0,e.unref)(D),{ref_key:"rootEl",ref:c,class:{active:v.active,pressed:(0,e.unref)(m),disabled:v.disabled,current:v.current},onClickPassive:E,onMouseoverPassive:j,onMouseleavePassive:I}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(v.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(v.label),1)])]),_:3},16,["class"]))}}),pr=fr;function Ie(t){return(0,e.computed)(()=>String(t?.value||(0,e.useId)()))}var mr={key:1,class:"vv-button__label"},br={key:1,class:"vv-button__label"},gr={name:"VvButton",inheritAttrs:!1},hr=(0,e.defineComponent)({...gr,props:ar,emits:lr,setup(t,{expose:o,emit:r}){const l=t,n=r,a=(0,e.useAttrs)(),b=(0,e.useSlots)(),{id:c,modifiers:y,iconPosition:d,icon:S,label:f,modelValue:m,disabled:w,toggle:P,unselectable:D}=nr(l,n),E=Ie(c),j=(0,e.computed)(()=>a?.name||E.value),I=(0,e.ref)(null);o({$el:(0,e.computed)(()=>I.value?.$el)});const v=(0,e.computed)(()=>P.value?Array.isArray(m.value)?ft(j.value,m.value):ct(j.value,m.value):l.pressed),V=de("vv-button",y,(0,e.computed)(()=>({reverse:[O.right,O.bottom].includes(d.value),column:[O.top,O.bottom].includes(d.value),"icon-only":!!(S?.value&&!f?.value&&!b.default)}))),{hasIcon:Q}=De(S),R=(0,e.computed)(()=>l.value===void 0?j.value:l.value),te=(0,e.computed)(()=>{if(P.value)return{onClick:X}});function X(){if(P.value){if(Array.isArray(m.value)){if(ft(R.value,m.value)){D.value&&(m.value=m.value.filter(B=>B!==R.value));return}m.value.push(R.value);return}if(R.value===m.value&&D.value){m.value=l.uncheckedValue;return}m.value=R.value}}return(B,$)=>((0,e.openBlock)(),(0,e.createBlock)(pr,(0,e.mergeProps)({...(0,e.unref)(a),...(0,e.unref)(te),disabled:(0,e.unref)(w),pressed:(0,e.unref)(v),active:B.active,type:B.type,to:B.to,href:B.href,target:B.target,rel:B.rel,ariaLabel:B.ariaLabel},{id:(0,e.unref)(E),ref_key:"rootEl",ref:I,class:(0,e.unref)(V)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(B.$slots,"default",{},()=>[B.loading?(0,e.renderSlot)(B.$slots,"loading",{key:0},()=>[B.loadingIcon?((0,e.openBlock)(),(0,e.createBlock)(Y,{key:0,class:"vv-button__loading-icon",name:B.loadingIcon},null,8,["name"])):(0,e.createCommentVNode)("v-if",!0),B.loadingLabel?((0,e.openBlock)(),(0,e.createElementBlock)("span",mr,(0,e.toDisplayString)(B.loadingLabel),1)):(0,e.createCommentVNode)("v-if",!0)]):((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:1},[(0,e.renderSlot)(B.$slots,"before"),(0,e.unref)(Q)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(Q),{class:"vv-button__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.unref)(f)?((0,e.openBlock)(),(0,e.createElementBlock)("span",br,[(0,e.renderSlot)(B.$slots,"label",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(f)),1)])])):(0,e.createCommentVNode)("v-if",!0),(0,e.renderSlot)(B.$slots,"after")],64))])]),_:3},16,["id","class"]))}}),gt=hr,yr={...Me,...Ke,...J,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:Ee.menu,validator:t=>Object.values(Ee).includes(t)}},vr={focusOnHover:{type:Boolean,default:!1}},Sr={...ie,...zt,...ze,...J,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function kr({reference:t,id:o,expanded:r,aria:l}){const n=(0,Fe.default)();return{bus:n,component:(0,e.defineComponent)({name:"VvDropdownTriggerProvider",setup(){(0,e.provide)(rt,{reference:t,id:o,expanded:r,aria:l,bus:n})},render(){return(0,e.h)(e.Fragment,{},this.$slots.default?.())}})}}function Br({role:t,...o}){const r=(0,e.computed)(()=>t.value===Ee.listbox?tt.option:tt.presentation);return(0,e.provide)(ot,{role:r,...o}),{itemRole:r}}function Vr({expanded:t}){(0,e.provide)(lt,{role:(0,e.ref)(Tt.menuitem),expanded:t})}var Pr=["id","tabindex","role","aria-labelledby"],wr={name:"VvDropdown",inheritAttrs:!1},Cr=(0,e.defineComponent)({...wr,props:yr,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(t,{expose:o,emit:r}){const l=t,n=r,{id:a}=(0,e.toRefs)(l),b=Ie(a),c=(0,e.useAttrs)(),y=(0,e.ref)("auto"),d=(0,e.ref)("auto"),S=(0,e.ref)(),f=(0,e.ref)(),m=(0,e.ref)(),w=(0,e.ref)(),P=(0,e.computed)({get:()=>l.reference??S.value,set:s=>{S.value=s}}),D=(0,e.ref)(!1);(0,e.onMounted)(()=>{(0,L.useMutationObserver)(f.value,()=>{D.value=globalThis.getComputedStyle(f.value).getPropertyValue("--dropdown-custom-position")?.trim()==="true"},{attributeFilter:["style"],window:globalThis.window})});function E(s,k,ne){return typeof s=="boolean"?k():ne(s)}const j=(0,e.computed)(()=>{const s=[];if(l.autoPlacement?s.push(E(l.autoPlacement,()=>(0,F.autoPlacement)(),k=>(0,F.autoPlacement)(k))):l.flip&&s.push(E(l.flip,()=>(0,F.flip)({fallbackStrategy:"initialPlacement"}),k=>(0,F.flip)(k))),l.shift&&s.push(E(l.shift,()=>(0,F.shift)(),k=>(0,F.shift)(k))),l.size){const k=({availableWidth:ne,availableHeight:Ce})=>{y.value=`${ne}px`,d.value=`${Ce}px`};s.push(E(l.size,()=>(0,F.size)({apply:k}),ne=>(0,F.size)({...ne,apply:k})))}return l.offset&&s.push(["string","number"].includes(typeof l.offset)?(0,F.offset)(Number(l.offset)):(0,F.offset)(l.offset)),l.arrow&&s.push((0,F.arrow)({element:m})),s}),{x:I,y:v,middlewareData:V,placement:Q,strategy:R}=(0,F.useFloating)(P,f,{whileElementsMounted:(...s)=>(0,F.autoUpdate)(...s,{animationFrame:l.strategy===Ze.fixed}),placement:(0,e.computed)(()=>l.placement),strategy:(0,e.computed)(()=>l.strategy),middleware:j}),te=(0,e.computed)(()=>{if(D.value)return;const s=l.triggerWidth&&P.value?`${P.value?.offsetWidth}px`:void 0;return{position:R.value,top:`${v.value??0}px`,left:`${I.value??0}px`,maxWidth:s?void 0:y.value,maxHeight:d.value,width:s}}),X=(0,e.computed)(()=>Q.value.split("-")[0]),B=(0,e.computed)(()=>{if(D.value)return;const s={[O.top]:O.bottom,[O.right]:O.left,[O.bottom]:O.top,[O.left]:O.right}[X.value];return{left:V.value.arrow?.x===void 0?void 0:`${V.value.arrow?.x}px`,top:V.value.arrow?.y===void 0?void 0:`${V.value.arrow?.y}px`,[s]:`${-(m.value?.offsetWidth??0)/2}px`}}),$=(0,L.useVModel)(l,"modelValue",n),me=(0,e.ref)(!1),h=(0,e.computed)({get:()=>$.value??me.value,set:s=>{if($.value===void 0){me.value=s;return}$.value=s}});function M(){h.value=!0}function H(){h.value=!1}function A(){h.value=!h.value}function re(s){P.value=s}(0,L.onClickOutside)(f,()=>{!l.keepOpen&&h.value&&(h.value=!1)},{ignore:[P]});const be=(0,e.computed)(()=>P.value?.getAttribute?.("id")??void 0),ge=(0,e.computed)(()=>({"aria-controls":b.value,"aria-haspopup":!0,"aria-expanded":h.value})),{component:oe,bus:le}=kr({reference:P,id:b,expanded:h,aria:ge});le.on("click",A);const{role:ae,modifiers:K}=(0,e.toRefs)(l),ce=de("vv-dropdown",K,(0,e.computed)(()=>({arrow:l.arrow}))),{focused:z}=(0,L.useFocusWithin)(f);function q(s){return s?[...s.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(k=>!k.hasAttribute("disabled")&&!k.getAttribute("aria-hidden")):[]}function g(){(0,e.nextTick)(()=>{const s=q(f.value);s.length>0&&s[0].focus({preventScroll:!0})})}function _(){(0,e.nextTick)(()=>{const s=q(w.value);s.length>0&&s[0].focus({preventScroll:!0})})}function x(){(0,e.nextTick)(()=>{if(z.value){const s=q(f.value);if(s.length===0||!document.activeElement)return;const k=s.indexOf(document.activeElement);k<s.length-1?s[k+1].focus({preventScroll:!0}):s[0].focus({preventScroll:!0})}})}function N(){(0,e.nextTick)(()=>{if(z.value){const s=q(f.value);if(s.length===0||!document.activeElement)return;const k=s.indexOf(document.activeElement);if(k>0){s[k-1].focus({preventScroll:!0});return}s.at(-1)?.focus({preventScroll:!0})}})}(0,e.watch)(h,s=>{s&&l.autofocusFirst&&g()}),o({toggle:A,show:M,hide:H,init:re,focusFirst:g,focusFirstListElement:_,focusNext:x,focusPrev:N,customPosition:D});const{itemRole:Z}=Br({role:ae,expanded:h,focused:z,hovered:(0,L.useElementHover)(f)});(0,L.onKeyStroke)("Escape",s=>{h.value&&(s.preventDefault(),H())}),(0,L.onKeyStroke)("ArrowDown",s=>{h.value&&z.value&&(s.preventDefault(),x())}),(0,L.onKeyStroke)("ArrowUp",s=>{h.value&&z.value&&(s.preventDefault(),N())}),(0,L.onKeyStroke)([" ","Enter"],s=>{const k=s.target;h.value&&z.value&&k&&k?.click()});const ue={"before-enter":()=>{n(h.value?"beforeExpand":"beforeCollapse"),n("beforeEnter")},"after-leave":()=>{n(h.value?"afterExpand":"afterCollapse"),n("afterLeave")},enter:()=>{n("enter")},"after-enter":()=>{n("afterEnter")},"enter-cancelled":()=>{n("enterCancelled")},"before-leave":()=>{n("beforeLeave")},leave:()=>{n("leave")},"leave-cancelled":()=>{n("leaveCancelled")}};return(s,k)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[(0,e.createVNode)((0,e.unref)(oe),null,{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(s.$slots,"default",(0,e.normalizeProps)((0,e.guardReactiveProps)({init:re,show:M,hide:H,toggle:A,expanded:(0,e.unref)(h),aria:(0,e.unref)(ge)})))]),_:3}),(0,e.createVNode)(e.Transition,(0,e.mergeProps)({name:s.transitionName},(0,e.toHandlers)(ue),{persisted:""}),{default:(0,e.withCtx)(()=>[(0,e.withDirectives)((0,e.createElementVNode)("div",{ref_key:"floatingEl",ref:f,style:(0,e.normalizeStyle)((0,e.unref)(te)),class:(0,e.normalizeClass)((0,e.unref)(ce))},[l.arrow?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,ref_key:"arrowEl",ref:m,style:(0,e.normalizeStyle)((0,e.unref)(B)),class:"vv-dropdown__arrow"},null,4)):(0,e.createCommentVNode)("v-if",!0),(0,e.renderSlot)(s.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(h)}))),(0,e.createElementVNode)("div",(0,e.mergeProps)((0,e.unref)(c),{id:(0,e.unref)(b),ref_key:"listEl",ref:w,tabindex:(0,e.unref)(h)?void 0:-1,role:(0,e.unref)(ae),"aria-labelledby":(0,e.unref)(be),class:"vv-dropdown__list"}),[(0,e.renderSlot)(s.$slots,"items",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(h),role:(0,e.unref)(Z)})))],16,Pr),(0,e.renderSlot)(s.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)({show:M,hide:H,toggle:A,expanded:(0,e.unref)(h)})))],6),[[e.vShow,(0,e.unref)(h)]])]),_:3},16,["name"])],64))}}),ht=Cr,Or={class:"vv-dropdown-optgroup",role:"presentation",tabindex:"-1"},Lr={name:"VvDropdownOptgroup"},Er=(0,e.defineComponent)({...Lr,props:{...se},setup(t){const o=t;return(r,l)=>((0,e.openBlock)(),(0,e.createElementBlock)("li",Or,[(0,e.renderSlot)(r.$slots,"default",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(o.label),1)])]))}}),yt=Er,$r={name:"VvDropdownItem"},_r=(0,e.defineComponent)({...$r,props:vr,setup(t){const o=t,{role:r,expanded:l}=dr(),n=(0,e.ref)(null);Vr({expanded:l});const a=(0,L.useElementHover)(n),{focused:b}=(0,L.useFocus)(n),{focused:c}=(0,L.useFocusWithin)(n);return(0,e.watch)(a,y=>{y&&o.focusOnHover&&(b.value=!0)}),(y,d)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.mergeProps)({role:(0,e.unref)(r)},{ref_key:"element",ref:n,class:["vv-dropdown__item",{"focus-visible":(0,e.unref)(b)||(0,e.unref)(c)}]}),[(0,e.renderSlot)(y.$slots,"default")],16))}}),Nr=_r,Dr=["title"],Ir={name:"VvDropdownOption"},Ar=(0,e.defineComponent)({...Ir,props:Sr,setup(t){const o=t,{modifiers:r}=(0,e.toRefs)(o),l=de("vv-dropdown-option",r,(0,e.computed)(()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected}))),n=(0,e.computed)(()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?"":o.selectHintLabel);return(a,b)=>((0,e.openBlock)(),(0,e.createBlock)(Nr,{class:(0,e.normalizeClass)((0,e.unref)(l)),tabindex:a.disabled?-1:0,"aria-selected":a.selected,"aria-disabled":a.disabled,"focus-on-hover":a.focusOnHover},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(a.$slots,"default"),(0,e.createElementVNode)("span",{class:"vv-dropdown-option__hint",title:(0,e.unref)(n)},[(0,e.renderSlot)(a.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)({disabled:a.disabled,selected:a.selected,unselectable:a.unselectable})),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(n)),1)])],8,Dr)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}}),we=Ar,vt={...Ne,...nt,...it,..._e,...ke,...Be,...Pe,...pe,...ie,...Ve,...J,...Re,...$e,...He,...ze,...se,...at,multiple:Boolean,required:Boolean,size:[String,Number],modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},autoselectFirst:{type:Boolean,default:!1},placeholder:String};function St(){return{...vt,options:{...vt.options,type:Array,default:()=>[]}}}function xr(t,o,r){let l=o;if(Array.isArray(t)&&t.length){const n=t[0];n()===o&&(l=r)}if(typeof t=="function"&&t()===o&&(l=r),typeof t=="object"){let n=t.default;typeof n=="function"&&(n=n()),(typeof n=="object"?JSON.stringify(n)===JSON.stringify(o):n===o)&&(l=r)}return l}function kt(t,o,r){const l=We(),n=(0,e.computed)(()=>{if(l?.defaults.value?.[t])return l.defaults.value[t]});return(0,e.computed)(()=>{if(n.value===void 0)return r;const a=n.value,b=o,c=r;return Object.keys(b).reduce((y,d)=>{const S=c[d];return y[d]=d in a?xr(b[d],S,a[d]):S,y},{})})}function Bt(t,o){const{focused:r}=(0,L.useFocus)(t);return(0,e.watch)(r,l=>{o(l?"focus":"blur",(0,e.unref)(t))}),{focused:r}}function Vt(t){const{options:o,labelKey:r,valueKey:l,disabledKey:n}=(0,e.toRefs)(t);return{options:o,getOptionLabel:d=>typeof d=="string"?d:typeof r.value=="function"?r.value(d):String(r.value?(0,Te.getProperty)(d,r.value):d),getOptionValue:d=>typeof d=="string"?d:typeof l.value=="function"?l.value(d):l.value?(0,Te.getProperty)(d,l.value):d,isOptionDisabled:d=>typeof d=="string"?!1:typeof n.value=="function"?n.value(d):n.value?!!(0,Te.getProperty)(d,n.value):!1,getOptionGrouped:d=>typeof d=="string"?[]:typeof d=="object"&&d&&"options"in d?d.options:[]}}var Fr=["for"],Tr={class:"vv-select__wrapper"},jr={key:0,class:"vv-select__input-before"},Rr={class:"vv-select__inner"},Hr=["id"],zr=["disabled","hidden"],Mr=["disabled","value"],Kr=["disabled","label"],qr=["disabled","value"],Gr={key:2,class:"vv-select__input-after"},Wr={name:"VvSelect"},Ur=(0,e.defineComponent)({...Wr,props:St(),emits:["update:modelValue","focus","blur","clear"],setup(t,{emit:o}){const r=t,l=o,n=(0,e.useSlots)(),a=kt("VvSelect",St(),r),b=(0,e.ref)(),{HintSlot:c,hasHintLabelOrSlot:y,hasInvalidLabelOrSlot:d,hintSlotScope:S}=mt(a,n),{focused:f}=Bt(b,l);function m(g){return typeof g=="string"?!1:g.options?.length}const{id:w,modifiers:P,disabled:D,readonly:E,loading:j,icon:I,iconPosition:v,invalid:V,valid:Q,floating:R,multiple:te}=(0,e.toRefs)(r),X=Ie(w),B=(0,e.computed)(()=>`${X.value}-hint`),$=(0,e.computed)(()=>r.disabled||r.readonly),me=(0,e.computed)(()=>$.value?-1:r.tabindex),h=(0,e.computed)({get:()=>r.modelValue,set:g=>{if(Array.isArray(g)&&(g=g.filter(_=>_!==void 0),g.length===0&&!r.unselectable&&b.value)){b.value.value=String(r.modelValue);return}l("update:modelValue",g)}}),M=(0,e.computed)(()=>Array.isArray(h.value)?h.value.length>0:h.value!==void 0&&h.value!==null),H=(0,e.computed)(()=>$.value?!1:r.unselectable);(0,e.watch)((0,L.useElementVisibility)(b),g=>{g&&r.autofocus&&(f.value=!0)});const{hasIconBefore:A,hasIconAfter:re}=De(I,v),be=(0,e.computed)(()=>{if(r.invalid===!0)return!0;if(r.valid===!0)return!1}),ge=de("vv-select",P,(0,e.computed)(()=>({valid:Q.value,invalid:V.value,loading:j.value,disabled:D.value,readonly:E.value,"icon-before":A.value!==void 0,"icon-after":re.value!==void 0,dirty:M.value,focus:f.value&&!$.value,floating:R.value,multiple:te.value}))),{getOptionLabel:oe,getOptionValue:le,isOptionDisabled:ae,getOptionGrouped:K}=Vt(r);(0,e.watch)(()=>r.options,g=>{if(g?.length&&r.autoselectFirst&&!M.value){const _=le(g[0]);h.value=r.multiple?[_]:_}},{immediate:!0});function ce(){Array.isArray(h.value)?h.value=[]:h.value=void 0,l("clear")}const z=(0,e.computed)(()=>({name:r.name,tabindex:me.value,disabled:$.value,required:r.required,size:r.size,autocomplete:r.autocomplete,multiple:r.multiple,"aria-invalid":be.value,"aria-describedby":y.value?B.value:void 0,"aria-errormessage":d.value?B.value:void 0})),q=(0,e.computed)(()=>({valid:r.valid,invalid:r.invalid,modelValue:r.modelValue}));return(g,_)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",{class:(0,e.normalizeClass)((0,e.unref)(ge))},[g.label?((0,e.openBlock)(),(0,e.createElementBlock)("label",{key:0,for:(0,e.unref)(X)},(0,e.toDisplayString)(g.label),9,Fr)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",Tr,[g.$slots.before?((0,e.openBlock)(),(0,e.createElementBlock)("div",jr,[(0,e.renderSlot)(g.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(q))))])):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",Rr,[(0,e.unref)(A)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(A),{class:"vv-select__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.withDirectives)((0,e.createElementVNode)("select",(0,e.mergeProps)({id:(0,e.unref)(X),ref_key:"selectEl",ref:b},(0,e.unref)(z),{"onUpdate:modelValue":_[0]||(_[0]=x=>(0,e.isRef)(h)?h.value=x:null)}),[g.placeholder?((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:0,value:void 0,disabled:!(0,e.unref)(H),hidden:!(0,e.unref)(H)},(0,e.toDisplayString)(g.placeholder),9,zr)):(0,e.createCommentVNode)("v-if",!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(g.options,(x,N)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[m(x)?((0,e.openBlock)(),(0,e.createElementBlock)("optgroup",{key:`group-${N}`,disabled:(0,e.unref)(ae)(x),label:(0,e.unref)(oe)(x)},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(K)(x),(Z,ue)=>((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:`group-${N}-item-${ue}`,disabled:(0,e.unref)(ae)(Z),value:(0,e.unref)(le)(Z)},(0,e.toDisplayString)((0,e.unref)(oe)(Z)),9,qr))),128))],8,Kr)):((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:N,disabled:(0,e.unref)(ae)(x),value:(0,e.unref)(le)(x)},(0,e.toDisplayString)((0,e.unref)(oe)(x)),9,Mr))],64))),256))],16,Hr),[[e.vModelSelect,(0,e.unref)(h)]]),(0,e.unref)(re)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:1},(0,e.unref)(re),{class:"vv-select__icon vv-select__icon-after"}),null,16)):(0,e.createCommentVNode)("v-if",!0)]),(0,e.unref)(H)&&(0,e.unref)(a).showClearAction?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(bt),{key:1,"input-type":"select",label:g.labelClear,icon:g.iconClear,disabled:!(0,e.unref)(M),onClear:ce},null,8,["label","icon","disabled"])):(0,e.createCommentVNode)("v-if",!0),g.$slots.after?((0,e.openBlock)(),(0,e.createElementBlock)("div",Gr,[(0,e.renderSlot)(g.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(q))))])):(0,e.createCommentVNode)("v-if",!0)]),(0,e.createVNode)((0,e.unref)(c),{id:(0,e.unref)(B),class:"vv-select__hint"},(0,e.createSlots)({_:2},[g.$slots.hint?{name:"hint",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(g.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(S))))]),key:"0"}:void 0,g.$slots.loading?{name:"loading",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(g.$slots,"loading",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(S))))]),key:"1"}:void 0,g.$slots.valid?{name:"valid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(g.$slots,"valid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(S))))]),key:"2"}:void 0,g.$slots.invalid?{name:"invalid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(g.$slots,"invalid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(S))))]),key:"3"}:void 0]),1032,["id"])],2))}}),Jr=Ur,Yr=["id"],Qr=["id","for"],Xr=["id","aria-controls","placeholder"],Zr={key:0,class:"vv-select__input-before"},eo={class:"vv-select__inner"},to=["aria-controls","aria-expanded","aria-labelledby","aria-describedby","aria-errormessage","tabindex"],ro={key:0,class:"vv-select__value"},oo=["aria-label","onClick"],lo={key:2,class:"vv-select__input-after"},ao={name:"VvCombobox",components:{VvDropdown:ht,VvDropdownOption:we,VvDropdownOptgroup:yt,VvButton:gt}},no=(0,e.defineComponent)({...ao,props:(0,e.mergeModels)(dt(),{search:{type:String,default:"",required:!1},searchModifiers:{}}),emits:(0,e.mergeModels)(["update:modelValue","update:search","update:options","focus","blur","clear","change:search"],["update:search"]),setup(t,{emit:o}){const r=t,l=o,n=(0,e.useSlots)(),a=kt("VvCombobox",dt(),r),b=(0,e.ref)(null),c=(0,e.ref)(null),y=(0,e.ref)(null),d=(0,e.ref)(),{HintSlot:S,hasHintLabelOrSlot:f,hasInvalidLabelOrSlot:m,hintSlotScope:w}=mt(a,n),{focused:P}=Bt(b,l),{focused:D}=(0,L.useFocusWithin)(y);let E;function j(){clearTimeout(E),E=setTimeout(()=>{!P.value&&!D.value&&V.value&&te()},50)}(0,e.onBeforeUnmount)(()=>clearTimeout(E)),(0,e.watch)(P,i=>{if(r.autoOpen){if(i&&!V.value){clearTimeout(E),R();return}!i&&V.value&&!D.value&&j()}}),(0,e.watch)(D,i=>{if(i){clearTimeout(E);return}!P.value&&V.value&&j()});const I=(0,e.useModel)(t,"search"),v=(0,L.refDebounced)(I,(0,e.computed)(()=>Number(r.debounceSearch)));(0,e.watch)(v,()=>{l("update:search",v.value),l("change:search",v.value)});const V=(0,e.ref)(!1);function Q(){_.value||(V.value=!V.value)}function R(){_.value||V.value||(V.value=!0)}function te(){_.value||!V.value||(V.value=!1)}function X(){a.value.searchable&&c.value&&c.value.focus({preventScroll:!0})}function B(){a.value.keepSearch||(I.value="")}function $(i){return typeof i=="string"?!1:i.options?.length}const{id:me,icon:h,iconPosition:M,modifiers:H,disabled:A,required:re,readonly:be,loading:ge,valid:oe,invalid:le,floating:ae}=(0,e.toRefs)(r),K=Ie(me),ce=(0,e.computed)(()=>`${K.value}-hint`),z=(0,e.computed)(()=>`${K.value}-dropdown`),q=(0,e.computed)(()=>`${K.value}-search`),g=(0,e.computed)(()=>`${K.value}-label`),_=(0,e.computed)(()=>r.disabled||r.readonly),x=(0,e.computed)(()=>_.value?-1:r.tabindex),N=(0,e.computed)({get:()=>Array.isArray(r.modelValue)?r.modelValue:r.modelValue!==void 0&&r.modelValue!==null?[r.modelValue]:[],set:i=>{l("update:modelValue",r.multiple||Array.isArray(r.modelValue)?i:i.pop())}}),Z=(0,e.computed)(()=>N.value.length),ue=(0,e.computed)(()=>Z.value>0),s=(0,e.computed)(()=>r.multiple?r.maxValues===void 0?1/0:Number(r.maxValues):1),k=(0,e.computed)(()=>_.value||!r.unselectable?!1:Number(r.minValues)===0||Z.value>Number(r.minValues)),ne=(0,e.computed)(()=>_.value?!1:r.multiple?Z.value<s.value:!0),Ce=(0,e.ref)(!1),Pt=(0,e.computed)(()=>Ce.value||ge.value),{hasIconBefore:Ue,hasIconAfter:Je}=De(h,M),so=de("vv-select",H,(0,e.computed)(()=>({disabled:A.value,required:re.value,loading:Pt.value,readonly:be.value,"icon-before":Ue.value!==void 0,"icon-after":Je.value!==void 0,valid:oe.value,invalid:le.value,dirty:ue.value,focus:(P.value||D.value||V.value)&&!_.value,floating:ae.value,badges:r.badges}))),Ae=(0,e.ref)(new Set),{getOptionLabel:G,getOptionValue:Ye,getOptionGrouped:he,isOptionDisabled:co}=Vt(r),wt=(0,e.computed)(()=>{const i=[...Ae.value];for(const p of r.options)$(p)?i.push(...he(p)):i.push(p);return i}),ye=(0,e.computed)(()=>{const i=[...r.options,...Ae.value];for(const p of N.value)wt.value.some(u=>{const C=Ye(u);return typeof C=="object"&&typeof p=="object"?JSON.stringify(C)===JSON.stringify(p):C===p})||i.push(p);return i});(0,e.watch)(Ae,i=>{i.size>0&&l("update:options",ye.value)});function xe(i){return co(i)||!ne.value&&!fe(i)}const Oe=(0,L.computedAsync)(async()=>{if(a.value.searchFunction){Ce.value=!0;const p=await Promise.resolve(a.value.searchFunction(v.value,ye.value));return Ce.value=!1,p}const i=v.value.toLowerCase().trim();return i?ye.value?.reduce((p,u)=>{if($(u)){const C=G(u).toLowerCase(),T=he(u).filter(Se=>G(Se).toLowerCase().includes(i));if(C.includes(i))p.push(u);else if(T.length>0){const Se=typeof u=="object"?{...u,options:T}:u;p.push(Se)}return p}return G(u).toLowerCase().includes(i)&&p.push(u),p},[]):ye.value});function fe(i){const p=Ye(i);return typeof p=="object"?N.value.some(u=>typeof u=="object"?JSON.stringify(u)===JSON.stringify(p):!1):N.value.includes(p)}const ve=(0,e.computed)(()=>ye.value.reduce((i,p)=>$(p)?[...i,...he(p)]:[...i,p],[]).filter(i=>fe(i))),Ct=(0,e.computed)(()=>ve.value.map(i=>G(i)).join(r.separator));function uo(){r.autoOpen?R():Q()}function ee(i){const p=fe(i),u=Ye(i);p&&k.value?N.value=N.value.filter(C=>typeof u=="object"&&typeof C=="object"?JSON.stringify(C)!==JSON.stringify(u):C!==u):!p&&ne.value&&(r.multiple?N.value=[...N.value,u]:N.value=[u]),!r.multiple&&!r.keepOpen&&te()}function fo(){N.value=[],l("update:search",""),l("clear")}(0,e.watch)(ye,i=>{if(i?.length&&r.autoselectFirst&&!ue.value){const p=i.find(C=>!$(C));if(p){ee(p);return}const u=i.find(C=>$(C));if(u){const C=he(u);C.length&&ee(C[0])}}},{immediate:!0});const po=(0,e.computed)(()=>({id:K.value,name:r.name,tabindex:x.value,valid:oe.value,validLabel:a.value.validLabel,invalid:le.value,invalidLabel:a.value.invalidLabel,hintLabel:a.value.hintLabel,loading:Pt.value,loadingLabel:a.value.loadingLabel,disabled:A.value,readonly:be.value,modifiers:a.value.modifiers,options:a.value.options,labelKey:a.value.labelKey,valueKey:a.value.valueKey,icon:a.value.icon,iconPosition:a.value.iconPosition,floating:a.value.floating,unselectable:k.value,autoselectFirst:a.value.autoselectFirst,multiple:a.value.multiple,label:a.value.label,placeholder:a.value.placeholder,modelValue:r.modelValue})),mo=(0,e.computed)(()=>({id:z.value,reference:y.value,placement:a.value.placement,strategy:a.value.strategy,transitionName:a.value.transitionName,offset:a.value.offset,shift:a.value.shift,flip:a.value.flip,autoPlacement:a.value.autoPlacement,arrow:a.value.arrow,autofocusFirst:a.value.searchable?!0:a.value.autofocusFirst,triggerWidth:a.value.triggerWidth,modifiers:a.value.dropdownModifiers})),Ot=(0,e.computed)(()=>({valid:r.valid,invalid:r.invalid,modelValue:r.modelValue}));(0,L.onKeyStroke)([" ","Enter"],i=>{r.autoOpen||!V.value&&P.value&&(i.preventDefault(),i.stopImmediatePropagation(),Q())},{target:b});function bo(){if(Oe.value?.length){if(Oe.value.length===1){const i=Oe.value[0];if($(i)){const p=he(i);p.length&&ee(p[0]);return}ee(i);return}d.value?.focusFirstListElement();return}if(a.value.addable){const i=I.value.trim();if(!i||wt.value.some(p=>G(p).toLowerCase()===i.toLowerCase()))return;Ae.value.add(i),ee(i)}}return(i,p)=>i.native?((0,e.openBlock)(),(0,e.createBlock)(Jr,(0,e.mergeProps)({key:1},(0,e.unref)(po),{"onUpdate:modelValue":p[3]||(p[3]=u=>l("update:modelValue",u))}),null,16)):((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,id:(0,e.unref)(K),class:(0,e.normalizeClass)((0,e.unref)(so))},[i.label?((0,e.openBlock)(),(0,e.createElementBlock)("label",{key:0,id:(0,e.unref)(g),for:(0,e.unref)(a).searchable?(0,e.unref)(q):void 0},(0,e.toDisplayString)(i.label),9,Qr)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",{ref_key:"wrapperEl",ref:y,class:"vv-select__wrapper"},[(0,e.createVNode)(ht,(0,e.mergeProps)({ref_key:"dropdownEl",ref:d,modelValue:(0,e.unref)(V),"onUpdate:modelValue":p[2]||(p[2]=u=>(0,e.isRef)(V)?V.value=u:null)},(0,e.unref)(mo),{role:(0,e.unref)(Ee).listbox,onAfterExpand:X,onAfterCollapse:B}),(0,e.createSlots)({default:(0,e.withCtx)(({aria:u})=>[i.$slots.before?((0,e.openBlock)(),(0,e.createElementBlock)("div",Zr,[(0,e.renderSlot)(i.$slots,"before",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(Ot))))])):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",eo,[(0,e.unref)(Ue)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:0},(0,e.unref)(Ue),{class:"vv-select__icon"}),null,16)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",(0,e.mergeProps)({ref_key:"inputEl",ref:b},u,{class:"vv-select__input",role:"combobox","aria-controls":(0,e.unref)(z),"aria-expanded":(0,e.unref)(V),"aria-labelledby":(0,e.unref)(g),"aria-describedby":(0,e.unref)(f)?(0,e.unref)(ce):void 0,"aria-errormessage":(0,e.unref)(m)?(0,e.unref)(ce):void 0,tabindex:(0,e.unref)(x),onClickPassive:uo}),[(0,e.unref)(Ct)?(0,e.renderSlot)(i.$slots,"value",(0,e.normalizeProps)((0,e.mergeProps)({key:0},{selectedOptions:(0,e.unref)(ve),onInput:ee})),()=>[i.badges?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:1},(0,e.renderList)((0,e.unref)(ve),(C,T)=>((0,e.openBlock)(),(0,e.createBlock)(rr,{key:T,modifiers:i.badgeModifiers,class:"vv-select__badge"},{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(C))+" ",1),(0,e.unref)(k)?((0,e.openBlock)(),(0,e.createElementBlock)("button",{key:0,"aria-label":(0,e.unref)(a).deselectActionLabel,type:"button",onClick:(0,e.withModifiers)(Se=>ee(C),["stop"])},[(0,e.createVNode)(Y,{name:"close"})],8,oo)):(0,e.createCommentVNode)("v-if",!0)]),_:2},1032,["modifiers"]))),128)):((0,e.openBlock)(),(0,e.createElementBlock)("div",ro,(0,e.toDisplayString)((0,e.unref)(Ct)),1))]):(0,e.renderSlot)(i.$slots,"placeholder",{key:1},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(i.placeholder),1)])],16,to),(0,e.unref)(Je)?((0,e.openBlock)(),(0,e.createBlock)(Y,(0,e.mergeProps)({key:1},(0,e.unref)(Je),{class:"vv-select__icon vv-select__icon-after"}),null,16)):(0,e.createCommentVNode)("v-if",!0)]),(0,e.unref)(k)&&(0,e.unref)(a).showClearAction?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(bt),{key:1,"input-type":"select",label:i.labelClear,icon:i.iconClear,disabled:!(0,e.unref)(ue),onClear:fo},null,8,["label","icon","disabled"])):(0,e.createCommentVNode)("v-if",!0),i.$slots.after?((0,e.openBlock)(),(0,e.createElementBlock)("div",lo,[(0,e.renderSlot)(i.$slots,"after",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(Ot))))])):(0,e.createCommentVNode)("v-if",!0)]),items:(0,e.withCtx)(()=>[!(0,e.unref)(A)&&(0,e.unref)(Oe)?.length?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:0},(0,e.renderList)((0,e.unref)(Oe),(u,C)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:C},[$(u)?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createVNode)(yt,{label:(0,e.unref)(G)(u)},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"option-group",(0,e.mergeProps)({ref_for:!0},{option:u,selectedOptions:(0,e.unref)(ve)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(u)),1)])]),_:2},1032,["label"]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(he)(u),(T,Se)=>((0,e.openBlock)(),(0,e.createBlock)(we,(0,e.mergeProps)({ref_for:!0},{selected:fe(T),disabled:xe(T),unselectable:(0,e.unref)(k),deselectHintLabel:(0,e.unref)(a).deselectHintLabel,selectHintLabel:(0,e.unref)(a).selectHintLabel,selectedHintLabel:(0,e.unref)(a).selectedHintLabel,focusOnHover:i.focusOnHover},{key:Se,class:"vv-dropdown-option",onClickPassive:So=>ee(T)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"option",(0,e.mergeProps)({ref_for:!0},{option:T,selectedOptions:(0,e.unref)(ve),selected:fe(T),disabled:xe(T)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(T)),1)])]),_:2},1040,["onClickPassive"]))),128))],64)):((0,e.openBlock)(),(0,e.createBlock)(we,(0,e.mergeProps)({key:1,ref_for:!0},{selected:fe(u),disabled:xe(u),unselectable:(0,e.unref)(k),deselectHintLabel:(0,e.unref)(a).deselectHintLabel,selectHintLabel:(0,e.unref)(a).selectHintLabel,selectedHintLabel:(0,e.unref)(a).selectedHintLabel,focusOnHover:i.focusOnHover},{class:"vv-dropdown-option",onClickPassive:T=>ee(u)}),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"option",(0,e.mergeProps)({ref_for:!0},{option:u,selectedOptions:(0,e.unref)(ve),selected:fe(u),disabled:xe(u)}),()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(G)(u)),1)])]),_:2},1040,["onClickPassive"]))],64))),128)):i.options.length?((0,e.openBlock)(),(0,e.createBlock)(we,{key:2,modifiers:"inert"},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"no-results",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(a).addable?(0,e.unref)(a).addOptionHintLabel:(0,e.unref)(a).noResultsLabel),1)])]),_:3})):((0,e.openBlock)(),(0,e.createBlock)(we,{key:1,modifiers:"inert"},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"no-options",{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(a).addable&&I.value.length?(0,e.unref)(a).addOptionHintLabel:(0,e.unref)(a).noOptionsLabel),1)])]),_:3}))]),after:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"dropdown::after",{},()=>[(0,e.unref)(d)?.customPosition?((0,e.openBlock)(),(0,e.createBlock)(gt,{key:0,label:(0,e.unref)(a).closeLabel,modifiers:"secondary",onClick:p[1]||(p[1]=u=>(0,e.unref)(d).hide())},null,8,["label"])):(0,e.createCommentVNode)("v-if",!0)])]),_:2},[(0,e.unref)(a).searchable||i.$slots["dropdown::before"]?{name:"before",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"dropdown::before"),(0,e.unref)(a).searchable&&!(0,e.unref)(A)?(0,e.withDirectives)(((0,e.openBlock)(),(0,e.createElementBlock)("input",{key:0,id:(0,e.unref)(q),ref_key:"inputSearchEl",ref:c,"onUpdate:modelValue":p[0]||(p[0]=u=>I.value=u),"aria-autocomplete":"list","aria-controls":(0,e.unref)(z),autocomplete:"off",spellcheck:"false",type:"search",class:"vv-dropdown__search",placeholder:(0,e.unref)(a).searchPlaceholder,onKeyup:(0,e.withKeys)(bo,["enter"])},null,40,Xr)),[[e.vModelText,I.value]]):(0,e.createCommentVNode)("v-if",!0)]),key:"0"}:void 0]),1040,["modelValue","role"])],512),(0,e.createVNode)((0,e.unref)(S),{id:(0,e.unref)(ce),class:"vv-select__hint"},(0,e.createSlots)({_:2},[i.$slots.hint?{name:"hint",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"hint",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"0"}:void 0,i.$slots.loading?{name:"loading",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"loading",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"1"}:void 0,i.$slots.valid?{name:"valid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"valid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"2"}:void 0,i.$slots.invalid?{name:"invalid",fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(i.$slots,"invalid",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(w))))]),key:"3"}:void 0]),1032,["id"])],10,Yr))}}),io=no;return io});
@@ -0,0 +1,346 @@
1
+ import type { Option } from '../../types/generic';
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
4
+ declare const __VLS_export: <T extends string | Option>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
5
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
6
+ search?: string;
7
+ } & import("vue").ExtractPublicPropTypes<{
8
+ options: {
9
+ type: globalThis.PropType<T[]>;
10
+ default: () => never[];
11
+ };
12
+ searchFunction: {
13
+ type: globalThis.PropType<(search: string, options: T[]) => T[] | Promise<T[]>>;
14
+ default: undefined;
15
+ };
16
+ transitionName: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ modelValue: {
21
+ type: (NumberConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | StringConstructor)[];
22
+ default: undefined;
23
+ };
24
+ noResultsLabel: {
25
+ type: StringConstructor;
26
+ default: string;
27
+ };
28
+ noOptionsLabel: {
29
+ type: StringConstructor;
30
+ default: string;
31
+ };
32
+ selectedOptionNotFoundLabel: {
33
+ type: StringConstructor;
34
+ default: string;
35
+ };
36
+ selectedHintLabel: {
37
+ type: StringConstructor;
38
+ default: string;
39
+ };
40
+ deselectActionLabel: {
41
+ type: StringConstructor;
42
+ default: string;
43
+ };
44
+ selectHintLabel: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ };
48
+ deselectHintLabel: {
49
+ type: StringConstructor;
50
+ default: string;
51
+ };
52
+ addOptionHintLabel: {
53
+ type: StringConstructor;
54
+ default: string;
55
+ };
56
+ closeLabel: {
57
+ type: StringConstructor;
58
+ default: string;
59
+ };
60
+ placeholder: StringConstructor;
61
+ addable: BooleanConstructor;
62
+ searchable: BooleanConstructor;
63
+ keepSearch: BooleanConstructor;
64
+ searchPlaceholder: {
65
+ type: StringConstructor;
66
+ default: string;
67
+ };
68
+ debounceSearch: {
69
+ type: (NumberConstructor | StringConstructor)[];
70
+ default: number;
71
+ };
72
+ multiple: BooleanConstructor;
73
+ minValues: {
74
+ type: (NumberConstructor | StringConstructor)[];
75
+ default: number;
76
+ };
77
+ maxValues: (NumberConstructor | StringConstructor)[];
78
+ unselectable: {
79
+ type: BooleanConstructor;
80
+ default: boolean;
81
+ };
82
+ separator: {
83
+ type: StringConstructor;
84
+ default: string;
85
+ };
86
+ native: BooleanConstructor;
87
+ badges: BooleanConstructor;
88
+ badgeModifiers: {
89
+ type: PropType<string | string[]>;
90
+ default: string;
91
+ };
92
+ triggerWidth: {
93
+ default: boolean;
94
+ type: BooleanConstructor;
95
+ };
96
+ dropdownModifiers: {
97
+ type: PropType<string | string[]>;
98
+ default: string;
99
+ };
100
+ autoOpen: {
101
+ type: BooleanConstructor;
102
+ default: boolean;
103
+ };
104
+ autoselectFirst: {
105
+ type: BooleanConstructor;
106
+ default: boolean;
107
+ };
108
+ keepOpen: {
109
+ type: BooleanConstructor;
110
+ default: boolean;
111
+ };
112
+ focusOnHover: {
113
+ type: BooleanConstructor;
114
+ default: boolean;
115
+ };
116
+ showClearAction: {
117
+ type: BooleanConstructor;
118
+ default: boolean;
119
+ };
120
+ iconClear: {
121
+ type: PropType<string | import("../VvIcon").VvIconProps>;
122
+ default: "close";
123
+ };
124
+ labelClear: {
125
+ type: StringConstructor;
126
+ default: string;
127
+ };
128
+ required: {
129
+ type: BooleanConstructor;
130
+ default: boolean;
131
+ };
132
+ label: {
133
+ type: (NumberConstructor | StringConstructor)[];
134
+ default: undefined;
135
+ };
136
+ placement: {
137
+ type: PropType<`${import("../../constants").Side}` | `${import("../../constants").Placement}`>;
138
+ default: import("../../constants").Side;
139
+ validator: (value: import("../../constants").Side & import("../../constants").Placement) => boolean;
140
+ };
141
+ strategy: {
142
+ type: PropType<`${import("../../constants").Strategy}`>;
143
+ default: undefined;
144
+ validator: (value: import("../../constants").Strategy) => boolean;
145
+ };
146
+ offset: {
147
+ type: PropType<import("../..").OffsetOptions | number | string>;
148
+ default: number;
149
+ };
150
+ shift: {
151
+ type: PropType<import("../..").ShiftOptions | boolean>;
152
+ default: boolean;
153
+ };
154
+ flip: {
155
+ type: PropType<import("../..").FlipOptions | boolean>;
156
+ default: boolean;
157
+ };
158
+ size: {
159
+ type: PropType<import("../..").SizeOptions | boolean>;
160
+ default: () => {
161
+ padding: number;
162
+ };
163
+ };
164
+ autoPlacement: {
165
+ type: PropType<import("../..").AutoPlacementOptions | boolean>;
166
+ default: boolean;
167
+ };
168
+ arrow: {
169
+ type: BooleanConstructor;
170
+ default: boolean;
171
+ };
172
+ autofocusFirst: {
173
+ type: BooleanConstructor;
174
+ default: boolean;
175
+ };
176
+ floating: {
177
+ type: BooleanConstructor;
178
+ default: boolean;
179
+ };
180
+ icon: {
181
+ type: PropType<string | import("../VvIcon").VvIconProps>;
182
+ default: undefined;
183
+ };
184
+ iconPosition: {
185
+ type: PropType<`${import("../../constants").Position}`>;
186
+ default: import("../../constants").Position;
187
+ validation: (value: import("../../constants").Position) => boolean;
188
+ };
189
+ labelKey: {
190
+ type: (StringConstructor | FunctionConstructor)[];
191
+ default: string;
192
+ };
193
+ valueKey: {
194
+ type: (StringConstructor | FunctionConstructor)[];
195
+ default: string;
196
+ };
197
+ disabledKey: {
198
+ type: (StringConstructor | FunctionConstructor)[];
199
+ default: string;
200
+ };
201
+ modifiers: {
202
+ type: PropType<string | string[]>;
203
+ default: undefined;
204
+ };
205
+ readonly: {
206
+ type: BooleanConstructor;
207
+ default: boolean;
208
+ };
209
+ disabled: {
210
+ type: BooleanConstructor;
211
+ default: boolean;
212
+ };
213
+ loading: {
214
+ type: BooleanConstructor;
215
+ default: boolean;
216
+ };
217
+ loadingLabel: {
218
+ type: StringConstructor;
219
+ default: string;
220
+ };
221
+ hintLabel: {
222
+ type: StringConstructor;
223
+ default: string;
224
+ };
225
+ invalid: {
226
+ type: BooleanConstructor;
227
+ default: boolean;
228
+ };
229
+ invalidLabel: {
230
+ type: (ArrayConstructor | StringConstructor)[];
231
+ default: undefined;
232
+ };
233
+ valid: {
234
+ type: BooleanConstructor;
235
+ default: boolean;
236
+ };
237
+ validLabel: {
238
+ type: (ArrayConstructor | StringConstructor)[];
239
+ default: undefined;
240
+ };
241
+ tabindex: {
242
+ type: (NumberConstructor | StringConstructor)[];
243
+ default: number;
244
+ };
245
+ name: {
246
+ type: StringConstructor;
247
+ required: boolean;
248
+ };
249
+ id: (NumberConstructor | StringConstructor)[];
250
+ }> & {
251
+ onClear?: (() => any) | undefined;
252
+ "onUpdate:modelValue"?: ((args_0: any) => any) | undefined;
253
+ onBlur?: ((args_0: import("@vueuse/core").MaybeElement) => any) | undefined;
254
+ onFocus?: ((args_0: import("@vueuse/core").MaybeElement) => any) | undefined;
255
+ "onUpdate:search"?: ((args_0: string) => any) | undefined;
256
+ "onUpdate:options"?: ((args_0: (string | Option)[]) => any) | undefined;
257
+ "onChange:search"?: ((args_0: string) => any) | undefined;
258
+ }> & (typeof globalThis extends {
259
+ __VLS_PROPS_FALLBACK: infer P;
260
+ } ? P : {});
261
+ expose: (exposed: {}) => void;
262
+ attrs: any;
263
+ slots: {
264
+ 'dropdown::before'?: (props: {}) => any;
265
+ } & {
266
+ before?: (props: {
267
+ valid: boolean;
268
+ invalid: boolean;
269
+ modelValue: string | number | boolean | unknown[] | Record<string, any> | undefined;
270
+ }) => any;
271
+ } & {
272
+ value?: (props: {
273
+ selectedOptions: T[];
274
+ onInput: (option: string | Option) => void;
275
+ }) => any;
276
+ } & {
277
+ placeholder?: (props: {}) => any;
278
+ } & {
279
+ after?: (props: {
280
+ valid: boolean;
281
+ invalid: boolean;
282
+ modelValue: string | number | boolean | unknown[] | Record<string, any> | undefined;
283
+ }) => any;
284
+ } & {
285
+ 'option-group'?: (props: {
286
+ option: T;
287
+ selectedOptions: T[];
288
+ }) => any;
289
+ } & {
290
+ option?: (props: {
291
+ option: T;
292
+ selectedOptions: T[];
293
+ selected: boolean;
294
+ disabled: boolean;
295
+ }) => any;
296
+ } & {
297
+ option?: (props: {
298
+ option: T;
299
+ selectedOptions: T[];
300
+ selected: boolean;
301
+ disabled: boolean;
302
+ }) => any;
303
+ } & {
304
+ 'no-options'?: (props: {}) => any;
305
+ } & {
306
+ 'no-results'?: (props: {}) => any;
307
+ } & {
308
+ 'dropdown::after'?: (props: {}) => any;
309
+ } & {
310
+ hint?: (props: {
311
+ modelValue: unknown;
312
+ valid: boolean;
313
+ invalid: boolean;
314
+ loading: boolean;
315
+ }) => any;
316
+ } & {
317
+ loading?: (props: {
318
+ modelValue: unknown;
319
+ valid: boolean;
320
+ invalid: boolean;
321
+ loading: boolean;
322
+ }) => any;
323
+ } & {
324
+ valid?: (props: {
325
+ modelValue: unknown;
326
+ valid: boolean;
327
+ invalid: boolean;
328
+ loading: boolean;
329
+ }) => any;
330
+ } & {
331
+ invalid?: (props: {
332
+ modelValue: unknown;
333
+ valid: boolean;
334
+ invalid: boolean;
335
+ loading: boolean;
336
+ }) => any;
337
+ };
338
+ emit: (((evt: "clear") => void) & ((evt: "update:modelValue", args_0: any) => void) & ((evt: "blur", args_0: import("@vueuse/core").MaybeElement) => void) & ((evt: "focus", args_0: import("@vueuse/core").MaybeElement) => void) & ((evt: "update:search", args_0: string) => void) & ((evt: "update:options", args_0: (string | Option)[]) => void) & ((evt: "change:search", args_0: string) => void)) & ((event: "update:search", value: string) => void);
339
+ }>) => import("vue").VNode & {
340
+ __ctx?: Awaited<typeof __VLS_setup>;
341
+ };
342
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
343
+ [K in keyof T]: T[K];
344
+ } : {
345
+ [K in keyof T as K]: T[K];
346
+ }) & {};