@webitel/ui-sdk 26.8.103 → 26.8.105

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 (36) hide show
  1. package/dist/{clients-ClR-VL_c.js → clients-BZ1QzRFi.js} +4 -2
  2. package/dist/{components-CB2t5ag8.js → components-D574RP8y.js} +10 -6
  3. package/dist/{composables-OP5kSvlh.js → composables-Vg-QfE_2.js} +112 -86
  4. package/dist/ui-sdk.css +1 -1
  5. package/dist/ui-sdk.js +1 -1
  6. package/dist/ui-sdk.umd.cjs +512 -512
  7. package/dist/{wt-chat-emoji-DwGl685x.js → wt-chat-emoji-D1RzspYn.js} +1 -1
  8. package/dist/{wt-display-chip-items-_VHRHB6L.js → wt-display-chip-items-D9E7qoJ8.js} +1 -1
  9. package/dist/{wt-expansion-card-CJjtuFDk.js → wt-expansion-card-DzZYhwnW.js} +1 -1
  10. package/dist/{wt-galleria-CmaNfz7E.js → wt-galleria-iRpRiDc6.js} +1 -1
  11. package/dist/{wt-send-message-popup-Dl-FeGOx.js → wt-send-message-popup-C_6OHIhY.js} +2 -2
  12. package/dist/{wt-table-xmGhfp4p.js → wt-table-_qNHChZt.js} +2 -2
  13. package/dist/{wt-type-extension-value-input-Cd0towde.js → wt-type-extension-value-input-C9aMICVN.js} +2 -2
  14. package/dist/{wt-vidstack-player-IfN1Nbyd.js → wt-vidstack-player-CLimONj6.js} +1 -1
  15. package/package.json +1 -1
  16. package/src/components/_internals/composables/useSelect/__tests__/useSelectAutoOpen.spec.ts +206 -0
  17. package/src/components/_internals/composables/useSelect/types.ts +1 -0
  18. package/src/components/_internals/composables/useSelect/useSelect.ts +6 -2
  19. package/src/components/_internals/composables/useSelect/useSelectAutoOpen.ts +106 -0
  20. package/src/components/_internals/types/PrimevueInstance.ts +1 -0
  21. package/src/components/wt-multi-select/wt-multi-select.vue +2 -0
  22. package/src/components/wt-single-select/wt-single-select.vue +2 -0
  23. package/src/components/wt-table/wt-table.vue +6 -0
  24. package/src/modules/UploadCsvPopup/components/wt-upload-csv-popup.vue +27 -27
  25. package/src/modules/UploadCsvPopup/composable/__tests__/useUploadCsv.spec.js +1 -1
  26. package/src/modules/UploadCsvPopup/composable/useUploadCsv.ts +3 -1
  27. package/types/.tsbuildinfo +1 -1
  28. package/types/components/_internals/composables/useSelect/types.d.ts +1 -0
  29. package/types/components/_internals/composables/useSelect/useSelect.d.ts +1 -1
  30. package/types/components/_internals/composables/useSelect/useSelectAutoOpen.d.ts +15 -0
  31. package/types/components/_internals/types/PrimevueInstance.d.ts +1 -0
  32. package/types/components/wt-datepicker/wt-datepicker.vue.d.ts +2 -2
  33. package/types/components/wt-multi-select/wt-multi-select.vue.d.ts +1 -0
  34. package/types/components/wt-popover/wt-popover.vue.d.ts +2 -2
  35. package/types/components/wt-single-select/wt-single-select.vue.d.ts +1 -0
  36. package/types/components/wt-tooltip/_internals/wt-tooltip-floating.vue.d.ts +2 -2
@@ -2,33 +2,33 @@ import { t as e } from "./vue-i18n-B88GcHzn.js";
2
2
  import { t } from "./debounce-A4B4PTkL.js";
3
3
  import "./useExpansion-DVdIpoOn.js";
4
4
  import "./useWtTable-CUpN0LZ5.js";
5
- import { computed as n, nextTick as r, onMounted as i, onUnmounted as a, reactive as o, ref as s, watch as c } from "vue";
5
+ import { computed as n, nextTick as r, onBeforeUnmount as i, onMounted as a, onUnmounted as o, reactive as s, ref as c, watch as l } from "vue";
6
6
  //#region src/components/_internals/composables/useGalleriaFullscreen/useGalleriaFullscreen.ts
7
- var l = () => {
8
- let e = s(!1), t = () => {
9
- e.value ? o() : r();
7
+ var u = () => {
8
+ let e = c(!1), t = () => {
9
+ e.value ? i() : r();
10
10
  }, n = () => {
11
11
  e.value = !e.value;
12
12
  }, r = () => {
13
13
  let e = document.querySelector(".p-galleria");
14
14
  e.requestFullscreen ? e.requestFullscreen() : e.mozRequestFullScreen ? e.mozRequestFullScreen() : e.webkitRequestFullscreen ? e.webkitRequestFullscreen() : e.msRequestFullscreen && e.msRequestFullscreen();
15
- }, o = () => {
15
+ }, i = () => {
16
16
  let e = document;
17
17
  e.exitFullscreen ? e.exitFullscreen() : e.mozCancelFullScreen ? e.mozCancelFullScreen() : e.webkitExitFullscreen ? e.webkitExitFullscreen() : e.msExitFullscreen && e.msExitFullscreen();
18
- }, c = () => {
18
+ }, s = () => {
19
19
  document.addEventListener("fullscreenchange", n), document.addEventListener("mozfullscreenchange", n), document.addEventListener("webkitfullscreenchange", n), document.addEventListener("msfullscreenchange", n);
20
20
  }, l = () => {
21
21
  document.removeEventListener("fullscreenchange", n), document.removeEventListener("mozfullscreenchange", n), document.removeEventListener("webkitfullscreenchange", n), document.removeEventListener("msfullscreenchange", n);
22
22
  };
23
- return i(() => {
24
- c();
25
- }), a(() => {
23
+ return a(() => {
24
+ s();
25
+ }), o(() => {
26
26
  l();
27
27
  }), {
28
28
  fullScreen: e,
29
29
  toggleFullScreen: t
30
30
  };
31
- }, u = (e) => {
31
+ }, d = (e) => {
32
32
  let t = ({ target: t }) => {
33
33
  t?.classList.contains("p-galleria-mask") && (e.value = !1);
34
34
  };
@@ -40,7 +40,7 @@ var l = () => {
40
40
  document.querySelector(".p-galleria-mask")?.removeEventListener("click", t);
41
41
  }
42
42
  };
43
- }, d = (e) => {
43
+ }, f = (e) => {
44
44
  let t = n(() => e.value?.$el instanceof HTMLInputElement ? e.value?.$el : e.value?.$el?.querySelector("input"));
45
45
  return {
46
46
  focus: () => {
@@ -51,10 +51,36 @@ var l = () => {
51
51
  t.value?.setAttribute("autocomplete", "off");
52
52
  }
53
53
  };
54
- }, f = (e) => Array.isArray(e) ? e : e ? [e] : [], p = (e, t, n) => {
54
+ }, p = 30, m = async (e) => {
55
+ let t = [], n = e;
56
+ for (; n;) typeof n.getAnimations == "function" && t.push(...n.getAnimations()), n = n.parentElement;
57
+ t.length && await Promise.all(t.map((e) => e.finished.catch(() => void 0)));
58
+ }, h = (e, t) => {
59
+ let n = null, r = !1, a = () => {
60
+ r = !0, n !== null && (cancelAnimationFrame(n), n = null);
61
+ }, o = () => new Promise((e) => {
62
+ let i, a = 0, o = () => {
63
+ if (n = null, r) return;
64
+ let s = t.value?.$el;
65
+ if (!s) return;
66
+ let c = s.getBoundingClientRect();
67
+ if (i && c.top === i.top && c.left === i.left && c.width === i.width && c.height === i.height || ++a >= p) {
68
+ e();
69
+ return;
70
+ }
71
+ i = c, n = requestAnimationFrame(o);
72
+ };
73
+ n = requestAnimationFrame(o);
74
+ });
75
+ return i(a), { openWhenSettled: async () => {
76
+ if (!e?.()) return;
77
+ let n = t.value?.$el;
78
+ n && (r = !1, await m(n), !r && (await o(), !r && t.value?.show?.()));
79
+ } };
80
+ }, g = (e) => Array.isArray(e) ? e : e ? [e] : [], _ = (e, t, n) => {
55
81
  let r = (e) => typeof e == "object" && !!e;
56
82
  return t.some((t) => n ? r(t) && r(e) ? t[n] === e[n] : !r(t) && r(e) ? t === e[n] : r(t) && !r(e) ? t[n] === e : t === e : t === e);
57
- }, m = (e, t) => {
83
+ }, v = (e, t) => {
58
84
  if (!t) return [...new Set(e)];
59
85
  let n = /* @__PURE__ */ new Map();
60
86
  for (let r of e) {
@@ -62,20 +88,20 @@ var l = () => {
62
88
  n.has(e) || n.set(e, r);
63
89
  }
64
90
  return [...n.values()];
65
- }, h = (e, t, n) => e.filter((e) => n(e).toLowerCase().includes(t.toLowerCase())), g = ({ selected: e, filteredOptions: t, options: n, dataKey: i, filterText: a, filterOptions: o, updateSelectedOptionsCache: s, selectRef: c, allowCustomValues: l, isSingle: u }) => {
91
+ }, y = (e, t, n) => e.filter((e) => n(e).toLowerCase().includes(t.toLowerCase())), b = ({ selected: e, filteredOptions: t, options: n, dataKey: i, filterText: a, filterOptions: o, updateSelectedOptionsCache: s, selectRef: c, allowCustomValues: l, isSingle: u }) => {
66
92
  let d = (e) => {
67
93
  let r = n.value.length ? n.value[0] : t.value[0];
68
94
  return r && typeof r == "object" ? Object.fromEntries(Object.keys(r).map((t) => [t, e])) : i.value ? { [i.value]: e } : e;
69
95
  };
70
96
  return { onInputKeydown: () => {
71
- if (!l.value || !a.value || f(e.value).some((e) => (i.value ? e[i.value] : e) === a.value)) return;
97
+ if (!l.value || !a.value || g(e.value).some((e) => (i.value ? e[i.value] : e) === a.value)) return;
72
98
  let n = d(a.value);
73
- t.value.some((e) => p(e, [n], i.value)) || t.value.unshift(n), u ? (c.value?.hide?.(), e.value = n) : e.value = [...e.value, n], s(), r(() => {
99
+ t.value.some((e) => _(e, [n], i.value)) || t.value.unshift(n), u ? (c.value?.hide?.(), e.value = n) : e.value = [...e.value, n], s(), r(() => {
74
100
  a.value = "", o("");
75
101
  });
76
102
  } };
77
- }, _ = ({ selectId: e, selectRef: t, filterInput: n, searchMethod: i, filteredOptions: a, filterText: o, filterOptions: l, resetAndFetch: u, sortOptions: d, fetchOptions: f, isLoading: p, searchHasNext: m }) => {
78
- let h = s(!1), g = null, _ = null, v = () => document.querySelector(`#${e.value}_list`)?.parentElement, y = (e) => {
103
+ }, x = ({ selectId: e, selectRef: t, filterInput: n, searchMethod: i, filteredOptions: a, filterText: o, filterOptions: s, resetAndFetch: u, sortOptions: d, fetchOptions: f, isLoading: p, searchHasNext: m }) => {
104
+ let h = c(!1), g = null, _ = null, v = () => document.querySelector(`#${e.value}_list`)?.parentElement, y = (e) => {
79
105
  let t = e.target;
80
106
  t.scrollTop + t.clientHeight >= t.scrollHeight - 40 && !p.value && m.value && f();
81
107
  }, b = null, x = () => {
@@ -97,7 +123,7 @@ var l = () => {
97
123
  _ = requestAnimationFrame(i);
98
124
  }
99
125
  }, C = !1;
100
- return c(a, () => {
126
+ return l(a, () => {
101
127
  C && (C = !1, r(() => v()?.scrollTo(0, 0)));
102
128
  }), {
103
129
  isDropdownOpen: h,
@@ -108,55 +134,55 @@ var l = () => {
108
134
  },
109
135
  onDropdownShow: S,
110
136
  onDropdownHide: () => {
111
- h.value = !1, b !== null && (cancelAnimationFrame(b), b = null), g?.disconnect(), g = null, _ !== null && (cancelAnimationFrame(_), _ = null), i.value ? (v()?.removeEventListener("scroll", y), o.value && u()) : l(""), o.value = "";
137
+ h.value = !1, b !== null && (cancelAnimationFrame(b), b = null), g?.disconnect(), g = null, _ !== null && (cancelAnimationFrame(_), _ = null), i.value ? (v()?.removeEventListener("scroll", y), o.value && u()) : s(""), o.value = "";
112
138
  },
113
139
  filterOptionsAndScrollToTop: (e) => {
114
- C = !0, l(e);
140
+ C = !0, s(e);
115
141
  }
116
142
  };
117
- }, v = (e) => {
118
- let t = s(!1), n = null;
119
- return c(e, (e) => {
143
+ }, S = (e) => {
144
+ let t = c(!1), n = null;
145
+ return l(e, (e) => {
120
146
  e ? (n && clearTimeout(n), t.value = !0) : n = setTimeout(() => {
121
147
  t.value = !1;
122
148
  }, 500);
123
149
  }), { showFooterLoader: t };
124
- }, y = ({ selected: n, options: r, optionLabel: i, optionValue: a, dataKey: l, allowCustomValues: u, searchMethod: d, strictApiOptions: g }) => {
125
- let { t: _ } = e(), v = s(""), y = s(r.value), b = s(!1), x = s(!0), S = o({
150
+ }, C = ({ selected: n, options: r, optionLabel: i, optionValue: a, dataKey: o, allowCustomValues: u, searchMethod: d, strictApiOptions: f }) => {
151
+ let { t: p } = e(), m = c(""), h = c(r.value), b = c(!1), x = c(!0), S = s({
126
152
  page: 1,
127
153
  search: ""
128
154
  }), C = (e) => {
129
- let t = m(e, l.value);
155
+ let t = v(e, o.value);
130
156
  if (!n.value) return t;
131
- let r = f(n.value), i = [], a = [];
132
- for (let e of t) (p(e, r, l.value) ? i : a).push(e);
157
+ let r = g(n.value), i = [], a = [];
158
+ for (let e of t) (_(e, r, o.value) ? i : a).push(e);
133
159
  return i.concat(a);
134
160
  }, w = (e) => {
135
161
  if (e == null) return "";
136
162
  if (u.value && e.isTag) return e.label;
137
163
  let t = a?.value;
138
164
  if (t && typeof e != "object") {
139
- let n = [...y.value, ...E.value].find((n) => n[t] === e);
165
+ let n = [...h.value, ...E.value].find((n) => n[t] === e);
140
166
  return n ? w(n) : String(e);
141
167
  }
142
- return i.value && e[i.value] ? e[i.value] : e.locale ? Array.isArray(e.locale) ? _(...e.locale) : _(e.locale) : e.name || e;
143
- }, T = (e, t) => h(e, t, w), E = s([]), D = () => {
168
+ return i.value && e[i.value] ? e[i.value] : e.locale ? Array.isArray(e.locale) ? p(...e.locale) : p(e.locale) : e.name || e;
169
+ }, T = (e, t) => y(e, t, w), E = c([]), D = () => {
144
170
  if (!n.value) {
145
171
  E.value = [];
146
172
  return;
147
173
  }
148
- let e = f(n.value), t = (t) => p(t, e, l.value), r = y.value.filter(t), i = m([...E.value, ...r], l.value);
174
+ let e = g(n.value), t = (t) => _(t, e, o.value), r = h.value.filter(t), i = v([...E.value, ...r], o.value);
149
175
  E.value = i.filter(t);
150
176
  }, O = async () => {
151
177
  if (!d.value || !a?.value || !n.value) return;
152
- let e = f(n.value);
178
+ let e = g(n.value);
153
179
  if (!e.length) return;
154
180
  b.value = !0;
155
181
  let { items: t } = await d.value({
156
- [l.value]: e,
182
+ [o.value]: e,
157
183
  size: e.length
158
184
  });
159
- E.value = m([...E.value, ...t], l.value), b.value = !1;
185
+ E.value = v([...E.value, ...t], o.value), b.value = !1;
160
186
  }, k = async () => {
161
187
  if (!d.value) return;
162
188
  let { search: e, page: t } = S;
@@ -164,31 +190,31 @@ var l = () => {
164
190
  let { items: r, next: i } = await d.value({
165
191
  search: e,
166
192
  page: t
167
- }), a = e ? T(E.value, e) : E.value, o = S.page === 1 ? m([...a, ...r], l.value) : y.value.concat(r);
168
- y.value = C(o), N(n.value), x.value = i ?? !1, S.page += 1, b.value = !1;
193
+ }), a = e ? T(E.value, e) : E.value, s = S.page === 1 ? v([...a, ...r], o.value) : h.value.concat(r);
194
+ h.value = C(s), N(n.value), x.value = i ?? !1, S.page += 1, b.value = !1;
169
195
  }, A = (e = "") => {
170
196
  S.search = e, S.page = 1, k();
171
197
  }, j = t((e) => A(e)), M = (e) => {
172
- if (v.value = e, d.value) j(e);
198
+ if (m.value = e, d.value) j(e);
173
199
  else {
174
200
  let t = T(E.value, e), n = T(r.value, e);
175
- y.value = C(m([...t, ...n], l.value));
201
+ h.value = C(v([...t, ...n], o.value));
176
202
  }
177
203
  }, N = (e) => {
178
- if (!e || !d.value || g?.value) return;
179
- let t = f(e).filter((e) => !p(e, y.value, l.value));
204
+ if (!e || !d.value || f?.value) return;
205
+ let t = g(e).filter((e) => !_(e, h.value, o.value));
180
206
  if (t.length) {
181
- let e = t.map((e) => E.value.find((t) => t[l.value] === e) ?? e);
182
- y.value = C(m([...T(e, v.value), ...y.value], l.value));
207
+ let e = t.map((e) => E.value.find((t) => t[o.value] === e) ?? e);
208
+ h.value = C(v([...T(e, m.value), ...h.value], o.value));
183
209
  }
184
210
  };
185
- return c(() => n.value, (e) => {
211
+ return l(() => n.value, (e) => {
186
212
  D(), N(e);
187
- }), c(() => r.value, (e) => {
188
- d.value || (y.value = C(e));
213
+ }), l(() => r.value, (e) => {
214
+ d.value || (h.value = C(e));
189
215
  }), {
190
- filterText: v,
191
- filteredOptions: y,
216
+ filterText: m,
217
+ filteredOptions: h,
192
218
  isLoading: b,
193
219
  searchHasNext: x,
194
220
  sortOptions: C,
@@ -199,63 +225,63 @@ var l = () => {
199
225
  filterOptionsBase: M,
200
226
  updateSelectedOptionsCache: D
201
227
  };
202
- }, b = ({ selected: e, options: t, optionLabel: n, optionValue: r, dataKey: a, allowCustomValues: o, manualCustomValues: s = !1, filterInput: c, selectRef: l, searchMethod: u, selectId: d, isSingle: f, strictApiOptions: p = void 0, emit: m = (e, ...t) => {} }) => {
203
- let { filterText: h, filteredOptions: b, isLoading: x, searchHasNext: S, sortOptions: C, getOptionLabel: w, fetchOptions: T, fetchSelectedByIds: E, resetAndFetch: D, filterOptionsBase: O, updateSelectedOptionsCache: k } = y({
228
+ }, w = ({ selected: e, options: t, optionLabel: n, optionValue: r, dataKey: i, allowCustomValues: o, manualCustomValues: s = !1, filterInput: c, selectRef: l, searchMethod: u, selectId: d, isSingle: f, autoOpen: p, strictApiOptions: m = void 0, emit: g = (e, ...t) => {} }) => {
229
+ let { filterText: _, filteredOptions: v, isLoading: y, searchHasNext: w, sortOptions: T, getOptionLabel: E, fetchOptions: D, fetchSelectedByIds: O, resetAndFetch: k, filterOptionsBase: A, updateSelectedOptionsCache: j } = C({
204
230
  selected: e,
205
231
  options: t,
206
232
  optionLabel: n,
207
233
  optionValue: r,
208
- dataKey: a,
234
+ dataKey: i,
209
235
  allowCustomValues: o,
210
236
  searchMethod: u,
211
- strictApiOptions: p
212
- }), { isDropdownOpen: A, onDropdownBeforeShow: j, onDropdownBeforeHide: M, onDropdownShow: N, onDropdownHide: P, filterOptionsAndScrollToTop: F } = _({
237
+ strictApiOptions: m
238
+ }), { isDropdownOpen: M, onDropdownBeforeShow: N, onDropdownBeforeHide: P, onDropdownShow: F, onDropdownHide: I, filterOptionsAndScrollToTop: L } = x({
213
239
  selectId: d,
214
240
  selectRef: l,
215
241
  filterInput: c,
216
242
  searchMethod: u,
217
- filteredOptions: b,
218
- filterText: h,
219
- filterOptions: O,
220
- resetAndFetch: D,
221
- sortOptions: C,
222
- fetchOptions: T,
223
- isLoading: x,
224
- searchHasNext: S
225
- }), { showFooterLoader: I } = v(x), { onInputKeydown: L } = g({
243
+ filteredOptions: v,
244
+ filterText: _,
245
+ filterOptions: A,
246
+ resetAndFetch: k,
247
+ sortOptions: T,
248
+ fetchOptions: D,
249
+ isLoading: y,
250
+ searchHasNext: w
251
+ }), { showFooterLoader: R } = S(y), { openWhenSettled: z } = h(p, l), { onInputKeydown: B } = b({
226
252
  selected: e,
227
- filteredOptions: b,
253
+ filteredOptions: v,
228
254
  options: t,
229
- dataKey: a,
230
- filterText: h,
231
- filterOptions: F,
232
- updateSelectedOptionsCache: k,
255
+ dataKey: i,
256
+ filterText: _,
257
+ filterOptions: L,
258
+ updateSelectedOptionsCache: j,
233
259
  selectRef: l,
234
260
  allowCustomValues: o,
235
261
  isSingle: f
236
262
  });
237
- return i(async () => {
238
- await E(), u.value && T();
263
+ return a(async () => {
264
+ await O(), u.value && await D(), z();
239
265
  }), {
240
- isLoading: x,
241
- showFooterLoader: I,
242
- isDropdownOpen: A,
243
- filterText: h,
244
- filteredOptions: b,
245
- getOptionLabel: w,
246
- fetchOptions: T,
247
- filterOptions: F,
248
- onDropdownBeforeShow: j,
249
- onDropdownBeforeHide: M,
250
- onDropdownShow: N,
251
- onDropdownHide: P,
252
- onInputKeydown: L,
266
+ isLoading: y,
267
+ showFooterLoader: R,
268
+ isDropdownOpen: M,
269
+ filterText: _,
270
+ filteredOptions: v,
271
+ getOptionLabel: E,
272
+ fetchOptions: D,
273
+ filterOptions: L,
274
+ onDropdownBeforeShow: N,
275
+ onDropdownBeforeHide: P,
276
+ onDropdownShow: F,
277
+ onDropdownHide: I,
278
+ onInputKeydown: B,
253
279
  clearValue: () => {
254
280
  let t = "";
255
- Array.isArray(e.value) ? t = [] : typeof e.value == "object" && e.value !== null && (t = {}), e.value = t, m("reset", t);
281
+ Array.isArray(e.value) ? t = [] : typeof e.value == "object" && e.value !== null && (t = {}), e.value = t, g("reset", t);
256
282
  }
257
283
  };
258
- }, x = (e, t) => {
284
+ }, T = (e, t) => {
259
285
  let n = null, r = null, i = null, a = !1, o = () => {
260
286
  if (!r || !a || i === null) return;
261
287
  let e = r.getBoundingClientRect(), t = i - e.left, s = e.right - i, c = (e) => e < .5 ? 4 * e * e * e : 1 - (-2 * e + 2) ** 3 / 2, l = 0, u = 0;
@@ -289,4 +315,4 @@ var l = () => {
289
315
  };
290
316
  };
291
317
  //#endregion
292
- export { u as a, d as i, b as n, l as o, f as r, x as t };
318
+ export { d as a, f as i, w as n, u as o, g as r, T as t };