@8wave/ai-elements 0.103.0-beta.3 → 0.103.0-beta.4

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 (128) hide show
  1. package/dist/_chunks/PkLazyImg-CyeqD59M.js +34 -0
  2. package/dist/_chunks/{PkLazyImg-_389yCnQ.js.map → PkLazyImg-CyeqD59M.js.map} +1 -1
  3. package/dist/_chunks/{PkStreamingMarkdown-YJDdYD0E.js → PkStreamingMarkdown-DIkusrTI.js} +28 -28
  4. package/dist/_chunks/{PkStreamingMarkdown-YJDdYD0E.js.map → PkStreamingMarkdown-DIkusrTI.js.map} +1 -1
  5. package/dist/_chunks/PkToolRequestGeolocation-Cgus94KF.js +69 -0
  6. package/dist/_chunks/{PkToolRequestGeolocation-T16QI-Uv.js.map → PkToolRequestGeolocation-Cgus94KF.js.map} +1 -1
  7. package/dist/_chunks/{PkToolRequestOAuthConnection-C8e5np2q.js → PkToolRequestOAuthConnection-DsUpUh97.js} +21 -21
  8. package/dist/_chunks/{PkToolRequestOAuthConnection-C8e5np2q.js.map → PkToolRequestOAuthConnection-DsUpUh97.js.map} +1 -1
  9. package/dist/_chunks/PkToolShowArtifact-griVx9w3.js +93 -0
  10. package/dist/_chunks/{PkToolShowArtifact-D15GjBm6.js.map → PkToolShowArtifact-griVx9w3.js.map} +1 -1
  11. package/dist/_chunks/{PkToolShowCalendarEvent-D_GjXl2_.js → PkToolShowCalendarEvent-DyiNmqqo.js} +43 -43
  12. package/dist/_chunks/{PkToolShowCalendarEvent-D_GjXl2_.js.map → PkToolShowCalendarEvent-DyiNmqqo.js.map} +1 -1
  13. package/dist/_chunks/PkToolShowComparison-RA72YL7R.js +66 -0
  14. package/dist/_chunks/{PkToolShowComparison-Bp2rP2Hx.js.map → PkToolShowComparison-RA72YL7R.js.map} +1 -1
  15. package/dist/_chunks/{PkToolShowContactForm-NVzIu2t0.js → PkToolShowContactForm-BzDhv2yd.js} +41 -41
  16. package/dist/_chunks/{PkToolShowContactForm-NVzIu2t0.js.map → PkToolShowContactForm-BzDhv2yd.js.map} +1 -1
  17. package/dist/_chunks/{PkToolShowDiagram-BnZrDPVC.js → PkToolShowDiagram-DhXe8IPm.js} +79 -79
  18. package/dist/_chunks/{PkToolShowDiagram-BnZrDPVC.js.map → PkToolShowDiagram-DhXe8IPm.js.map} +1 -1
  19. package/dist/_chunks/{PkToolShowEmail-DCSj4328.js → PkToolShowEmail-CBmfy_I9.js} +34 -34
  20. package/dist/_chunks/{PkToolShowEmail-DCSj4328.js.map → PkToolShowEmail-CBmfy_I9.js.map} +1 -1
  21. package/dist/_chunks/PkToolShowForm-CzIfm5de.js +365 -0
  22. package/dist/_chunks/{PkToolShowForm-ztQFyFd9.js.map → PkToolShowForm-CzIfm5de.js.map} +1 -1
  23. package/dist/_chunks/PkToolShowImageGallery-CSIiRuSC.js +74 -0
  24. package/dist/_chunks/{PkToolShowImageGallery-DiOR0vYa.js.map → PkToolShowImageGallery-CSIiRuSC.js.map} +1 -1
  25. package/dist/_chunks/{PkToolShowLocation-CQmgakEo.js → PkToolShowLocation-BHoUqpx4.js} +4079 -4079
  26. package/dist/_chunks/{PkToolShowLocation-CQmgakEo.js.map → PkToolShowLocation-BHoUqpx4.js.map} +1 -1
  27. package/dist/_chunks/PkToolShowMessage-CpDmPfCG.js +77 -0
  28. package/dist/_chunks/{PkToolShowMessage-BysjJ1oS.js.map → PkToolShowMessage-CpDmPfCG.js.map} +1 -1
  29. package/dist/_chunks/{PkToolShowProductList-D-JXSRmA.js → PkToolShowProductList-B8uuIvGo.js} +28 -28
  30. package/dist/_chunks/{PkToolShowProductList-D-JXSRmA.js.map → PkToolShowProductList-B8uuIvGo.js.map} +1 -1
  31. package/dist/_chunks/{PkToolShowQrCode-BcIwuGqm.js → PkToolShowQrCode-CD2lo3O0.js} +23 -23
  32. package/dist/_chunks/{PkToolShowQrCode-BcIwuGqm.js.map → PkToolShowQrCode-CD2lo3O0.js.map} +1 -1
  33. package/dist/_chunks/{PkToolShowSources-U7etupUP.js → PkToolShowSources-JxaTAEpc.js} +98 -98
  34. package/dist/_chunks/{PkToolShowSources-U7etupUP.js.map → PkToolShowSources-JxaTAEpc.js.map} +1 -1
  35. package/dist/_chunks/{PkToolShowSuggestedReply-Dqe4gtEY.js → PkToolShowSuggestedReply-BTxqEwEm.js} +18 -18
  36. package/dist/_chunks/{PkToolShowSuggestedReply-Dqe4gtEY.js.map → PkToolShowSuggestedReply-BTxqEwEm.js.map} +1 -1
  37. package/dist/_chunks/{PkToolShowVideo-DYMhfXKH.js → PkToolShowVideo-CVksKdPD.js} +17 -17
  38. package/dist/_chunks/{PkToolShowVideo-DYMhfXKH.js.map → PkToolShowVideo-CVksKdPD.js.map} +1 -1
  39. package/dist/_chunks/{PkToolShowWeather-D_pJe5DI.js → PkToolShowWeather-IDwTDozU.js} +68 -68
  40. package/dist/_chunks/{PkToolShowWeather-D_pJe5DI.js.map → PkToolShowWeather-IDwTDozU.js.map} +1 -1
  41. package/dist/_chunks/PkToolShowWebPages-D9Yst_2O.js +78 -0
  42. package/dist/_chunks/{PkToolShowWebPages-CPNgXzrS.js.map → PkToolShowWebPages-D9Yst_2O.js.map} +1 -1
  43. package/dist/_chunks/{PkUrl-C3gMPCjz.js → PkUrl-B3FTSURr.js} +19 -19
  44. package/dist/_chunks/{PkUrl-C3gMPCjz.js.map → PkUrl-B3FTSURr.js.map} +1 -1
  45. package/dist/_chunks/{VvCheckbox.es-CEfwI84M.js → VvCheckbox.es-C_dlDzrr.js} +78 -78
  46. package/dist/_chunks/{VvCheckbox.es-CEfwI84M.js.map → VvCheckbox.es-C_dlDzrr.js.map} +1 -1
  47. package/dist/_chunks/{VvCheckboxGroup.es-B-eWqe8G.js → VvCheckboxGroup.es-hY0kWpC2.js} +197 -197
  48. package/dist/_chunks/{VvCheckboxGroup.es-B-eWqe8G.js.map → VvCheckboxGroup.es-hY0kWpC2.js.map} +1 -1
  49. package/dist/_chunks/VvCombobox.es-DxhDF7ab.js +2044 -0
  50. package/dist/_chunks/{VvCombobox.es-CfRJtWOd.js.map → VvCombobox.es-DxhDF7ab.js.map} +1 -1
  51. package/dist/_chunks/{VvInputText.es-B0HHD6Th.js → VvInputText.es-CdpU8kvP.js} +460 -460
  52. package/dist/_chunks/{VvInputText.es-B0HHD6Th.js.map → VvInputText.es-CdpU8kvP.js.map} +1 -1
  53. package/dist/_chunks/{VvRadio.es-B3u8JJFF.js → VvRadio.es-BruZ5FHR.js} +144 -144
  54. package/dist/_chunks/{VvRadio.es-B3u8JJFF.js.map → VvRadio.es-BruZ5FHR.js.map} +1 -1
  55. package/dist/_chunks/{VvRadioGroup.es--AMV1wAw.js → VvRadioGroup.es-DSv6UdEy.js} +148 -148
  56. package/dist/_chunks/{VvRadioGroup.es--AMV1wAw.js.map → VvRadioGroup.es-DSv6UdEy.js.map} +1 -1
  57. package/dist/_chunks/{VvSelect.es-BfrDID0e.js → VvSelect.es-C244CAei.js} +155 -155
  58. package/dist/_chunks/{VvSelect.es-BfrDID0e.js.map → VvSelect.es-C244CAei.js.map} +1 -1
  59. package/dist/_chunks/VvTextarea.es-DbaPIcWl.js +1166 -0
  60. package/dist/_chunks/{VvTextarea.es-CAzFW944.js.map → VvTextarea.es-DbaPIcWl.js.map} +1 -1
  61. package/dist/_chunks/{dist-BvSGMyWS.js → dist-BgJVX4FG.js} +12 -12
  62. package/dist/_chunks/{dist-BvSGMyWS.js.map → dist-BgJVX4FG.js.map} +1 -1
  63. package/dist/_chunks/{dist-TFHdNK0W.js → dist-C5Y-NI3i.js} +230 -230
  64. package/dist/_chunks/{dist-TFHdNK0W.js.map → dist-C5Y-NI3i.js.map} +1 -1
  65. package/dist/_chunks/{esm-CUYQMpeA.js → esm-BTbGj6W3.js} +25 -25
  66. package/dist/_chunks/{esm-CUYQMpeA.js.map → esm-BTbGj6W3.js.map} +1 -1
  67. package/dist/_chunks/{floating-ui.vue-Br_zOLJv.js → floating-ui.vue-CoA4oagI.js} +16 -16
  68. package/dist/_chunks/{floating-ui.vue-Br_zOLJv.js.map → floating-ui.vue-CoA4oagI.js.map} +1 -1
  69. package/dist/_chunks/{iconify-BGSTR7vH.js → iconify-6ObncgfH.js} +36 -36
  70. package/dist/_chunks/{iconify-BGSTR7vH.js.map → iconify-6ObncgfH.js.map} +1 -1
  71. package/dist/_chunks/{index.es-B9rhQl9Z.js → index.es-BbyodRh9.js} +258 -258
  72. package/dist/_chunks/{index.es-B9rhQl9Z.js.map → index.es-BbyodRh9.js.map} +1 -1
  73. package/dist/_chunks/index.es-gbmOq0Nu.js +3124 -0
  74. package/dist/_chunks/index.es-gbmOq0Nu.js.map +1 -0
  75. package/dist/_chunks/{rolldown-runtime-CEFd7nDs.js → rolldown-runtime-CoeuCKPe.js} +4 -11
  76. package/dist/_chunks/{src-BjFv9Ag8.js → src-CIEdKLKO.js} +2 -2
  77. package/dist/_chunks/{src-BjFv9Ag8.js.map → src-CIEdKLKO.js.map} +1 -1
  78. package/dist/_chunks/useImageFallback-BAsLRsyg.js +19 -0
  79. package/dist/_chunks/{useImageFallback-8kfLDjXm.js.map → useImageFallback-BAsLRsyg.js.map} +1 -1
  80. package/dist/_chunks/{useLightbox-Bq6k-Wlt.js → useLightbox-Epg2fN87.js} +7 -7
  81. package/dist/_chunks/{useLightbox-Bq6k-Wlt.js.map → useLightbox-Epg2fN87.js.map} +1 -1
  82. package/dist/_chunks/useShortUrlResolver--HRa6Od3.js +72 -0
  83. package/dist/_chunks/{useShortUrlResolver-BTJM8XRw.js.map → useShortUrlResolver--HRa6Od3.js.map} +1 -1
  84. package/dist/_chunks/{vue-i18n-BJ7nxwO3.js → vue-i18n-t25g63Be.js} +81 -81
  85. package/dist/_chunks/{vue-i18n-BJ7nxwO3.js.map → vue-i18n-t25g63Be.js.map} +1 -1
  86. package/dist/_chunks/vue.runtime.esm-bundler-B3bThTaf.js +3747 -0
  87. package/dist/_chunks/vue.runtime.esm-bundler-B3bThTaf.js.map +1 -0
  88. package/dist/ai-elements.es.js +1861 -1861
  89. package/dist/ai-elements.es.js.map +1 -1
  90. package/dist-vue/PkChatbot.js +1 -1
  91. package/dist-vue/PkChatbotAuth.js +1 -1
  92. package/dist-vue/PkChatbotFeedbackForm.js +1 -1
  93. package/dist-vue/PkChatbotMessages.js +1 -1
  94. package/dist-vue/PkChatbotViewChat.js +1 -1
  95. package/dist-vue/_chunks/{PkChatbot-DZ6TaZHh.js → PkChatbot-Ch8FlZjC.js} +2 -2
  96. package/dist-vue/_chunks/{PkChatbot-DZ6TaZHh.js.map → PkChatbot-Ch8FlZjC.js.map} +1 -1
  97. package/dist-vue/_chunks/{PkChatbotAuth-CqwTN8ih.js → PkChatbotAuth-DvnmIukc.js} +2 -2
  98. package/dist-vue/_chunks/{PkChatbotAuth-CqwTN8ih.js.map → PkChatbotAuth-DvnmIukc.js.map} +1 -1
  99. package/dist-vue/_chunks/{PkChatbotFeedbackForm-nEevDHmI.js → PkChatbotFeedbackForm-D0RNa7bE.js} +2 -2
  100. package/dist-vue/_chunks/{PkChatbotFeedbackForm-nEevDHmI.js.map → PkChatbotFeedbackForm-D0RNa7bE.js.map} +1 -1
  101. package/dist-vue/_chunks/{PkChatbotMessages-BgsyN-mB.js → PkChatbotMessages-DGO0WIqx.js} +4 -4
  102. package/dist-vue/_chunks/{PkChatbotMessages-BgsyN-mB.js.map → PkChatbotMessages-DGO0WIqx.js.map} +1 -1
  103. package/dist-vue/_chunks/{PkChatbotViewChat-0g30_sQH.js → PkChatbotViewChat-Dkz8dq8N.js} +3 -3
  104. package/dist-vue/_chunks/{PkChatbotViewChat-0g30_sQH.js.map → PkChatbotViewChat-Dkz8dq8N.js.map} +1 -1
  105. package/dist-vue/_chunks/{PkToolShowContactForm-CMK4zR2J.js → PkToolShowContactForm-CkkWxSSz.js} +2 -2
  106. package/dist-vue/_chunks/{PkToolShowContactForm-CMK4zR2J.js.map → PkToolShowContactForm-CkkWxSSz.js.map} +1 -1
  107. package/dist-vue/_chunks/{PkToolShowDiagram-DoklcF3f.js → PkToolShowDiagram-D0NBG-Gy.js} +2 -2
  108. package/dist-vue/_chunks/{PkToolShowDiagram-DoklcF3f.js.map → PkToolShowDiagram-D0NBG-Gy.js.map} +1 -1
  109. package/dist-vue/_chunks/{index.es-BT6Jr2yi.js → index.es-BKxzs6Sh.js} +2 -2
  110. package/dist-vue/_chunks/{index.es-BT6Jr2yi.js.map → index.es-BKxzs6Sh.js.map} +1 -1
  111. package/dist-vue/index.js +10 -10
  112. package/package.json +2 -2
  113. package/dist/_chunks/PkLazyImg-_389yCnQ.js +0 -34
  114. package/dist/_chunks/PkToolRequestGeolocation-T16QI-Uv.js +0 -69
  115. package/dist/_chunks/PkToolShowArtifact-D15GjBm6.js +0 -93
  116. package/dist/_chunks/PkToolShowComparison-Bp2rP2Hx.js +0 -66
  117. package/dist/_chunks/PkToolShowForm-ztQFyFd9.js +0 -365
  118. package/dist/_chunks/PkToolShowImageGallery-DiOR0vYa.js +0 -74
  119. package/dist/_chunks/PkToolShowMessage-BysjJ1oS.js +0 -77
  120. package/dist/_chunks/PkToolShowWebPages-CPNgXzrS.js +0 -78
  121. package/dist/_chunks/VvCombobox.es-CfRJtWOd.js +0 -2044
  122. package/dist/_chunks/VvTextarea.es-CAzFW944.js +0 -1166
  123. package/dist/_chunks/index.es-DvV0VhDa.js +0 -9832
  124. package/dist/_chunks/index.es-DvV0VhDa.js.map +0 -1
  125. package/dist/_chunks/useImageFallback-8kfLDjXm.js +0 -19
  126. package/dist/_chunks/useShortUrlResolver-BTJM8XRw.js +0 -72
  127. package/dist/_chunks/vue.runtime.esm-bundler-DF2of3lp.js +0 -5007
  128. package/dist/_chunks/vue.runtime.esm-bundler-DF2of3lp.js.map +0 -1
@@ -1,2044 +0,0 @@
1
- import { $ as e, A as t, B as n, D as r, E as i, F as a, G as o, H as s, Ht as c, I as l, J as u, K as d, M as f, N as p, P as m, R as h, S as g, T as _, U as ee, Ut as v, V as y, W as te, Wt as ne, Z as b, _ as x, at as S, b as re, bt as C, c as w, d as ie, et as T, f as E, g as D, h as O, j as ae, k as oe, kt as se, l as ce, lt as le, mt as k, q as ue, qt as A, r as de, s as j, t as fe, tt as pe, u as me, v as M, vt as N, w as P, x as F, xt as I, y as L, yt as R, z as he } from "./vue.runtime.esm-bundler-DF2of3lp.js";
2
- import { a as ge, i as z, t as _e } from "./iconify-BGSTR7vH.js";
3
- import { c as ve, d as ye, h as B, l as be, m as xe, n as Se, o as Ce, r as we, s as Te, t as Ee } from "./dist-TFHdNK0W.js";
4
- import { a as De, c as Oe, i as ke, l as Ae, n as je, o as Me, r as Ne, s as Pe, t as Fe } from "./floating-ui.vue-Br_zOLJv.js";
5
- import { t as V } from "./dot-prop-BEIkPL0b.js";
6
- //#region ../../node_modules/.pnpm/@volverjs+ui-vue@0.0.17_@json-render+core@0.19.0_zod@4.4.3__@volverjs+style@0.1.25_@vue_ec33527ad3a6f0f0071872380d65ccd9/node_modules/@volverjs/ui-vue/dist/components/VvCombobox/VvCombobox.es.js
7
- oe(), de(), S(), se();
8
- var Ie = {
9
- showPassword: "eye-on",
10
- hidePassword: "eye-off",
11
- showDatePicker: "calendar",
12
- showTimePicker: "time",
13
- showColorPicker: "color",
14
- clear: "close",
15
- add: "add",
16
- remove: "trash",
17
- edit: "edit",
18
- download: "download"
19
- }, H = { prefix: "normal" }, Le = /* @__PURE__ */ (function(e) {
20
- return e.local = "local", e.session = "session", e;
21
- })({}), Re = /* @__PURE__ */ (function(e) {
22
- return e.absolute = "absolute", e.fixed = "fixed", e;
23
- })({}), U = /* @__PURE__ */ (function(e) {
24
- return e.left = "left", e.right = "right", e.top = "top", e.bottom = "bottom", e;
25
- })({}), ze = /* @__PURE__ */ (function(e) {
26
- return 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;
27
- })({}), Be = /* @__PURE__ */ (function(e) {
28
- return e.before = "before", e.after = "after", e;
29
- })({}), Ve = /* @__PURE__ */ (function(e) {
30
- return e.button = "button", e.submit = "submit", e.reset = "reset", e;
31
- })({}), W = /* @__PURE__ */ (function(e) {
32
- return e.nuxtLink = "nuxt-link", e.routerLink = "router-link", e.a = "a", e.button = "button", e;
33
- })({}), G = /* @__PURE__ */ (function(e) {
34
- return e.button = "button", e.link = "link", e.menuitem = "menuitem", e;
35
- })({}), He = /* @__PURE__ */ (function(e) {
36
- return e.listbox = "listbox", e.menu = "menu", e;
37
- })({}), Ue = /* @__PURE__ */ (function(e) {
38
- return e.option = "option", e.presentation = "presentation", e;
39
- })({}), We = /* @__PURE__ */ Symbol.for("volver"), Ge = /* @__PURE__ */ Symbol.for("buttonGroup"), K = /* @__PURE__ */ Symbol.for("dropdownTrigger"), Ke = /* @__PURE__ */ Symbol.for("dropdownItem"), q = /* @__PURE__ */ Symbol.for("dropdownAction"), qe = {
40
- to: { type: [String, Object] },
41
- href: String,
42
- target: String,
43
- rel: {
44
- type: String,
45
- default: "noopener noreferrer"
46
- }
47
- }, Je = {
48
- valid: {
49
- type: Boolean,
50
- default: !1
51
- },
52
- validLabel: {
53
- type: [String, Array],
54
- default: void 0
55
- }
56
- }, J = {
57
- invalid: {
58
- type: Boolean,
59
- default: !1
60
- },
61
- invalidLabel: {
62
- type: [String, Array],
63
- default: void 0
64
- }
65
- }, Y = {
66
- loading: {
67
- type: Boolean,
68
- default: !1
69
- },
70
- loadingLabel: {
71
- type: String,
72
- default: "Loading..."
73
- }
74
- }, X = { disabled: {
75
- type: Boolean,
76
- default: !1
77
- } }, Z = { required: {
78
- type: Boolean,
79
- default: !1
80
- } }, Ye = { selected: {
81
- type: Boolean,
82
- default: !1
83
- } }, Xe = { active: {
84
- type: Boolean,
85
- default: !1
86
- } }, Ze = { current: {
87
- type: Boolean,
88
- default: !1
89
- } }, Q = {
90
- showClearAction: {
91
- type: Boolean,
92
- default: !1
93
- },
94
- iconClear: {
95
- type: [String, Object],
96
- default: Ie.clear
97
- },
98
- labelClear: {
99
- type: String,
100
- default: "Clear"
101
- }
102
- }, Qe = { pressed: {
103
- type: Boolean,
104
- default: !1
105
- } }, $e = { label: {
106
- type: [String, Number],
107
- default: void 0
108
- } }, et = { readonly: {
109
- type: Boolean,
110
- default: !1
111
- } }, $ = { modifiers: {
112
- type: [String, Array],
113
- default: void 0
114
- } }, tt = { hintLabel: {
115
- type: String,
116
- default: ""
117
- } }, nt = {
118
- options: {
119
- type: Array,
120
- default: () => []
121
- },
122
- labelKey: {
123
- type: [String, Function],
124
- default: "label"
125
- },
126
- valueKey: {
127
- type: [String, Function],
128
- default: "value"
129
- },
130
- disabledKey: {
131
- type: [String, Function],
132
- default: "disabled"
133
- }
134
- }, rt = { count: {
135
- type: [Boolean, String],
136
- default: !1,
137
- validator: (e) => [
138
- !0,
139
- !1,
140
- "limit",
141
- "countdown"
142
- ].includes(e)
143
- } }, it = { debounce: {
144
- type: [Number, String],
145
- default: void 0
146
- } }, at = {
147
- icon: {
148
- type: [String, Object],
149
- default: void 0
150
- },
151
- iconPosition: {
152
- type: String,
153
- default: Be.before,
154
- validation: (e) => Object.values(Be).includes(e)
155
- }
156
- }, ot = { tabindex: {
157
- type: [String, Number],
158
- default: 0
159
- } }, st = { floating: {
160
- type: Boolean,
161
- default: !1
162
- } }, ct = { unselectable: {
163
- type: Boolean,
164
- default: !0
165
- } }, lt = { id: [String, Number] }, ut = {
166
- placement: {
167
- type: String,
168
- default: U.bottom,
169
- validator: (e) => Object.values(U).includes(e) || Object.values(ze).includes(e)
170
- },
171
- strategy: {
172
- type: String,
173
- default: void 0,
174
- validator: (e) => Object.values(Re).includes(e)
175
- },
176
- transitionName: {
177
- type: String,
178
- default: void 0
179
- },
180
- offset: {
181
- type: [
182
- Number,
183
- String,
184
- Object
185
- ],
186
- default: 0
187
- },
188
- shift: {
189
- type: [Boolean, Object],
190
- default: !1
191
- },
192
- flip: {
193
- type: [Boolean, Object],
194
- default: !0
195
- },
196
- size: {
197
- type: [Boolean, Object],
198
- default: () => ({ padding: 10 })
199
- },
200
- autoPlacement: {
201
- type: [Boolean, Object],
202
- default: !1
203
- },
204
- arrow: {
205
- type: Boolean,
206
- default: !1
207
- },
208
- keepOpen: {
209
- type: Boolean,
210
- default: !1
211
- },
212
- autofocusFirst: {
213
- type: Boolean,
214
- default: !0
215
- },
216
- triggerWidth: {
217
- type: Boolean,
218
- default: !1
219
- },
220
- topLayer: {
221
- type: Boolean,
222
- default: !1
223
- }
224
- }, dt = {
225
- ...lt,
226
- name: {
227
- type: String,
228
- required: !0
229
- }
230
- }, ft = { autofocus: {
231
- type: Boolean,
232
- default: !1
233
- } }, pt = { autocomplete: {
234
- type: String,
235
- default: "off"
236
- } };
237
- ({
238
- ...dt,
239
- ...ft,
240
- ...pt,
241
- ...ot,
242
- ...X,
243
- ...et,
244
- ...Je,
245
- ...J,
246
- ...tt,
247
- ...Y,
248
- ...$,
249
- ...rt,
250
- ...it,
251
- ...at,
252
- ...st,
253
- ...$e
254
- }), { ...Z }, {
255
- ...dt,
256
- ...ot,
257
- ...Je,
258
- ...J,
259
- ...tt,
260
- ...X,
261
- ...et,
262
- ...$,
263
- ...$e,
264
- ...Y
265
- }, {
266
- ...Je,
267
- ...J,
268
- ...nt,
269
- ...tt,
270
- ...X,
271
- ...et,
272
- ...$,
273
- ...$e,
274
- ...Y,
275
- ...Z
276
- };
277
- var mt = {
278
- ...X,
279
- ...$e,
280
- ...Qe,
281
- ...Xe,
282
- ...Ze,
283
- ...qe,
284
- type: {
285
- type: String,
286
- default: Ve.button,
287
- validator: (e) => Object.values(Ve).includes(e)
288
- },
289
- ariaLabel: {
290
- type: String,
291
- default: void 0
292
- },
293
- defaultTag: {
294
- type: String,
295
- default: W.button
296
- }
297
- };
298
- Le.local;
299
- var ht = {
300
- ...dt,
301
- ...ot,
302
- ...Je,
303
- ...J,
304
- ...tt,
305
- ...Y,
306
- ...X,
307
- ...et,
308
- ...$,
309
- ...nt,
310
- ...at,
311
- ...st,
312
- ...ut,
313
- ...$e,
314
- ...Z,
315
- ...Q,
316
- transitionName: {
317
- type: String,
318
- default: "vv-dropdown--mobile-fade-block"
319
- },
320
- modelValue: {
321
- type: [
322
- String,
323
- Number,
324
- Boolean,
325
- Object,
326
- Array
327
- ],
328
- default: void 0
329
- },
330
- noResultsLabel: {
331
- type: String,
332
- default: "No results"
333
- },
334
- noOptionsLabel: {
335
- type: String,
336
- default: "No options available"
337
- },
338
- selectedOptionNotFoundLabel: {
339
- type: String,
340
- default: "Selected option not found"
341
- },
342
- selectedHintLabel: {
343
- type: String,
344
- default: "Selected"
345
- },
346
- deselectActionLabel: {
347
- type: String,
348
- default: "Deselect"
349
- },
350
- selectHintLabel: {
351
- type: String,
352
- default: "Press enter to select"
353
- },
354
- deselectHintLabel: {
355
- type: String,
356
- default: "Press enter to remove"
357
- },
358
- addOptionHintLabel: {
359
- type: String,
360
- default: "Press enter to add"
361
- },
362
- closeLabel: {
363
- type: String,
364
- default: "Close"
365
- },
366
- placeholder: String,
367
- addable: Boolean,
368
- searchable: Boolean,
369
- keepSearch: Boolean,
370
- searchFunction: {
371
- type: Function,
372
- default: void 0
373
- },
374
- searchPlaceholder: {
375
- type: String,
376
- default: "Search..."
377
- },
378
- debounceSearch: {
379
- type: [Number, String],
380
- default: 0
381
- },
382
- multiple: Boolean,
383
- minValues: {
384
- type: [Number, String],
385
- default: 0
386
- },
387
- maxValues: [Number, String],
388
- unselectable: {
389
- type: Boolean,
390
- default: !0
391
- },
392
- separator: {
393
- type: String,
394
- default: ", "
395
- },
396
- native: Boolean,
397
- badges: Boolean,
398
- badgeModifiers: {
399
- type: [String, Array],
400
- default: "action sm"
401
- },
402
- triggerWidth: {
403
- ...ut.triggerWidth,
404
- default: !0
405
- },
406
- dropdownModifiers: {
407
- type: [String, Array],
408
- default: "mobile"
409
- },
410
- autoOpen: {
411
- type: Boolean,
412
- default: !1
413
- },
414
- autoselectFirst: {
415
- type: Boolean,
416
- default: !1
417
- },
418
- keepOpen: {
419
- type: Boolean,
420
- default: !1
421
- },
422
- focusOnHover: {
423
- type: Boolean,
424
- default: !0
425
- }
426
- };
427
- function gt() {
428
- return {
429
- ...ht,
430
- options: {
431
- ...ht.options,
432
- type: Array
433
- },
434
- searchFunction: {
435
- ...ht.searchFunction,
436
- type: Function
437
- }
438
- };
439
- }
440
- function _t(e, t, n) {
441
- return n ? xt(e, n) === xt(t, n) : bt(e, t);
442
- }
443
- function vt(e, t) {
444
- if (e.length !== t.length) return !1;
445
- for (let n = e.length; n-- !== 0;) if (!bt(e[n], t[n])) return !1;
446
- return !0;
447
- }
448
- function yt(e, t) {
449
- let n = Object.keys(e), { length: r } = n;
450
- if (r !== Object.keys(t).length) return !1;
451
- for (let e = r; e-- !== 0;) if (!Object.hasOwn(t, n[e])) return !1;
452
- for (let i = r; i-- !== 0;) {
453
- let r = n[i];
454
- if (!bt(e[r], t[r])) return !1;
455
- }
456
- return !0;
457
- }
458
- function bt(e, t) {
459
- if (e === t) return !0;
460
- if (!e || !t || typeof e != "object" || typeof t != "object") return Number.isNaN(e) && Number.isNaN(t);
461
- let n = Array.isArray(e), r = Array.isArray(t);
462
- if (n !== r) return !1;
463
- if (n && r) return vt(e, t);
464
- let i = e instanceof Date, a = t instanceof Date;
465
- if (i !== a) return !1;
466
- if (i && a) return e.getTime() === t.getTime();
467
- let o = e instanceof RegExp, s = t instanceof RegExp;
468
- return o === s ? o && s ? e.toString() === t.toString() : yt(e, t) : !1;
469
- }
470
- function xt(e, t) {
471
- if (e && Object.keys(e).length && t) {
472
- if (!t.includes(".")) return e[t];
473
- let n = t.split("."), r = e;
474
- for (let e = 0, t = n.length; e < t; ++e) {
475
- if (r == null) return null;
476
- r = r[n[e]];
477
- }
478
- return r;
479
- }
480
- return null;
481
- }
482
- function St(e, t) {
483
- if (e != null && t?.length) {
484
- for (let n of t) if (_t(e, n)) return !0;
485
- }
486
- return !1;
487
- }
488
- function Ct(e) {
489
- return typeof e == "string";
490
- }
491
- function wt(e) {
492
- return Array.isArray(e) ? e.filter((e) => Ct(e)).join(" ") : e;
493
- }
494
- function Tt(e, t) {
495
- let n = O(() => le(e) ? e.value : e), i = O(() => wt(n.value.invalidLabel)), a = O(() => wt(n.value.validLabel)), o = O(() => n.value.loadingLabel), s = O(() => n.value.hintLabel), c = O(() => !!(n.value.loading && (t.loading || o.value))), l = O(() => !c.value && !!(n.value.invalid && (t.invalid || i.value))), u = O(() => !c.value && !l.value && !!(n.value.valid && (t.valid || a.value))), d = O(() => !c.value && !l.value && !u.value && !!(t.hint || s.value)), f = O(() => l.value || u.value || c.value || d.value);
496
- return {
497
- hasInvalidLabelOrSlot: l,
498
- hasHintLabelOrSlot: d,
499
- hasValidLabelOrSlot: u,
500
- hasLoadingLabelOrSlot: c,
501
- hintSlotScope: O(() => ({
502
- modelValue: n.value.modelValue,
503
- valid: n.value.valid,
504
- invalid: n.value.invalid,
505
- loading: n.value.loading
506
- })),
507
- HintSlot: P({
508
- name: "HintSlot",
509
- props: { tag: {
510
- type: String,
511
- default: "small"
512
- } },
513
- setup() {
514
- return {
515
- isVisible: f,
516
- invalidLabel: i,
517
- validLabel: a,
518
- loadingLabel: o,
519
- hintLabel: s,
520
- hasInvalidLabelOrSlot: l,
521
- hasValidLabelOrSlot: u,
522
- hasLoadingLabelOrSlot: c,
523
- hasHintLabelOrSlot: d
524
- };
525
- },
526
- render() {
527
- if (this.isVisible) {
528
- let e;
529
- return this.hasInvalidLabelOrSlot && (e = "alert"), this.hasValidLabelOrSlot && (e = "status"), this.hasLoadingLabelOrSlot ? r(this.tag, { role: e }, this.$slots.loading?.() ?? this.loadingLabel) : this.hasInvalidLabelOrSlot ? r(this.tag, { role: e }, this.$slots.invalid?.() ?? this.$slots.invalid ?? this.invalidLabel) : this.hasValidLabelOrSlot ? r(this.tag, { role: e }, this.$slots.valid?.() ?? this.validLabel) : r(this.tag, { role: e }, this.$slots.hint?.() ?? this.$slots.hint ?? this.hintLabel);
530
- }
531
- return null;
532
- }
533
- })
534
- };
535
- }
536
- function Et() {
537
- return t(We, void 0);
538
- }
539
- function Dt(e, t, n) {
540
- return O(() => {
541
- let r = { [e]: !0 }, i = typeof t?.value == "string" ? t.value.split(" ") : t?.value;
542
- return i && Array.isArray(i) && i.forEach((t) => {
543
- t && (r[`${e}--${t}`] = !0);
544
- }), n && Object.keys(n.value).forEach((t) => {
545
- r[`${e}--${t}`] = I(n.value[t]);
546
- }), r;
547
- });
548
- }
549
- var Ot = /* @__PURE__ */ P({
550
- name: "VvIcon",
551
- props: /* @__PURE__ */ ae({
552
- name: {},
553
- color: {},
554
- width: {},
555
- height: {},
556
- provider: {},
557
- prefix: {},
558
- src: {},
559
- horizontalFlip: { type: Boolean },
560
- verticalFlip: { type: Boolean },
561
- flip: {},
562
- mode: {},
563
- inline: { type: Boolean },
564
- rotate: {},
565
- onLoad: { type: Function },
566
- svg: {},
567
- modifiers: {}
568
- }, H),
569
- setup(e) {
570
- let t = e, n = O(() => typeof t.rotate == "string" ? Number.parseFloat(t.rotate) : t.rotate), r = k(!0), i = Et(), { modifiers: a } = R(t), o = Dt("vv-icon", a), s = O(() => t.provider || i?.iconsProvider), c = O(() => {
571
- let e = t.name ?? "", n = `@${s.value}:${t.prefix}:${e}`;
572
- if (ge(n)) return n;
573
- let r = i?.iconsCollections.find((t) => {
574
- let n = `@${s.value}:${t.prefix}:${e}`;
575
- return ge(n);
576
- });
577
- return r ? `@${s.value}:${r.prefix}:${e}` : e;
578
- });
579
- function l(e) {
580
- return globalThis.window === void 0 ? null : new globalThis.DOMParser().parseFromString(e, "text/html").querySelector("svg");
581
- }
582
- function u(e) {
583
- let n = l(e), r = n?.innerHTML.trim() || "";
584
- n && r && z(`@${s.value}:${t.prefix}:${t.name}`, {
585
- body: r,
586
- height: n.viewBox.baseVal.height,
587
- width: n.viewBox.baseVal.width
588
- });
589
- }
590
- return i && t.src && !ge(`@${s.value}:${t.prefix}:${t.name}`) && (r.value = !1, i.fetchIcon(t.src).then((e) => {
591
- e && u(e), r.value = !0;
592
- }).catch((e) => {
593
- throw r.value = !0, /* @__PURE__ */ Error(`Error during fetch icon: ${e?.message}`);
594
- })), t.svg && u(t.svg), (t, i) => I(r) ? (h(), x(I(_e), p({
595
- key: 0,
596
- class: I(o)
597
- }, {
598
- inline: e.inline,
599
- width: e.width,
600
- height: e.height,
601
- horizontalFlip: e.horizontalFlip,
602
- verticalFlip: e.verticalFlip,
603
- flip: e.flip,
604
- rotate: I(n),
605
- color: e.color,
606
- icon: I(c)
607
- }, { onLoad: e.onLoad }), null, 16, ["class", "onLoad"])) : M("v-if", !0);
608
- }
609
- });
610
- function kt(e, t) {
611
- let n = O(() => typeof e?.value == "string" ? { name: e?.value } : e?.value), r = O(() => t?.value === Be.before ? n.value : void 0), i = O(() => t?.value === Be.after ? n.value : void 0);
612
- return {
613
- hasIcon: n,
614
- hasIconLeft: O(() => t?.value === U.left ? n.value : void 0),
615
- hasIconRight: O(() => t?.value === U.right ? n.value : void 0),
616
- hasIconTop: O(() => t?.value === U.top ? n.value : void 0),
617
- hasIconBottom: O(() => t?.value === U.bottom ? n.value : void 0),
618
- hasIconBefore: r,
619
- hasIconAfter: i
620
- };
621
- }
622
- var At = P({
623
- components: { VvIcon: Ot },
624
- props: {
625
- inputType: {
626
- type: String,
627
- default: "input-text"
628
- },
629
- disabled: {
630
- type: Boolean,
631
- default: !1
632
- },
633
- label: {
634
- type: String,
635
- default: "Clear"
636
- },
637
- icon: {
638
- type: [String, Object],
639
- default: "close"
640
- }
641
- },
642
- emits: ["clear"],
643
- setup(e, { emit: t }) {
644
- let { hasIcon: n } = kt(O(() => e.icon));
645
- function r(n) {
646
- n?.stopPropagation(), e.disabled || t("clear");
647
- }
648
- return {
649
- hasIcon: n,
650
- onClick: r
651
- };
652
- },
653
- render() {
654
- let e = this.hasIcon ? r(Ot, {
655
- ...this.hasIcon,
656
- class: `vv-${this.inputType}__icon`
657
- }) : void 0;
658
- return r("button", {
659
- disabled: this.disabled,
660
- class: `vv-${this.inputType}__action`,
661
- ariaLabel: this.label,
662
- type: "button",
663
- onClick: this.onClick
664
- }, e);
665
- }
666
- }), jt = {
667
- ...$,
668
- value: [String, Number]
669
- }, Mt = /* @__PURE__ */ P({
670
- name: "VvBadge",
671
- props: jt,
672
- setup(e) {
673
- let { modifiers: t } = R(e), n = Dt("vv-badge", t);
674
- return (e, t) => (h(), L("span", { class: c(I(n)) }, [y(e.$slots, "default", {}, () => [F(A(e.value), 1)])], 2));
675
- }
676
- });
677
- function Nt(e) {
678
- let n = t(e, void 0), r = O(() => n !== void 0);
679
- function i(e, t, r) {
680
- let i = n?.[e];
681
- if (i) return O({
682
- get() {
683
- return i.value;
684
- },
685
- set(e) {
686
- i.value = e;
687
- }
688
- });
689
- let a = N(t, e);
690
- return O({
691
- get() {
692
- return a.value;
693
- },
694
- set(t) {
695
- r && r(`update:${e}`, t);
696
- }
697
- });
698
- }
699
- return {
700
- group: n,
701
- isInGroup: r,
702
- getGroupOrLocalRef: i
703
- };
704
- }
705
- var Pt = ["update:modelValue"], Ft = {
706
- ...mt,
707
- ...lt,
708
- ...$,
709
- ...ct,
710
- ...Y,
711
- ...at,
712
- iconPosition: {
713
- type: String,
714
- default: U.left,
715
- validator: (e) => Object.values(U).includes(e)
716
- },
717
- loadingIcon: {
718
- type: String,
719
- default: "eos-icons:bubble-loading"
720
- },
721
- toggle: {
722
- type: Boolean,
723
- default: !1
724
- },
725
- value: {
726
- type: [
727
- String,
728
- Number,
729
- Boolean
730
- ],
731
- default: void 0
732
- },
733
- uncheckedValue: {
734
- type: [
735
- String,
736
- Number,
737
- Boolean
738
- ],
739
- default: void 0
740
- },
741
- modelValue: {
742
- type: [
743
- String,
744
- Number,
745
- Boolean
746
- ],
747
- default: void 0
748
- }
749
- };
750
- function It(e, t) {
751
- let { group: n, isInGroup: r, getGroupOrLocalRef: i } = Nt(Ge), { id: a, iconPosition: o, icon: s, label: c, pressed: l } = R(e);
752
- return {
753
- group: n,
754
- isInGroup: r,
755
- modelValue: i("modelValue", e, t),
756
- toggle: i("toggle", e),
757
- unselectable: i("unselectable", e),
758
- multiple: O(() => n?.multiple.value ?? !1),
759
- modifiers: O(() => {
760
- let t = e.modifiers, r = n?.modifiers.value, i = /* @__PURE__ */ new Set();
761
- return t && (Array.isArray(t) || (t = t.split(" ")), t.forEach((e) => i.add(e))), r && (Array.isArray(r) || (r = r.split(" ")), r.forEach((e) => i.add(e))), [...i];
762
- }),
763
- disabled: O(() => !!(e.disabled || n?.disabled.value)),
764
- id: a,
765
- pressed: l,
766
- iconPosition: o,
767
- icon: s,
768
- label: c
769
- };
770
- }
771
- var Lt = [
772
- "click",
773
- "mouseover",
774
- "mouseleave"
775
- ];
776
- function Rt() {
777
- return t(K, {});
778
- }
779
- function zt() {
780
- return t(Ke, {});
781
- }
782
- function Bt() {
783
- return t(q, {});
784
- }
785
- var Vt = /* @__PURE__ */ P({
786
- name: "VvAction",
787
- props: mt,
788
- emits: Lt,
789
- setup(e, { expose: t, emit: n }) {
790
- let r = e, i = n, a = _(), o = Et(), c = k(null);
791
- t({ $el: c });
792
- let { reference: l, bus: u, aria: d, expanded: f } = Rt();
793
- b(() => c.value, (e) => {
794
- l && (l.value = e);
795
- });
796
- let m = O(() => r.pressed || f?.value), { role: g } = Bt(), v = O(() => {
797
- switch (!0) {
798
- case r.disabled: return W.button;
799
- case r.to !== void 0: return o?.nuxt ? s(W.nuxtLink) : W.routerLink;
800
- case r.href !== void 0: return W.a;
801
- default: return r.defaultTag;
802
- }
803
- }), te = O(() => {
804
- let e = {
805
- ...d?.value,
806
- ariaPressed: m.value ? !0 : void 0,
807
- ariaLabel: r.ariaLabel,
808
- role: g?.value
809
- };
810
- switch (v.value) {
811
- case W.a: return {
812
- ...e,
813
- href: r.href,
814
- target: r.target,
815
- rel: r.rel
816
- };
817
- case W.routerLink:
818
- case W.nuxtLink: return {
819
- ...e,
820
- to: r.to,
821
- target: r.target
822
- };
823
- case W.button: return {
824
- ...e,
825
- type: r.type,
826
- disabled: r.disabled
827
- };
828
- default: return e;
829
- }
830
- });
831
- function ne(e) {
832
- if (r.disabled) {
833
- e.preventDefault();
834
- return;
835
- }
836
- if (a?.vnode.props?.onClick) {
837
- i("click", e);
838
- return;
839
- }
840
- u?.emit("click", e);
841
- }
842
- function S(e) {
843
- if (a?.vnode.props?.onMouseover) {
844
- i("mouseover", e);
845
- return;
846
- }
847
- u?.emit("mouseover", e);
848
- }
849
- function re(e) {
850
- if (a?.vnode.props?.onMouseleave) {
851
- i("mouseleave", e);
852
- return;
853
- }
854
- u?.emit("mouseleave", e);
855
- }
856
- return (e, t) => (h(), x(ee(I(v)), p(I(te), {
857
- ref_key: "rootEl",
858
- ref: c,
859
- class: {
860
- active: e.active,
861
- pressed: I(m),
862
- disabled: e.disabled,
863
- current: e.current
864
- },
865
- onClickPassive: ne,
866
- onMouseoverPassive: S,
867
- onMouseleavePassive: re
868
- }), {
869
- default: T(() => [y(e.$slots, "default", {}, () => [F(A(e.label), 1)])]),
870
- _: 3
871
- }, 16, ["class"]));
872
- }
873
- });
874
- function Ht(e) {
875
- return O(() => String(e?.value || d()));
876
- }
877
- var Ut = {
878
- key: 1,
879
- class: "vv-button__label"
880
- }, Wt = {
881
- key: 1,
882
- class: "vv-button__label"
883
- }, Gt = /* @__PURE__ */ P({
884
- name: "VvButton",
885
- inheritAttrs: !1,
886
- props: Ft,
887
- emits: Pt,
888
- setup(e, { expose: t, emit: n }) {
889
- let r = e, i = n, a = o(), s = u(), { id: c, modifiers: l, iconPosition: d, icon: f, label: m, modelValue: g, disabled: _, toggle: ee, unselectable: v } = It(r, i), te = Ht(c), ne = O(() => a?.name || te.value), b = k(null);
890
- t({ $el: O(() => b.value?.$el) });
891
- let S = O(() => ee.value ? Array.isArray(g.value) ? St(ne.value, g.value) : _t(ne.value, g.value) : r.pressed), re = Dt("vv-button", l, O(() => ({
892
- reverse: [U.right, U.bottom].includes(d.value),
893
- column: [U.top, U.bottom].includes(d.value),
894
- "icon-only": !!(f?.value && !m?.value && !s.default)
895
- }))), { hasIcon: C } = kt(f), w = O(() => r.value === void 0 ? ne.value : r.value), ie = O(() => {
896
- if (ee.value) return { onClick: D };
897
- });
898
- function D() {
899
- if (ee.value) {
900
- if (Array.isArray(g.value)) {
901
- if (St(w.value, g.value)) {
902
- v.value && (g.value = g.value.filter((e) => e !== w.value));
903
- return;
904
- }
905
- g.value.push(w.value);
906
- return;
907
- }
908
- if (w.value === g.value && v.value) {
909
- g.value = r.uncheckedValue;
910
- return;
911
- }
912
- g.value = w.value;
913
- }
914
- }
915
- return (e, t) => (h(), x(Vt, p({
916
- ...I(a),
917
- ...I(ie),
918
- disabled: I(_),
919
- pressed: I(S),
920
- active: e.active,
921
- type: e.type,
922
- to: e.to,
923
- href: e.href,
924
- target: e.target,
925
- rel: e.rel,
926
- ariaLabel: e.ariaLabel
927
- }, {
928
- id: I(te),
929
- ref_key: "rootEl",
930
- ref: b,
931
- class: I(re)
932
- }), {
933
- default: T(() => [y(e.$slots, "default", {}, () => [e.loading ? y(e.$slots, "loading", {}, () => [e.loadingIcon ? (h(), x(Ot, {
934
- key: 0,
935
- class: "vv-button__loading-icon",
936
- name: e.loadingIcon
937
- }, null, 8, ["name"])) : M("v-if", !0), e.loadingLabel ? (h(), L("span", Ut, A(e.loadingLabel), 1)) : M("v-if", !0)], void 0, 0) : (h(), L(E, { key: 1 }, [
938
- y(e.$slots, "before"),
939
- I(C) ? (h(), x(Ot, p({ key: 0 }, I(C), { class: "vv-button__icon" }), null, 16)) : M("v-if", !0),
940
- I(m) ? (h(), L("span", Wt, [y(e.$slots, "label", {}, () => [F(A(I(m)), 1)])])) : M("v-if", !0),
941
- y(e.$slots, "after")
942
- ], 64))])]),
943
- _: 3
944
- }, 16, ["id", "class"]));
945
- }
946
- }), Kt = {
947
- ...lt,
948
- ...ut,
949
- ...$,
950
- modelValue: {
951
- type: Boolean,
952
- default: void 0
953
- },
954
- reference: {
955
- type: Object,
956
- default: null
957
- },
958
- role: {
959
- type: String,
960
- default: He.menu,
961
- validator: (e) => Object.values(He).includes(e)
962
- }
963
- }, qt = { focusOnHover: {
964
- type: Boolean,
965
- default: !1
966
- } }, Jt = {
967
- ...X,
968
- ...Ye,
969
- ...ct,
970
- ...$,
971
- deselectHintLabel: { type: String },
972
- selectHintLabel: { type: String },
973
- selectedHintLabel: { type: String },
974
- focusOnHover: {
975
- type: Boolean,
976
- default: !1
977
- }
978
- };
979
- function Yt(e, t) {
980
- let n = globalThis.HTMLElement !== void 0 && "popover" in globalThis.HTMLElement.prototype, r = O(() => n && C(t)), i = O(() => r.value ? "manual" : void 0);
981
- function a() {
982
- return (n && e.value?.matches(":popover-open")) ?? !1;
983
- }
984
- function o() {
985
- if (!(!r.value || !e.value?.isConnected || a())) try {
986
- e.value.showPopover();
987
- } catch {}
988
- }
989
- function s() {
990
- if (!(!e.value || !a())) try {
991
- e.value.hidePopover();
992
- } catch {}
993
- }
994
- return {
995
- isTopLayer: r,
996
- popover: i,
997
- show: o,
998
- hide: s
999
- };
1000
- }
1001
- function Xt({ reference: e, id: t, expanded: n, aria: i }) {
1002
- let a = Ae();
1003
- return {
1004
- bus: a,
1005
- component: P({
1006
- name: "VvDropdownTriggerProvider",
1007
- setup() {
1008
- he(K, {
1009
- reference: e,
1010
- id: t,
1011
- expanded: n,
1012
- aria: i,
1013
- bus: a
1014
- });
1015
- },
1016
- render() {
1017
- return r(E, {}, this.$slots.default?.());
1018
- }
1019
- })
1020
- };
1021
- }
1022
- function Zt({ role: e, ...t }) {
1023
- let n = O(() => e.value === He.listbox ? Ue.option : Ue.presentation);
1024
- return he(Ke, {
1025
- role: n,
1026
- ...t
1027
- }), { itemRole: n };
1028
- }
1029
- function Qt({ expanded: e }) {
1030
- he(q, {
1031
- role: k(G.menuitem),
1032
- expanded: e
1033
- });
1034
- }
1035
- var $t = ["popover"], en = [
1036
- "id",
1037
- "tabindex",
1038
- "role",
1039
- "aria-labelledby"
1040
- ], tn = /* @__PURE__ */ P({
1041
- name: "VvDropdown",
1042
- inheritAttrs: !1,
1043
- props: Kt,
1044
- emits: [
1045
- "update:modelValue",
1046
- "beforeEnter",
1047
- "afterLeave",
1048
- "beforeExpand",
1049
- "beforeCollapse",
1050
- "afterExpand",
1051
- "afterCollapse",
1052
- "before-enter",
1053
- "after-leave",
1054
- "enter",
1055
- "afterEnter",
1056
- "enterCancelled",
1057
- "beforeLeave",
1058
- "leave",
1059
- "leaveCancelled"
1060
- ],
1061
- setup(t, { expose: n, emit: r }) {
1062
- let a = t, s = r, { id: u } = R(a), d = Ht(u), f = o(), _ = k("auto"), ee = k("auto"), x = k(), S = k(), re = k(), C = k(), w = O({
1063
- get: () => a.reference ?? x.value,
1064
- set: (e) => {
1065
- x.value = e;
1066
- }
1067
- }), { isTopLayer: ie, popover: ae, show: oe, hide: se } = Yt(S, () => a.topLayer), le = O(() => ie.value ? Re.fixed : a.strategy), ue = k(!1);
1068
- l(() => {
1069
- ye(S.value, () => {
1070
- ue.value = globalThis.getComputedStyle(S.value).getPropertyValue("--dropdown-custom-position")?.trim() === "true";
1071
- }, {
1072
- attributeFilter: ["style"],
1073
- window: globalThis.window
1074
- });
1075
- });
1076
- function A(e, t, n) {
1077
- return typeof e == "boolean" ? t() : n(e);
1078
- }
1079
- let de = O(() => {
1080
- let e = [];
1081
- if (a.autoPlacement ? e.push(A(a.autoPlacement, () => Ne(), (e) => Ne(e))) : a.flip && e.push(A(a.flip, () => De({ fallbackStrategy: "initialPlacement" }), (e) => De(e))), a.shift && e.push(A(a.shift, () => Pe(), (e) => Pe(e))), a.size) {
1082
- let t = ({ availableWidth: e, availableHeight: t }) => {
1083
- _.value = `${e}px`, ee.value = `${t}px`;
1084
- };
1085
- e.push(A(a.size, () => Oe({ apply: t }), (e) => Oe({
1086
- ...e,
1087
- apply: t
1088
- })));
1089
- }
1090
- return a.offset && e.push(["string", "number"].includes(typeof a.offset) ? Me(Number(a.offset)) : Me(a.offset)), a.arrow && e.push(Fe({ element: re })), e;
1091
- }), { x: j, y: me, middlewareData: N, placement: P, strategy: F } = je(w, S, {
1092
- whileElementsMounted: (...e) => ke(...e, { animationFrame: le.value === Re.fixed }),
1093
- placement: O(() => a.placement),
1094
- strategy: le,
1095
- middleware: de
1096
- }), he = O(() => {
1097
- if (ue.value) return;
1098
- let e = a.triggerWidth && w.value ? `${w.value?.offsetWidth}px` : void 0;
1099
- return {
1100
- position: F.value,
1101
- top: `${me.value ?? 0}px`,
1102
- left: `${j.value ?? 0}px`,
1103
- maxWidth: e ? void 0 : _.value,
1104
- maxHeight: ee.value,
1105
- width: e
1106
- };
1107
- }), ge = O(() => P.value.split("-")[0]), z = O(() => {
1108
- if (ue.value) return;
1109
- let e = {
1110
- [U.top]: U.bottom,
1111
- [U.right]: U.left,
1112
- [U.bottom]: U.top,
1113
- [U.left]: U.right
1114
- }[ge.value];
1115
- return {
1116
- left: N.value.arrow?.x === void 0 ? void 0 : `${N.value.arrow?.x}px`,
1117
- top: N.value.arrow?.y === void 0 ? void 0 : `${N.value.arrow?.y}px`,
1118
- [e]: `${-(re.value?.offsetWidth ?? 0) / 2}px`
1119
- };
1120
- }), _e = xe(a, "modelValue", s), ve = k(!1), B = O({
1121
- get: () => _e.value ?? ve.value,
1122
- set: (e) => {
1123
- if (_e.value === void 0) {
1124
- ve.value = e;
1125
- return;
1126
- }
1127
- _e.value = e;
1128
- }
1129
- });
1130
- e(() => {
1131
- B.value && oe();
1132
- });
1133
- function Te() {
1134
- B.value = !0;
1135
- }
1136
- function Ee() {
1137
- B.value = !1;
1138
- }
1139
- function Ae() {
1140
- B.value = !B.value;
1141
- }
1142
- function V(e) {
1143
- w.value = e;
1144
- }
1145
- Se(S, () => {
1146
- !a.keepOpen && B.value && (B.value = !1);
1147
- }, { ignore: [w] });
1148
- let Ie = O(() => w.value?.getAttribute?.("id") ?? void 0), H = O(() => ({
1149
- "aria-controls": d.value,
1150
- "aria-haspopup": !0,
1151
- "aria-expanded": B.value
1152
- })), { component: Le, bus: ze } = Xt({
1153
- reference: w,
1154
- id: d,
1155
- expanded: B,
1156
- aria: H
1157
- });
1158
- ze.on("click", Ae);
1159
- let { role: Be, modifiers: Ve } = R(a), W = Dt("vv-dropdown", Ve, O(() => ({ arrow: a.arrow }))), { focused: G } = be(S);
1160
- function He(e) {
1161
- return e ? [...e.querySelectorAll("a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"])")].filter((e) => !e.hasAttribute("disabled") && !e.getAttribute("aria-hidden")) : [];
1162
- }
1163
- function Ue() {
1164
- m(() => {
1165
- let e = He(S.value);
1166
- e.length > 0 && e[0].focus({ preventScroll: !0 });
1167
- });
1168
- }
1169
- function We() {
1170
- m(() => {
1171
- let e = He(C.value);
1172
- e.length > 0 && e[0].focus({ preventScroll: !0 });
1173
- });
1174
- }
1175
- function Ge() {
1176
- m(() => {
1177
- if (G.value) {
1178
- let e = He(S.value);
1179
- if (e.length === 0 || !document.activeElement) return;
1180
- let t = e.indexOf(document.activeElement);
1181
- t < e.length - 1 ? e[t + 1].focus({ preventScroll: !0 }) : e[0].focus({ preventScroll: !0 });
1182
- }
1183
- });
1184
- }
1185
- function K() {
1186
- m(() => {
1187
- if (G.value) {
1188
- let e = He(S.value);
1189
- if (e.length === 0 || !document.activeElement) return;
1190
- let t = e.indexOf(document.activeElement);
1191
- if (t > 0) {
1192
- e[t - 1].focus({ preventScroll: !0 });
1193
- return;
1194
- }
1195
- e.at(-1)?.focus({ preventScroll: !0 });
1196
- }
1197
- });
1198
- }
1199
- b(B, (e) => {
1200
- e && a.autofocusFirst && Ue();
1201
- }), n({
1202
- toggle: Ae,
1203
- show: Te,
1204
- hide: Ee,
1205
- init: V,
1206
- focusFirst: Ue,
1207
- focusFirstListElement: We,
1208
- focusNext: Ge,
1209
- focusPrev: K,
1210
- customPosition: ue
1211
- });
1212
- let { itemRole: Ke } = Zt({
1213
- role: Be,
1214
- expanded: B,
1215
- focused: G,
1216
- hovered: Ce(S)
1217
- });
1218
- we("Escape", (e) => {
1219
- B.value && (e.preventDefault(), Ee());
1220
- }), we("ArrowDown", (e) => {
1221
- B.value && G.value && (e.preventDefault(), Ge());
1222
- }), we("ArrowUp", (e) => {
1223
- B.value && G.value && (e.preventDefault(), K());
1224
- }), we([" ", "Enter"], (e) => {
1225
- let t = e.target;
1226
- B.value && G.value && t && t?.click();
1227
- });
1228
- let q = {
1229
- "before-enter": () => {
1230
- s(B.value ? "beforeExpand" : "beforeCollapse"), s("beforeEnter");
1231
- },
1232
- "after-leave": () => {
1233
- B.value || se(), s(B.value ? "afterExpand" : "afterCollapse"), s("afterLeave");
1234
- },
1235
- enter: () => {
1236
- s("enter");
1237
- },
1238
- "after-enter": () => {
1239
- s("afterEnter");
1240
- },
1241
- "enter-cancelled": () => {
1242
- s("enterCancelled");
1243
- },
1244
- "before-leave": () => {
1245
- s("beforeLeave");
1246
- },
1247
- leave: () => {
1248
- s("leave");
1249
- },
1250
- "leave-cancelled": () => {
1251
- s("leaveCancelled");
1252
- }
1253
- };
1254
- return (e, t) => (h(), L(E, null, [g(I(Le), null, {
1255
- default: T(() => [y(e.$slots, "default", v(i({
1256
- init: V,
1257
- show: Te,
1258
- hide: Ee,
1259
- toggle: Ae,
1260
- expanded: I(B),
1261
- aria: I(H)
1262
- })))]),
1263
- _: 3
1264
- }), g(fe, p({ name: e.transitionName }, te(q), { persisted: "" }), {
1265
- default: T(() => [pe(D("div", {
1266
- ref_key: "floatingEl",
1267
- ref: S,
1268
- popover: I(ae),
1269
- style: ne(I(he)),
1270
- class: c(I(W))
1271
- }, [
1272
- a.arrow ? (h(), L("div", {
1273
- key: 0,
1274
- ref_key: "arrowEl",
1275
- ref: re,
1276
- style: ne(I(z)),
1277
- class: "vv-dropdown__arrow"
1278
- }, null, 4)) : M("v-if", !0),
1279
- y(e.$slots, "before", v(i({
1280
- show: Te,
1281
- hide: Ee,
1282
- toggle: Ae,
1283
- expanded: I(B)
1284
- }))),
1285
- D("div", p(I(f), {
1286
- id: I(d),
1287
- ref_key: "listEl",
1288
- ref: C,
1289
- tabindex: I(B) ? void 0 : -1,
1290
- role: I(Be),
1291
- "aria-labelledby": I(Ie),
1292
- class: "vv-dropdown__list"
1293
- }), [y(e.$slots, "items", v(i({
1294
- show: Te,
1295
- hide: Ee,
1296
- toggle: Ae,
1297
- expanded: I(B),
1298
- role: I(Ke)
1299
- })))], 16, en),
1300
- y(e.$slots, "after", v(i({
1301
- show: Te,
1302
- hide: Ee,
1303
- toggle: Ae,
1304
- expanded: I(B)
1305
- })))
1306
- ], 14, $t), [[ce, I(B)]])]),
1307
- _: 3
1308
- }, 16, ["name"])], 64));
1309
- }
1310
- }), nn = {
1311
- class: "vv-dropdown-optgroup",
1312
- role: "presentation",
1313
- tabindex: "-1"
1314
- }, rn = /* @__PURE__ */ P({
1315
- name: "VvDropdownOptgroup",
1316
- props: { ...$e },
1317
- setup(e) {
1318
- let t = e;
1319
- return (e, n) => (h(), L("li", nn, [y(e.$slots, "default", {}, () => [F(A(t.label), 1)])]));
1320
- }
1321
- }), an = /* @__PURE__ */ P({
1322
- name: "VvDropdownItem",
1323
- props: qt,
1324
- setup(e) {
1325
- let t = e, { role: n, expanded: r } = zt(), i = k(null);
1326
- Qt({ expanded: r });
1327
- let a = Ce(i), { focused: o } = ve(i), { focused: s } = be(i);
1328
- return b(a, (e) => {
1329
- e && t.focusOnHover && (o.value = !0);
1330
- }), (e, t) => (h(), L("div", p({ role: I(n) }, {
1331
- ref_key: "element",
1332
- ref: i,
1333
- class: ["vv-dropdown__item", { "focus-visible": I(o) || I(s) }]
1334
- }), [y(e.$slots, "default")], 16));
1335
- }
1336
- }), on = ["title"], sn = /* @__PURE__ */ P({
1337
- name: "VvDropdownOption",
1338
- props: Jt,
1339
- setup(e) {
1340
- let t = e, { modifiers: n } = R(t), r = Dt("vv-dropdown-option", n, O(() => ({
1341
- disabled: t.disabled,
1342
- selected: t.selected,
1343
- unselectable: t.unselectable && t.selected
1344
- }))), a = O(() => t.selected ? t.unselectable ? t.deselectHintLabel : t.selectedHintLabel : t.disabled ? "" : t.selectHintLabel);
1345
- return (e, t) => (h(), x(an, {
1346
- class: c(I(r)),
1347
- tabindex: e.disabled ? -1 : 0,
1348
- "aria-selected": e.selected,
1349
- "aria-disabled": e.disabled,
1350
- "focus-on-hover": e.focusOnHover
1351
- }, {
1352
- default: T(() => [y(e.$slots, "default"), D("span", {
1353
- class: "vv-dropdown-option__hint",
1354
- title: I(a)
1355
- }, [y(e.$slots, "hint", v(i({
1356
- disabled: e.disabled,
1357
- selected: e.selected,
1358
- unselectable: e.unselectable
1359
- })), () => [F(A(I(a)), 1)])], 8, on)]),
1360
- _: 3
1361
- }, 8, [
1362
- "class",
1363
- "tabindex",
1364
- "aria-selected",
1365
- "aria-disabled",
1366
- "focus-on-hover"
1367
- ]));
1368
- }
1369
- }), cn = {
1370
- ...dt,
1371
- ...ft,
1372
- ...pt,
1373
- ...ot,
1374
- ...Je,
1375
- ...J,
1376
- ...tt,
1377
- ...Y,
1378
- ...X,
1379
- ...et,
1380
- ...$,
1381
- ...nt,
1382
- ...at,
1383
- ...st,
1384
- ...ct,
1385
- ...$e,
1386
- ...Q,
1387
- multiple: Boolean,
1388
- required: Boolean,
1389
- size: [String, Number],
1390
- modelValue: {
1391
- type: [
1392
- String,
1393
- Number,
1394
- Boolean,
1395
- Object,
1396
- Array
1397
- ],
1398
- default: void 0
1399
- },
1400
- autoselectFirst: {
1401
- type: Boolean,
1402
- default: !1
1403
- },
1404
- placeholder: String
1405
- };
1406
- function ln() {
1407
- return {
1408
- ...cn,
1409
- options: {
1410
- ...cn.options,
1411
- type: Array,
1412
- default: () => []
1413
- }
1414
- };
1415
- }
1416
- function un(e, t, n) {
1417
- let r = t;
1418
- if (Array.isArray(e) && e.length) {
1419
- let i = e[0];
1420
- i() === t && (r = n);
1421
- }
1422
- if (typeof e == "function" && e() === t && (r = n), typeof e == "object") {
1423
- let i = e.default;
1424
- typeof i == "function" && (i = i()), (typeof i == "object" ? JSON.stringify(i) === JSON.stringify(t) : i === t) && (r = n);
1425
- }
1426
- return r;
1427
- }
1428
- function dn(e, t, n) {
1429
- let r = Et(), i = O(() => {
1430
- if (r?.defaults.value?.[e]) return r.defaults.value[e];
1431
- });
1432
- return O(() => {
1433
- if (i.value === void 0) return n;
1434
- let e = i.value, r = t, a = n;
1435
- return Object.keys(r).reduce((t, n) => {
1436
- let i = a[n];
1437
- return t[n] = n in e ? un(r[n], i, e[n]) : i, t;
1438
- }, {});
1439
- });
1440
- }
1441
- function fn(e, t) {
1442
- let { focused: n } = ve(e);
1443
- return b(n, (n) => {
1444
- t(n ? "focus" : "blur", I(e));
1445
- }), { focused: n };
1446
- }
1447
- function pn(e) {
1448
- let { options: t, labelKey: n, valueKey: r, disabledKey: i } = R(e);
1449
- return {
1450
- options: t,
1451
- getOptionLabel: (e) => typeof e == "string" ? e : typeof n.value == "function" ? n.value(e) : String(n.value ? V(e, n.value) : e),
1452
- getOptionValue: (e) => typeof e == "string" ? e : typeof r.value == "function" ? r.value(e) : r.value ? V(e, r.value) : e,
1453
- isOptionDisabled: (e) => typeof e == "string" ? !1 : typeof i.value == "function" ? i.value(e) : i.value ? !!V(e, i.value) : !1,
1454
- getOptionGrouped: (e) => typeof e == "string" ? [] : typeof e == "object" && e && "options" in e ? e.options : []
1455
- };
1456
- }
1457
- var mn = ["for"], hn = { class: "vv-select__wrapper" }, gn = {
1458
- key: 0,
1459
- class: "vv-select__input-before"
1460
- }, _n = { class: "vv-select__inner" }, vn = ["id"], yn = ["disabled", "hidden"], bn = ["disabled", "value"], xn = ["disabled", "label"], Sn = ["disabled", "value"], Cn = {
1461
- key: 2,
1462
- class: "vv-select__input-after"
1463
- }, wn = /* @__PURE__ */ P({
1464
- name: "VvSelect",
1465
- props: ln(),
1466
- emits: [
1467
- "update:modelValue",
1468
- "focus",
1469
- "blur",
1470
- "clear"
1471
- ],
1472
- setup(e, { emit: t }) {
1473
- let r = e, a = t, o = u(), s = dn("VvSelect", ln(), r), l = k(), { HintSlot: d, hasHintLabelOrSlot: f, hasInvalidLabelOrSlot: m, hintSlotScope: _ } = Tt(s, o), { focused: ee } = fn(l, a);
1474
- function te(e) {
1475
- return typeof e != "string" && e.options?.length;
1476
- }
1477
- let { id: ne, modifiers: S, disabled: C, readonly: w, loading: ie, icon: ae, iconPosition: oe, invalid: se, valid: ce, floating: ue, multiple: de } = R(r), fe = Ht(ne), me = O(() => `${fe.value}-hint`), N = O(() => r.disabled || r.readonly), P = O(() => N.value ? -1 : r.tabindex), F = O({
1478
- get: () => r.modelValue,
1479
- set: (e) => {
1480
- if (Array.isArray(e) && (e = e.filter((e) => e !== void 0), e.length === 0 && !r.unselectable && l.value)) {
1481
- l.value.value = String(r.modelValue);
1482
- return;
1483
- }
1484
- a("update:modelValue", e);
1485
- }
1486
- }), he = O(() => Array.isArray(F.value) ? F.value.length > 0 : F.value !== void 0 && F.value !== null), ge = O(() => !N.value && r.unselectable), z = Te(l);
1487
- b(z, (e) => {
1488
- e && r.autofocus && (ee.value = !0);
1489
- });
1490
- let { hasIconBefore: _e, hasIconAfter: ve } = kt(ae, oe), ye = O(() => {
1491
- if (r.invalid === !0) return !0;
1492
- if (r.valid === !0) return !1;
1493
- }), B = Dt("vv-select", S, O(() => ({
1494
- valid: ce.value,
1495
- invalid: se.value,
1496
- loading: ie.value,
1497
- disabled: C.value,
1498
- readonly: w.value,
1499
- "icon-before": _e.value !== void 0,
1500
- "icon-after": ve.value !== void 0,
1501
- dirty: he.value,
1502
- focus: ee.value && !N.value,
1503
- floating: ue.value,
1504
- multiple: de.value
1505
- }))), { getOptionLabel: be, getOptionValue: xe, isOptionDisabled: Se, getOptionGrouped: Ce } = pn(r);
1506
- b(() => r.options, (e) => {
1507
- if (e?.length && r.autoselectFirst && !he.value) {
1508
- let t = xe(e[0]);
1509
- F.value = r.multiple ? [t] : t;
1510
- }
1511
- }, { immediate: !0 });
1512
- function we() {
1513
- Array.isArray(F.value) ? F.value = [] : F.value = void 0, a("clear");
1514
- }
1515
- let Ee = O(() => ({
1516
- name: r.name,
1517
- tabindex: P.value,
1518
- disabled: N.value,
1519
- required: r.required,
1520
- size: r.size,
1521
- autocomplete: r.autocomplete,
1522
- multiple: r.multiple,
1523
- "aria-invalid": ye.value,
1524
- "aria-describedby": f.value ? me.value : void 0,
1525
- "aria-errormessage": m.value ? me.value : void 0
1526
- })), De = O(() => ({
1527
- valid: r.valid,
1528
- invalid: r.invalid,
1529
- modelValue: r.modelValue
1530
- }));
1531
- return (e, t) => (h(), L("div", { class: c(I(B)) }, [
1532
- e.label ? (h(), L("label", {
1533
- key: 0,
1534
- for: I(fe)
1535
- }, A(e.label), 9, mn)) : M("v-if", !0),
1536
- D("div", hn, [
1537
- e.$slots.before ? (h(), L("div", gn, [y(e.$slots, "before", v(i(I(De))))])) : M("v-if", !0),
1538
- D("div", _n, [
1539
- I(_e) ? (h(), x(Ot, p({ key: 0 }, I(_e), { class: "vv-select__icon" }), null, 16)) : M("v-if", !0),
1540
- pe(D("select", p({
1541
- id: I(fe),
1542
- ref_key: "selectEl",
1543
- ref: l
1544
- }, I(Ee), { "onUpdate:modelValue": t[0] ||= (e) => le(F) ? F.value = e : null }), [e.placeholder ? (h(), L("option", {
1545
- key: 0,
1546
- value: void 0,
1547
- disabled: !I(ge),
1548
- hidden: !I(ge)
1549
- }, A(e.placeholder), 9, yn)) : M("v-if", !0), (h(!0), L(E, null, n(e.options, (e, t) => (h(), L(E, null, [te(e) ? (h(), L("optgroup", {
1550
- key: `group-${t}`,
1551
- disabled: I(Se)(e),
1552
- label: I(be)(e)
1553
- }, [(h(!0), L(E, null, n(I(Ce)(e), (e, n) => (h(), L("option", {
1554
- key: `group-${t}-item-${n}`,
1555
- disabled: I(Se)(e),
1556
- value: I(xe)(e)
1557
- }, A(I(be)(e)), 9, Sn))), 128))], 8, xn)) : (h(), L("option", {
1558
- key: t,
1559
- disabled: I(Se)(e),
1560
- value: I(xe)(e)
1561
- }, A(I(be)(e)), 9, bn))], 64))), 256))], 16, vn), [[j, I(F)]]),
1562
- I(ve) ? (h(), x(Ot, p({ key: 1 }, I(ve), { class: "vv-select__icon vv-select__icon-after" }), null, 16)) : M("v-if", !0)
1563
- ]),
1564
- I(ge) && I(s).showClearAction ? (h(), x(I(At), {
1565
- key: 1,
1566
- "input-type": "select",
1567
- label: e.labelClear,
1568
- icon: e.iconClear,
1569
- disabled: !I(he),
1570
- onClear: we
1571
- }, null, 8, [
1572
- "label",
1573
- "icon",
1574
- "disabled"
1575
- ])) : M("v-if", !0),
1576
- e.$slots.after ? (h(), L("div", Cn, [y(e.$slots, "after", v(i(I(De))))])) : M("v-if", !0)
1577
- ]),
1578
- g(I(d), {
1579
- id: I(me),
1580
- class: "vv-select__hint"
1581
- }, re({ _: 2 }, [
1582
- e.$slots.hint ? {
1583
- name: "hint",
1584
- fn: T(() => [y(e.$slots, "hint", v(i(I(_))))]),
1585
- key: "0"
1586
- } : void 0,
1587
- e.$slots.loading ? {
1588
- name: "loading",
1589
- fn: T(() => [y(e.$slots, "loading", v(i(I(_))))]),
1590
- key: "1"
1591
- } : void 0,
1592
- e.$slots.valid ? {
1593
- name: "valid",
1594
- fn: T(() => [y(e.$slots, "valid", v(i(I(_))))]),
1595
- key: "2"
1596
- } : void 0,
1597
- e.$slots.invalid ? {
1598
- name: "invalid",
1599
- fn: T(() => [y(e.$slots, "invalid", v(i(I(_))))]),
1600
- key: "3"
1601
- } : void 0
1602
- ]), 1032, ["id"])
1603
- ], 2));
1604
- }
1605
- }), Tn = ["id"], En = ["id", "for"], Dn = [
1606
- "id",
1607
- "aria-controls",
1608
- "placeholder"
1609
- ], On = {
1610
- key: 0,
1611
- class: "vv-select__input-before"
1612
- }, kn = { class: "vv-select__inner" }, An = [
1613
- "aria-controls",
1614
- "aria-expanded",
1615
- "aria-labelledby",
1616
- "aria-describedby",
1617
- "aria-errormessage",
1618
- "tabindex"
1619
- ], jn = {
1620
- key: 0,
1621
- class: "vv-select__value"
1622
- }, Mn = ["aria-label", "onClick"], Nn = {
1623
- key: 2,
1624
- class: "vv-select__input-after"
1625
- }, Pn = /* @__PURE__ */ P({
1626
- name: "VvCombobox",
1627
- components: {
1628
- VvDropdown: tn,
1629
- VvDropdownOption: sn,
1630
- VvDropdownOptgroup: rn,
1631
- VvButton: Gt
1632
- },
1633
- props: /* @__PURE__ */ f(gt(), {
1634
- search: {
1635
- type: String,
1636
- default: "",
1637
- required: !1
1638
- },
1639
- searchModifiers: {}
1640
- }),
1641
- emits: /* @__PURE__ */ f([
1642
- "update:modelValue",
1643
- "update:search",
1644
- "update:options",
1645
- "focus",
1646
- "blur",
1647
- "clear",
1648
- "change:search"
1649
- ], ["update:search"]),
1650
- setup(e, { emit: t }) {
1651
- let r = e, o = t, s = u(), l = dn("VvCombobox", gt(), r), d = k(null), f = k(null), m = k(null), _ = k(), { HintSlot: ee, hasHintLabelOrSlot: te, hasInvalidLabelOrSlot: ne, hintSlotScope: S } = Tt(l, s), { focused: C } = fn(d, o), { focused: ae } = be(m), oe;
1652
- function se() {
1653
- clearTimeout(oe), oe = setTimeout(() => {
1654
- !C.value && !ae.value && j.value && P();
1655
- }, 50);
1656
- }
1657
- a(() => clearTimeout(oe)), b(C, (e) => {
1658
- if (r.autoOpen) {
1659
- if (e && !j.value) {
1660
- clearTimeout(oe), N();
1661
- return;
1662
- }
1663
- !e && j.value && !ae.value && se();
1664
- }
1665
- }), b(ae, (e) => {
1666
- if (e) {
1667
- clearTimeout(oe);
1668
- return;
1669
- }
1670
- !C.value && j.value && se();
1671
- });
1672
- let ce = ue(e, "search"), de = B(ce, O(() => Number(r.debounceSearch)));
1673
- b(de, () => {
1674
- o("update:search", de.value), o("change:search", de.value);
1675
- });
1676
- let j = k(!1);
1677
- function fe() {
1678
- V.value || (j.value = !j.value);
1679
- }
1680
- function N() {
1681
- V.value || j.value || (j.value = !0);
1682
- }
1683
- function P() {
1684
- V.value || !j.value || (j.value = !1);
1685
- }
1686
- function he() {
1687
- l.value.searchable && f.value && f.value.focus({ preventScroll: !0 });
1688
- }
1689
- function ge() {
1690
- l.value.keepSearch || (ce.value = "");
1691
- }
1692
- function z(e) {
1693
- return typeof e != "string" && e.options?.length;
1694
- }
1695
- let { id: _e, icon: ve, iconPosition: ye, modifiers: xe, disabled: Se, required: Ce, readonly: Te, loading: De, valid: Oe, invalid: ke, floating: Ae } = R(r), je = Ht(_e), Me = O(() => `${je.value}-hint`), Ne = O(() => `${je.value}-dropdown`), Pe = O(() => `${je.value}-search`), Fe = O(() => `${je.value}-label`), V = O(() => r.disabled || r.readonly), Ie = O(() => V.value ? -1 : r.tabindex), H = O({
1696
- get: () => Array.isArray(r.modelValue) ? r.modelValue : r.modelValue !== void 0 && r.modelValue !== null ? [r.modelValue] : [],
1697
- set: (e) => {
1698
- o("update:modelValue", r.multiple || Array.isArray(r.modelValue) ? e : e.pop());
1699
- }
1700
- }), Le = O(() => H.value.length), Re = O(() => Le.value > 0), U = O(() => r.multiple ? r.maxValues === void 0 ? 1 / 0 : Number(r.maxValues) : 1), ze = O(() => V.value || !r.unselectable ? !1 : Number(r.minValues) === 0 || Le.value > Number(r.minValues)), Be = O(() => V.value ? !1 : !r.multiple || Le.value < U.value), Ve = k(!1), W = O(() => Ve.value || De.value), { hasIconBefore: G, hasIconAfter: Ue } = kt(ve, ye), We = Dt("vv-select", xe, O(() => ({
1701
- disabled: Se.value,
1702
- required: Ce.value,
1703
- loading: W.value,
1704
- readonly: Te.value,
1705
- "icon-before": G.value !== void 0,
1706
- "icon-after": Ue.value !== void 0,
1707
- valid: Oe.value,
1708
- invalid: ke.value,
1709
- dirty: Re.value,
1710
- focus: (C.value || ae.value || j.value) && !V.value,
1711
- floating: Ae.value,
1712
- badges: r.badges
1713
- }))), Ge = k(/* @__PURE__ */ new Set()), { getOptionLabel: K, getOptionValue: Ke, getOptionGrouped: q, isOptionDisabled: qe } = pn(r), Je = O(() => {
1714
- let e = [...Ge.value];
1715
- for (let t of r.options) z(t) ? e.push(...q(t)) : e.push(t);
1716
- return e;
1717
- }), J = O(() => {
1718
- let e = [...r.options, ...Ge.value];
1719
- for (let t of H.value) Je.value.some((e) => {
1720
- let n = Ke(e);
1721
- return typeof n == "object" && typeof t == "object" ? JSON.stringify(n) === JSON.stringify(t) : n === t;
1722
- }) || e.push(t);
1723
- return e;
1724
- });
1725
- b(Ge, (e) => {
1726
- e.size > 0 && o("update:options", J.value);
1727
- });
1728
- function Y(e) {
1729
- return qe(e) || !Be.value && !Z(e);
1730
- }
1731
- let X = Ee(async () => {
1732
- if (l.value.searchFunction) {
1733
- Ve.value = !0;
1734
- let e = await Promise.resolve(l.value.searchFunction(de.value, J.value));
1735
- return Ve.value = !1, e;
1736
- }
1737
- let e = de.value.toLowerCase().trim();
1738
- return e ? J.value?.reduce((t, n) => {
1739
- if (z(n)) {
1740
- let r = K(n).toLowerCase(), i = q(n).filter((t) => K(t).toLowerCase().includes(e));
1741
- if (r.includes(e)) t.push(n);
1742
- else if (i.length > 0) {
1743
- let e = typeof n == "object" ? {
1744
- ...n,
1745
- options: i
1746
- } : n;
1747
- t.push(e);
1748
- }
1749
- return t;
1750
- }
1751
- return K(n).toLowerCase().includes(e) && t.push(n), t;
1752
- }, []) : J.value;
1753
- });
1754
- function Z(e) {
1755
- let t = Ke(e);
1756
- return typeof t == "object" ? H.value.some((e) => typeof e == "object" && JSON.stringify(e) === JSON.stringify(t)) : H.value.includes(t);
1757
- }
1758
- let Ye = O(() => J.value.reduce((e, t) => z(t) ? [...e, ...q(t)] : [...e, t], []).filter((e) => Z(e))), Xe = O(() => Ye.value.map((e) => K(e)).join(r.separator));
1759
- function Ze() {
1760
- r.autoOpen ? N() : fe();
1761
- }
1762
- function Q(e) {
1763
- let t = Z(e), n = Ke(e);
1764
- t && ze.value ? H.value = H.value.filter((e) => typeof n == "object" && typeof e == "object" ? JSON.stringify(e) !== JSON.stringify(n) : e !== n) : !t && Be.value && (r.multiple ? H.value = [...H.value, n] : H.value = [n]), !r.multiple && !r.keepOpen && P();
1765
- }
1766
- function Qe() {
1767
- H.value = [], o("update:search", ""), o("clear");
1768
- }
1769
- b(J, (e) => {
1770
- if (e?.length && r.autoselectFirst && !Re.value) {
1771
- let t = e.find((e) => !z(e));
1772
- if (t) {
1773
- Q(t);
1774
- return;
1775
- }
1776
- let n = e.find((e) => z(e));
1777
- if (n) {
1778
- let e = q(n);
1779
- e.length && Q(e[0]);
1780
- }
1781
- }
1782
- }, { immediate: !0 });
1783
- let $e = O(() => ({
1784
- id: je.value,
1785
- name: r.name,
1786
- tabindex: Ie.value,
1787
- valid: Oe.value,
1788
- validLabel: l.value.validLabel,
1789
- invalid: ke.value,
1790
- invalidLabel: l.value.invalidLabel,
1791
- hintLabel: l.value.hintLabel,
1792
- loading: W.value,
1793
- loadingLabel: l.value.loadingLabel,
1794
- disabled: Se.value,
1795
- readonly: Te.value,
1796
- modifiers: l.value.modifiers,
1797
- options: l.value.options,
1798
- labelKey: l.value.labelKey,
1799
- valueKey: l.value.valueKey,
1800
- icon: l.value.icon,
1801
- iconPosition: l.value.iconPosition,
1802
- floating: l.value.floating,
1803
- unselectable: ze.value,
1804
- autoselectFirst: l.value.autoselectFirst,
1805
- multiple: l.value.multiple,
1806
- label: l.value.label,
1807
- placeholder: l.value.placeholder,
1808
- modelValue: r.modelValue
1809
- })), et = O(() => ({
1810
- id: Ne.value,
1811
- reference: m.value,
1812
- placement: l.value.placement,
1813
- strategy: l.value.strategy,
1814
- transitionName: l.value.transitionName,
1815
- offset: l.value.offset,
1816
- shift: l.value.shift,
1817
- flip: l.value.flip,
1818
- autoPlacement: l.value.autoPlacement,
1819
- arrow: l.value.arrow,
1820
- autofocusFirst: l.value.searchable ? !0 : l.value.autofocusFirst,
1821
- triggerWidth: l.value.triggerWidth,
1822
- topLayer: l.value.topLayer,
1823
- modifiers: l.value.dropdownModifiers
1824
- })), $ = O(() => ({
1825
- valid: r.valid,
1826
- invalid: r.invalid,
1827
- modelValue: r.modelValue
1828
- }));
1829
- we([" ", "Enter"], (e) => {
1830
- r.autoOpen || !j.value && C.value && (e.preventDefault(), e.stopImmediatePropagation(), fe());
1831
- }, { target: d });
1832
- function tt() {
1833
- if (X.value?.length) {
1834
- if (X.value.length === 1) {
1835
- let e = X.value[0];
1836
- if (z(e)) {
1837
- let t = q(e);
1838
- t.length && Q(t[0]);
1839
- return;
1840
- }
1841
- Q(e);
1842
- return;
1843
- }
1844
- _.value?.focusFirstListElement();
1845
- return;
1846
- }
1847
- if (l.value.addable) {
1848
- let e = ce.value.trim();
1849
- if (!e || Je.value.some((t) => K(t).toLowerCase() === e.toLowerCase())) return;
1850
- Ge.value.add(e), Q(e);
1851
- }
1852
- }
1853
- return (e, t) => e.native ? (h(), x(wn, p({ key: 1 }, I($e), { "onUpdate:modelValue": t[3] ||= (e) => o("update:modelValue", e) }), null, 16)) : (h(), L("div", {
1854
- key: 0,
1855
- id: I(je),
1856
- class: c(I(We))
1857
- }, [
1858
- e.label ? (h(), L("label", {
1859
- key: 0,
1860
- id: I(Fe),
1861
- for: I(l).searchable ? I(Pe) : void 0
1862
- }, A(e.label), 9, En)) : M("v-if", !0),
1863
- D("div", {
1864
- ref_key: "wrapperEl",
1865
- ref: m,
1866
- class: "vv-select__wrapper"
1867
- }, [g(tn, p({
1868
- ref_key: "dropdownEl",
1869
- ref: _,
1870
- modelValue: I(j),
1871
- "onUpdate:modelValue": t[2] ||= (e) => le(j) ? j.value = e : null
1872
- }, I(et), {
1873
- role: I(He).listbox,
1874
- onAfterExpand: he,
1875
- onAfterCollapse: ge
1876
- }), re({
1877
- default: T(({ aria: t }) => [
1878
- e.$slots.before ? (h(), L("div", On, [y(e.$slots, "before", v(i(I($))))])) : M("v-if", !0),
1879
- D("div", kn, [
1880
- I(G) ? (h(), x(Ot, p({ key: 0 }, I(G), { class: "vv-select__icon" }), null, 16)) : M("v-if", !0),
1881
- D("div", p({
1882
- ref_key: "inputEl",
1883
- ref: d
1884
- }, t, {
1885
- class: "vv-select__input",
1886
- role: "combobox",
1887
- "aria-controls": I(Ne),
1888
- "aria-expanded": I(j),
1889
- "aria-labelledby": I(Fe),
1890
- "aria-describedby": I(te) ? I(Me) : void 0,
1891
- "aria-errormessage": I(ne) ? I(Me) : void 0,
1892
- tabindex: I(Ie),
1893
- onClickPassive: Ze
1894
- }), [I(Xe) ? y(e.$slots, "value", v(i({
1895
- selectedOptions: I(Ye),
1896
- onInput: Q
1897
- })), () => [e.badges ? (h(!0), L(E, { key: 1 }, n(I(Ye), (t, n) => (h(), x(Mt, {
1898
- key: n,
1899
- modifiers: e.badgeModifiers,
1900
- class: "vv-select__badge"
1901
- }, {
1902
- default: T(() => [F(A(I(K)(t)) + " ", 1), I(ze) ? (h(), L("button", {
1903
- key: 0,
1904
- "aria-label": I(l).deselectActionLabel,
1905
- type: "button",
1906
- onClick: ie((e) => Q(t), ["stop"])
1907
- }, [g(Ot, { name: "close" })], 8, Mn)) : M("v-if", !0)]),
1908
- _: 2
1909
- }, 1032, ["modifiers"]))), 128)) : (h(), L("div", jn, A(I(Xe)), 1))], void 0, 0) : y(e.$slots, "placeholder", {}, () => [F(A(e.placeholder), 1)], void 0, 1)], 16, An),
1910
- I(Ue) ? (h(), x(Ot, p({ key: 1 }, I(Ue), { class: "vv-select__icon vv-select__icon-after" }), null, 16)) : M("v-if", !0)
1911
- ]),
1912
- I(ze) && I(l).showClearAction ? (h(), x(I(At), {
1913
- key: 1,
1914
- "input-type": "select",
1915
- label: e.labelClear,
1916
- icon: e.iconClear,
1917
- disabled: !I(Re),
1918
- onClear: Qe
1919
- }, null, 8, [
1920
- "label",
1921
- "icon",
1922
- "disabled"
1923
- ])) : M("v-if", !0),
1924
- e.$slots.after ? (h(), L("div", Nn, [y(e.$slots, "after", v(i(I($))))])) : M("v-if", !0)
1925
- ]),
1926
- items: T(() => [!I(Se) && I(X)?.length ? (h(!0), L(E, { key: 0 }, n(I(X), (t, r) => (h(), L(E, { key: r }, [z(t) ? (h(), L(E, { key: 0 }, [g(rn, { label: I(K)(t) }, {
1927
- default: T(() => [y(e.$slots, "option-group", p({ ref_for: !0 }, {
1928
- option: t,
1929
- selectedOptions: I(Ye)
1930
- }), () => [F(A(I(K)(t)), 1)])]),
1931
- _: 2
1932
- }, 1032, ["label"]), (h(!0), L(E, null, n(I(q)(t), (t, n) => (h(), x(sn, p({ ref_for: !0 }, {
1933
- selected: Z(t),
1934
- disabled: Y(t),
1935
- unselectable: I(ze),
1936
- deselectHintLabel: I(l).deselectHintLabel,
1937
- selectHintLabel: I(l).selectHintLabel,
1938
- selectedHintLabel: I(l).selectedHintLabel,
1939
- focusOnHover: e.focusOnHover
1940
- }, {
1941
- key: n,
1942
- class: "vv-dropdown-option",
1943
- onClickPassive: (e) => Q(t)
1944
- }), {
1945
- default: T(() => [y(e.$slots, "option", p({ ref_for: !0 }, {
1946
- option: t,
1947
- selectedOptions: I(Ye),
1948
- selected: Z(t),
1949
- disabled: Y(t)
1950
- }), () => [F(A(I(K)(t)), 1)])]),
1951
- _: 2
1952
- }, 1040, ["onClickPassive"]))), 128))], 64)) : (h(), x(sn, p({
1953
- key: 1,
1954
- ref_for: !0
1955
- }, {
1956
- selected: Z(t),
1957
- disabled: Y(t),
1958
- unselectable: I(ze),
1959
- deselectHintLabel: I(l).deselectHintLabel,
1960
- selectHintLabel: I(l).selectHintLabel,
1961
- selectedHintLabel: I(l).selectedHintLabel,
1962
- focusOnHover: e.focusOnHover
1963
- }, {
1964
- class: "vv-dropdown-option",
1965
- onClickPassive: (e) => Q(t)
1966
- }), {
1967
- default: T(() => [y(e.$slots, "option", p({ ref_for: !0 }, {
1968
- option: t,
1969
- selectedOptions: I(Ye),
1970
- selected: Z(t),
1971
- disabled: Y(t)
1972
- }), () => [F(A(I(K)(t)), 1)])]),
1973
- _: 2
1974
- }, 1040, ["onClickPassive"]))], 64))), 128)) : e.options.length ? (h(), x(sn, {
1975
- key: 2,
1976
- modifiers: "inert"
1977
- }, {
1978
- default: T(() => [y(e.$slots, "no-results", {}, () => [F(A(I(l).addable ? I(l).addOptionHintLabel : I(l).noResultsLabel), 1)])]),
1979
- _: 3
1980
- })) : (h(), x(sn, {
1981
- key: 1,
1982
- modifiers: "inert"
1983
- }, {
1984
- default: T(() => [y(e.$slots, "no-options", {}, () => [F(A(I(l).addable && ce.value.length ? I(l).addOptionHintLabel : I(l).noOptionsLabel), 1)])]),
1985
- _: 3
1986
- }))]),
1987
- after: T(() => [y(e.$slots, "dropdown::after", {}, () => [I(_)?.customPosition ? (h(), x(Gt, {
1988
- key: 0,
1989
- label: I(l).closeLabel,
1990
- modifiers: "secondary",
1991
- onClick: t[1] ||= (e) => I(_).hide()
1992
- }, null, 8, ["label"])) : M("v-if", !0)])]),
1993
- _: 2
1994
- }, [I(l).searchable || e.$slots["dropdown::before"] ? {
1995
- name: "before",
1996
- fn: T(() => [y(e.$slots, "dropdown::before"), I(l).searchable && !I(Se) ? pe((h(), L("input", {
1997
- key: 0,
1998
- id: I(Pe),
1999
- ref_key: "inputSearchEl",
2000
- ref: f,
2001
- "onUpdate:modelValue": t[0] ||= (e) => ce.value = e,
2002
- "aria-autocomplete": "list",
2003
- "aria-controls": I(Ne),
2004
- autocomplete: "off",
2005
- spellcheck: "false",
2006
- type: "search",
2007
- class: "vv-dropdown__search",
2008
- placeholder: I(l).searchPlaceholder,
2009
- onKeyup: me(tt, ["enter"])
2010
- }, null, 40, Dn)), [[w, ce.value]]) : M("v-if", !0)]),
2011
- key: "0"
2012
- } : void 0]), 1040, ["modelValue", "role"])], 512),
2013
- g(I(ee), {
2014
- id: I(Me),
2015
- class: "vv-select__hint"
2016
- }, re({ _: 2 }, [
2017
- e.$slots.hint ? {
2018
- name: "hint",
2019
- fn: T(() => [y(e.$slots, "hint", v(i(I(S))))]),
2020
- key: "0"
2021
- } : void 0,
2022
- e.$slots.loading ? {
2023
- name: "loading",
2024
- fn: T(() => [y(e.$slots, "loading", v(i(I(S))))]),
2025
- key: "1"
2026
- } : void 0,
2027
- e.$slots.valid ? {
2028
- name: "valid",
2029
- fn: T(() => [y(e.$slots, "valid", v(i(I(S))))]),
2030
- key: "2"
2031
- } : void 0,
2032
- e.$slots.invalid ? {
2033
- name: "invalid",
2034
- fn: T(() => [y(e.$slots, "invalid", v(i(I(S))))]),
2035
- key: "3"
2036
- } : void 0
2037
- ]), 1032, ["id"])
2038
- ], 10, Tn));
2039
- }
2040
- });
2041
- //#endregion
2042
- export { Pn as default };
2043
-
2044
- //# sourceMappingURL=VvCombobox.es-CfRJtWOd.js.map