@webitel/ui-sdk 26.6.12 → 26.6.14

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 (141) hide show
  1. package/dist/{contacts-BNeuB8IG.js → contacts-Bn25LSM7.js} +2 -2
  2. package/dist/{index-zPIqrQ5N.js → index-CIA7dKZk.js} +59 -59
  3. package/dist/{index-CXuua1os.js → index-DEyszQsx.js} +1 -1
  4. package/dist/{install-BjrTYVuH.js → install-BLruag0s.js} +13988 -12912
  5. package/dist/{isObject-SoSngRgc.js → isObject-wgGRYtgO.js} +1 -1
  6. package/dist/ui-sdk.css +1 -1
  7. package/dist/ui-sdk.js +3 -3
  8. package/dist/ui-sdk.umd.cjs +565 -279
  9. package/dist/{useVidstackSrc-DDO7Varm.js → useVidstackSrc-BBi5oq8T.js} +1 -1
  10. package/dist/{vidstack-Bq6c3Bam-B3uuwZ-b.js → vidstack-Bq6c3Bam-DXIHaRU6.js} +3 -3
  11. package/dist/{vidstack-D2pY00kU-Diq_9isr.js → vidstack-D2pY00kU-BE_AqirM.js} +3 -3
  12. package/dist/{vidstack-DDXt6fpN-CaMFUyJ8.js → vidstack-DDXt6fpN-D3xykUxG.js} +2 -2
  13. package/dist/{vidstack-D_-9AA6_-Bx6tzAhj.js → vidstack-D_-9AA6_-BDS42mA3.js} +2 -2
  14. package/dist/{vidstack-DqAw8m9J-BWMJ1klt.js → vidstack-DqAw8m9J-DtFh5mkx.js} +1 -1
  15. package/dist/{vidstack-audio-DJxrwNnm.js → vidstack-audio-BwtaRJRZ.js} +2 -2
  16. package/dist/{vidstack-dash-DfiQRJoI.js → vidstack-dash-CT0qNTAI.js} +4 -4
  17. package/dist/{vidstack-google-cast-DnCFt073.js → vidstack-google-cast-C4kSroiv.js} +4 -4
  18. package/dist/{vidstack-hls-Rp7tO2GF.js → vidstack-hls-CtCsnt_W.js} +4 -4
  19. package/dist/{vidstack-video-DlMUdTFO.js → vidstack-video-Bzwbx0RC.js} +3 -3
  20. package/dist/{vidstack-vimeo-DJHkA2Lp.js → vidstack-vimeo-CjK5ElAg.js} +4 -4
  21. package/dist/{vidstack-youtube-DG2-kzhq.js → vidstack-youtube-C9_vpuPD.js} +3 -3
  22. package/dist/{wt-action-bar-y0Z_PcDO.js → wt-action-bar-Bc_GH6kU.js} +1 -1
  23. package/dist/{wt-button-select-DlvGzhui.js → wt-button-select-Cc9o-NiI.js} +1 -1
  24. package/dist/{wt-call-media-action-Cdas1rBf.js → wt-call-media-action-sWq9pI2N.js} +1 -1
  25. package/dist/wt-chat-emoji-Cl3YsoL-.js +2909 -0
  26. package/dist/{wt-confirm-dialog-Dsa9e01T.js → wt-confirm-dialog-yyIkkLwI.js} +1 -1
  27. package/dist/{wt-context-menu-B43q5hgv.js → wt-context-menu-6WwSx8qR.js} +1 -1
  28. package/dist/{wt-copy-action-BkjbwUra.js → wt-copy-action-Ea6x__OX.js} +1 -1
  29. package/dist/{wt-datepicker-C9ra8YDO.js → wt-datepicker-Bi8iXDQC.js} +1 -1
  30. package/dist/{wt-display-chip-items-BJBcrF_I.js → wt-display-chip-items-CyshgAI0.js} +8 -8
  31. package/dist/{wt-dual-panel-BHxaWhEJ.js → wt-dual-panel-C3lUe446.js} +1 -1
  32. package/dist/{wt-dummy-DvlpQwdd.js → wt-dummy-07cnh7OP.js} +1 -1
  33. package/dist/{wt-error-page-CZ21yq7F.js → wt-error-page-P4gAwDj2.js} +1 -1
  34. package/dist/{wt-expansion-card-BnOn_xtW.js → wt-expansion-card-DsLok2qe.js} +5 -5
  35. package/dist/{wt-expansion-panel-BiGgAJP9.js → wt-expansion-panel-BLgze326.js} +9 -9
  36. package/dist/{wt-filters-panel-wrapper-DZAZUPuS.js → wt-filters-panel-wrapper-BI7tOtsM.js} +1 -1
  37. package/dist/{wt-galleria-DuA5s2p9.js → wt-galleria-DjUSBG29.js} +1 -1
  38. package/dist/{wt-inline-add-panel-D-huzxeZ.js → wt-inline-add-panel-Bg32h70I.js} +1 -1
  39. package/dist/{wt-navigation-menu-Djvm50Oh.js → wt-navigation-menu-BhoGF372.js} +1 -1
  40. package/dist/{wt-notifications-bar-Ds1CdGwf.js → wt-notifications-bar-o6ePcWRj.js} +2 -2
  41. package/dist/{wt-pagination-DfcicBop.js → wt-pagination-DXVZMbtn.js} +1 -1
  42. package/dist/wt-player-Dv6UMcr3.js +291 -0
  43. package/dist/wt-popover-BPVcjYrX.js +4 -0
  44. package/dist/{wt-popover-U7JE0uoX.js → wt-popover.vue_vue_type_script_setup_true_lang-BxD5Zt_u.js} +1 -1
  45. package/dist/{wt-screen-recordings-action-Cq3rkUYN.js → wt-screen-recordings-action-BjIRc7t6.js} +1 -1
  46. package/dist/{wt-search-bar-C83XJkVf.js → wt-search-bar-CiyJ55hK.js} +1 -1
  47. package/dist/{wt-selection-popup-D1_D542Y.js → wt-selection-popup-DLkerKfA.js} +1 -1
  48. package/dist/{wt-send-message-popup-C6UA_uEZ.js → wt-send-message-popup-CjfsCxfI.js} +18 -18
  49. package/dist/{wt-start-page-CJ0aR8_R.js → wt-start-page-C-3-3fZc.js} +11 -11
  50. package/dist/{wt-status-select-tB1EnTb8.js → wt-status-select-CiKHudco.js} +1 -1
  51. package/dist/{wt-stepper-D0Nr0ou6.js → wt-stepper-CvqNjYsK.js} +1 -1
  52. package/dist/{wt-table-WSCWJ0kN.js → wt-table-CBRWEe6H.js} +10 -10
  53. package/dist/{wt-table-actions-E-qeuwCv.js → wt-table-actions-ByAbJLsX.js} +1 -1
  54. package/dist/{wt-table-column-select-DUjDNDdD.js → wt-table-column-select-BsRkHmev.js} +2 -2
  55. package/dist/{wt-tabs-CkOB-0eU.js → wt-tabs-CtNBd15N.js} +1 -1
  56. package/dist/{wt-tags-input-D8gx3PLP.js → wt-tags-input-DD9rSzuh.js} +12 -12
  57. package/dist/{wt-timepicker-D8XuVSbS.js → wt-timepicker-Cka-r9m0.js} +1 -1
  58. package/dist/{wt-tree-Dw96n1ZK.js → wt-tree-sZocE-Ui.js} +2 -2
  59. package/dist/{wt-tree-table-B_tmJ7aV.js → wt-tree-table-D8JL2d1D.js} +29 -29
  60. package/dist/{wt-type-extension-value-input-Di67yDwH.js → wt-type-extension-value-input-C1Ez10TA.js} +3 -3
  61. package/dist/{wt-vidstack-player-zDlHHScB.js → wt-vidstack-player-Bv44QAeW.js} +10 -10
  62. package/package.json +1 -1
  63. package/src/components/_internals/composables/index.ts +7 -0
  64. package/src/components/_internals/composables/useSelect/useSelect.ts +101 -0
  65. package/src/components/_internals/composables/useSelect/useSelectCustomValues.ts +89 -0
  66. package/src/components/_internals/composables/useSelect/useSelectDropdown.ts +93 -0
  67. package/src/components/_internals/composables/useSelect/useSelectOptions.ts +198 -0
  68. package/src/components/_internals/composables/useSelect/useSelectUtils.ts +32 -0
  69. package/src/{composables → components/_internals/composables}/useWtTable/useWtTable.ts +1 -1
  70. package/src/components/_shared/settings-panel/components/speed-settings/speed-settings.vue +3 -1
  71. package/src/components/_shared/settings-panel/settings-panel.vue +2 -2
  72. package/src/components/index.js +6 -0
  73. package/src/components/wt-chip/wt-chip.vue +11 -2
  74. package/src/components/wt-expansion-card/wt-expansion-card.vue +1 -1
  75. package/src/components/wt-expansion-panel/wt-expansion-panel.vue +1 -1
  76. package/src/components/wt-galleria/wt-galleria.vue +4 -2
  77. package/src/components/wt-input-number/wt-input-number.vue +1 -2
  78. package/src/components/wt-input-text/wt-input-text.vue +3 -2
  79. package/src/components/wt-multi-select/wt-multi-select.vue +254 -0
  80. package/src/components/wt-password/wt-password.vue +1 -2
  81. package/src/components/wt-player/wt-player.vue +12 -1
  82. package/src/components/wt-single-select/wt-single-select.vue +229 -0
  83. package/src/components/wt-table/wt-table.vue +1 -2
  84. package/src/components/wt-tree-table/wt-tree-table.vue +1 -2
  85. package/src/composables/index.ts +0 -6
  86. package/src/locale/en/en.js +3 -0
  87. package/src/locale/es/es.js +3 -0
  88. package/src/locale/kz/kz.js +3 -0
  89. package/src/locale/pl/pl.js +3 -0
  90. package/src/locale/ro/ro.js +3 -0
  91. package/src/locale/ru/ru.js +3 -0
  92. package/src/locale/uk/uk.js +3 -0
  93. package/src/locale/uz/uz.js +3 -0
  94. package/src/locale/vi/vi.js +3 -0
  95. package/src/plugins/primevue/primevue.plugin.js +4 -0
  96. package/src/plugins/primevue/theme/components/checkbox/checkbox.js +1 -1
  97. package/src/plugins/primevue/theme/components/components.js +4 -0
  98. package/src/plugins/primevue/theme/components/multi-select/multi-select.js +32 -0
  99. package/src/plugins/primevue/theme/components/single-select/single-select.js +24 -0
  100. package/types/components/_internals/composables/index.d.ts +7 -0
  101. package/types/components/_internals/composables/useSelect/useSelect.d.ts +29 -0
  102. package/types/components/_internals/composables/useSelect/useSelectCustomValues.d.ts +16 -0
  103. package/types/components/_internals/composables/useSelect/useSelectDropdown.d.ts +20 -0
  104. package/types/components/_internals/composables/useSelect/useSelectOptions.d.ts +20 -0
  105. package/types/components/_internals/composables/useSelect/useSelectUtils.d.ts +3 -0
  106. package/types/{composables → components/_internals/composables}/useWtTable/useWtTable.d.ts +0 -1
  107. package/types/components/wt-chip/wt-chip.vue.d.ts +5 -1
  108. package/types/components/wt-multi-select/wt-multi-select.vue.d.ts +82 -0
  109. package/types/components/wt-select/wt-select.vue.d.ts +1 -1
  110. package/types/components/wt-single-select/wt-single-select.vue.d.ts +83 -0
  111. package/types/components/wt-table/wt-table.vue.d.ts +1 -1
  112. package/types/components/wt-tree-table/wt-tree-table.vue.d.ts +1 -1
  113. package/types/composables/index.d.ts +0 -6
  114. package/types/locale/en/en.d.ts +3 -0
  115. package/types/locale/es/es.d.ts +3 -0
  116. package/types/locale/i18n.d.ts +27 -0
  117. package/types/locale/index.d.ts +27 -0
  118. package/types/locale/kz/kz.d.ts +3 -0
  119. package/types/locale/pl/pl.d.ts +3 -0
  120. package/types/locale/ro/ro.d.ts +3 -0
  121. package/types/locale/ru/ru.d.ts +3 -0
  122. package/types/locale/uk/uk.d.ts +3 -0
  123. package/types/locale/uz/uz.d.ts +3 -0
  124. package/types/locale/vi/vi.d.ts +3 -0
  125. package/types/plugins/primevue/theme/components/components.d.ts +4 -0
  126. package/types/plugins/primevue/theme/components/multi-select/multi-select.d.ts +151 -0
  127. package/types/plugins/primevue/theme/components/single-select/single-select.d.ts +157 -0
  128. package/dist/wt-chat-emoji-C6ouRDpj.js +0 -2429
  129. package/dist/wt-player-CQhYaufW.js +0 -282
  130. package/src/components/wt-select/wt-select-v2.vue +0 -244
  131. package/types/components/wt-select/wt-select-v2.vue.d.ts +0 -77
  132. /package/src/{composables → components/_internals/composables}/useExpansion/useExpansion.ts +0 -0
  133. /package/src/{composables → components/_internals/composables}/useGalleriaFullscreen/useGalleriaFullscreen.ts +0 -0
  134. /package/src/{composables → components/_internals/composables}/useGalleriaMaskClick/useGalleriaMaskClick.ts +0 -0
  135. /package/src/{composables → components/_internals/composables}/useInputControl/useInputControl.ts +0 -0
  136. /package/src/{composables → components/_internals/composables}/useTableColumnDrag/useTableColumnDrag.ts +0 -0
  137. /package/types/{composables → components/_internals/composables}/useExpansion/useExpansion.d.ts +0 -0
  138. /package/types/{composables → components/_internals/composables}/useGalleriaFullscreen/useGalleriaFullscreen.d.ts +0 -0
  139. /package/types/{composables → components/_internals/composables}/useGalleriaMaskClick/useGalleriaMaskClick.d.ts +0 -0
  140. /package/types/{composables → components/_internals/composables}/useInputControl/useInputControl.d.ts +0 -0
  141. /package/types/{composables → components/_internals/composables}/useTableColumnDrag/useTableColumnDrag.d.ts +0 -0
@@ -1,282 +0,0 @@
1
- import { defineComponent as f, computed as E, createElementBlock as c, openBlock as a, createElementVNode as y, createVNode as t, unref as o, withCtx as V, toDisplayString as F, Fragment as I, renderList as R, resolveComponent as M, createBlock as z, ref as T, toRefs as N, normalizeClass as P, createCommentVNode as S } from "vue";
2
- import { E as g, C as i, F as h, G as U, _ as p, H as O } from "./install-BjrTYVuH.js";
3
- import { u as D, T as G } from "./useVidstackSrc-DDO7Varm.js";
4
- import { _ as x } from "./wt-slider.vue_vue_type_script_setup_true_lang-DlaRDHxo.js";
5
- const W = { class: "speed-settings" }, j = { class: "speed-settings__controls" }, H = { class: "speed-settings__label" }, L = { class: "speed-settings__presets" }, $ = 0.25, B = 3, C = 0.25, q = /* @__PURE__ */ f({
6
- __name: "speed-settings",
7
- props: {
8
- modelValue: { default: 1 }
9
- },
10
- emits: ["update:modelValue"],
11
- setup(n, { emit: u }) {
12
- const e = n, r = u, b = [
13
- {
14
- speed: 0.5,
15
- icon: "playback-0.50"
16
- },
17
- {
18
- speed: 0.75,
19
- icon: "playback-0.75"
20
- },
21
- {
22
- speed: 1,
23
- icon: "playback-1.00"
24
- },
25
- {
26
- speed: 1.5,
27
- icon: "playback-1.50"
28
- },
29
- {
30
- speed: 1.75,
31
- icon: "playback-1.75"
32
- }
33
- ], m = E(() => `${e.modelValue.toFixed(2)}x`);
34
- function w() {
35
- const l = parseFloat((e.modelValue - C).toFixed(2)), s = Math.max($, l);
36
- r("update:modelValue", s);
37
- }
38
- function v() {
39
- const l = parseFloat((e.modelValue + C).toFixed(2)), s = Math.min(B, l);
40
- r("update:modelValue", s);
41
- }
42
- return (l, s) => (a(), c("div", W, [
43
- y("div", j, [
44
- t(o(g), {
45
- size: o(i).SM,
46
- disabled: n.modelValue <= $,
47
- class: "speed-settings__step-button",
48
- variant: "outlined",
49
- color: "secondary",
50
- onClick: w
51
- }, {
52
- default: V(() => [
53
- t(o(h), {
54
- icon: "minus",
55
- size: o(i).SM
56
- }, null, 8, ["size"])
57
- ]),
58
- _: 1
59
- }, 8, ["size", "disabled"]),
60
- y("span", H, F(m.value), 1),
61
- t(o(g), {
62
- size: o(i).SM,
63
- disabled: n.modelValue >= B,
64
- class: "speed-settings__step-button",
65
- variant: "outlined",
66
- color: "secondary",
67
- onClick: v
68
- }, {
69
- default: V(() => [
70
- t(o(h), {
71
- icon: "plus",
72
- size: o(i).SM
73
- }, null, 8, ["size"])
74
- ]),
75
- _: 1
76
- }, 8, ["size", "disabled"])
77
- ]),
78
- t(o(U), {
79
- class: "speed-settings__slider",
80
- "model-value": n.modelValue,
81
- min: $,
82
- max: B,
83
- step: C,
84
- "onUpdate:modelValue": s[0] || (s[0] = (d) => l.$emit("update:modelValue", d))
85
- }, null, 8, ["model-value"]),
86
- y("div", L, [
87
- (a(), c(I, null, R(b, (d) => t(o(g), {
88
- key: d.speed,
89
- size: o(i).SM,
90
- variant: "outlined",
91
- class: "speed-settings__preset-button",
92
- color: "secondary",
93
- onClick: (k) => l.$emit("update:modelValue", d.speed)
94
- }, {
95
- default: V(() => [
96
- t(o(h), {
97
- icon: d.icon,
98
- size: o(i).SM
99
- }, null, 8, ["icon", "size"])
100
- ]),
101
- _: 2
102
- }, 1032, ["size", "onClick"])), 64))
103
- ])
104
- ]));
105
- }
106
- }), A = /* @__PURE__ */ p(q, [["__scopeId", "data-v-cf19f492"]]), J = ["onClick"], K = /* @__PURE__ */ f({
107
- __name: "settings-panel",
108
- props: {
109
- modelValue: { default: () => ({
110
- playbackRate: 1
111
- }) }
112
- },
113
- emits: ["update:modelValue"],
114
- setup(n, { emit: u }) {
115
- const e = n, r = u;
116
- function b(m) {
117
- r("update:modelValue", {
118
- ...e.modelValue,
119
- playbackRate: m
120
- });
121
- }
122
- return (m, w) => {
123
- const v = M("wt-icon-btn");
124
- return a(), z(o(O), { class: "settings-panel" }, {
125
- activator: V(({ toggle: l }) => [
126
- y("media-button", {
127
- class: "settings-panel__button",
128
- onClick: l
129
- }, [
130
- t(v, {
131
- icon: "plyr-settings",
132
- size: o(i).SM
133
- }, null, 8, ["size"])
134
- ], 8, J)
135
- ]),
136
- default: V(() => [
137
- t(A, {
138
- "model-value": n.modelValue.playbackRate,
139
- "onUpdate:modelValue": b
140
- }, null, 8, ["model-value"])
141
- ], void 0, !0),
142
- _: 1
143
- });
144
- };
145
- }
146
- }), Q = /* @__PURE__ */ p(K, [["__scopeId", "data-v-16b027f7"]]), X = {}, Y = { class: "mute-button" };
147
- function Z(n, u) {
148
- const e = M("wt-icon");
149
- return a(), c("media-mute-button", Y, [
150
- t(e, {
151
- type: "mute",
152
- icon: "plyr-muted",
153
- class: "mute-icon",
154
- size: "sm"
155
- }),
156
- t(e, {
157
- type: "volume",
158
- icon: "plyr-volume",
159
- class: "volume-icon",
160
- size: "sm"
161
- })
162
- ]);
163
- }
164
- const ee = /* @__PURE__ */ p(X, [["render", Z], ["__scopeId", "data-v-45e5719d"]]), te = { class: "play-button" }, oe = /* @__PURE__ */ f({
165
- __name: "play-button",
166
- setup(n) {
167
- return (u, e) => (a(), c("media-play-button", te, [
168
- t(h, {
169
- icon: "plyr-play",
170
- type: "play",
171
- class: "play-icon",
172
- size: "sm"
173
- }),
174
- t(h, {
175
- icon: "plyr-pause",
176
- type: "pause",
177
- class: "pause-icon",
178
- size: "sm"
179
- })
180
- ]));
181
- }
182
- }), se = /* @__PURE__ */ p(oe, [["__scopeId", "data-v-e6149485"]]), ne = { class: "time-slider media-slider" }, le = /* @__PURE__ */ f({
183
- __name: "time-slider",
184
- setup(n) {
185
- return (u, e) => (a(), c("media-time-slider", ne, [
186
- t(x, { class: "time-slider__slider" })
187
- ]));
188
- }
189
- }), ae = /* @__PURE__ */ p(le, [["__scopeId", "data-v-e57a9871"]]), de = { class: "volume-slider media-slider" }, ie = /* @__PURE__ */ f({
190
- __name: "volume-slider",
191
- setup(n) {
192
- return (u, e) => (a(), c("media-volume-slider", de, [
193
- t(x, { class: "volume-slider__slider" })
194
- ]));
195
- }
196
- }), ce = /* @__PURE__ */ p(ie, [["__scopeId", "data-v-b92a4daf"]]), ue = ["src", "loop", "autoplay", "playback-rate"], re = { class: "controls-group" }, pe = /* @__PURE__ */ f({
197
- __name: "wt-player",
198
- props: {
199
- src: {},
200
- id: {},
201
- fileName: {},
202
- autoplay: { type: Boolean, default: !0 },
203
- loop: { type: Boolean, default: !1 },
204
- download: { type: [String, Function, Boolean], default: () => (n) => n.replace("/stream", "/download") },
205
- resetOnEnd: { type: Boolean, default: !1 },
206
- countdownTimeMode: { type: Boolean },
207
- hideVolumeSlider: { type: Boolean, default: !1 },
208
- hideMuteButton: { type: Boolean, default: !1 },
209
- hideSettings: { type: Boolean, default: !1 },
210
- closable: { type: Boolean, default: !0 },
211
- position: { default: "sticky" },
212
- invertTime: { type: Boolean, default: !0 },
213
- resetVolume: { type: Boolean, default: !1 }
214
- },
215
- emits: ["initialized", "close"],
216
- setup(n, { emit: u }) {
217
- const e = n, r = T({
218
- playbackRate: 1
219
- }), { src: b } = N(e), { normalizedSrcObject: m } = D({
220
- src: b
221
- });
222
- function w() {
223
- const l = typeof e.src == "string" ? e.src : e.src?.src, s = typeof e.download == "function" ? e.download(l) : e.download, d = e.src?.type.split("/").pop(), k = e.fileName || e.id || "unknown", _ = document.createElement("a");
224
- _.style.display = "none", _.href = s, _.download = `${k}.${d}`, document.body.appendChild(_), _.click(), document.body.removeChild(_);
225
- }
226
- function v(l) {
227
- if (!e.resetOnEnd) return;
228
- const s = l.target;
229
- s.currentTime = 0;
230
- }
231
- return (l, s) => {
232
- const d = M("wt-icon-btn");
233
- return a(), c("media-player", {
234
- class: P(["wt-player", `wt-player--position-${e.position}`]),
235
- src: o(m),
236
- loop: e.loop,
237
- autoplay: n.autoplay,
238
- "playback-rate": r.value.playbackRate,
239
- onEnded: v
240
- }, [
241
- s[2] || (s[2] = y("media-provider", null, null, -1)),
242
- y("media-controls-group", re, [
243
- t(se),
244
- t(ae),
245
- t(G, {
246
- countdown: e.countdownTimeMode
247
- }, null, 8, ["countdown"]),
248
- e.hideMuteButton ? S("", !0) : (a(), z(ee, { key: 0 })),
249
- e.hideVolumeSlider ? S("", !0) : (a(), z(ce, { key: 1 })),
250
- e.hideSettings ? S("", !0) : (a(), z(Q, {
251
- key: 2,
252
- "model-value": r.value,
253
- "onUpdate:modelValue": s[0] || (s[0] = (k) => r.value = k)
254
- }, null, 8, ["model-value"])),
255
- e.download ? (a(), c("media-button", {
256
- key: 3,
257
- class: "download-button",
258
- onClick: w
259
- }, [
260
- t(d, {
261
- icon: "plyr-download",
262
- size: o(i).SM
263
- }, null, 8, ["size"])
264
- ])) : S("", !0),
265
- e.closable ? (a(), c("media-button", {
266
- key: 4,
267
- class: "close-button",
268
- onClick: s[1] || (s[1] = (k) => l.$emit("close"))
269
- }, [
270
- t(d, {
271
- icon: "close",
272
- size: o(i).SM
273
- }, null, 8, ["size"])
274
- ])) : S("", !0)
275
- ])
276
- ], 42, ue);
277
- };
278
- }
279
- }), be = /* @__PURE__ */ p(pe, [["__scopeId", "data-v-5dba068e"]]);
280
- export {
281
- be as default
282
- };
@@ -1,244 +0,0 @@
1
- <template>
2
- <p-auto-complete
3
- class="w-full"
4
- :model-value="selectValue"
5
- :suggestions="suggestions"
6
- dropdown
7
- :multiple="multiple"
8
- option-label="name"
9
- complete-on-focus
10
- v-bind="$attrs"
11
- v-on="listeners"
12
- @complete="search"
13
- />
14
- </template>
15
-
16
- <script setup>
17
- import { computed, reactive, ref } from 'vue';
18
-
19
- import isEmpty from '../../scripts/isEmpty.js';
20
-
21
- const props = defineProps({
22
- value: {
23
- // default: (props) => {
24
- // return props.modelValue;
25
- // },
26
- },
27
-
28
- multiple: {
29
- type: Boolean,
30
- default: false,
31
- },
32
-
33
- options: {
34
- type: Array,
35
- default: () => [],
36
- },
37
-
38
- clearable: {
39
- type: Boolean,
40
- default: true,
41
- },
42
- searchMethod: {
43
- type: Function,
44
- },
45
- /*
46
- for taggableMixin functionality
47
- for more info, see WTEL-3181
48
- */
49
- allowCustomValues: {
50
- type: Boolean,
51
- default: false,
52
- description: 'See wt-tags-input "taggable" prop.',
53
- },
54
- // for taggableMixin functionality
55
- handleCustomValuesAdditionManually: {
56
- type: Boolean,
57
- default: false,
58
- description: 'See wt-tags-input "manualTagging" prop.',
59
- },
60
- });
61
-
62
- const emits = defineEmits([
63
- 'reset',
64
- 'search-change',
65
- 'input', // vue 2
66
- 'update:modelValue', // vue 3
67
- 'closed',
68
- 'custom-value', // fires when allowCustomValues and new customValue is added
69
- ]);
70
-
71
- const isOpened = ref(false);
72
- const isLoading = ref(false);
73
- const searchHasNext = ref(true);
74
- const suggestions = ref([]);
75
- const searchParams = reactive({
76
- search: '',
77
- page: 1,
78
- });
79
-
80
- const taggable = computed(() => {
81
- return props.allowCustomValues;
82
- });
83
-
84
- const manualTagging = computed(() => {
85
- return props.handleCustomValuesAdditionManually;
86
- });
87
-
88
- const isApiMode = computed(() => {
89
- return !!props.searchMethod;
90
- });
91
-
92
- const optionsWithCustomValues = computed(() => {
93
- // https://webitel.atlassian.net/browse/WTEL-3181
94
- console.log('props.allowCustomValues', props.allowCustomValues);
95
-
96
- if (!props.allowCustomValues) return selectOptions.value;
97
-
98
- /**
99
- custom values could be restored after refresh, so that they could be not included in options prop,
100
- so that we should add them to options manually (but filter duplicates, which are already in options)
101
-
102
- i assume it's bad decision and it's better to include custom values to options prop,
103
- but current filters logic restores value at filter component, but options value are pre-defined at store state
104
- */
105
-
106
- const customValuesToOptions = Array.isArray(props.value)
107
- ? props.value
108
- : isEmpty(props.value)
109
- ? []
110
- : [
111
- props.value,
112
- ]; //do not add empty values
113
- const optionsWithoutValues = selectOptions.value.filter((opt) => {
114
- const optKey = props.trackBy ? opt[props.trackBy] : opt;
115
- return !customValuesToOptions.some((customValue) => {
116
- const customValueKey = props.trackBy
117
- ? customValue[props.trackBy]
118
- : customValue;
119
- return customValueKey === optKey;
120
- });
121
- });
122
- return [
123
- ...customValuesToOptions,
124
- ...optionsWithoutValues,
125
- ];
126
- });
127
-
128
- const fetchOptions = async ({ search, page }) => {
129
- if (!isApiMode.value) return [];
130
- const { items, next } = await this.searchMethod({
131
- search,
132
- page,
133
- });
134
- searchHasNext.value = next;
135
- return items;
136
- };
137
-
138
- const search = async (event) => {
139
- console.log('event.query', event.query);
140
- console.log('event.query', event);
141
-
142
- if (!isApiMode.value) {
143
- suggestions.value = [
144
- ...props.options,
145
- ];
146
- return suggestions.value;
147
- }
148
-
149
- const fetchedOptions = await fetchOptions({
150
- search: event.query,
151
- page: 1,
152
- });
153
-
154
- suggestions.value = [
155
- ...suggestions.value,
156
- ...fetchedOptions,
157
- ];
158
- };
159
- </script>
160
-
161
- <style scoped>
162
- /* @import './multiselect.css'; */
163
-
164
- .wt-select {
165
- width: 100%;
166
- min-width: 0;
167
- }
168
-
169
- /*
170
- * @author: Oleksandr Palonnyi
171
- *
172
- * [WTEL-6814](https://webitel.atlassian.net/browse/WTEL-6814)
173
- *
174
- * added pointer-events: auto; to have access to multiselect__limit when select is disabled.
175
- */
176
- .multiselect__limit {
177
- pointer-events: auto;
178
- }
179
-
180
- .wt-select :deep(.multiselect__single-label) {
181
- /* text overflow 3 dots */
182
- font-family: 'Montserrat', monospace;
183
- font-size: 14px;
184
- font-weight: 400;
185
- line-height: 24px;
186
- text-transform: none;
187
- display: block;
188
- overflow: hidden;
189
- max-width: 100%;
190
- white-space: nowrap;
191
- text-overflow: ellipsis;
192
- }
193
-
194
- .wt-select :deep(.multiselect--active .multiselect__strong) {
195
- display: none;
196
- }
197
-
198
- /* right padding setup */
199
-
200
- /* default case */
201
- .wt-select :deep(.multiselect) .multiselect__tags {
202
- padding: var(--input-padding) calc(
203
- var(--input-padding) + var(--icon-md-size) +
204
- var(--select-caret-right-pos)
205
- ) var(--input-padding) var(--input-padding);
206
- }
207
-
208
- /* only chip */
209
- .wt-select.wt-select--multiple:not(.wt-select--clearable) :deep(.multiselect) .multiselect__tags {
210
- padding-right: calc(
211
- var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding) + 50px + var(--input-padding)
212
- );
213
- }
214
-
215
- .wt-select.wt-select--multiple:not(.wt-select--clearable) .multiselect__limit {
216
- right: calc(var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding));
217
- }
218
-
219
- /* only clearable */
220
- .wt-select.wt-select--clearable:not(.wt-select--multiple) :deep(.multiselect) .multiselect__tags {
221
- padding-right: calc(
222
- var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding) + var(--icon-md-size) + var(--input-padding)
223
- );
224
- }
225
-
226
- .wt-select.wt-select--clearable:not(.wt-select--multiple) .multiselect__clear {
227
- right: calc(var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding));
228
- }
229
-
230
- /* clearable and chip */
231
- .wt-select.wt-select--multiple.wt-select--clearable :deep(.multiselect) .multiselect__tags {
232
- padding-right: calc(
233
- var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding) + var(--icon-md-size) + var(--input-padding) + 50px + var(--input-padding)
234
- );
235
- }
236
-
237
- .wt-select.wt-select--multiple.wt-select--clearable .multiselect__clear {
238
- right: calc(var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding));
239
- }
240
-
241
- .wt-select.wt-select--multiple.wt-select--clearable .multiselect__limit {
242
- right: calc(var(--select-caret-right-pos) + var(--icon-md-size) + var(--input-padding) + var(--icon-md-size) + var(--input-padding));
243
- }
244
- </style>
@@ -1,77 +0,0 @@
1
- declare const _default: typeof __VLS_export;
2
- export default _default;
3
- declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
- value: {};
5
- multiple: {
6
- type: BooleanConstructor;
7
- default: boolean;
8
- };
9
- options: {
10
- type: ArrayConstructor;
11
- default: () => any[];
12
- };
13
- clearable: {
14
- type: BooleanConstructor;
15
- default: boolean;
16
- };
17
- searchMethod: {
18
- type: FunctionConstructor;
19
- };
20
- allowCustomValues: {
21
- type: BooleanConstructor;
22
- default: boolean;
23
- description: string;
24
- };
25
- handleCustomValuesAdditionManually: {
26
- type: BooleanConstructor;
27
- default: boolean;
28
- description: string;
29
- };
30
- }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
31
- input: (...args: any[]) => void;
32
- reset: (...args: any[]) => void;
33
- closed: (...args: any[]) => void;
34
- "update:modelValue": (...args: any[]) => void;
35
- "search-change": (...args: any[]) => void;
36
- "custom-value": (...args: any[]) => void;
37
- }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
38
- value: {};
39
- multiple: {
40
- type: BooleanConstructor;
41
- default: boolean;
42
- };
43
- options: {
44
- type: ArrayConstructor;
45
- default: () => any[];
46
- };
47
- clearable: {
48
- type: BooleanConstructor;
49
- default: boolean;
50
- };
51
- searchMethod: {
52
- type: FunctionConstructor;
53
- };
54
- allowCustomValues: {
55
- type: BooleanConstructor;
56
- default: boolean;
57
- description: string;
58
- };
59
- handleCustomValuesAdditionManually: {
60
- type: BooleanConstructor;
61
- default: boolean;
62
- description: string;
63
- };
64
- }>> & Readonly<{
65
- onInput?: (...args: any[]) => any;
66
- onReset?: (...args: any[]) => any;
67
- onClosed?: (...args: any[]) => any;
68
- "onUpdate:modelValue"?: (...args: any[]) => any;
69
- "onSearch-change"?: (...args: any[]) => any;
70
- "onCustom-value"?: (...args: any[]) => any;
71
- }>, {
72
- options: unknown[];
73
- multiple: boolean;
74
- allowCustomValues: boolean;
75
- clearable: boolean;
76
- handleCustomValuesAdditionManually: boolean;
77
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;