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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (478) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +146 -49
  3. package/auto-imports.d.ts +7 -2
  4. package/bin/icons.cjs +1 -1
  5. package/bin/icons.js +27 -20
  6. package/dist/Volver.d.ts +11 -11
  7. package/dist/components/VvAccordion/VvAccordion.es.js +190 -101
  8. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  9. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +30 -8
  10. package/dist/components/VvAccordion/index.d.ts +8 -9
  11. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +450 -170
  12. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  13. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +58 -13
  14. package/dist/components/VvAccordionGroup/index.d.ts +14 -6
  15. package/dist/components/VvAction/VvAction.es.js +84 -33
  16. package/dist/components/VvAction/VvAction.umd.js +1 -1
  17. package/dist/components/VvAction/VvAction.vue.d.ts +57 -22
  18. package/dist/components/VvAction/index.d.ts +25 -9
  19. package/dist/components/VvAlert/VvAlert.es.js +228 -193
  20. package/dist/components/VvAlert/VvAlert.umd.js +1 -1
  21. package/dist/components/VvAlert/VvAlert.vue.d.ts +24 -14
  22. package/dist/components/VvAlert/index.d.ts +17 -9
  23. package/dist/components/VvAlertGroup/VvAlertGroup.es.js +549 -485
  24. package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
  25. package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +16 -9
  26. package/dist/components/VvAlertGroup/index.d.ts +7 -15
  27. package/dist/components/VvAvatar/VvAvatar.es.js +65 -22
  28. package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
  29. package/dist/components/VvAvatar/VvAvatar.vue.d.ts +12 -4
  30. package/dist/components/VvAvatar/index.d.ts +4 -1
  31. package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +128 -49
  32. package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
  33. package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +10 -3
  34. package/dist/components/VvAvatarGroup/index.d.ts +4 -1
  35. package/dist/components/VvBadge/VvBadge.es.js +77 -28
  36. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  37. package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -4
  38. package/dist/components/VvBadge/index.d.ts +4 -1
  39. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +276 -60
  40. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  41. package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +27 -7
  42. package/dist/components/VvBreadcrumb/index.d.ts +6 -10
  43. package/dist/components/VvButton/VvButton.es.js +307 -262
  44. package/dist/components/VvButton/VvButton.umd.js +1 -1
  45. package/dist/components/VvButton/VvButton.vue.d.ts +94 -40
  46. package/dist/components/VvButton/index.d.ts +51 -29
  47. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +95 -40
  48. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  49. package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +31 -11
  50. package/dist/components/VvButtonGroup/index.d.ts +11 -2
  51. package/dist/components/VvCard/VvCard.es.js +86 -36
  52. package/dist/components/VvCard/VvCard.umd.js +1 -1
  53. package/dist/components/VvCard/VvCard.vue.d.ts +12 -4
  54. package/dist/components/VvCard/index.d.ts +4 -1
  55. package/dist/components/VvCheckbox/VvCheckbox.es.js +315 -251
  56. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  57. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +106 -34
  58. package/dist/components/VvCheckbox/index.d.ts +47 -14
  59. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +226 -126
  60. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  61. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +101 -30
  62. package/dist/components/VvCheckboxGroup/index.d.ts +45 -12
  63. package/dist/components/VvCombobox/VvCombobox.es.js +1215 -955
  64. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  65. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +600 -680
  66. package/dist/components/VvCombobox/index.d.ts +454 -24
  67. package/dist/components/VvDialog/VvDialog.es.js +180 -176
  68. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  69. package/dist/components/VvDialog/VvDialog.vue.d.ts +13 -4
  70. package/dist/components/VvDialog/index.d.ts +5 -0
  71. package/dist/components/VvDropdown/VvDropdown.es.js +165 -94
  72. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  73. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +111 -81
  74. package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +66 -25
  75. package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +13 -1
  76. package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +12 -4
  77. package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +35 -7
  78. package/dist/components/VvDropdown/index.d.ts +52 -10
  79. package/dist/components/VvDropdownAction/VvDropdownAction.es.js +163 -53
  80. package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
  81. package/dist/components/VvDropdownItem/VvDropdownItem.es.js +335 -8
  82. package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
  83. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +63 -20
  84. package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
  85. package/dist/components/VvDropdownOption/VvDropdownOption.es.js +188 -80
  86. package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
  87. package/dist/components/VvIcon/VvIcon.es.js +24 -97
  88. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  89. package/dist/components/VvIcon/VvIcon.vue.d.ts +23 -66
  90. package/dist/components/VvIcon/index.d.ts +33 -48
  91. package/dist/components/VvInputFile/VvInputFile.es.js +1789 -0
  92. package/dist/components/VvInputFile/VvInputFile.umd.js +1 -0
  93. package/dist/components/VvInputFile/VvInputFile.vue.d.ts +391 -0
  94. package/dist/components/VvInputFile/index.d.ts +210 -0
  95. package/dist/components/VvInputText/VvInputClearAction.d.ts +7 -5
  96. package/dist/components/VvInputText/VvInputPasswordAction.d.ts +10 -8
  97. package/dist/components/VvInputText/VvInputStepAction.d.ts +2 -2
  98. package/dist/components/VvInputText/VvInputText.es.js +1489 -563
  99. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  100. package/dist/components/VvInputText/VvInputText.vue.d.ts +207 -57
  101. package/dist/components/VvInputText/index.d.ts +105 -30
  102. package/dist/components/VvNav/VvNav.es.js +160 -75
  103. package/dist/components/VvNav/VvNav.umd.js +1 -1
  104. package/dist/components/VvNav/VvNav.vue.d.ts +32 -9
  105. package/dist/components/VvNav/VvNavItem.vue.d.ts +1 -1
  106. package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
  107. package/dist/components/VvNav/index.d.ts +5 -2
  108. package/dist/components/VvNavItem/VvNavItem.es.js +100 -39
  109. package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
  110. package/dist/components/VvProgress/VvProgress.es.js +73 -27
  111. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  112. package/dist/components/VvProgress/VvProgress.vue.d.ts +10 -3
  113. package/dist/components/VvProgress/index.d.ts +4 -1
  114. package/dist/components/VvRadio/VvRadio.es.js +313 -250
  115. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  116. package/dist/components/VvRadio/VvRadio.vue.d.ts +103 -31
  117. package/dist/components/VvRadio/index.d.ts +50 -17
  118. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +224 -125
  119. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  120. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +101 -30
  121. package/dist/components/VvRadioGroup/index.d.ts +45 -12
  122. package/dist/components/VvSelect/VvSelect.es.js +301 -267
  123. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  124. package/dist/components/VvSelect/VvSelect.vue.d.ts +229 -203
  125. package/dist/components/VvSelect/index.d.ts +181 -15
  126. package/dist/components/VvTab/VvTab.es.js +222 -97
  127. package/dist/components/VvTab/VvTab.umd.js +1 -1
  128. package/dist/components/VvTab/VvTab.vue.d.ts +31 -7
  129. package/dist/components/VvTab/index.d.ts +4 -1
  130. package/dist/components/VvTextarea/VvTextarea.es.js +258 -248
  131. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  132. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +156 -49
  133. package/dist/components/VvTextarea/index.d.ts +68 -19
  134. package/dist/components/VvTooltip/VvTooltip.es.js +83 -30
  135. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
  136. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +13 -6
  137. package/dist/components/VvTooltip/index.d.ts +5 -2
  138. package/dist/components/common/HintSlot.d.ts +4 -5
  139. package/dist/components/index.d.ts +10 -0
  140. package/dist/components/index.es.js +4241 -2261
  141. package/dist/components/index.umd.js +1 -1
  142. package/dist/composables/alert/useAlert.d.ts +101 -6
  143. package/dist/composables/alert/useInjectAlert.d.ts +1 -6
  144. package/dist/composables/dropdown/useInjectDropdown.d.ts +3 -23
  145. package/dist/composables/dropdown/useProvideDropdown.d.ts +3 -4
  146. package/dist/composables/group/useInjectedGroupState.d.ts +4 -5
  147. package/dist/composables/group/useProvideGroupState.d.ts +3 -3
  148. package/dist/composables/index.d.ts +1 -0
  149. package/dist/composables/index.es.js +94 -5
  150. package/dist/composables/index.umd.js +1 -1
  151. package/dist/composables/useBlurhash.d.ts +7 -0
  152. package/dist/composables/useComponentFocus.d.ts +1 -1
  153. package/dist/composables/useComponentIcon.d.ts +9 -8
  154. package/dist/composables/useOptions.d.ts +4 -4
  155. package/dist/composables/usePersistence.d.ts +3 -0
  156. package/dist/composables/useUniqueId.d.ts +1 -1
  157. package/dist/composables/useVolver.d.ts +1 -1
  158. package/dist/constants.d.ts +34 -32
  159. package/dist/directives/index.d.ts +3 -5
  160. package/dist/directives/index.es.js +104 -45
  161. package/dist/directives/index.umd.js +1 -1
  162. package/dist/directives/v-contextmenu.es.js +1 -1
  163. package/dist/directives/v-contextmenu.umd.js +1 -1
  164. package/dist/directives/v-tooltip.es.js +101 -39
  165. package/dist/directives/v-tooltip.umd.js +1 -1
  166. package/dist/icons.es.js +267 -267
  167. package/dist/icons.umd.js +1 -1
  168. package/dist/index.d.ts +3 -1
  169. package/dist/index.es.js +92 -18
  170. package/dist/index.umd.js +1 -1
  171. package/dist/props/index.d.ts +272 -81
  172. package/dist/resolvers/unplugin.d.ts +6 -1
  173. package/dist/resolvers/unplugin.es.js +87 -10
  174. package/dist/resolvers/unplugin.umd.js +1 -1
  175. package/dist/stories/Accordion/Accordion.settings.d.ts +2 -57
  176. package/dist/stories/AccordionGroup/AccordionGroup.settings.d.ts +2 -66
  177. package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +2 -127
  178. package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +1437 -495
  179. package/dist/stories/Alert/Alert.settings.d.ts +2 -109
  180. package/dist/stories/Alert/AlertModifiers.stories.d.ts +1 -1
  181. package/dist/stories/Alert/AlertSlots.stories.d.ts +1 -1
  182. package/dist/stories/AlertGroup/AlertGroup.settings.d.ts +2 -85
  183. package/dist/stories/AlertGroup/AlertGroupPosition.stories.d.ts +1 -1
  184. package/dist/stories/AlertGroup/AlertGroupSlots.stories.d.ts +1 -1
  185. package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +2 -2
  186. package/dist/stories/AvatarGroup/AvatarGroup.settings.d.ts +2 -38
  187. package/dist/stories/Badge/Badge.settings.d.ts +2 -26
  188. package/dist/stories/Badge/Badge.test.d.ts +1 -1
  189. package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
  190. package/dist/stories/Breadcrumb/Breadcrumb.settings.d.ts +2 -18
  191. package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +1 -1
  192. package/dist/stories/Button/Button.settings.d.ts +2 -194
  193. package/dist/stories/ButtonGroup/ButtonGroup.settings.d.ts +2 -40
  194. package/dist/stories/Card/Card.settings.d.ts +2 -63
  195. package/dist/stories/Checkbox/Checkbox.settings.d.ts +2 -132
  196. package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +1 -141
  197. package/dist/stories/Combobox/Combobox.settings.d.ts +2 -609
  198. package/dist/stories/Dialog/Dialog.settings.d.ts +2 -47
  199. package/dist/stories/Dialog/DialogModifiers.stories.d.ts +8 -0
  200. package/dist/stories/Dropdown/Dropdown.settings.d.ts +2 -205
  201. package/dist/stories/Icon/Icon.settings.d.ts +3 -68
  202. package/dist/stories/InputFile/InputFile.settings.d.ts +6 -0
  203. package/dist/stories/InputFile/InputFile.stories.d.ts +12 -0
  204. package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
  205. package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
  206. package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
  207. package/dist/stories/InputText/InputText.settings.d.ts +2 -438
  208. package/dist/stories/Nav/Nav.settings.d.ts +2 -10
  209. package/dist/stories/Progress/Progress.settings.d.ts +2 -27
  210. package/dist/stories/Radio/Radio.settings.d.ts +1 -110
  211. package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +1 -141
  212. package/dist/stories/Select/Select.settings.d.ts +2 -246
  213. package/dist/stories/Tab/Tab.settings.d.ts +2 -15
  214. package/dist/stories/Textarea/Textarea.settings.d.ts +2 -287
  215. package/dist/stories/argTypes.d.ts +27 -866
  216. package/dist/test/expect.d.ts +1 -1
  217. package/dist/test/options.d.ts +1 -1
  218. package/dist/test/sleep.d.ts +1 -1
  219. package/dist/types/alert.d.ts +9 -7
  220. package/dist/types/blurhash.d.ts +12 -0
  221. package/dist/types/generic.d.ts +1 -2
  222. package/dist/types/group.d.ts +37 -15
  223. package/dist/types/index.d.ts +7 -0
  224. package/dist/types/input-file.d.ts +16 -0
  225. package/dist/types/nav.d.ts +2 -2
  226. package/dist/utils/ObjectUtilities.d.ts +7 -8
  227. package/dist/workers/blurhash.d.ts +1 -0
  228. package/package.json +239 -246
  229. package/src/Volver.ts +245 -234
  230. package/src/assets/icons/detailed.json +1 -1
  231. package/src/assets/icons/normal.json +1 -1
  232. package/src/assets/icons/simple.json +1 -1
  233. package/src/components/VvAccordion/VvAccordion.vue +163 -100
  234. package/src/components/VvAccordion/index.ts +64 -79
  235. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +223 -105
  236. package/src/components/VvAccordionGroup/index.ts +42 -42
  237. package/src/components/VvAction/VvAction.vue +144 -130
  238. package/src/components/VvAlert/VvAlert.vue +72 -70
  239. package/src/components/VvAlert/index.ts +149 -147
  240. package/src/components/VvAlertGroup/VvAlertGroup.vue +57 -56
  241. package/src/components/VvAlertGroup/index.ts +101 -117
  242. package/src/components/VvAvatar/VvAvatar.vue +20 -14
  243. package/src/components/VvAvatar/index.ts +5 -5
  244. package/src/components/VvAvatarGroup/VvAvatarGroup.vue +58 -53
  245. package/src/components/VvAvatarGroup/index.ts +21 -21
  246. package/src/components/VvBadge/VvBadge.vue +15 -14
  247. package/src/components/VvBadge/index.ts +2 -2
  248. package/src/components/VvBreadcrumb/VvBreadcrumb.vue +50 -48
  249. package/src/components/VvBreadcrumb/index.ts +3 -9
  250. package/src/components/VvButton/VvButton.vue +163 -152
  251. package/src/components/VvButton/index.ts +103 -110
  252. package/src/components/VvButtonGroup/VvButtonGroup.vue +72 -64
  253. package/src/components/VvButtonGroup/index.ts +22 -21
  254. package/src/components/VvCard/VvCard.vue +30 -30
  255. package/src/components/VvCard/index.ts +2 -2
  256. package/src/components/VvCheckbox/VvCheckbox.vue +185 -183
  257. package/src/components/VvCheckbox/index.ts +44 -44
  258. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +88 -87
  259. package/src/components/VvCombobox/VvCombobox.vue +631 -619
  260. package/src/components/VvCombobox/index.ts +189 -164
  261. package/src/components/VvDialog/VvDialog.vue +141 -129
  262. package/src/components/VvDialog/index.ts +38 -36
  263. package/src/components/VvDropdown/VvDropdown.vue +466 -445
  264. package/src/components/VvDropdown/VvDropdownAction.vue +37 -39
  265. package/src/components/VvDropdown/VvDropdownItem.vue +30 -26
  266. package/src/components/VvDropdown/VvDropdownOptgroup.vue +13 -12
  267. package/src/components/VvDropdown/VvDropdownOption.vue +47 -64
  268. package/src/components/VvDropdown/index.ts +61 -27
  269. package/src/components/VvIcon/README.md +1 -1
  270. package/src/components/VvIcon/VvIcon.vue +133 -133
  271. package/src/components/VvIcon/index.ts +84 -97
  272. package/src/components/VvInputFile/VvInputFile.vue +402 -0
  273. package/src/components/VvInputFile/index.ts +141 -0
  274. package/src/components/VvInputText/VvInputClearAction.ts +51 -47
  275. package/src/components/VvInputText/VvInputPasswordAction.ts +66 -62
  276. package/src/components/VvInputText/VvInputStepAction.ts +43 -43
  277. package/src/components/VvInputText/VvInputText.vue +638 -516
  278. package/src/components/VvInputText/VvInputTextActions.ts +86 -86
  279. package/src/components/VvInputText/index.ts +200 -185
  280. package/src/components/VvNav/VvNav.vue +40 -36
  281. package/src/components/VvNav/VvNavItem.vue +12 -12
  282. package/src/components/VvNav/VvNavSeparator.vue +6 -6
  283. package/src/components/VvNav/index.ts +2 -2
  284. package/src/components/VvProgress/VvProgress.vue +27 -27
  285. package/src/components/VvProgress/index.ts +28 -28
  286. package/src/components/VvRadio/VvRadio.vue +115 -112
  287. package/src/components/VvRadio/index.ts +28 -28
  288. package/src/components/VvRadioGroup/VvRadioGroup.vue +91 -90
  289. package/src/components/VvSelect/VvSelect.vue +242 -241
  290. package/src/components/VvSelect/index.ts +81 -63
  291. package/src/components/VvTab/VvTab.vue +79 -69
  292. package/src/components/VvTab/index.ts +12 -12
  293. package/src/components/VvTextarea/VvTextarea.vue +218 -219
  294. package/src/components/VvTextarea/index.ts +35 -35
  295. package/src/components/VvTooltip/VvTooltip.vue +22 -16
  296. package/src/components/VvTooltip/index.ts +12 -12
  297. package/src/components/common/HintSlot.ts +149 -150
  298. package/src/components/index.ts +10 -0
  299. package/src/composables/alert/useAlert.ts +76 -73
  300. package/src/composables/alert/useInjectAlert.ts +1 -1
  301. package/src/composables/alert/useProvideAlert.ts +10 -10
  302. package/src/composables/dropdown/useInjectDropdown.ts +6 -6
  303. package/src/composables/dropdown/useProvideDropdown.ts +63 -63
  304. package/src/composables/group/useInjectedGroupState.ts +46 -42
  305. package/src/composables/group/useProvideGroupState.ts +9 -15
  306. package/src/composables/index.ts +1 -0
  307. package/src/composables/useBlurhash.ts +68 -0
  308. package/src/composables/useComponentFocus.ts +9 -9
  309. package/src/composables/useComponentIcon.ts +36 -35
  310. package/src/composables/useDebouncedInput.ts +25 -25
  311. package/src/composables/useDefaults.ts +77 -76
  312. package/src/composables/useModifiers.ts +29 -29
  313. package/src/composables/useOptions.ts +51 -43
  314. package/src/composables/usePersistence.ts +74 -0
  315. package/src/composables/useTextCount.ts +44 -44
  316. package/src/composables/useUniqueId.ts +3 -2
  317. package/src/composables/useVolver.ts +1 -1
  318. package/src/constants.ts +97 -82
  319. package/src/directives/index.ts +3 -6
  320. package/src/directives/v-contextmenu.ts +34 -34
  321. package/src/directives/v-tooltip.ts +18 -9
  322. package/src/index.ts +6 -4
  323. package/src/props/index.ts +457 -380
  324. package/src/resolvers/unplugin.ts +146 -136
  325. package/src/shims.d.ts +4 -5
  326. package/src/stories/Accordion/Accordion.settings.ts +51 -50
  327. package/src/stories/Accordion/Accordion.stories.ts +21 -21
  328. package/src/stories/Accordion/Accordion.test.ts +56 -54
  329. package/src/stories/Accordion/AccordionSlots.stories.ts +13 -13
  330. package/src/stories/AccordionGroup/AccordionGroup.settings.ts +70 -67
  331. package/src/stories/AccordionGroup/AccordionGroup.stories.ts +41 -39
  332. package/src/stories/AccordionGroup/AccordionGroup.test.ts +49 -45
  333. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +35 -35
  334. package/src/stories/Alert/Alert.settings.ts +117 -116
  335. package/src/stories/Alert/Alert.stories.ts +30 -30
  336. package/src/stories/Alert/Alert.test.ts +78 -80
  337. package/src/stories/Alert/AlertModifiers.stories.ts +45 -45
  338. package/src/stories/Alert/AlertSlots.stories.ts +35 -35
  339. package/src/stories/AlertGroup/AlertGroup.settings.ts +107 -105
  340. package/src/stories/AlertGroup/AlertGroup.stories.ts +25 -25
  341. package/src/stories/AlertGroup/AlertGroup.test.ts +67 -69
  342. package/src/stories/AlertGroup/AlertGroupPosition.stories.ts +68 -68
  343. package/src/stories/AlertGroup/AlertGroupSlots.stories.ts +23 -23
  344. package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +58 -58
  345. package/src/stories/Avatar/Avatar.settings.ts +29 -29
  346. package/src/stories/Avatar/Avatar.stories.ts +23 -23
  347. package/src/stories/Avatar/Avatar.test.ts +22 -24
  348. package/src/stories/Avatar/AvatarBadge.stories.ts +15 -15
  349. package/src/stories/Avatar/AvatarModifiers.stories.ts +61 -61
  350. package/src/stories/Avatar/AvatarSlots.stories.ts +18 -18
  351. package/src/stories/AvatarGroup/AvatarGroup.settings.ts +54 -53
  352. package/src/stories/AvatarGroup/AvatarGroup.stories.ts +17 -17
  353. package/src/stories/AvatarGroup/AvatarGroup.test.ts +24 -26
  354. package/src/stories/AvatarGroup/AvatarGroupModifiers.stories.ts +15 -15
  355. package/src/stories/AvatarGroup/AvatarGroupSlotDefault.stories.ts +17 -17
  356. package/src/stories/Badge/Badge.settings.ts +21 -20
  357. package/src/stories/Badge/Badge.stories.ts +24 -24
  358. package/src/stories/Badge/Badge.test.ts +8 -8
  359. package/src/stories/Badge/BadgeSlots.stories.ts +10 -10
  360. package/src/stories/Blurhash/BlurhashComposable.stories.ts +196 -0
  361. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +35 -34
  362. package/src/stories/Breadcrumb/Breadcrumb.stories.ts +23 -23
  363. package/src/stories/Breadcrumb/Breadcrumb.test.ts +44 -43
  364. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.ts +17 -17
  365. package/src/stories/Button/Button.settings.ts +146 -150
  366. package/src/stories/Button/Button.stories.ts +19 -19
  367. package/src/stories/Button/Button.test.ts +41 -42
  368. package/src/stories/Button/ButtonIcon.stories.ts +42 -42
  369. package/src/stories/Button/ButtonLink.stories.ts +24 -24
  370. package/src/stories/Button/ButtonLoading.stories.ts +22 -22
  371. package/src/stories/Button/ButtonModifiers.stories.ts +91 -91
  372. package/src/stories/Button/ButtonSlots.stories.ts +47 -47
  373. package/src/stories/Button/ButtonState.stories.ts +23 -23
  374. package/src/stories/Button/ButtonToggle.stories.ts +30 -30
  375. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +33 -24
  376. package/src/stories/ButtonGroup/ButtonGroup.stories.ts +20 -20
  377. package/src/stories/ButtonGroup/ButtonGroup.test.ts +23 -26
  378. package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.ts +20 -20
  379. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.ts +18 -18
  380. package/src/stories/ButtonGroup/ButtonGroupToggle.stories.ts +22 -22
  381. package/src/stories/Card/Card.settings.ts +49 -48
  382. package/src/stories/Card/Card.stories.ts +22 -22
  383. package/src/stories/Card/Card.test.ts +14 -16
  384. package/src/stories/Card/CardSlots.stories.ts +42 -42
  385. package/src/stories/Checkbox/Checkbox.settings.ts +36 -35
  386. package/src/stories/Checkbox/Checkbox.stories.ts +57 -57
  387. package/src/stories/Checkbox/Checkbox.test.ts +63 -66
  388. package/src/stories/Checkbox/CheckboxBinary.stories.ts +18 -18
  389. package/src/stories/Checkbox/CheckboxSlots.stories.ts +15 -15
  390. package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +9 -9
  391. package/src/stories/CheckboxGroup/CheckboxGroup.stories.ts +50 -50
  392. package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +63 -67
  393. package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.ts +34 -34
  394. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.ts +23 -23
  395. package/src/stories/Combobox/Combobox.settings.ts +391 -383
  396. package/src/stories/Combobox/Combobox.stories.ts +108 -107
  397. package/src/stories/Combobox/Combobox.test.ts +89 -91
  398. package/src/stories/Combobox/ComboboxIconPosition.stories.ts +25 -24
  399. package/src/stories/Combobox/ComboboxMultiple.stories.ts +23 -22
  400. package/src/stories/Combobox/ComboboxOptions.stories.ts +85 -84
  401. package/src/stories/Combobox/ComboboxSlots.stories.ts +56 -55
  402. package/src/stories/Dialog/Dialog.settings.ts +49 -40
  403. package/src/stories/Dialog/Dialog.stories.ts +28 -28
  404. package/src/stories/Dialog/Dialog.test.ts +49 -54
  405. package/src/stories/Dialog/DialogModifiers.stories.ts +42 -0
  406. package/src/stories/Dialog/DialogSlots.stories.ts +20 -20
  407. package/src/stories/Dropdown/Dropdown.settings.ts +63 -62
  408. package/src/stories/Dropdown/Dropdown.stories.ts +59 -59
  409. package/src/stories/Dropdown/Dropdown.test.ts +9 -13
  410. package/src/stories/Dropdown/DropdownContextmenuDirective.stories.ts +16 -16
  411. package/src/stories/Dropdown/DropdownMultilevel.stories.ts +18 -18
  412. package/src/stories/Dropdown/DropdownSlots.stories.ts +50 -50
  413. package/src/stories/Icon/Icon.settings.ts +66 -65
  414. package/src/stories/Icon/Icon.stories.ts +28 -29
  415. package/src/stories/Icon/IconsCollection.stories.ts +22 -22
  416. package/src/stories/InputFile/InputFile.settings.ts +37 -0
  417. package/src/stories/InputFile/InputFile.stories.ts +89 -0
  418. package/src/stories/InputFile/InputFileDropArea.stories.ts +56 -0
  419. package/src/stories/InputFile/InputFileIconPosition.stories.ts +43 -0
  420. package/src/stories/InputFile/InputFileSlots.stories.ts +33 -0
  421. package/src/stories/InputText/InputText.settings.ts +246 -244
  422. package/src/stories/InputText/InputText.stories.ts +67 -67
  423. package/src/stories/InputText/InputText.test.ts +118 -121
  424. package/src/stories/InputText/InputTextIconPosition.stories.ts +24 -24
  425. package/src/stories/InputText/InputTextLength.stories.ts +33 -33
  426. package/src/stories/InputText/InputTextMask.stories.ts +91 -91
  427. package/src/stories/InputText/InputTextMinMax.stories.ts +30 -30
  428. package/src/stories/InputText/InputTextSlots.stories.ts +20 -20
  429. package/src/stories/InputText/InputTextType.stories.ts +70 -70
  430. package/src/stories/Nav/Nav.settings.ts +27 -27
  431. package/src/stories/Nav/Nav.stories.ts +18 -18
  432. package/src/stories/Nav/Nav.test.ts +10 -12
  433. package/src/stories/Nav/NavModifiers.stories.ts +25 -25
  434. package/src/stories/Progress/Progress.settings.ts +24 -23
  435. package/src/stories/Progress/Progress.stories.ts +23 -23
  436. package/src/stories/Progress/Progress.test.ts +4 -4
  437. package/src/stories/Radio/Radio.settings.ts +9 -9
  438. package/src/stories/Radio/Radio.stories.ts +47 -47
  439. package/src/stories/Radio/Radio.test.ts +54 -57
  440. package/src/stories/Radio/RadioSlots.stories.ts +15 -15
  441. package/src/stories/RadioGroup/RadioGroup.settings.ts +9 -9
  442. package/src/stories/RadioGroup/RadioGroup.stories.ts +51 -52
  443. package/src/stories/RadioGroup/RadioGroup.test.ts +63 -67
  444. package/src/stories/RadioGroup/RadioGroupOptions.stories.ts +35 -35
  445. package/src/stories/RadioGroup/RadioGroupSlots.stories.ts +23 -23
  446. package/src/stories/Select/Select.settings.ts +71 -70
  447. package/src/stories/Select/Select.stories.ts +67 -66
  448. package/src/stories/Select/Select.test.ts +65 -70
  449. package/src/stories/Select/SelectIconPosition.stories.ts +27 -26
  450. package/src/stories/Select/SelectOptions.stories.ts +55 -55
  451. package/src/stories/Select/SelectSlots.stories.ts +21 -20
  452. package/src/stories/Tab/Tab.settings.ts +34 -34
  453. package/src/stories/Tab/Tab.stories.ts +17 -17
  454. package/src/stories/Tab/Tab.test.ts +17 -19
  455. package/src/stories/Textarea/Textarea.settings.ts +79 -77
  456. package/src/stories/Textarea/Textarea.stories.ts +63 -63
  457. package/src/stories/Textarea/Textarea.test.ts +70 -73
  458. package/src/stories/Textarea/TextareaLength.stories.ts +33 -33
  459. package/src/stories/Textarea/TextareaSlots.stories.ts +20 -20
  460. package/src/stories/Textarea/TextareatIconPosition.stories.ts +24 -24
  461. package/src/stories/Tooltip/Tooltip.settings.ts +16 -17
  462. package/src/stories/Tooltip/Tooltip.stories.ts +18 -18
  463. package/src/stories/Tooltip/Tooltip.test.ts +53 -54
  464. package/src/stories/Tooltip/TooltipDirective.stories.ts +37 -37
  465. package/src/stories/argTypes.ts +506 -505
  466. package/src/test/expect.ts +72 -77
  467. package/src/test/options.ts +17 -16
  468. package/src/test/sleep.ts +3 -2
  469. package/src/test/types.d.ts +11 -11
  470. package/src/types/alert.ts +21 -17
  471. package/src/types/blurhash.ts +21 -0
  472. package/src/types/generic.ts +2 -3
  473. package/src/types/group.ts +34 -26
  474. package/src/types/index.ts +7 -0
  475. package/src/types/input-file.ts +18 -0
  476. package/src/types/nav.ts +13 -14
  477. package/src/utils/ObjectUtilities.ts +192 -188
  478. package/src/workers/blurhash.ts +9 -0
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("vue-imask"),require("@iconify/vue"),require("uid"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","vue-imask","@iconify/vue","uid","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvInputText=t(e.vue,e.vueImask,e.vue$1,e.uid,e.core)}(this,(function(e,t,l,o,a){"use strict";function n(t){return null==(l=e.unref(t))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function i(e){return Array.isArray(e)?e.filter((e=>{return"string"==typeof(t=e)||t instanceof String;var t})).join(" "):e}const r={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}};var u=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(u||{}),s=(e=>(e.before="before",e.after="after",e))(s||{}),d=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(d||{});const c=Symbol.for("volver");function v(){return e.inject(c)}function p(t,l,o){return e.computed((()=>{const a={[t]:!0},n="string"==typeof(null==l?void 0:l.value)?l.value.split(" "):null==l?void 0:l.value;return n&&Array.isArray(n)&&n.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),o&&Object.keys(o.value).forEach((l=>{a[`${t}--${l}`]=e.unref(o.value[l])})),a}))}const m=e.defineComponent({name:"VvIcon",props:r,setup(t){const o=t,a=e.computed((()=>"string"==typeof o.rotate?parseFloat(o.rotate):o.rotate)),n=e.ref(!0),i=v(),{modifiers:r}=e.toRefs(o),u=p("vv-icon",r),s=e.computed((()=>o.provider||(null==i?void 0:i.iconsProvider))),d=e.computed((()=>{const e=o.name??"",t=`@${s.value}:${o.prefix}:${e}`;if(l.iconExists(t))return t;const a=null==i?void 0:i.iconsCollections.find((t=>{const o=`@${s.value}:${t.prefix}:${e}`;return l.iconExists(o)}));return a?`@${s.value}:${a.prefix}:${e}`:e}));function c(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),a=(null==t?void 0:t.innerHTML.trim())||"";t&&a&&l.addIcon(`@${s.value}:${o.prefix}:${o.name}`,{body:a,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return i&&o.src&&!l.iconExists(`@${s.value}:${o.prefix}:${o.name}`)&&(n.value=!1,i.fetchIcon(o.src).then((e=>{e&&(c(e),n.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),o.svg&&c(o.svg),(t,o)=>e.unref(n)?(e.openBlock(),e.createBlock(e.unref(l.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:e.unref(a),color:t.color,onLoad:t.onLoad,icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("",!0)}}),f={valid:Boolean,validLabel:[String,Array]},h={invalid:Boolean,invalidLabel:[String,Array]},b={loading:Boolean,loadingLabel:{type:String,default:"Loading..."}},g={disabled:Boolean},S=(Boolean,Boolean,Boolean,{label:[String,Number]}),y={readonly:Boolean},w={modifiers:[String,Array]},k={hintLabel:{type:String,default:""}},L={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},B={debounce:[Number,String]},E={icon:{type:[String,Object]},iconPosition:{type:String,default:s.before,validation:e=>Object.values(s).includes(e)}},$={tabindex:{type:[String,Number],default:0}},x={floating:Boolean},A={id:[String,Number]};u.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const T={...{...A,name:{type:String,required:!0}},...{autofocus:Boolean},...{autocomplete:{type:String,default:"off"}},...$,...g,...y,...f,...h,...k,...b,...w,...L,...B,...E,...x,...S,minlength:[String,Number],maxlength:[String,Number],placeholder:String,required:Boolean};d.button;const P={TEXT:"text",PASSWORD:"password",NUMBER:"number",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",DATE:"date",TIME:"time",DATETIME_LOCAL:"datetime-local",MONTH:"month",WEEK:"week"},C="eye-on",D="eye-off",I="calendar",O="time",V="color",_={...T,modelValue:[String,Number],type:{type:String,default:P.TEXT,validator:e=>Object.values(P).includes(e)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:String,default:C},iconHidePassword:{type:String,default:D},iconClear:{type:String,default:"close"},labelStepUp:{type:String,default:"Increase value"},labelStepDown:{type:String,default:"Decrease value"},labelShowPassword:{type:String,default:"Show password"},labelHidePassword:{type:String,default:"Hide password"},labelClear:{type:String,default:"Clear"},iMask:{type:Object,default:void 0},masked:{type:String,default:void 0},autoWidth:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},unit:{type:String},selectOnFocus:{type:Boolean,default:!1}},N=e.defineComponent({components:{VvIcon:m},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:C},iconHide:{type:String,default:D}},emits:["toggle-password"],setup(t,{emit:l}){const o=e.ref(!1),a=e.computed((()=>o.value?t.iconHide:t.iconShow));return{active:o,activeIcon:a,onClick:function(e){null==e||e.stopPropagation(),t.disabled||(o.value=!o.value,l("toggle-password",o.value))}}},render(){const t=e.h(m,{name:this.activeIcon,class:"vv-input-text__icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},t)}}),M=e.defineComponent({components:{VvIcon:m},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:e=>["up","down"].includes(e),default:"up"}},emits:["step-up","step-down"],setup(t,{emit:l}){const o=e.computed((()=>"up"===t.mode));return{isUp:o,onClick:e=>{null==e||e.stopPropagation(),t.disabled||l(o.value?"step-up":"step-down")}}},render(){return e.h("button",{class:["vv-input-text__action vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,type:"button",onClick:this.onClick})}}),R=e.defineComponent({components:{VvIcon:m},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup:(e,{emit:t})=>({onClick:function(l){null==l||l.stopPropagation(),e.disabled||t("clear")}}),render(){const t=e.h(m,{name:this.icon,class:"vv-input-text__icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},t)}});function H(t,l){return{name:"VvInputTextActions",components:{VvIcon:m,VvInputPasswordAction:N,VvInputStepAction:M,VvInputClearAction:R},setup:()=>({isDisabled:e.computed((()=>l.disabled||l.readonly)),labelStepUp:l.labelStepUp,labelStepDown:l.labelStepDown,labelShowPassword:l.labelShowPassword,labelHidePassword:l.labelHidePassword,labelClear:l.labelClear,iconShowPassword:l.iconShowPassword,iconHidePassword:l.iconHidePassword}),render(){let o=null;switch(t){case P.SEARCH:{const{onClear:t}=this.$attrs;o=[e.h(R,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:t})];break}case P.PASSWORD:{const{onTogglePassword:t}=this.$attrs;o=[e.h(N,{disabled:this.isDisabled,onTogglePassword:t,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case P.NUMBER:{const{onStepUp:t,onStepDown:a}=this.$attrs;o=[e.h(M,{mode:"up",disabled:this.isDisabled||void 0!==l.max&&l.modelValue===l.max,label:this.labelStepUp,onStepUp:t,onStepDown:a}),e.h(M,{mode:"down",disabled:this.isDisabled||void 0!==l.min&&l.modelValue===l.min,label:this.labelStepDown,onStepUp:t,onStepDown:a})];break}}return Array.isArray(o)?e.h("div",{class:"vv-input-text__actions-group"},o):o}}}const U=["for"],j={class:"vv-input-text__wrapper"},F={key:0,class:"vv-input-text__input-before"},W=["onClick"],q=["id"],z={key:1,class:"vv-input-text__unit"},K={key:5,class:"vv-input-text__input-after"},X={key:6,class:"vv-input-text__limit"};return e.defineComponent({name:"VvInputText",props:_,emits:["update:modelValue","update:masked","accept","accept:typed","accept:masked","accept:unmasked","complete","complete:typed","complete:masked","complete:unmasked","focus","blur","keyup","keydown","keypress"],setup(l,{expose:r,emit:d}){const c=l,f=e.useSlots(),h=function(t,l,o){const a=v(),n=e.computed((()=>{var e;if(a&&(null==(e=a.defaults.value)?void 0:e[t]))return a.defaults.value[t]}));return e.computed((()=>{if(void 0===n.value)return o;const e=n.value,t=l,a=o;return Object.keys(t).reduce(((l,o)=>{const n=a[o];if(l[o]=n,o in e){if(Array.isArray(t[o])){const a=t[o];a.length&&a[0]===n&&(l[o]=e[o])}if("function"==typeof t[o]&&(0,t[o])()===n&&(l[o]=e[o]),"object"==typeof t[o]){let a=t[o].default;"function"==typeof a&&(a=a()),"object"==typeof a?JSON.stringify(a)===JSON.stringify(n)&&(l[o]=e[o]):a===n&&(l[o]=e[o])}}return l}),{})}))}("VvInputText",_,c),{id:b,icon:g,iconPosition:S,label:y,modelValue:w,count:k,valid:L,invalid:B,loading:E,debounce:$,maxlength:x,minlength:A,type:T,iMask:C,step:D}=e.toRefs(c),N=(t=>e.computed((()=>String((null==t?void 0:t.value)||o.uid()))))(b),M=e.computed((()=>`${N.value}-hint`)),R=e.computed((()=>c.floating&&n(c.placeholder)?" ":c.placeholder)),J=e.ref(!1),{el:Y,mask:G,typed:Q,masked:Z,unmasked:ee}=t.useIMask(e.computed((()=>(null==C?void 0:C.value)??{mask:/./})),{emit:d,onAccept:()=>{if(J.value){if(d("update:masked",Z.value),T.value===P.NUMBER){if(""===Z.value){if(null===oe.value||void 0===oe.value)return;return void(oe.value=void 0)}return"number"!=typeof Q.value?void(oe.value=Number(Q.value)):void(oe.value=Q.value)}if(T.value===P.DATE){if(Y.value instanceof HTMLInputElement&&"date"===Y.value.type)return void(oe.value=Y.value.value);let e=Q.value;if(null===e||""===e){if(!oe.value)return;return void(oe.value="")}return e instanceof Date||(e=new Date(e)),void(oe.value=`${e.getFullYear()}-${("0"+(e.getMonth()+1)).slice(-2)}-${("0"+e.getDate()).slice(-2)}`)}if(T.value===P.DATETIME_LOCAL){if(Y.value instanceof HTMLInputElement&&"datetime-local"===Y.value.type)return void(oe.value=Y.value.value);let e=Q.value;if(null===e||""===e){if(!oe.value)return;return void(oe.value="")}return Q.value instanceof Date||(e=new Date(e)),void(oe.value=`${e.getFullYear()}-${("0"+(e.getMonth()+1)).slice(-2)}-${("0"+e.getDate()).slice(-2)}T${("0"+e.getHours()).slice(-2)}:${("0"+e.getMinutes()).slice(-2)}`)}(oe.value||ee.value)&&(oe.value=ee.value)}}});e.onMounted((()=>{G.value&&(J.value=!0,Q.value=oe.value??"")})),e.watch((()=>c.modelValue),(e=>{var t;G.value&&(Q.value=e&&(null==(t=null==C?void 0:C.value)?void 0:t.mask)===Date?new Date(e):e??"")})),e.watch((()=>c.masked),(e=>{Z.value=e??""}));const te=Y,le=e.ref();r({$inner:le});const oe=function(t,l,o=0,{getter:a=(e=>e),setter:n=(e=>e)}={}){let i;return"string"==typeof o&&(o=parseInt(o)),e.computed({get:()=>a(null==t?void 0:t.value),set:e=>{i&&clearTimeout(i),i=setTimeout((()=>{l("update:modelValue",n(e))}),o)}})}(w,d,(null==$?void 0:$.value)??0),{focused:ae}=function(t,l){const{focused:o}=a.useFocus(t);return e.watch(o,(o=>{l(o?"focus":"blur",e.unref(t))})),{focused:o}}(te,d),ne=e.computed((()=>ae.value&&!c.disabled&&!c.readonly));e.watch(ne,(e=>{e&&h.value.selectOnFocus&&te.value&&te.value.select()}));const ie=a.useElementVisibility(te);e.watch(ie,(e=>{e&&c.autofocus&&!c.disabled&&!c.readonly&&(ae.value=!0)}));const re=e.ref(!1),ue=e.computed((()=>c.type===P.PASSWORD)),se=()=>{re.value=!re.value},de=e.computed((()=>c.type===P.TIME||c.type===P.DATETIME_LOCAL||c.type===P.DATE||c.type===P.WEEK||c.type===P.MONTH)),ce=e.computed((()=>c.type===P.NUMBER)),ve=()=>{if(we.value){if(null==C?void 0:C.value)return void(Q.value=Q.value+Number((null==D?void 0:D.value)??1));te.value.stepUp(),oe.value=e.unref(te).value}},pe=()=>{if(we.value){if(null==C?void 0:C.value)return void(Q.value=Q.value-Number((null==D?void 0:D.value)??1));te.value.stepDown(),oe.value=e.unref(te).value}},me=e.computed((()=>c.type===P.SEARCH)),fe=()=>{oe.value=""},{hasIcon:he,hasIconBefore:be,hasIconAfter:ge}=function(t,l){const o=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===s.before))),a=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===s.after))),n=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===u.left))),i=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===u.right))),r=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===u.top))),d=e.computed((()=>Boolean((null==t?void 0:t.value)&&l.value===u.bottom)));return{hasIcon:e.computed((()=>"string"==typeof(null==t?void 0:t.value)?{name:null==t?void 0:t.value}:null==t?void 0:t.value)),hasIconLeft:n,hasIconRight:i,hasIconTop:r,hasIconBottom:d,hasIconBefore:o,hasIconAfter:a}}(g,S),Se=e.computed((()=>{switch(c.type){case P.COLOR:return{name:V};case P.DATE:case P.DATETIME_LOCAL:case P.WEEK:case P.MONTH:return{name:I};case P.TIME:return{name:O};default:return""}})),{formatted:ye}=function(t,l){const o=e.computed((()=>(e.unref(t)??"").length)),a=e.computed((()=>void 0!==(null==l?void 0:l.lowerLimit)&&o.value<(null==l?void 0:l.lowerLimit)?o.value-l.lowerLimit:void 0!==(null==l?void 0:l.upperLimit)&&o.value<(null==l?void 0:l.upperLimit)?l.upperLimit-o.value:0)),n=e.computed((()=>{if(!1===(null==l?void 0:l.mode))return"";if("limit"===(null==l?void 0:l.mode)&&(null==l?void 0:l.upperLimit))return`${o.value} / ${l.lowerLimit?`${l.lowerLimit}-`:""}${l.upperLimit}`;if("countdown"===(null==l?void 0:l.mode)){if(0===a.value)return;return a}return o.value}));return{length:o,gap:a,formatted:n}}(oe,{mode:k.value,upperLimit:Number(null==x?void 0:x.value),lowerLimit:Number(null==A?void 0:A.value)}),we=e.computed((()=>!c.disabled&&!c.readonly)),ke=e.computed((()=>we.value?c.tabindex:-1)),Le=e.computed((()=>!n(w))),Be=e.computed((()=>!0===B.value||!0!==L.value&&void 0)),{modifiers:Ee}=e.toRefs(c),$e=p("vv-input-text",Ee,e.computed((()=>({valid:L.value,invalid:B.value,loading:E.value,disabled:c.disabled,readonly:c.readonly,"icon-before":be.value,"icon-after":ge.value||!n(Se),floating:c.floating&&!n(c.label),dirty:Le.value,focus:ne.value,"auto-width":c.autoWidth})))),xe=e.computed((()=>{const e=ue.value&&re.value?P.TEXT:!de.value||Le.value||ae.value?(null==C?void 0:C.value)?P.TEXT:c.type:P.TEXT,t={type:e,name:c.name,tabindex:ke.value,disabled:c.disabled,readonly:c.readonly,required:c.required,autocomplete:c.autocomplete,"aria-invalid":Be.value,"aria-describedby":Pe.value?M.value:void 0,"aria-errormessage":Ce.value?M.value:void 0};return e!==P.DATE&&e!==P.MONTH&&e!==P.WEEK&&e!==P.TIME&&e!==P.DATETIME_LOCAL&&e!==P.NUMBER||(t.step=c.step,t.max=void 0!==c.max?String(c.max):void 0,t.min=void 0!==c.min?String(c.min):void 0),e!==P.TEXT&&e!==P.SEARCH&&e!==P.URL&&e!==P.TEL&&e!==P.EMAIL&&e!==P.PASSWORD&&e!==P.NUMBER||(t.placeholder=R.value),e!==P.TEXT&&e!==P.SEARCH&&e!==P.URL&&e!==P.TEL&&e!==P.EMAIL&&e!==P.PASSWORD||(t.minlength=c.minlength,t.maxlength=c.maxlength,t.pattern=c.pattern),e===P.EMAIL&&(t.multiple=c.multiple),t})),Ae=e.computed((()=>({valid:c.valid,invalid:c.invalid,modelValue:c.modelValue,togglePassword:se,stepUp:ve,stepDown:pe,clear:fe}))),{HintSlot:Te,hasHintLabelOrSlot:Pe,hasInvalidLabelOrSlot:Ce,hintSlotScope:De}=function(t,l){const o=e.computed((()=>e.isRef(t)?t.value:t)),a=e.computed((()=>i(o.value.invalidLabel))),n=e.computed((()=>i(o.value.validLabel))),r=e.computed((()=>o.value.loadingLabel)),u=e.computed((()=>o.value.hintLabel)),s=e.computed((()=>Boolean(o.value.loading&&(l.loading||r.value)))),d=e.computed((()=>!s.value&&Boolean(o.value.invalid&&(l.invalid||a.value)))),c=e.computed((()=>!s.value&&!d.value&&Boolean(o.value.valid&&(l.valid||n.value)))),v=e.computed((()=>!s.value&&!d.value&&!c.value&&Boolean(l.hint||u.value))),p=e.computed((()=>d.value||c.value||s.value||v.value)),m=e.computed((()=>({modelValue:o.value.modelValue,valid:o.value.valid,invalid:o.value.invalid,loading:o.value.loading}))),f=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:p,invalidLabel:a,validLabel:n,loadingLabel:r,hintLabel:u,hasInvalidLabelOrSlot:d,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:s,hasHintLabelOrSlot:v}),render(){var t,l,o,a,n,i,r,u;if(this.isVisible){let s;return this.hasInvalidLabelOrSlot&&(s="alert"),this.hasValidLabelOrSlot&&(s="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:s},(null==(l=(t=this.$slots).loading)?void 0:l.call(t))??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:s},(null==(a=(o=this.$slots).invalid)?void 0:a.call(o))??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:s},(null==(i=(n=this.$slots).valid)?void 0:i.call(n))??this.validLabel):e.h(this.tag,{role:s},(null==(u=(r=this.$slots).hint)?void 0:u.call(r))??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:d,hasHintLabelOrSlot:v,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:s,hintSlotScope:m,HintSlot:f}}(h,f),Ie=H(P.PASSWORD,c),Oe=H(P.NUMBER,c),Ve=H(P.SEARCH,c),_e=()=>{we.value&&(ae.value=!0)},Ne=e.computed((()=>{if(c.autoWidth)return{width:void 0!==oe.value?`${String(oe.value).length+1}ch`:void 0}})),Me=e=>{switch(e.code){case"ArrowUp":ce.value&&(ve(),e.preventDefault());break;case"ArrowDown":ce.value&&(pe(),e.preventDefault())}d("keydown",e)};return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref($e))},[e.unref(y)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(N),class:"vv-input-text__label"},e.toDisplayString(e.unref(y)),9,U)):e.createCommentVNode("",!0),e.createElementVNode("div",j,[t.$slots.before?(e.openBlock(),e.createElementBlock("div",F,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(Ae))))])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"innerEl",ref:le,class:"vv-input-text__inner",onClick:e.withModifiers(_e,["stop"])},[e.unref(be)?(e.openBlock(),e.createBlock(m,e.mergeProps({key:0,class:"vv-input-text__icon"},e.unref(he)),null,16)):e.createCommentVNode("",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(N),ref_key:"inputEl",ref:te},e.unref(xe),{style:e.unref(Ne),onKeyup:l[0]||(l[0]=e=>d("keyup",e)),onKeydown:Me,onKeypress:l[1]||(l[1]=e=>d("keypress",e))}),null,16,q),(t.unit||t.$slots.unit)&&e.unref(Le)?(e.openBlock(),e.createElementBlock("div",z,[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(Ae))),(()=>[e.createTextVNode(e.toDisplayString(t.unit),1)]))])):e.createCommentVNode("",!0)],8,W),e.unref(ge)||e.unref(Se)?(e.openBlock(),e.createBlock(m,e.mergeProps({key:1,class:"vv-input-text__icon vv-input-text__icon-after"},e.unref(ge)?e.unref(he):e.unref(Se)),null,16)):e.unref(ue)&&!t.hideActions&&e.unref(we)?(e.openBlock(),e.createBlock(e.unref(Ie),{key:2,onTogglePassword:se})):e.unref(ce)&&!t.hideActions&&e.unref(we)?(e.openBlock(),e.createBlock(e.unref(Oe),{key:3,onStepUp:ve,onStepDown:pe})):e.unref(me)&&!t.hideActions&&e.unref(we)?(e.openBlock(),e.createBlock(e.unref(Ve),{key:4,onClear:fe})):e.createCommentVNode("",!0),t.$slots.after?(e.openBlock(),e.createElementBlock("div",K,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(Ae))))])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("span",X,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(Ae))),(()=>[e.createTextVNode(e.toDisplayString(e.unref(ye)),1)]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(Te),{id:e.unref(M),class:"vv-input-text__hint"},e.createSlots({_:2},[t.$slots.hint?{name:"hint",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps(e.unref(De))))])),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(De))))])),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(De))))])),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(De))))])),key:"3"}:void 0]),1032,["id"])],2))}})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("vue-imask"),require("@iconify/vue"),require("@floating-ui/vue"),require("uid"),require("@vueuse/core"),require("mitt")):"function"==typeof define&&define.amd?define(["vue","vue-imask","@iconify/vue","@floating-ui/vue","uid","@vueuse/core","mitt"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvInputText=t(e.vue,e.vueImask,e.vue$1,e.vue$2,e.uid,e.core,e.mitt)}(this,(function(e,t,o,l,a,n,i){"use strict";function r(t){return null==(o=e.unref(t))||""===o||Array.isArray(o)&&0===o.length||!(o instanceof Date)&&"object"==typeof o&&0===Object.keys(o).length;var o}function u(e){return Array.isArray(e)?e.filter((e=>{return"string"==typeof(t=e)||t instanceof String;var t})).join(" "):e}const s="eye-on",d="eye-off",c="calendar",v="time",p="color",f="close",m="trash",b={prefix:"normal"};var h=(e=>(e.local="local",e.session="session",e))(h||{}),g=(e=>(e.absolute="absolute",e.fixed="fixed",e))(g||{}),y=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(y||{}),S=(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(S||{}),w=(e=>(e.before="before",e.after="after",e))(w||{}),k=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(k||{}),x=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(x||{}),E=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(E||{}),L=(e=>(e.listbox="listbox",e.menu="menu",e))(L||{}),B=(e=>(e.option="option",e.presentation="presentation",e))(B||{});const $=Symbol.for("volver"),C=Symbol.for("dropdownTrigger"),P=Symbol.for("dropdownItem"),O=Symbol.for("dropdownAction");function T(){return e.inject($)}function V(t,o,l){return e.computed((()=>{const a={[t]:!0},n="string"==typeof(null==o?void 0:o.value)?o.value.split(" "):null==o?void 0:o.value;return n&&Array.isArray(n)&&n.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),l&&Object.keys(l.value).forEach((o=>{a[`${t}--${o}`]=e.unref(l.value[o])})),a}))}const A=e.defineComponent({name:"VvIcon",props: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:{}},b),setup(t){const l=t,a=e.computed((()=>"string"==typeof l.rotate?Number.parseFloat(l.rotate):l.rotate)),n=e.ref(!0),i=T(),{modifiers:r}=e.toRefs(l),u=V("vv-icon",r),s=e.computed((()=>l.provider||(null==i?void 0:i.iconsProvider))),d=e.computed((()=>{const e=l.name??"",t=`@${s.value}:${l.prefix}:${e}`;if(o.iconExists(t))return t;const a=null==i?void 0:i.iconsCollections.find((t=>{const l=`@${s.value}:${t.prefix}:${e}`;return o.iconExists(l)}));return a?`@${s.value}:${a.prefix}:${e}`:e}));function c(e){const t=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),a=(null==t?void 0:t.innerHTML.trim())||"";t&&a&&o.addIcon(`@${s.value}:${l.prefix}:${l.name}`,{body:a,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return i&&l.src&&!o.iconExists(`@${s.value}:${l.prefix}:${l.name}`)&&(n.value=!1,i.fetchIcon(l.src).then((e=>{e&&(c(e),n.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),l.svg&&c(l.svg),(t,l)=>e.unref(n)?(e.openBlock(),e.createBlock(e.unref(o.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:e.unref(a),color:t.color,onLoad:t.onLoad,icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}});function _(t,o){const l=e.computed((()=>"string"==typeof(null==t?void 0:t.value)?{name:null==t?void 0:t.value}:null==t?void 0:t.value)),a=e.computed((()=>(null==o?void 0:o.value)===w.before?l.value:void 0)),n=e.computed((()=>(null==o?void 0:o.value)===w.after?l.value:void 0)),i=e.computed((()=>(null==o?void 0:o.value)===y.left?l.value:void 0)),r=e.computed((()=>(null==o?void 0:o.value)===y.right?l.value:void 0)),u=e.computed((()=>(null==o?void 0:o.value)===y.top?l.value:void 0)),s=e.computed((()=>(null==o?void 0:o.value)===y.bottom?l.value:void 0));return{hasIcon:l,hasIconLeft:i,hasIconRight:r,hasIconTop:u,hasIconBottom:s,hasIconBefore:a,hasIconAfter:n}}const D=e.defineComponent({components:{VvIcon:A},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:[String,Object],default:s},iconHide:{type:[String,Object],default:d}},emits:["toggle-password"],setup(t,{emit:o}){const l=e.ref(!1),a=e.computed((()=>l.value?t.iconHide:t.iconShow)),{hasIcon:n}=_(a);return{active:l,activeIcon:a,hasIcon:n,onClick:function(e){null==e||e.stopPropagation(),t.disabled||(l.value=!l.value,o("toggle-password",l.value))}}},render(){const t=this.hasIcon?e.h(A,{...this.hasIcon,class:"vv-input-text__icon"}):void 0;return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},t)}}),N=e.defineComponent({components:{VvIcon:A},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:e=>["up","down"].includes(e),default:"up"}},emits:["step-up","step-down"],setup(t,{emit:o}){const l=e.computed((()=>"up"===t.mode));return{isUp:l,onClick:e=>{null==e||e.stopPropagation(),t.disabled||o(l.value?"step-up":"step-down")}}},render(){return e.h("button",{class:["vv-input-text__action vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,type:"button",onClick:this.onClick})}}),I=e.defineComponent({components:{VvIcon:A},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:[String,Object],default:"close"}},emits:["clear"],setup(t,{emit:o}){const{hasIcon:l}=_(e.computed((()=>t.icon)));return{hasIcon:l,onClick:function(e){null==e||e.stopPropagation(),t.disabled||o("clear")}}},render(){const t=this.hasIcon?e.h(A,{...this.hasIcon,class:"vv-input-text__icon"}):void 0;return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},t)}}),R={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},H={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},M={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},j={disabled:{type:Boolean,default:!1}},z={selected:{type:Boolean,default:!1}},U=(Boolean,Boolean,Boolean,{label:{type:[String,Number],default:void 0}}),F={readonly:{type:Boolean,default:!1}},W={modifiers:{type:[String,Array],default:void 0}},q={hintLabel:{type:String,default:""}},K={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},X={debounce:{type:[Number,String],default:void 0}},J={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:w.before,validation:e=>Object.values(w).includes(e)}},Y={tabindex:{type:[String,Number],default:0}},G={floating:{type:Boolean,default:!1}},Q={unselectable:{type:Boolean,default:!0}},Z={id:[String,Number]},ee={placement:{type:String,default:y.bottom,validator:e=>Object.values(y).includes(e)||Object.values(S).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(g).includes(e)},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}},te={...{...Z,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},...Y,...j,...F,...R,...H,...q,...M,...W,...K,...X,...J,...G,...U,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},required:{type:Boolean,default:!1}};k.button,x.button;const oe={storageType:{type:String,default:h.local,validator:e=>Object.values(h).includes(e)},storageKey:String},le={TEXT:"text",PASSWORD:"password",NUMBER:"number",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",DATE:"date",TIME:"time",DATETIME_LOCAL:"datetime-local",MONTH:"month",WEEK:"week"},ae={...te,...oe,modelValue:[String,Number],type:{type:String,default:le.TEXT,validator:e=>Object.values(le).includes(e)},min:[Number,Date,String],max:[Number,Date,String],step:{type:[String,Number],default:1},pattern:String,multiple:Boolean,iconShowPassword:{type:[String,Object],default:s},iconHidePassword:{type:[String,Object],default:d},iconClear:{type:[String,Object],default:f},iconRemoveSuggestion:{type:[String,Object],default:m},labelStepUp:{type:String,default:"Increase value"},labelStepDown:{type:String,default:"Decrease value"},labelShowPassword:{type:String,default:"Show password"},labelHidePassword:{type:String,default:"Hide password"},labelClear:{type:String,default:"Clear"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},iMask:{type:Object,default:void 0},masked:{type:String,default:void 0},autoWidth:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},unit:{type:String},selectOnFocus:{type:Boolean,default:!1},maxSuggestions:{type:Number,default:5}};function ne(t,o){return{name:"VvInputTextActions",components:{VvIcon:A,VvInputPasswordAction:D,VvInputStepAction:N,VvInputClearAction:I},setup:()=>({isDisabled:e.computed((()=>o.disabled||o.readonly)),labelStepUp:o.labelStepUp,labelStepDown:o.labelStepDown,labelShowPassword:o.labelShowPassword,labelHidePassword:o.labelHidePassword,labelClear:o.labelClear,iconShowPassword:o.iconShowPassword,iconHidePassword:o.iconHidePassword}),render(){let l=null;switch(t){case le.SEARCH:{const{onClear:t}=this.$attrs;l=[e.h(I,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:t})];break}case le.PASSWORD:{const{onTogglePassword:t}=this.$attrs;l=[e.h(D,{disabled:this.isDisabled,onTogglePassword:t,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case le.NUMBER:{const{onStepUp:t,onStepDown:a}=this.$attrs;l=[e.h(N,{mode:"up",disabled:this.isDisabled||void 0!==o.max&&o.modelValue===o.max,label:this.labelStepUp,onStepUp:t,onStepDown:a}),e.h(N,{mode:"down",disabled:this.isDisabled||void 0!==o.min&&o.modelValue===o.min,label:this.labelStepDown,onStepUp:t,onStepDown:a})];break}}return Array.isArray(l)?e.h("div",{class:"vv-input-text__actions-group"},l):l}}}const ie={...Z,...ee,...W,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:L.menu,validator:e=>Object.values(L).includes(e)}},re={focusOnHover:{type:Boolean,default:!1}},ue={...j,...z,...Q,...W,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function se(t){return e.computed((()=>String((null==t?void 0:t.value)||a.uid())))}const de=["id","tabindex","role","aria-labelledby"],ce=e.defineComponent({name:"VvDropdown",inheritAttrs:!1,props:ie,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(t,{expose:o,emit:a}){const r=t,u=a,{id:s}=e.toRefs(r),d=se(s),c=e.useAttrs(),v=e.ref("auto"),p=e.ref("auto"),f=e.ref(null),m=e.ref(),b=e.ref(null),h=e.ref(null),S=e.computed({get:()=>r.reference??f.value,set:e=>{f.value=e}}),w=e.ref(!1);e.onMounted((()=>{n.useMutationObserver(m.value,(()=>{var e;w.value="true"===(null==(e=window.getComputedStyle(m.value).getPropertyValue("--dropdown-custom-position"))?void 0:e.trim())}),{attributeFilter:["style"],window:window})}));const k=e.computed((()=>{const e=[];if(r.autoPlacement?"boolean"==typeof r.autoPlacement?e.push(l.autoPlacement()):e.push(l.autoPlacement(r.autoPlacement)):r.flip&&("boolean"==typeof r.flip?e.push(l.flip({fallbackStrategy:"initialPlacement"})):e.push(l.flip(r.flip))),r.shift&&("boolean"==typeof r.shift?e.push(l.shift()):e.push(l.shift(r.shift))),r.size){const t=({availableWidth:e,availableHeight:t})=>{v.value=`${e}px`,p.value=`${t}px`};"boolean"==typeof r.size?e.push(l.size({apply:t})):e.push(l.size({...r.size,apply:t}))}return r.offset&&(e.push(l.offset(Number(r.offset))),["string","number"].includes(typeof r.offset)?e.push(l.offset(Number(r.offset))):e.push(l.offset(r.offset))),r.arrow&&e.push(l.arrow({element:b})),e})),{x:x,y:E,middlewareData:$,placement:O,strategy:T}=l.useFloating(S,m,{whileElementsMounted:(...e)=>l.autoUpdate(...e,{animationFrame:r.strategy===g.fixed}),placement:e.computed((()=>r.placement)),strategy:e.computed((()=>r.strategy)),middleware:k}),A=e.computed((()=>{var e;if(w.value)return;const t=r.triggerWidth&&S.value?`${null==(e=S.value)?void 0:e.offsetWidth}px`:void 0;return{position:T.value,top:`${E.value??0}px`,left:`${x.value??0}px`,maxWidth:t?void 0:v.value,maxHeight:p.value,width:t}})),_=e.computed((()=>O.value.split("-")[0])),D=e.computed((()=>{var e,t,o,l,a;if(w.value)return;const n={[y.top]:y.bottom,[y.right]:y.left,[y.bottom]:y.top,[y.left]:y.right}[_.value];return{left:void 0!==(null==(e=$.value.arrow)?void 0:e.x)?`${null==(t=$.value.arrow)?void 0:t.x}px`:void 0,top:void 0!==(null==(o=$.value.arrow)?void 0:o.y)?`${null==(l=$.value.arrow)?void 0:l.y}px`:void 0,[n]:-((null==(a=b.value)?void 0:a.offsetWidth)??0)/2+"px"}})),N=n.useVModel(r,"modelValue",u),I=e.ref(!1),R=e.computed({get:()=>N.value??I.value,set:e=>{void 0!==N.value?N.value=e:I.value=e}});function H(){R.value=!0}function M(){R.value=!1}function j(){R.value=!R.value}function z(e){S.value=e}o({toggle:j,show:H,hide:M,init:z,customPosition:w}),e.watch(R,(t=>{t&&r.autofocusFirst&&e.nextTick((()=>{const e=G(m.value);e.length>0&&e[0].focus({preventScroll:!0})}))})),n.onClickOutside(m,(()=>{!r.keepOpen&&R.value&&(R.value=!1)}),{ignore:[S]});const U=e.computed((()=>{var e,t;return(null==(t=null==(e=S.value)?void 0:e.getAttribute)?void 0:t.call(e,"id"))??void 0})),F=e.computed((()=>({"aria-controls":d.value,"aria-haspopup":!0,"aria-expanded":R.value}))),{component:W,bus:q}=function({reference:t,id:o,expanded:l,aria:a}){const n=i(),r=e.defineComponent({name:"VvDropdownTriggerProvider",setup(){e.provide(C,{reference:t,id:o,expanded:l,aria:a,bus:n})},render(){var t,o;return e.h(e.Fragment,{},null==(o=(t=this.$slots).default)?void 0:o.call(t))}});return{bus:n,component:r}}({reference:S,id:d,expanded:R,aria:F});q.on("click",j);const{role:K,modifiers:X}=e.toRefs(r),J=V("vv-dropdown",X,e.computed((()=>({arrow:r.arrow})))),{focused:Y}=n.useFocusWithin(m);function G(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter((e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden"))):[]}const Q=n.useElementHover(m),{itemRole:Z}=function({role:t,...o}){const l=e.computed((()=>t.value===L.listbox?B.option:B.presentation));return e.provide(P,{role:l,...o}),{itemRole:l}}({role:K,expanded:R,focused:Y,hovered:Q});n.onKeyStroke("Escape",(e=>{R.value&&(e.preventDefault(),M())})),n.onKeyStroke("ArrowDown",(t=>{R.value&&Y.value&&(t.preventDefault(),e.nextTick((()=>{if(Y.value){const e=G(m.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})))})),n.onKeyStroke("ArrowUp",(t=>{R.value&&Y.value&&(t.preventDefault(),e.nextTick((()=>{if(Y.value){const e=G(m.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})))})),n.onKeyStroke([" ","Enter"],(e=>{const t=e.target;R.value&&Y.value&&t&&(null==t||t.click())}));const ee={"before-enter":()=>{u(R.value?"beforeExpand":"beforeCollapse"),u("beforeEnter")},"after-leave":()=>{u(R.value?"afterExpand":"afterCollapse"),u("afterLeave")},enter:()=>{u("enter")},"after-enter":()=>{u("afterEnter")},"enter-cancelled":()=>{u("enterCancelled")},"before-leave":()=>{u("beforeLeave")},leave:()=>{u("leave")},"leave-cancelled":()=>{u("leaveCancelled")}};return(t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(W),null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:z,show:H,hide:M,toggle:j,expanded:e.unref(R),aria:e.unref(F)})))])),_:3}),e.createVNode(e.Transition,e.mergeProps({name:t.transitionName},e.toHandlers(ee),{persisted:""}),{default:e.withCtx((()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:m,style:e.normalizeStyle(e.unref(A)),class:e.normalizeClass(e.unref(J))},[r.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:b,style:e.normalizeStyle(e.unref(D)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(R)}))),e.createElementVNode("div",e.mergeProps(e.unref(c),{id:e.unref(d),ref_key:"listEl",ref:h,tabindex:e.unref(R)?void 0:-1,role:e.unref(K),"aria-labelledby":e.unref(U),class:"vv-dropdown__list"}),[e.renderSlot(t.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(Z)})))],16,de),e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(R)})))],6),[[e.vShow,e.unref(R)]])])),_:3},16,["name"])],64))}});const ve=e.defineComponent({name:"VvDropdownItem",props:re,setup(t){const o=t,{role:l,expanded:a}=e.inject(P,{}),i=e.ref(null);!function({expanded:t}){e.provide(O,{role:e.ref(E.menuitem),expanded:t})}({expanded:a});const r=n.useElementHover(i),{focused:u}=n.useFocus(i),{focused:s}=n.useFocusWithin(i);return e.watch(r,(e=>{e&&o.focusOnHover&&(u.value=!0)})),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(l)},{ref_key:"element",ref:i,class:["vv-dropdown__item",{"focus-visible":e.unref(u)||e.unref(s)}]}),[e.renderSlot(t.$slots,"default")],16))}}),pe=["title"],fe=e.defineComponent({name:"VvDropdownOption",props:ue,setup(t){const o=t,{modifiers:l}=e.toRefs(o),a=V("vv-dropdown-option",l,e.computed((()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected})))),n=e.computed((()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?"":o.selectHintLabel));return(t,o)=>(e.openBlock(),e.createBlock(ve,{class:e.normalizeClass(e.unref(a)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled,"focus-on-hover":t.focusOnHover},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default"),e.createElementVNode("span",{class:"vv-dropdown-option__hint",title:e.unref(n)},[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)),1)]))],8,pe)])),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}});const me=["for"],be={key:0,class:"vv-input-text__input-before"},he=["id"],ge={key:1,class:"vv-input-text__unit"},ye={key:5,class:"vv-input-text__input-after"},Se={key:6,class:"vv-input-text__limit"},we={class:"flex-1"},ke=["title","onClick"];return e.defineComponent({name:"VvInputText",props:ae,emits:["update:modelValue","update:masked","accept","accept:typed","accept:masked","accept:unmasked","complete","complete:typed","complete:masked","complete:unmasked","focus","blur","keyup","keydown","keypress"],setup(o,{expose:l,emit:a}){const i=o,s=a,d=e.useSlots(),f=function(t,o,l){const a=T(),n=e.computed((()=>{var e;if(a&&(null==(e=a.defaults.value)?void 0:e[t]))return a.defaults.value[t]}));return e.computed((()=>{if(void 0===n.value)return l;const e=n.value,t=o,a=l;return Object.keys(t).reduce(((o,l)=>{const n=a[l];if(o[l]=n,l in e){if(Array.isArray(t[l])){const a=t[l];a.length&&a[0]===n&&(o[l]=e[l])}if("function"==typeof t[l]&&(0,t[l])()===n&&(o[l]=e[l]),"object"==typeof t[l]){let a=t[l].default;"function"==typeof a&&(a=a()),"object"==typeof a?JSON.stringify(a)===JSON.stringify(n)&&(o[l]=e[l]):a===n&&(o[l]=e[l])}}return o}),{})}))}("VvInputText",ae,i),{count:m,debounce:b,icon:g,iconPosition:y,iconRemoveSuggestion:S,id:w,invalid:k,label:x,loading:E,maxlength:L,minlength:B,modelValue:$,step:C,storageKey:P,storageType:O,type:D,valid:N}=e.toRefs(i),I=se(w),R=e.computed((()=>`${I.value}-hint`)),H=e.computed((()=>i.floating&&r(i.placeholder)?" ":i.placeholder)),M=function(t,o,l=0,{getter:a=(e=>e),setter:n=(e=>e)}={}){let i;return"string"==typeof l&&(l=Number.parseInt(l)),e.computed({get:()=>a(null==t?void 0:t.value),set:e=>{i&&clearTimeout(i),i=setTimeout((()=>{o("update:modelValue",n(e))}),l)}})}($,s,(null==b?void 0:b.value)??0),j=/^-0?[.,]?[0*]?$/,z=e.ref(!1),{el:U,mask:F,typed:W,masked:q,unmasked:K}=t.useIMask(e.computed((()=>i.iMask??{mask:/./})),{emit:s,onAccept:()=>{if(z.value){if(s("update:masked",q.value),D.value===le.NUMBER){if(/^-$|^$/.test(K.value)){if(null===M.value||void 0===M.value)return;return void(M.value=void 0)}return j.test(K.value)?void(M.value=0):"number"!=typeof W.value?void(M.value=Number(W.value)):void(M.value=W.value)}if(D.value===le.DATE){if(U.value instanceof HTMLInputElement&&"date"===U.value.type)return void(M.value=U.value.value);let e=W.value;if(null===e||""===e){if(!M.value)return;return void(M.value="")}return e instanceof Date||(e=new Date(e)),void(M.value=`${e.getFullYear()}-${`0${e.getMonth()+1}`.slice(-2)}-${`0${e.getDate()}`.slice(-2)}`)}if(D.value===le.DATETIME_LOCAL){if(U.value instanceof HTMLInputElement&&"datetime-local"===U.value.type)return void(M.value=U.value.value);let e=W.value;if(null===e||""===e){if(!M.value)return;return void(M.value="")}return W.value instanceof Date||(e=new Date(e)),void(M.value=`${e.getFullYear()}-${`0${e.getMonth()+1}`.slice(-2)}-${`0${e.getDate()}`.slice(-2)}T${`0${e.getHours()}`.slice(-2)}:${`0${e.getMinutes()}`.slice(-2)}`)}(M.value||K.value)&&(M.value=K.value)}}});function X(e){var t;if(void 0===e)return W.value="",void(K.value="");(null==(t=i.iMask)?void 0:t.mask)!==Date?D.value===le.NUMBER&&j.test(K.value)&&0===e||(W.value=e,K.value=`${W.value}`):W.value=new Date(e)}e.onMounted((()=>{F.value&&(z.value=!0,X(i.modelValue))})),e.watch((()=>i.modelValue),(e=>{F.value&&X(e)})),e.watch((()=>i.masked),(e=>{q.value=e??""}));const J=U,Y=e.ref(),G=e.ref(),Q=e.ref();l({$inner:Y});const{focused:Z}=function(t,o){const{focused:l}=n.useFocus(t);return e.watch(l,(l=>{o(l?"focus":"blur",e.unref(t))})),{focused:l}}(J,s),ee=e.computed((()=>Z.value&&!i.disabled&&!i.readonly));e.watch(ee,(e=>{var t;e&&f.value.selectOnFocus&&J.value&&J.value.select(),e?null==(t=Q.value)||t.show():setTimeout((()=>{if(Ve.value&&_e.value){const e=i.maxSuggestions-1;_e.value.size>e&&!_e.value.has(M.value)&&(_e.value=new Set([..._e.value].slice(_e.value.size-e))),_e.value.add(M.value)}}),300)}));const te=n.useElementVisibility(J);e.watch(te,(e=>{e&&i.autofocus&&!i.disabled&&!i.readonly&&(Z.value=!0)}));const oe=e.ref(!1),ie=e.computed((()=>i.type===le.PASSWORD));function re(){oe.value=!oe.value}const ue=e.computed((()=>i.type===le.TIME||i.type===le.DATETIME_LOCAL||i.type===le.DATE||i.type===le.WEEK||i.type===le.MONTH)),de=e.computed((()=>i.type===le.NUMBER));function ve(){if(Oe.value){if(i.iMask)return void(W.value=W.value+Number((null==C?void 0:C.value)??1));J.value.stepUp(),M.value=Number(e.unref(J).value)}}function pe(){if(Oe.value){if(i.iMask)return void(W.value=W.value-Number((null==C?void 0:C.value)??1));J.value.stepDown(),M.value=Number(e.unref(J).value)}}const xe=e.computed((()=>i.type===le.SEARCH));function Ee(){M.value=""}const{hasIconBefore:Le,hasIconAfter:Be}=_(g,y),$e=e.computed((()=>{if(void 0!==Be.value)return Be.value;switch(i.type){case le.COLOR:return{name:p};case le.DATE:case le.DATETIME_LOCAL:case le.WEEK:case le.MONTH:return{name:c};case le.TIME:return{name:v}}})),{hasIcon:Ce}=_(S),{formatted:Pe}=function(t,o){const l=e.computed((()=>(e.unref(t)??"").length)),a=e.computed((()=>void 0!==(null==o?void 0:o.lowerLimit)&&l.value<(null==o?void 0:o.lowerLimit)?l.value-o.lowerLimit:void 0!==(null==o?void 0:o.upperLimit)&&l.value<(null==o?void 0:o.upperLimit)?o.upperLimit-l.value:0)),n=e.computed((()=>{if(!1===(null==o?void 0:o.mode))return"";if("limit"===(null==o?void 0:o.mode)&&(null==o?void 0:o.upperLimit))return`${l.value} / ${o.lowerLimit?`${o.lowerLimit}-`:""}${o.upperLimit}`;if("countdown"===(null==o?void 0:o.mode)){if(0===a.value)return;return a}return l.value}));return{length:l,gap:a,formatted:n}}(M,{mode:m.value,upperLimit:Number(null==L?void 0:L.value),lowerLimit:Number(null==B?void 0:B.value)}),Oe=e.computed((()=>!i.disabled&&!i.readonly)),Te=e.computed((()=>Oe.value?i.tabindex:-1)),Ve=e.computed((()=>!r($))),Ae=e.computed((()=>!0===k.value||!0!==N.value&&void 0)),_e=function(t,o=h.local,l){const a=e.ref();let i;return l&&(a.value=l),t&&e.watch(t,((t,l)=>{const r=e.unref(o)===h.session?sessionStorage:localStorage;l&&l!==t&&r.removeItem(l),i=t?n.useStorage(t,(null==i?void 0:i.value)??a.value,r):void 0}),{immediate:!0}),e.isRef(o)&&e.watch(o,((e,o)=>{if(null==t?void 0:t.value){if(e){const o=e===h.session?sessionStorage:localStorage;i=n.useStorage(t.value,(null==i?void 0:i.value)??a.value,o)}o&&o!==e&&(o===h.session?sessionStorage:localStorage).removeItem(t.value)}})),e.computed({get:()=>(null==i?void 0:i.value)??a.value,set:e=>{i?i.value=e:a.value=e}})}(P,O,new Set),De=e.computed((()=>_e.value?[..._e.value].filter((e=>r(M.value)||`${e}`.toLowerCase().includes(`${M.value}`.toLowerCase())&&e!==M.value)).reverse():[])),Ne=e.computed((()=>(null==P?void 0:P.value)&&_e.value&&_e.value.size>0));const{modifiers:Ie}=e.toRefs(i),Re=V("vv-input-text",Ie,e.computed((()=>({valid:N.value,invalid:k.value,loading:E.value,disabled:i.disabled,readonly:i.readonly,"icon-before":!!Le.value,"icon-after":!!$e.value,floating:i.floating&&!r(i.label),dirty:Ve.value,focus:ee.value,"auto-width":i.autoWidth})))),He=e.computed((()=>{const e=ie.value&&oe.value?le.TEXT:!ue.value||Ve.value||Z.value?i.iMask?le.TEXT:i.type:le.TEXT,t={type:e,name:i.name,tabindex:Te.value,disabled:i.disabled,readonly:i.readonly,required:i.required,autocomplete:i.autocomplete,"aria-invalid":Ae.value,"aria-describedby":ze.value?R.value:void 0,"aria-errormessage":Ue.value?R.value:void 0};if(e===le.DATE||e===le.MONTH||e===le.WEEK||e===le.TIME||e===le.DATETIME_LOCAL||e===le.NUMBER){let o=i.max;e!==le.DATE||o||(o="9999-12-31"),t.step=i.step,t.max=void 0!==o?String(o):void 0,t.min=void 0!==i.min?String(i.min):void 0}return e!==le.TEXT&&e!==le.SEARCH&&e!==le.URL&&e!==le.TEL&&e!==le.EMAIL&&e!==le.PASSWORD&&e!==le.NUMBER||(t.placeholder=H.value),e!==le.TEXT&&e!==le.SEARCH&&e!==le.URL&&e!==le.TEL&&e!==le.EMAIL&&e!==le.PASSWORD||(t.minlength=i.minlength,t.maxlength=i.maxlength,t.pattern=i.pattern),e===le.EMAIL&&(t.multiple=i.multiple),t})),Me=e.computed((()=>({valid:i.valid,invalid:i.invalid,modelValue:i.modelValue,togglePassword:re,stepUp:ve,stepDown:pe,clear:Ee}))),{HintSlot:je,hasHintLabelOrSlot:ze,hasInvalidLabelOrSlot:Ue,hintSlotScope:Fe}=function(t,o){const l=e.computed((()=>e.isRef(t)?t.value:t)),a=e.computed((()=>u(l.value.invalidLabel))),n=e.computed((()=>u(l.value.validLabel))),i=e.computed((()=>l.value.loadingLabel)),r=e.computed((()=>l.value.hintLabel)),s=e.computed((()=>Boolean(l.value.loading&&(o.loading||i.value)))),d=e.computed((()=>!s.value&&Boolean(l.value.invalid&&(o.invalid||a.value)))),c=e.computed((()=>!s.value&&!d.value&&Boolean(l.value.valid&&(o.valid||n.value)))),v=e.computed((()=>!s.value&&!d.value&&!c.value&&Boolean(o.hint||r.value))),p=e.computed((()=>d.value||c.value||s.value||v.value)),f=e.computed((()=>({modelValue:l.value.modelValue,valid:l.value.valid,invalid:l.value.invalid,loading:l.value.loading}))),m=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:p,invalidLabel:a,validLabel:n,loadingLabel:i,hintLabel:r,hasInvalidLabelOrSlot:d,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:s,hasHintLabelOrSlot:v}),render(){var t,o,l,a,n,i,r,u;if(this.isVisible){let s;return this.hasInvalidLabelOrSlot&&(s="alert"),this.hasValidLabelOrSlot&&(s="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:s},(null==(o=(t=this.$slots).loading)?void 0:o.call(t))??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:s},(null==(a=(l=this.$slots).invalid)?void 0:a.call(l))??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:s},(null==(i=(n=this.$slots).valid)?void 0:i.call(n))??this.validLabel):e.h(this.tag,{role:s},(null==(u=(r=this.$slots).hint)?void 0:u.call(r))??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:d,hasHintLabelOrSlot:v,hasValidLabelOrSlot:c,hasLoadingLabelOrSlot:s,hintSlotScope:f,HintSlot:m}}(f,d),We=ne(le.PASSWORD,i),qe=ne(le.NUMBER,i),Ke=ne(le.SEARCH,i);function Xe(){Oe.value&&(Z.value=!0)}const Je=e.computed((()=>{if(i.autoWidth)return{width:void 0!==M.value?`${String(M.value).length+1}ch`:void 0}}));function Ye(e){switch(e.code){case"ArrowUp":de.value&&(ve(),e.preventDefault());break;case"ArrowDown":de.value&&(pe(),e.preventDefault())}s("keydown",e)}return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(Re))},[e.unref(x)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(I),class:"vv-input-text__label"},e.toDisplayString(e.unref(x)),9,me)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:G,class:"vv-input-text__wrapper"},[t.$slots.before?(e.openBlock(),e.createElementBlock("div",be,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(Me))))])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{ref_key:"innerEl",ref:Y,class:"vv-input-text__inner",onClick:e.withModifiers(Xe,["stop"])},[e.unref(Le)?(e.openBlock(),e.createBlock(A,e.mergeProps({key:0},e.unref(Le),{class:"vv-input-text__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(I),ref_key:"inputEl",ref:J},e.unref(He),{style:e.unref(Je),onKeyup:o[0]||(o[0]=e=>s("keyup",e)),onKeydown:Ye,onKeypress:o[1]||(o[1]=e=>s("keypress",e))}),null,16,he),(t.unit||t.$slots.unit)&&e.unref(Ve)?(e.openBlock(),e.createElementBlock("div",ge,[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(Me))),(()=>[e.createTextVNode(e.toDisplayString(t.unit),1)]))])):e.createCommentVNode("v-if",!0)],512),e.unref($e)?(e.openBlock(),e.createBlock(A,e.mergeProps({key:1},e.unref($e),{class:"vv-input-text__icon vv-input-text__icon-after"}),null,16)):e.unref(ie)&&!t.hideActions&&e.unref(Oe)?(e.openBlock(),e.createBlock(e.unref(We),{key:2,onTogglePassword:re})):e.unref(de)&&!t.hideActions&&e.unref(Oe)?(e.openBlock(),e.createBlock(e.unref(qe),{key:3,onStepUp:ve,onStepDown:pe})):e.unref(xe)&&!t.hideActions&&e.unref(Oe)?(e.openBlock(),e.createBlock(e.unref(Ke),{key:4,onClear:Ee})):e.createCommentVNode("v-if",!0),t.$slots.after?(e.openBlock(),e.createElementBlock("div",ye,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(Me))))])):e.createCommentVNode("v-if",!0),e.unref(m)?(e.openBlock(),e.createElementBlock("span",Se,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(Me))),(()=>[e.createTextVNode(e.toDisplayString(e.unref(Pe)),1)]))])):e.createCommentVNode("v-if",!0)],512),e.createVNode(e.unref(je),{id:e.unref(R),class:"vv-input-text__hint"},e.createSlots({_:2},[t.$slots.hint?{name:"hint",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps(e.unref(Fe))))])),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(Fe))))])),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(Fe))))])),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(Fe))))])),key:"3"}:void 0]),1032,["id"]),e.unref(Ne)?(e.openBlock(),e.createBlock(ce,{key:1,ref_key:"dropdownEl",ref:Q,reference:e.unref(G),"autofocus-first":!1,"trigger-width":!0},{items:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(De),(o=>(e.openBlock(),e.createBlock(fe,{key:o,onClick:e.withModifiers((e=>{return t=o,M.value=t,void(null==(l=Q.value)||l.hide());var t,l}),["stop"])},{default:e.withCtx((()=>[e.createElementVNode("div",we,[e.renderSlot(t.$slots,"suggestion",e.mergeProps({ref_for:!0},{value:o}),(()=>[e.createTextVNode(e.toDisplayString(o),1)]))]),e.unref(_e)&&e.unref(Ce)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:t.labelRemoveSuggestion,onClick:e.withModifiers((e=>{return t=o,void(null==(l=_e.value)||l.delete(t));var t,l}),["stop"])},[e.createVNode(A,e.mergeProps({ref_for:!0},e.unref(Ce)),null,16)],8,ke)):e.createCommentVNode("v-if",!0)])),_:2},1032,["onClick"])))),128))])),_:3},8,["reference"])):e.createCommentVNode("v-if",!0)],2))}})}));
@@ -14,17 +14,21 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
14
14
  pattern: StringConstructor;
15
15
  multiple: BooleanConstructor;
16
16
  iconShowPassword: {
17
- type: StringConstructor;
17
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
18
18
  default: "eye-on";
19
19
  };
20
20
  iconHidePassword: {
21
- type: StringConstructor;
21
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
22
22
  default: "eye-off";
23
23
  };
24
24
  iconClear: {
25
- type: StringConstructor;
25
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
26
26
  default: "close";
27
27
  };
28
+ iconRemoveSuggestion: {
29
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
30
+ default: "trash";
31
+ };
28
32
  labelStepUp: {
29
33
  type: StringConstructor;
30
34
  default: string;
@@ -45,6 +49,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
45
49
  type: StringConstructor;
46
50
  default: string;
47
51
  };
52
+ labelRemoveSuggestion: {
53
+ type: StringConstructor;
54
+ default: string;
55
+ };
48
56
  iMask: {
49
57
  type: globalThis.PropType<import("imask/esm/index").FactoryOpts>;
50
58
  default: undefined;
@@ -68,28 +76,66 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
68
76
  type: BooleanConstructor;
69
77
  default: boolean;
70
78
  };
71
- minlength: (StringConstructor | NumberConstructor)[];
72
- maxlength: (StringConstructor | NumberConstructor)[];
73
- placeholder: StringConstructor;
74
- required: BooleanConstructor;
75
- label: (StringConstructor | NumberConstructor)[];
76
- floating: BooleanConstructor;
79
+ maxSuggestions: {
80
+ type: NumberConstructor;
81
+ default: number;
82
+ };
83
+ storageType: {
84
+ type: globalThis.PropType<"local" | "session">;
85
+ default: import("../../constants").StorageType;
86
+ validator: (value: import("../../constants").StorageType) => boolean;
87
+ };
88
+ storageKey: StringConstructor;
89
+ minlength: {
90
+ type: (StringConstructor | NumberConstructor)[];
91
+ default: undefined;
92
+ };
93
+ maxlength: {
94
+ type: (StringConstructor | NumberConstructor)[];
95
+ default: undefined;
96
+ };
97
+ placeholder: {
98
+ type: StringConstructor;
99
+ default: undefined;
100
+ };
101
+ required: {
102
+ type: BooleanConstructor;
103
+ default: boolean;
104
+ };
105
+ label: {
106
+ type: (StringConstructor | NumberConstructor)[];
107
+ default: undefined;
108
+ };
109
+ floating: {
110
+ type: BooleanConstructor;
111
+ default: boolean;
112
+ };
77
113
  icon: {
78
- type: (ObjectConstructor | StringConstructor)[];
114
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
115
+ default: undefined;
79
116
  };
80
117
  iconPosition: {
81
118
  type: globalThis.PropType<"before" | "after">;
82
119
  default: import("../../constants").Position;
83
120
  validation: (value: import("../../constants").Position) => boolean;
84
121
  };
85
- debounce: (StringConstructor | NumberConstructor)[];
122
+ debounce: {
123
+ type: (StringConstructor | NumberConstructor)[];
124
+ default: undefined;
125
+ };
86
126
  count: {
87
- type: (StringConstructor | BooleanConstructor)[];
127
+ type: (BooleanConstructor | StringConstructor)[];
88
128
  default: boolean;
89
129
  validator: (value: string) => boolean;
90
130
  };
91
- modifiers: globalThis.PropType<string | string[]>;
92
- loading: BooleanConstructor;
131
+ modifiers: {
132
+ type: globalThis.PropType<string | string[]>;
133
+ default: undefined;
134
+ };
135
+ loading: {
136
+ type: BooleanConstructor;
137
+ default: boolean;
138
+ };
93
139
  loadingLabel: {
94
140
  type: StringConstructor;
95
141
  default: string;
@@ -98,12 +144,30 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
98
144
  type: StringConstructor;
99
145
  default: string;
100
146
  };
101
- invalid: BooleanConstructor;
102
- invalidLabel: (ArrayConstructor | StringConstructor)[];
103
- valid: BooleanConstructor;
104
- validLabel: (ArrayConstructor | StringConstructor)[];
105
- readonly: BooleanConstructor;
106
- disabled: BooleanConstructor;
147
+ invalid: {
148
+ type: BooleanConstructor;
149
+ default: boolean;
150
+ };
151
+ invalidLabel: {
152
+ type: (ArrayConstructor | StringConstructor)[];
153
+ default: undefined;
154
+ };
155
+ valid: {
156
+ type: BooleanConstructor;
157
+ default: boolean;
158
+ };
159
+ validLabel: {
160
+ type: (ArrayConstructor | StringConstructor)[];
161
+ default: undefined;
162
+ };
163
+ readonly: {
164
+ type: BooleanConstructor;
165
+ default: boolean;
166
+ };
167
+ disabled: {
168
+ type: BooleanConstructor;
169
+ default: boolean;
170
+ };
107
171
  tabindex: {
108
172
  type: (StringConstructor | NumberConstructor)[];
109
173
  default: number;
@@ -112,15 +176,20 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
112
176
  type: StringConstructor;
113
177
  default: string;
114
178
  };
115
- autofocus: BooleanConstructor;
179
+ autofocus: {
180
+ type: BooleanConstructor;
181
+ default: boolean;
182
+ };
116
183
  name: {
117
184
  type: StringConstructor;
118
185
  required: boolean;
119
186
  };
120
187
  id: (StringConstructor | NumberConstructor)[];
121
188
  }, {
122
- $inner: globalThis.Ref<any>;
123
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
189
+ $inner: globalThis.Ref<HTMLInputElement | undefined>;
190
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
191
+ [x: string]: (...args: any[]) => void;
192
+ }, string, import("vue").PublicProps, Readonly<globalThis.ExtractPropTypes<{
124
193
  modelValue: (StringConstructor | NumberConstructor)[];
125
194
  type: {
126
195
  type: globalThis.PropType<import("../VvInputText").InputType>;
@@ -136,17 +205,21 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
136
205
  pattern: StringConstructor;
137
206
  multiple: BooleanConstructor;
138
207
  iconShowPassword: {
139
- type: StringConstructor;
208
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
140
209
  default: "eye-on";
141
210
  };
142
211
  iconHidePassword: {
143
- type: StringConstructor;
212
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
144
213
  default: "eye-off";
145
214
  };
146
215
  iconClear: {
147
- type: StringConstructor;
216
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
148
217
  default: "close";
149
218
  };
219
+ iconRemoveSuggestion: {
220
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
221
+ default: "trash";
222
+ };
150
223
  labelStepUp: {
151
224
  type: StringConstructor;
152
225
  default: string;
@@ -167,6 +240,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
167
240
  type: StringConstructor;
168
241
  default: string;
169
242
  };
243
+ labelRemoveSuggestion: {
244
+ type: StringConstructor;
245
+ default: string;
246
+ };
170
247
  iMask: {
171
248
  type: globalThis.PropType<import("imask/esm/index").FactoryOpts>;
172
249
  default: undefined;
@@ -190,28 +267,66 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
190
267
  type: BooleanConstructor;
191
268
  default: boolean;
192
269
  };
193
- minlength: (StringConstructor | NumberConstructor)[];
194
- maxlength: (StringConstructor | NumberConstructor)[];
195
- placeholder: StringConstructor;
196
- required: BooleanConstructor;
197
- label: (StringConstructor | NumberConstructor)[];
198
- floating: BooleanConstructor;
270
+ maxSuggestions: {
271
+ type: NumberConstructor;
272
+ default: number;
273
+ };
274
+ storageType: {
275
+ type: globalThis.PropType<"local" | "session">;
276
+ default: import("../../constants").StorageType;
277
+ validator: (value: import("../../constants").StorageType) => boolean;
278
+ };
279
+ storageKey: StringConstructor;
280
+ minlength: {
281
+ type: (StringConstructor | NumberConstructor)[];
282
+ default: undefined;
283
+ };
284
+ maxlength: {
285
+ type: (StringConstructor | NumberConstructor)[];
286
+ default: undefined;
287
+ };
288
+ placeholder: {
289
+ type: StringConstructor;
290
+ default: undefined;
291
+ };
292
+ required: {
293
+ type: BooleanConstructor;
294
+ default: boolean;
295
+ };
296
+ label: {
297
+ type: (StringConstructor | NumberConstructor)[];
298
+ default: undefined;
299
+ };
300
+ floating: {
301
+ type: BooleanConstructor;
302
+ default: boolean;
303
+ };
199
304
  icon: {
200
- type: (ObjectConstructor | StringConstructor)[];
305
+ type: globalThis.PropType<string | import("../VvIcon").VvIconProps>;
306
+ default: undefined;
201
307
  };
202
308
  iconPosition: {
203
309
  type: globalThis.PropType<"before" | "after">;
204
310
  default: import("../../constants").Position;
205
311
  validation: (value: import("../../constants").Position) => boolean;
206
312
  };
207
- debounce: (StringConstructor | NumberConstructor)[];
313
+ debounce: {
314
+ type: (StringConstructor | NumberConstructor)[];
315
+ default: undefined;
316
+ };
208
317
  count: {
209
- type: (StringConstructor | BooleanConstructor)[];
318
+ type: (BooleanConstructor | StringConstructor)[];
210
319
  default: boolean;
211
320
  validator: (value: string) => boolean;
212
321
  };
213
- modifiers: globalThis.PropType<string | string[]>;
214
- loading: BooleanConstructor;
322
+ modifiers: {
323
+ type: globalThis.PropType<string | string[]>;
324
+ default: undefined;
325
+ };
326
+ loading: {
327
+ type: BooleanConstructor;
328
+ default: boolean;
329
+ };
215
330
  loadingLabel: {
216
331
  type: StringConstructor;
217
332
  default: string;
@@ -220,12 +335,30 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
220
335
  type: StringConstructor;
221
336
  default: string;
222
337
  };
223
- invalid: BooleanConstructor;
224
- invalidLabel: (ArrayConstructor | StringConstructor)[];
225
- valid: BooleanConstructor;
226
- validLabel: (ArrayConstructor | StringConstructor)[];
227
- readonly: BooleanConstructor;
228
- disabled: BooleanConstructor;
338
+ invalid: {
339
+ type: BooleanConstructor;
340
+ default: boolean;
341
+ };
342
+ invalidLabel: {
343
+ type: (ArrayConstructor | StringConstructor)[];
344
+ default: undefined;
345
+ };
346
+ valid: {
347
+ type: BooleanConstructor;
348
+ default: boolean;
349
+ };
350
+ validLabel: {
351
+ type: (ArrayConstructor | StringConstructor)[];
352
+ default: undefined;
353
+ };
354
+ readonly: {
355
+ type: BooleanConstructor;
356
+ default: boolean;
357
+ };
358
+ disabled: {
359
+ type: BooleanConstructor;
360
+ default: boolean;
361
+ };
229
362
  tabindex: {
230
363
  type: (StringConstructor | NumberConstructor)[];
231
364
  default: number;
@@ -234,44 +367,58 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
234
367
  type: StringConstructor;
235
368
  default: string;
236
369
  };
237
- autofocus: BooleanConstructor;
370
+ autofocus: {
371
+ type: BooleanConstructor;
372
+ default: boolean;
373
+ };
238
374
  name: {
239
375
  type: StringConstructor;
240
376
  required: boolean;
241
377
  };
242
378
  id: (StringConstructor | NumberConstructor)[];
243
- }>> & {
244
- [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
245
- }, {
246
- readonly: boolean;
247
- disabled: boolean;
248
- valid: boolean;
249
- invalid: boolean;
250
- multiple: boolean;
379
+ }>>, {
251
380
  floating: boolean;
381
+ label: string | number;
382
+ disabled: boolean;
383
+ modifiers: string | string[];
252
384
  type: import("../VvInputText").InputType;
253
- tabindex: string | number;
385
+ readonly: boolean;
386
+ storageType: "local" | "session";
254
387
  required: boolean;
388
+ icon: string | import("../VvIcon").VvIconProps;
255
389
  iconPosition: "before" | "after";
256
- autofocus: boolean;
257
390
  loading: boolean;
258
391
  loadingLabel: string;
392
+ multiple: boolean;
259
393
  hintLabel: string;
394
+ valid: boolean;
395
+ validLabel: string | unknown[];
396
+ invalid: boolean;
397
+ invalidLabel: string | unknown[];
398
+ tabindex: string | number;
399
+ placeholder: string;
260
400
  autocomplete: string;
401
+ autofocus: boolean;
261
402
  step: string | number;
262
- iconShowPassword: string;
263
- iconHidePassword: string;
264
- iconClear: string;
403
+ iconShowPassword: string | import("../VvIcon").VvIconProps;
404
+ iconHidePassword: string | import("../VvIcon").VvIconProps;
405
+ iconClear: string | import("../VvIcon").VvIconProps;
406
+ iconRemoveSuggestion: string | import("../VvIcon").VvIconProps;
265
407
  labelStepUp: string;
266
408
  labelStepDown: string;
267
409
  labelShowPassword: string;
268
410
  labelHidePassword: string;
269
411
  labelClear: string;
412
+ labelRemoveSuggestion: string;
270
413
  iMask: import("imask/esm/index").FactoryOpts;
271
414
  masked: string;
272
415
  autoWidth: boolean;
273
416
  hideActions: boolean;
274
417
  selectOnFocus: boolean;
418
+ maxSuggestions: number;
419
+ minlength: string | number;
420
+ maxlength: string | number;
421
+ debounce: string | number;
275
422
  count: string | boolean;
276
423
  }, {}>, {
277
424
  before?(_: {
@@ -334,6 +481,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
334
481
  invalid: boolean;
335
482
  loading: boolean;
336
483
  }): any;
484
+ suggestion?(_: {
485
+ value: string;
486
+ }): any;
337
487
  }>;
338
488
  export default _default;
339
489
  type __VLS_WithTemplateSlots<T, S> = T & {