@webitel/ui-sdk 26.6.17 → 26.6.18

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 (79) hide show
  1. package/dist/{contacts-x411Rwez.js → contacts-CW3-LZxF.js} +2 -2
  2. package/dist/{index-D_POp8ob.js → index-CVZdV0CY.js} +1 -1
  3. package/dist/{install-Cu0d6sby.js → install-Cr0bk3L_.js} +1847 -1849
  4. package/dist/{isObject-ByASj__U.js → isObject-CiKYzHrL.js} +1 -1
  5. package/dist/ui-sdk.css +1 -1
  6. package/dist/ui-sdk.js +3 -3
  7. package/dist/ui-sdk.umd.cjs +487 -492
  8. package/dist/{useVidstackSrc-BhJ70gII.js → useVidstackSrc-eIh94IOa.js} +1 -1
  9. package/dist/{vidstack-Bq6c3Bam-Bah3VB6-.js → vidstack-Bq6c3Bam-C9bvNDeZ.js} +3 -3
  10. package/dist/{vidstack-D2pY00kU-ByV8VY12.js → vidstack-D2pY00kU-32fYwL0c.js} +3 -3
  11. package/dist/{vidstack-DDXt6fpN-AnGHyGmH.js → vidstack-DDXt6fpN-Bdj16PRi.js} +2 -2
  12. package/dist/{vidstack-D_-9AA6_-BYSsKBwR.js → vidstack-D_-9AA6_-DU-Z0scc.js} +2 -2
  13. package/dist/{vidstack-DqAw8m9J-DswYN2KC.js → vidstack-DqAw8m9J-D4iW7Pk4.js} +1 -1
  14. package/dist/{vidstack-audio-BBZWJaJs.js → vidstack-audio-D57MQWMi.js} +2 -2
  15. package/dist/{vidstack-dash-DioDLqSD.js → vidstack-dash-DQ3tW9tH.js} +4 -4
  16. package/dist/{vidstack-google-cast-BKifCUBj.js → vidstack-google-cast-Chny36ds.js} +4 -4
  17. package/dist/{vidstack-hls-B410PN9l.js → vidstack-hls-BJVMAGc7.js} +4 -4
  18. package/dist/{vidstack-video-BhR43aHZ.js → vidstack-video-0rGus1eV.js} +3 -3
  19. package/dist/{vidstack-vimeo-D8KMx3dH.js → vidstack-vimeo-y__Gq7-Z.js} +4 -4
  20. package/dist/{vidstack-youtube-B3lNuheF.js → vidstack-youtube-DP3qUcr_.js} +3 -3
  21. package/dist/{wt-action-bar-DJunx8Bz.js → wt-action-bar-CMKn5_2O.js} +1 -1
  22. package/dist/{wt-button-select-IxMhW3aN.js → wt-button-select-Ce3BQoKR.js} +1 -1
  23. package/dist/{wt-call-media-action-l26Ebm1n.js → wt-call-media-action-ZuyF3TA9.js} +1 -1
  24. package/dist/{wt-chat-emoji-CGS_HHH7.js → wt-chat-emoji-CL-ZeHBE.js} +65 -65
  25. package/dist/{wt-confirm-dialog-Bz4AG75V.js → wt-confirm-dialog-msvvphR9.js} +1 -1
  26. package/dist/{wt-context-menu-D2h6Iosh.js → wt-context-menu-D4f_AGoC.js} +1 -1
  27. package/dist/{wt-copy-action-wZ1BFpR3.js → wt-copy-action-Cf-_NtcG.js} +1 -1
  28. package/dist/{wt-datepicker-DVJlOegR.js → wt-datepicker-CGfAsCbg.js} +1 -1
  29. package/dist/{wt-display-chip-items-BskP208B.js → wt-display-chip-items-NXvaxIwQ.js} +1 -1
  30. package/dist/{wt-dual-panel-Bf0cLkn2.js → wt-dual-panel-DTmyhNDA.js} +1 -1
  31. package/dist/{wt-dummy-CnH3EakG.js → wt-dummy-DRMzAM9O.js} +1 -1
  32. package/dist/{wt-error-page-CTDXxrpz.js → wt-error-page-bVs4FU_6.js} +1 -1
  33. package/dist/{wt-expansion-card-DqpKEDzd.js → wt-expansion-card-C6Gor6XB.js} +1 -1
  34. package/dist/{wt-expansion-panel-B1FlwwsJ.js → wt-expansion-panel-CuGG2_bc.js} +1 -1
  35. package/dist/{wt-filters-panel-wrapper-Cam5mBQD.js → wt-filters-panel-wrapper-B75QdN0o.js} +1 -1
  36. package/dist/{wt-galleria-C4qtQYNG.js → wt-galleria-CaXq22nn.js} +1 -1
  37. package/dist/{wt-inline-add-panel-BcmGzVUY.js → wt-inline-add-panel-BMPB9HLd.js} +1 -1
  38. package/dist/{wt-navigation-menu-jlgb2OVE.js → wt-navigation-menu-Btme7T0n.js} +1 -1
  39. package/dist/{wt-notifications-bar-D5BgIbDJ.js → wt-notifications-bar-DgC8bv6A.js} +2 -2
  40. package/dist/{wt-pagination-CzWjNHGr.js → wt-pagination-PBVxACl3.js} +1 -1
  41. package/dist/{wt-player-DPoW9DsS.js → wt-player-3OnI8Gkb.js} +2 -2
  42. package/dist/{wt-screen-recordings-action-CnD3u6l1.js → wt-screen-recordings-action-DwlOgzfd.js} +1 -1
  43. package/dist/{wt-search-bar-w5yRXUJM.js → wt-search-bar-D6qMRH-b.js} +1 -1
  44. package/dist/{wt-selection-popup-BQ2nxFxN.js → wt-selection-popup-DwA5WMWd.js} +1 -1
  45. package/dist/{wt-send-message-popup-CIROO7qp.js → wt-send-message-popup-BNHfgzV6.js} +18 -18
  46. package/dist/{wt-start-page-Co2Dr7sd.js → wt-start-page-DVyRr6sN.js} +12 -12
  47. package/dist/{wt-status-select-B5RBn4az.js → wt-status-select--ogDeIvZ.js} +1 -1
  48. package/dist/{wt-stepper-D-5zkV_o.js → wt-stepper-DpszO5_T.js} +1 -1
  49. package/dist/{wt-table-CIwgA4bb.js → wt-table--CESQOx6.js} +1 -1
  50. package/dist/{wt-table-actions-cdZk4uQg.js → wt-table-actions-FVBMiBzy.js} +1 -1
  51. package/dist/{wt-table-column-select-xScdacRt.js → wt-table-column-select-CDlRxNrk.js} +2 -2
  52. package/dist/{wt-tabs-Brwfb9Xt.js → wt-tabs-C0lD3Xw6.js} +1 -1
  53. package/dist/{wt-timepicker-fVxaUiFH.js → wt-timepicker-hOlzDr60.js} +1 -1
  54. package/dist/wt-tree-NhBg3C84.js +2777 -0
  55. package/dist/{wt-tree-table-DNr013Ft.js → wt-tree-table-CK9T8KmU.js} +22 -22
  56. package/dist/wt-type-extension-value-input-C3J9mXbz.js +121 -0
  57. package/dist/{wt-vidstack-player-BjA03boO.js → wt-vidstack-player-CW5GMIcG.js} +10 -10
  58. package/package.json +1 -1
  59. package/src/components/_internals/composables/useSelect/useSelectUtils.ts +11 -3
  60. package/src/components/index.js +0 -5
  61. package/src/components/on-demand/wt-type-extension-value-input/wt-type-extension-value-input.vue +14 -11
  62. package/src/modules/AuditForm/components/audit-form-question-write-wrapper.vue +6 -6
  63. package/src/modules/Filters/components/filter-select.vue +15 -6
  64. package/src/modules/ObjectPermissions/_internals/components/permissions-role-select.vue +8 -9
  65. package/src/modules/ObjectPermissions/components/permissions-tab.vue +12 -12
  66. package/src/modules/QueryFilters/components/abstract-api-filter.vue +29 -7
  67. package/src/modules/QueryFilters/components/abstract-enum-filter.vue +31 -6
  68. package/src/modules/UploadCsvPopup/components/wt-upload-csv-popup.vue +9 -9
  69. package/types/components/on-demand/wt-type-extension-value-input/wt-type-extension-value-input.vue.d.ts +2 -3
  70. package/dist/index-LgFKTZzs.js +0 -2508
  71. package/dist/wt-tags-input-BDmXu8bo.js +0 -244
  72. package/dist/wt-tree-jn8eK1wC.js +0 -275
  73. package/dist/wt-type-extension-value-input-C-Kgj75G.js +0 -123
  74. package/src/components/wt-tags-input/__tests__/WtTagsInput.spec.js +0 -89
  75. package/src/components/wt-tags-input/mixin/__tests__/taggableMixin.spec.js +0 -27
  76. package/src/components/wt-tags-input/wt-tags-input.vue +0 -275
  77. package/types/components/wt-tags-input/__tests__/WtTagsInput.spec.d.ts +0 -1
  78. package/types/components/wt-tags-input/mixin/__tests__/taggableMixin.spec.d.ts +0 -1
  79. package/types/components/wt-tags-input/wt-tags-input.vue.d.ts +0 -3
@@ -1,7 +1,7 @@
1
- import { computed as C, unref as B, defineComponent as z, ref as D, onMounted as F, resolveComponent as L, createElementBlock as d, openBlock as l, Fragment as $, createElementVNode as u, createCommentVNode as b, normalizeClass as T, renderList as m, renderSlot as p, createBlock as x, createTextVNode as R, toDisplayString as H, createSlots as U, withCtx as I, toRef as G, normalizeStyle as O, withModifiers as Q, createVNode as j } from "vue";
2
- import { B as q, Q as W, R as J, _ as M, G as X } from "./install-Cu0d6sby.js";
1
+ import { computed as C, unref as B, defineComponent as z, ref as O, onMounted as D, resolveComponent as L, createElementBlock as d, openBlock as l, Fragment as $, createElementVNode as u, createCommentVNode as b, normalizeClass as T, renderList as m, renderSlot as p, createBlock as x, createTextVNode as U, toDisplayString as H, createSlots as W, withCtx as N, toRef as F, normalizeStyle as G, withModifiers as j, createVNode as q } from "vue";
2
+ import { B as J, N as R, O as Q, _ as M, G as X } from "./install-Cr0bk3L_.js";
3
3
  const Y = ({ headers: e }) => {
4
- const { t: y } = q();
4
+ const { t: y } = J();
5
5
  return {
6
6
  tableHeaders: C(() => (B(e) ?? []).filter(
7
7
  (r) => r.show === void 0 || r.show
@@ -34,7 +34,7 @@ const Y = ({ headers: e }) => {
34
34
  "expanded-collapse"
35
35
  ],
36
36
  setup(e, { emit: y }) {
37
- const a = e, r = y, h = D(!0), N = C(() => a.nestingLevel), A = C(() => a.nestingLevel + 1), P = C(() => a.selectedElements.includes(a.data)), k = () => {
37
+ const a = e, r = y, h = O(!0), I = C(() => a.nestingLevel), A = C(() => a.nestingLevel + 1), P = C(() => a.selectedElements.includes(a.data)), k = () => {
38
38
  h.value = !1, r("expanded-collapse");
39
39
  }, g = (c, i = 0) => {
40
40
  if (c[a.searchedProp] && i) return !0;
@@ -45,7 +45,7 @@ const Y = ({ headers: e }) => {
45
45
  }
46
46
  return !1;
47
47
  };
48
- return F(() => {
48
+ return D(() => {
49
49
  a.searchedProp && g(a.data) && k();
50
50
  }), (c, i) => {
51
51
  const f = L("wt-tree-table-row", !0);
@@ -59,11 +59,11 @@ const Y = ({ headers: e }) => {
59
59
  }, [
60
60
  u("div", Z, [
61
61
  E ? b("", !0) : (l(), d("div", K, [
62
- (l(!0), d($, null, m(N.value, (t) => (l(), d("div", {
62
+ (l(!0), d($, null, m(I.value, (t) => (l(), d("div", {
63
63
  key: t,
64
64
  class: "wt-tree-table-row__tree-space"
65
65
  }))), 128)),
66
- e.selectable ? (l(), x(W, {
66
+ e.selectable ? (l(), x(R, {
67
67
  key: 0,
68
68
  selected: P.value,
69
69
  "onUpdate:selected": i[0] || (i[0] = (t) => c.$emit("update:selected", {
@@ -71,7 +71,7 @@ const Y = ({ headers: e }) => {
71
71
  select: t
72
72
  }))
73
73
  }, null, 8, ["selected"])) : b("", !0),
74
- e.data[e.childrenProp] ? (l(), x(J, {
74
+ e.data[e.childrenProp] ? (l(), x(Q, {
75
75
  key: 1,
76
76
  icon: h.value ? "tree-expand" : "tree-collapse",
77
77
  onClick: i[1] || (i[1] = (t) => h.value = !h.value)
@@ -81,7 +81,7 @@ const Y = ({ headers: e }) => {
81
81
  index: e.rowPosition,
82
82
  item: e.data
83
83
  }, () => [
84
- R(H(e.data[S.value]), 1)
84
+ U(H(e.data[S.value]), 1)
85
85
  ], !0)
86
86
  ])
87
87
  ]))), 128)),
@@ -109,8 +109,8 @@ const Y = ({ headers: e }) => {
109
109
  data: t.data,
110
110
  select: t.select
111
111
  }))
112
- }, U({
113
- actions: I(({ item: t }) => [
112
+ }, W({
113
+ actions: N(({ item: t }) => [
114
114
  p(c.$slots, "actions", {
115
115
  index: e.rowPosition,
116
116
  item: t
@@ -120,7 +120,7 @@ const Y = ({ headers: e }) => {
120
120
  }, [
121
121
  m(e.dataHeaders, (t, o) => ({
122
122
  name: t.value,
123
- fn: I(({ item: n }) => [
123
+ fn: N(({ item: n }) => [
124
124
  p(c.$slots, t.value, {
125
125
  index: e.rowPosition,
126
126
  item: n
@@ -153,7 +153,7 @@ const Y = ({ headers: e }) => {
153
153
  "update:selected"
154
154
  ],
155
155
  setup(e, { emit: y }) {
156
- const a = e, r = y, h = (t) => t[a.childrenProp] && Array.isArray(t[a.childrenProp]), N = (t) => {
156
+ const a = e, r = y, h = (t) => t[a.childrenProp] && Array.isArray(t[a.childrenProp]), I = (t) => {
157
157
  const o = [], n = (s) => {
158
158
  if (s._isSelected)
159
159
  return [
@@ -167,8 +167,8 @@ const Y = ({ headers: e }) => {
167
167
  o.push(s), h(s) && s[a.childrenProp].forEach(n);
168
168
  };
169
169
  return t.forEach(n), o;
170
- }, P = C(() => a.selected || N(a.data)), k = C(() => P.value.length === A(a.data).length && A(a.data).length > 0), { tableHeaders: g } = Y({
171
- headers: G(a, "headers")
170
+ }, P = C(() => a.selected || I(a.data)), k = C(() => P.value.length === A(a.data).length && A(a.data).length > 0), { tableHeaders: g } = Y({
171
+ headers: F(a, "headers")
172
172
  }), c = ({ sort: t }) => a.sortable && t !== void 0, i = (t) => {
173
173
  if (!c(t)) return;
174
174
  const o = X(t.sort);
@@ -207,7 +207,7 @@ const Y = ({ headers: e }) => {
207
207
  },
208
208
  `wt-tree-table-th--sort-${s.sort}`
209
209
  ], "wt-tree-table-th typo-body-1"]),
210
- style: O(s.width ? `min-width:${s.width}` : ""),
210
+ style: G(s.width ? `min-width:${s.width}` : ""),
211
211
  onClick: (w) => i(s)
212
212
  }, [
213
213
  u("div", {
@@ -215,10 +215,10 @@ const Y = ({ headers: e }) => {
215
215
  }, [
216
216
  v === 0 && e.selectable ? (l(), d("div", {
217
217
  key: 0,
218
- onClick: o[0] || (o[0] = Q(() => {
218
+ onClick: o[0] || (o[0] = j(() => {
219
219
  }, ["stop"]))
220
220
  }, [
221
- j(W, {
221
+ q(R, {
222
222
  selected: k.value,
223
223
  "onUpdate:selected": S
224
224
  }, null, 8, ["selected"])
@@ -256,20 +256,20 @@ const Y = ({ headers: e }) => {
256
256
  "selected-elements": P.value,
257
257
  "searched-prop": e.searchedProp,
258
258
  "onUpdate:selected": o[1] || (o[1] = (w) => E(w.data, w.select))
259
- }, U({
260
- actions: I(({ item: w }) => [
259
+ }, W({
260
+ actions: N(({ item: w }) => [
261
261
  p(t.$slots, "actions", { item: w }, void 0, !0)
262
262
  ]),
263
263
  _: 2
264
264
  }, [
265
265
  m(B(g), (w, we) => ({
266
266
  name: w.value,
267
- fn: I(({ item: V }) => [
267
+ fn: N(({ item: V }) => [
268
268
  p(t.$slots, w.value, {
269
269
  index: v,
270
270
  item: V
271
271
  }, () => [
272
- R(H(V[w.value]), 1)
272
+ U(H(V[w.value]), 1)
273
273
  ], !0)
274
274
  ])
275
275
  }))
@@ -0,0 +1,121 @@
1
+ import { defineComponent as w, mergeModels as q, useModel as T, computed as r, resolveComponent as h, createBlock as S, renderSlot as m, createCommentVNode as U, unref as l, openBlock as V, mergeProps as s, createVNode as v } from "vue";
2
+ import { S as W } from "./contacts-CW3-LZxF.js";
3
+ import "./index-CVZdV0CY.js";
4
+ import "lodash-es";
5
+ import "@aliasedDeps/api-services/axios";
6
+ import { B as $, a5 as x, a6 as N, a7 as E, a8 as I } from "./install-Cr0bk3L_.js";
7
+ const a = {
8
+ Text: "string",
9
+ Number: "int32",
10
+ Select: "lookup",
11
+ Multiselect: "list",
12
+ Calendar: "datetime",
13
+ Boolean: "bool"
14
+ }, F = /* @__PURE__ */ w({
15
+ __name: "wt-type-extension-value-input",
16
+ props: /* @__PURE__ */ q({
17
+ field: {},
18
+ label: {},
19
+ required: { type: Boolean },
20
+ v: {}
21
+ }, {
22
+ modelValue: {},
23
+ modelModifiers: {}
24
+ }),
25
+ emits: ["update:modelValue"],
26
+ setup(o) {
27
+ const f = T(o, "modelValue"), n = o;
28
+ n.v?.$touch();
29
+ const { t: P } = $(), M = r(() => n.label || P(n.field?.name || "vocabulary.labels")), B = r(() => n.required ?? n.field.required), u = r(() => f.value), t = r(() => ({
30
+ label: M.value,
31
+ required: B.value,
32
+ v: n.v
33
+ })), k = r(() => ({
34
+ clearable: !0,
35
+ dataKey: "id",
36
+ searchMethod: () => b(n.field.lookup)
37
+ })), y = r(() => ({
38
+ ...k.value
39
+ })), d = (e) => {
40
+ f.value = e;
41
+ }, b = ({ path: e, display: i, primary: c }) => (p) => W.getSysTypeRecordsLookup({
42
+ ...p,
43
+ path: e,
44
+ display: i,
45
+ primary: c
46
+ }), C = (e) => {
47
+ if (Object.values(e).length === 0)
48
+ return d(null);
49
+ d({
50
+ id: e.id,
51
+ name: e.name
52
+ });
53
+ }, g = (e) => {
54
+ d(
55
+ e.map((i) => ({
56
+ id: i.id,
57
+ name: i.name
58
+ }))
59
+ );
60
+ };
61
+ return (e, i) => {
62
+ const c = h("wt-input-text"), p = h("wt-input-number");
63
+ return o.field.kind === l(a).Text ? (V(), S(c, s({ key: 0 }, t.value, {
64
+ "model-value": u.value,
65
+ "onUpdate:modelValue": d
66
+ }), null, 16, ["model-value"])) : o.field.kind === l(a).Number ? (V(), S(p, s({ key: 1 }, t.value, {
67
+ "model-value": u.value,
68
+ "onUpdate:modelValue": d
69
+ }), null, 16, ["model-value"])) : o.field.kind === l(a).Boolean ? m(e.$slots, l(a).Boolean, {
70
+ key: 2,
71
+ defaultProps: { ...t.value }
72
+ }, () => [
73
+ v(l(x), s(t.value, {
74
+ "model-value": u.value,
75
+ "onUpdate:modelValue": d
76
+ }), null, 16, ["model-value"])
77
+ ]) : o.field.kind === l(a).Select ? m(e.$slots, l(a).Select, {
78
+ key: 3,
79
+ defaultProps: {
80
+ ...t.value,
81
+ ...k.value,
82
+ value: u.value
83
+ }
84
+ }, () => [
85
+ v(l(N), s(t.value, {
86
+ "model-value": u.value,
87
+ "search-method": b(o.field.lookup),
88
+ "data-key": "id",
89
+ "onUpdate:modelValue": C
90
+ }), null, 16, ["model-value", "search-method"])
91
+ ]) : o.field.kind === l(a).Multiselect ? m(e.$slots, l(a).Multiselect, {
92
+ key: 4,
93
+ defaultProps: {
94
+ ...t.value,
95
+ ...y.value,
96
+ value: u.value
97
+ }
98
+ }, () => [
99
+ v(l(E), s({ ...t.value, ...y.value }, {
100
+ "model-value": u.value,
101
+ "onUpdate:modelValue": g
102
+ }), null, 16, ["model-value"])
103
+ ]) : o.field.kind === l(a).Calendar ? m(e.$slots, l(a).Calendar, {
104
+ key: 5,
105
+ defaultProps: {
106
+ ...t.value,
107
+ value: u.value
108
+ }
109
+ }, () => [
110
+ v(l(I), s(t.value, {
111
+ value: u.value,
112
+ mode: "datetime",
113
+ onInput: d
114
+ }), null, 16, ["value"])
115
+ ]) : U("", !0);
116
+ };
117
+ }
118
+ });
119
+ export {
120
+ F as default
121
+ };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as ut, inject as se, createElementBlock as yt, openBlock as U, normalizeClass as ie, unref as et, createElementVNode as ht, renderSlot as ft, createVNode as W, computed as Hs, onMounted as Ii, onBeforeUnmount as Vi, createBlock as zt, createCommentVNode as Wt, toDisplayString as Di, createSlots as Fs, withCtx as jt, resolveComponent as Ri, useTemplateRef as Oi, ref as gs, provide as Ni, toRefs as Hi } from "vue";
2
- import { a as q, c as bt, i as G, b as Ne, d as S, e as lt, f as He, l as N, s as ae, g as Bs, E as Gs, D as L, h as z, o as P, j as Fi, k as f, m as l, n as M, p as Us, q as Bi, r as pe, t as j, V as st, v as w, C as b, S as vt, w as Ot, x as p, y as dt, z as Y, I as Ks, A as Gi, B as Ui, F as at, G as We, H as Qs, J as ys, K as je, L as zs, M as Ct, N as Ye, O as ge, P as Ki, Q as At, R as Qi, U as zi, W as Wi, X as ji, Y as Yi, Z as Xi, _ as Ji, $ as Zi, a0 as ta, a1 as Ws, a2 as T, a3 as I, a4 as ye, a5 as ea, a6 as Nt, a7 as K, a8 as sa, a9 as ia, aa, ab as na, ac as bs, ad as ra, ae as oa, af as v, ag as y, ah as ha, ai as la, T as da, u as ca } from "./useVidstackSrc-BhJ70gII.js";
3
- import { U as ua, V as pa, X as ma, Y as fa, _ as $t, R as be, C as Q, Z as ga } from "./install-Cu0d6sby.js";
2
+ import { a as q, c as bt, i as G, b as Ne, d as S, e as lt, f as He, l as N, s as ae, g as Bs, E as Gs, D as L, h as z, o as P, j as Fi, k as f, m as l, n as M, p as Us, q as Bi, r as pe, t as j, V as st, v as w, C as b, S as vt, w as Ot, x as p, y as dt, z as Y, I as Ks, A as Gi, B as Ui, F as at, G as We, H as Qs, J as ys, K as je, L as zs, M as Ct, N as Ye, O as ge, P as Ki, Q as At, R as Qi, U as zi, W as Wi, X as ji, Y as Yi, Z as Xi, _ as Ji, $ as Zi, a0 as ta, a1 as Ws, a2 as T, a3 as I, a4 as ye, a5 as ea, a6 as Nt, a7 as K, a8 as sa, a9 as ia, aa, ab as na, ac as bs, ad as ra, ae as oa, af as v, ag as y, ah as ha, ai as la, T as da, u as ca } from "./useVidstackSrc-eIh94IOa.js";
3
+ import { P as ua, Q as pa, R as ma, T as fa, _ as $t, O as be, C as Q, U as ga } from "./install-Cr0bk3L_.js";
4
4
  import { _ as ya } from "./wt-slider.vue_vue_type_script_setup_true_lang-DlaRDHxo.js";
5
5
  const js = bt();
6
6
  function $() {
@@ -2070,7 +2070,7 @@ class pn {
2070
2070
  return "audio";
2071
2071
  }
2072
2072
  async load(t) {
2073
- return new (await import("./vidstack-audio-BBZWJaJs.js")).AudioProvider(this.target, t);
2073
+ return new (await import("./vidstack-audio-D57MQWMi.js")).AudioProvider(this.target, t);
2074
2074
  }
2075
2075
  }
2076
2076
  class ts {
@@ -2083,7 +2083,7 @@ class ts {
2083
2083
  return "video";
2084
2084
  }
2085
2085
  async load(t) {
2086
- return new (await import("./vidstack-video-BhR43aHZ.js")).VideoProvider(this.target, t);
2086
+ return new (await import("./vidstack-video-0rGus1eV.js")).VideoProvider(this.target, t);
2087
2087
  }
2088
2088
  }
2089
2089
  class es extends ts {
@@ -2093,7 +2093,7 @@ class es extends ts {
2093
2093
  return es.supported && We(t);
2094
2094
  }
2095
2095
  async load(t) {
2096
- return new (await import("./vidstack-hls-B410PN9l.js")).HLSProvider(this.target, t);
2096
+ return new (await import("./vidstack-hls-BJVMAGc7.js")).HLSProvider(this.target, t);
2097
2097
  }
2098
2098
  }
2099
2099
  class ss extends ts {
@@ -2103,7 +2103,7 @@ class ss extends ts {
2103
2103
  return ss.supported && je(t);
2104
2104
  }
2105
2105
  async load(t) {
2106
- return new (await import("./vidstack-dash-DioDLqSD.js")).DASHProvider(this.target, t);
2106
+ return new (await import("./vidstack-dash-DQ3tW9tH.js")).DASHProvider(this.target, t);
2107
2107
  }
2108
2108
  }
2109
2109
  class mn {
@@ -2125,7 +2125,7 @@ class mn {
2125
2125
  return "video";
2126
2126
  }
2127
2127
  async load(t) {
2128
- return new (await import("./vidstack-vimeo-D8KMx3dH.js")).VimeoProvider(this.target, t);
2128
+ return new (await import("./vidstack-vimeo-y__Gq7-Z.js")).VimeoProvider(this.target, t);
2129
2129
  }
2130
2130
  async loadPoster(t, e, s) {
2131
2131
  const { resolveVimeoVideoId: i, getVimeoVideoInfo: n } = await import("./vidstack-krOAtKMi-C50BTxmn.js");
@@ -2157,7 +2157,7 @@ class fn {
2157
2157
  return "video";
2158
2158
  }
2159
2159
  async load(t) {
2160
- return new (await import("./vidstack-youtube-B3lNuheF.js")).YouTubeProvider(this.target, t);
2160
+ return new (await import("./vidstack-youtube-DP3qUcr_.js")).YouTubeProvider(this.target, t);
2161
2161
  }
2162
2162
  async loadPoster(t, e, s) {
2163
2163
  const { findYouTubePoster: i, resolveYouTubeVideoId: n } = await import("./vidstack-Dm1xEU9Q-CXHNvShT.js"), r = S(t.src) && n(t.src);
@@ -2625,7 +2625,7 @@ class $n extends Mt {
2625
2625
  throw i.code = "CAST_NOT_AVAILABLE", i;
2626
2626
  }
2627
2627
  if (ne("https://www.gstatic.com"), !this.#v) {
2628
- const i = await import("./vidstack-D2pY00kU-ByV8VY12.js").then((n) => n.v);
2628
+ const i = await import("./vidstack-D2pY00kU-32fYwL0c.js").then((n) => n.v);
2629
2629
  this.#v = new i.GoogleCastLoader();
2630
2630
  }
2631
2631
  await this.#v.prompt(this.#s), t && this.#e.queue.enqueue("media-google-cast-request", t);
@@ -8022,7 +8022,7 @@ class qr extends v(HTMLElement, li) {
8022
8022
  if (this.#e?.classList.contains("vds-google-cast"))
8023
8023
  return this.#e;
8024
8024
  const t = document.createElement("div");
8025
- return t.classList.add("vds-google-cast"), import("./vidstack-D_-9AA6_-BYSsKBwR.js").then(({ insertContent: e }) => {
8025
+ return t.classList.add("vds-google-cast"), import("./vidstack-D_-9AA6_-DU-Z0scc.js").then(({ insertContent: e }) => {
8026
8026
  e(t, this.#t.$state);
8027
8027
  }), t;
8028
8028
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-sdk",
3
- "version": "26.6.17",
3
+ "version": "26.6.18",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "dev": "npm run docs:dev",
@@ -5,10 +5,18 @@ export const toArray = (value) =>
5
5
  value,
6
6
  ];
7
7
 
8
+ // Handles mixed comparisons: when optionValue is used, selected array contains
9
+ // primitives while filteredOptions contains full objects, so we compare by dataKey
10
+ // against the primitive directly instead of trying to read dataKey from both sides.
8
11
  export const isOptionSelected = (option, selectedArray, dataKey) => {
9
- return dataKey
10
- ? selectedArray.some((s) => s != null && s[dataKey] === option[dataKey])
11
- : selectedArray.some((s) => s === option);
12
+ const isObj = (v) => v != null && typeof v === 'object';
13
+ return selectedArray.some((s) => {
14
+ if (!dataKey) return s === option;
15
+ if (isObj(s) && isObj(option)) return s[dataKey] === option[dataKey]; // both objects
16
+ if (!isObj(s) && isObj(option)) return s === option[dataKey]; // s is primitive (optionValue)
17
+ if (isObj(s) && !isObj(option)) return s[dataKey] === option; // option is primitive
18
+ return s === option; // both primitives
19
+ });
12
20
  };
13
21
 
14
22
  export const dedupeByKey = (items: unknown[], key: string): unknown[] => {
@@ -119,9 +119,6 @@ const WtTableColumnSelect = defineAsyncComponent(
119
119
  () => import('./wt-table-column-select/wt-table-column-select.vue'),
120
120
  );
121
121
  const WtTabs = defineAsyncComponent(() => import('./wt-tabs/wt-tabs.vue'));
122
- const WtTagsInput = defineAsyncComponent(
123
- () => import('./wt-tags-input/wt-tags-input.vue'),
124
- );
125
122
  const WtTimeInput = defineAsyncComponent(
126
123
  () => import('./wt-time-input/wt-time-input.vue'),
127
124
  );
@@ -211,7 +208,6 @@ const Components = {
211
208
  WtSlider,
212
209
  WtSwitcher,
213
210
  WtTabs,
214
- WtTagsInput,
215
211
  WtTimeInput,
216
212
  WtTimepicker,
217
213
  WtTextarea,
@@ -340,7 +336,6 @@ export {
340
336
  WtTableActions,
341
337
  WtTableColumnSelect,
342
338
  WtTabs,
343
- WtTagsInput,
344
339
  WtTextarea,
345
340
  WtTimeInput,
346
341
  WtTimepicker,
@@ -31,13 +31,12 @@
31
31
  value,
32
32
  }"
33
33
  >
34
- <wt-select
34
+ <wt-single-select
35
35
  v-bind="sharedChildrenProps"
36
- :value="value"
36
+ :model-value="value"
37
37
  :search-method="loadLookupList(field.lookup)"
38
- track-by="id"
39
- clearable
40
- @input="selectElement"
38
+ data-key="id"
39
+ @update:model-value="selectElement"
41
40
  />
42
41
  </slot>
43
42
  <slot
@@ -49,10 +48,10 @@
49
48
  value,
50
49
  }"
51
50
  >
52
- <wt-select
51
+ <wt-multi-select
53
52
  v-bind="{ ...sharedChildrenProps, ...multiselectProps }"
54
- :value="value"
55
- @input="selectElements"
53
+ :model-value="value"
54
+ @update:model-value="selectElements"
56
55
  />
57
56
  </slot>
58
57
  <slot
@@ -74,7 +73,12 @@
74
73
 
75
74
  <script lang="ts" setup>
76
75
  import { SysTypesAPI } from '@webitel/api-services/api';
77
- import { WtDatepicker, WtSelect, WtSwitcher } from '@webitel/ui-sdk/components';
76
+ import {
77
+ WtDatepicker,
78
+ WtMultiSelect,
79
+ WtSingleSelect,
80
+ WtSwitcher,
81
+ } from '@webitel/ui-sdk/components';
78
82
  import { computed } from 'vue';
79
83
  import { useI18n } from 'vue-i18n';
80
84
  import type { WebitelProtoDataField } from 'webitel-sdk';
@@ -123,13 +127,12 @@ const sharedChildrenProps = computed(() => ({
123
127
  */
124
128
  const selectProps = computed(() => ({
125
129
  clearable: true,
126
- trackBy: 'id',
130
+ dataKey: 'id',
127
131
  searchMethod: () => loadLookupList(props.field.lookup),
128
132
  }));
129
133
 
130
134
  const multiselectProps = computed(() => ({
131
135
  ...selectProps.value,
132
- multiple: true,
133
136
  }));
134
137
 
135
138
  const setValue = (value) => {
@@ -43,14 +43,14 @@
43
43
  required
44
44
  @update:model-value="updateQuestion({ path: 'question', value: $event })"
45
45
  />
46
- <wt-select
47
- :clearable="false"
46
+ <wt-single-select
47
+ :show-clear="false"
48
48
  :label="t('webitelUI.auditForm.answerType')"
49
49
  :options="QuestionType"
50
- :value="prettifiedQuestionType"
50
+ :model-value="prettifiedQuestionType"
51
51
  :disabled="readonly"
52
- track-by="value"
53
- @input="handleQuestionTypeChange($event.value)"
52
+ data-key="value"
53
+ @update:model-value="handleQuestionTypeChange($event.value)"
54
54
  />
55
55
  </div>
56
56
  <component
@@ -70,7 +70,7 @@ import { computed, inject } from 'vue';
70
70
  import { useI18n } from 'vue-i18n';
71
71
 
72
72
  import WtIconBtn from '../../../components/wt-icon-btn/wt-icon-btn.vue';
73
- import WtSelect from '../../../components/wt-select/wt-select.vue';
73
+ import WtSingleSelect from '../../../components/wt-single-select/wt-single-select.vue';
74
74
  import WtSwitcher from '../../../components/wt-switcher/wt-switcher.vue';
75
75
  import WtTooltip from '../../../components/wt-tooltip/wt-tooltip.vue';
76
76
  import { updateObject } from '../../../scripts';
@@ -1,13 +1,22 @@
1
1
  <template>
2
- <wt-select
3
- :close-on-select="!filterSchema.multiple"
4
- :multiple="filterSchema.multiple"
2
+ <wt-single-select
3
+ v-if="!filterSchema.multiple"
5
4
  :options="options"
6
5
  :search-method="search"
7
- :track-by="trackBy"
8
- :value="value"
6
+ :data-key="trackBy"
7
+ :model-value="value"
9
8
  v-bind="attrs"
10
- @input="setValue"
9
+ @update:model-value="setValue"
10
+ />
11
+
12
+ <wt-multi-select
13
+ v-else
14
+ :options="options"
15
+ :search-method="search"
16
+ :data-key="trackBy"
17
+ :model-value="value"
18
+ v-bind="attrs"
19
+ @update:model-value="setValue"
11
20
  />
12
21
  </template>
13
22
 
@@ -1,23 +1,22 @@
1
1
  <template>
2
- <wt-select
2
+ <wt-single-select
3
3
  class="permissions-role-select"
4
4
  option-label="name"
5
5
  v-bind="attrs"
6
- :value="model"
7
- @input="model = $event"
6
+ v-model:model-value="model"
8
7
  >
9
- <template #singleLabel="{ option, optionLabel }">
10
- <role-row :role="option">
11
- {{ option[optionLabel] || option }}
8
+ <template #value="{ value, getOptionLabel }">
9
+ <role-row :role="value">
10
+ {{ getOptionLabel(value) || value }}
12
11
  </role-row>
13
12
  </template>
14
13
 
15
- <template #option="{ option, optionLabel }">
14
+ <template #option="{ option, getOptionLabel }">
16
15
  <role-row :role="option">
17
- {{ option[optionLabel] || option }}
16
+ {{ getOptionLabel(option) || option }}
18
17
  </role-row>
19
18
  </template>
20
- </wt-select>
19
+ </wt-single-select>
21
20
  </template>
22
21
 
23
22
  <script setup>
@@ -45,32 +45,32 @@
45
45
  </template>
46
46
 
47
47
  <template #read="{ item }">
48
- <wt-select
49
- :clearable="false"
48
+ <wt-single-select
49
+ :show-clear="false"
50
50
  :disabled="!access.edit"
51
51
  :options="accessOptions"
52
- :value="item.access.r"
53
- @input="changeAccessMode({ item, ruleName: 'r', mode: $event })"
52
+ :model-value="item.access.r"
53
+ @update:model-value="changeAccessMode({ item, ruleName: 'r', mode: $event })"
54
54
  />
55
55
  </template>
56
56
 
57
57
  <template #edit="{ item }">
58
- <wt-select
59
- :clearable="false"
58
+ <wt-single-select
59
+ :show-clear="false"
60
60
  :disabled="!access.edit"
61
61
  :options="accessOptions"
62
- :value="item.access.w"
63
- @input="changeAccessMode({ item, ruleName: 'w', mode: $event })"
62
+ :model-value="item.access.w"
63
+ @update:model-value="changeAccessMode({ item, ruleName: 'w', mode: $event })"
64
64
  />
65
65
  </template>
66
66
 
67
67
  <template #delete="{ item }">
68
- <wt-select
69
- :clearable="false"
68
+ <wt-single-select
69
+ :show-clear="false"
70
70
  :disabled="!access.edit"
71
71
  :options="accessOptions"
72
- :value="item.access.d"
73
- @input="changeAccessMode({ item, ruleName: 'd', mode: $event })"
72
+ :model-value="item.access.d"
73
+ @update:model-value="changeAccessMode({ item, ruleName: 'd', mode: $event })"
74
74
  />
75
75
  </template>
76
76
  <template #actions="{ item }">
@@ -1,20 +1,42 @@
1
1
  <template>
2
- <wt-select
3
- :close-on-select="filterSchema.closeOnSelect"
2
+ <wt-single-select
3
+ v-if="!filterSchema.multiple"
4
4
  :label="label"
5
- :multiple="filterSchema.multiple"
6
5
  :search-method="search"
7
- :track-by="filterSchema.storedProp"
8
- :value="filterSchema.value"
6
+ :data-key="filterSchema.storedProp"
7
+ :model-value="filterSchema.value"
9
8
  v-bind="$attrs"
10
- @closed="
9
+ @hide="
11
10
  setValueToQuery({
12
11
  value,
13
12
  filterQuery,
14
13
  storedProp: filterSchema.storedProp,
15
14
  })
16
15
  "
17
- @input="setValue({ filter: filterQuery, value: $event })"
16
+ @update:model-value="setValue({ filter: filterQuery, value: $event })"
17
+ @reset="
18
+ setValueToQuery({
19
+ value,
20
+ filterQuery,
21
+ storedProp: filterSchema.storedProp,
22
+ })
23
+ "
24
+ />
25
+
26
+ <wt-multi-select
27
+ :label="label"
28
+ :search-method="search"
29
+ :data-key="filterSchema.storedProp"
30
+ :model-value="filterSchema.value"
31
+ v-bind="$attrs"
32
+ @hide="
33
+ setValueToQuery({
34
+ value,
35
+ filterQuery,
36
+ storedProp: filterSchema.storedProp,
37
+ })
38
+ "
39
+ @update:model-value="setValue({ filter: filterQuery, value: $event })"
18
40
  @reset="
19
41
  setValueToQuery({
20
42
  value,