@webitel/ui-sdk 25.12.48 → 25.12.49

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 (33) hide show
  1. package/dist/{install-B4EtpXXD.js → install-NAaNlYzO.js} +12699 -12503
  2. package/dist/{plyr-DAfyG_iO.js → plyr-giNyDXDc.js} +1 -1
  3. package/dist/ui-sdk.css +1 -1
  4. package/dist/ui-sdk.js +1 -1
  5. package/dist/ui-sdk.umd.cjs +723 -707
  6. package/dist/{vidstack-Bq6c3Bam-DEJ-5jcv.js → vidstack-Bq6c3Bam-DSDAkbP1.js} +2 -2
  7. package/dist/{vidstack-D2pY00kU-DWEQ9_N8.js → vidstack-D2pY00kU-Dlr1_rlI.js} +2 -2
  8. package/dist/{vidstack-DDXt6fpN-DHo4CIYR.js → vidstack-DDXt6fpN-w_Cl4bTj.js} +1 -1
  9. package/dist/{vidstack-D_-9AA6_-ad2HIxVI.js → vidstack-D_-9AA6_-DwP1azbl.js} +1 -1
  10. package/dist/{vidstack-DqAw8m9J-ReUPOFHP.js → vidstack-DqAw8m9J-M6Odux71.js} +1 -1
  11. package/dist/{vidstack-audio-CAikPdW6.js → vidstack-audio-BBuyvgC3.js} +2 -2
  12. package/dist/{vidstack-dash-CebXK5VO.js → vidstack-dash-BXqBgXvl.js} +3 -3
  13. package/dist/{vidstack-google-cast-Bb5-TcI4.js → vidstack-google-cast-CrvA9Gzz.js} +3 -3
  14. package/dist/{vidstack-hls-CFWw21PX.js → vidstack-hls-uKJ9b1jl.js} +3 -3
  15. package/dist/{vidstack-video-BTCFVA94.js → vidstack-video-BJ4-UCfM.js} +2 -2
  16. package/dist/{vidstack-vimeo-D1nXJdHs.js → vidstack-vimeo-Dlc23H3r.js} +3 -3
  17. package/dist/{vidstack-youtube-MtnoA4Ft.js → vidstack-youtube-CDdgrzO7.js} +2 -2
  18. package/dist/{vuex.esm-bundler-yJVenwQK.js → vuex.esm-bundler-Bct_cSur.js} +1 -1
  19. package/package.json +2 -2
  20. package/src/components/index.js +3 -0
  21. package/src/components/wt-badge-new/wt-badge.vue +49 -0
  22. package/src/components/wt-button/wt-button.vue +48 -4
  23. package/src/components/wt-vidstack-player/components/panels/video-call-controls-panel/video-call-controls-panel.vue +10 -0
  24. package/src/modules/CallSession/modules/ScreenSharing/screen-sharing.vue +2 -4
  25. package/src/modules/CallSession/modules/VideoCall/video-call.vue +7 -7
  26. package/src/plugins/primevue/primevue.plugin.js +2 -0
  27. package/src/plugins/primevue/theme/components/badge/badge.js +44 -0
  28. package/src/plugins/primevue/theme/components/components.js +2 -0
  29. package/types/components/index.d.ts +3 -1
  30. package/types/components/wt-badge-new/wt-badge.vue.d.ts +22 -0
  31. package/types/components/wt-button/wt-button.vue.d.ts +7 -2
  32. package/types/plugins/primevue/theme/components/badge/badge.d.ts +121 -0
  33. package/types/plugins/primevue/theme/components/components.d.ts +2 -0
@@ -5,8 +5,8 @@ var ot = (n) => {
5
5
  var Xt = (n, t, s) => t in n ? Qt(n, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : n[t] = s;
6
6
  var N = (n, t, s) => Xt(n, typeof t != "symbol" ? t + "" : t, s), X = (n, t, s) => t.has(n) || ot("Cannot " + s);
7
7
  var i = (n, t, s) => (X(n, t, "read from private field"), s ? s.call(n) : t.get(n)), d = (n, t, s) => t.has(n) ? ot("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(n) : t.set(n, s), c = (n, t, s, r) => (X(n, t, "write to private field"), r ? r.call(n, s) : t.set(n, s), s), a = (n, t, s) => (X(n, t, "access private method"), s);
8
- import { A as Yt, z as ut, B as j, C as Zt, b as ti, E as nt, e as lt, F as _, G as ii, H as ei, f as si, J as ai, l as rt, K as dt, D as ni, L as Y, M as Z } from "./install-B4EtpXXD.js";
9
- import { R as ri } from "./vidstack-DqAw8m9J-ReUPOFHP.js";
8
+ import { A as Yt, z as ut, B as j, C as Zt, b as ti, E as nt, e as lt, F as _, G as ii, H as ei, f as si, J as ai, l as rt, K as dt, D as ni, L as Y, M as Z } from "./install-NAaNlYzO.js";
9
+ import { R as ri } from "./vidstack-DqAw8m9J-M6Odux71.js";
10
10
  let q = null, K = [], z = [];
11
11
  function ht() {
12
12
  return q ?? (q = new AudioContext());
@@ -5,7 +5,7 @@ var w = (t) => {
5
5
  var P = (t, e, a) => e in t ? _(t, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : t[e] = a;
6
6
  var u = (t, e, a) => P(t, typeof e != "symbol" ? e + "" : e, a), C = (t, e, a) => e.has(t) || w("Cannot " + a);
7
7
  var c = (t, e, a) => (C(t, e, "read from private field"), a ? a.call(t) : e.get(t)), m = (t, e, a) => e.has(t) ? w("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, a), y = (t, e, a, o) => (C(t, e, "write to private field"), o ? o.call(t, a) : e.set(t, a), a), s = (t, e, a) => (C(t, e, "access private method"), a);
8
- import { l as b, k as A, V as O, G as D, f as R, o as G } from "./install-B4EtpXXD.js";
8
+ import { l as b, k as A, V as O, G as D, f as R, o as G } from "./install-NAaNlYzO.js";
9
9
  function M() {
10
10
  return "https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1";
11
11
  }
@@ -94,7 +94,7 @@ class F {
94
94
  async load(e) {
95
95
  if (!c(this, n))
96
96
  throw Error("[vidstack] google cast player was not initialized");
97
- return new (await import("./vidstack-google-cast-Bb5-TcI4.js")).GoogleCastProvider(c(this, n), e);
97
+ return new (await import("./vidstack-google-cast-CrvA9Gzz.js")).GoogleCastProvider(c(this, n), e);
98
98
  }
99
99
  }
100
100
  n = new WeakMap(), r = new WeakSet(), S = async function(e) {
@@ -5,7 +5,7 @@ var g = (s) => {
5
5
  var M = (s, t, i) => t in s ? y(s, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : s[t] = i;
6
6
  var c = (s, t, i) => M(s, typeof t != "symbol" ? t + "" : t, i), h = (s, t, i) => t.has(s) || g("Cannot " + i);
7
7
  var e = (s, t, i) => (h(s, t, "read from private field"), i ? i.call(s) : t.get(s)), l = (s, t, i) => t.has(s) ? g("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(s) : t.set(s, i), p = (s, t, i, a) => (h(s, t, "write to private field"), a ? a.call(s, i) : t.set(s, i), i), u = (s, t, i) => (h(s, t, "access private method"), i);
8
- import { M as w, l as f, e as A, f as P, U as O, b as S } from "./install-B4EtpXXD.js";
8
+ import { M as w, l as f, e as A, f as P, U as O, b as S } from "./install-NAaNlYzO.js";
9
9
  var r, o, b, m;
10
10
  class J {
11
11
  constructor(t) {
@@ -1,4 +1,4 @@
1
- import { c as d, a as i, I as l, e as m } from "./install-B4EtpXXD.js";
1
+ import { c as d, a as i, I as l, e as m } from "./install-NAaNlYzO.js";
2
2
  const p = /* @__PURE__ */ i(
3
3
  '<svg viewBox="0 0 32 32" fill="none" aria-hidden="true" xmlns="http://www.w3.org/2000/svg"></svg>'
4
4
  );
@@ -3,7 +3,7 @@ var l = (i) => {
3
3
  };
4
4
  var m = (i, t, s) => t.has(i) || l("Cannot " + s);
5
5
  var r = (i, t, s) => (m(i, t, "read from private field"), s ? s.call(i) : t.get(i)), e = (i, t, s) => t.has(i) ? l("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(i) : t.set(i, s), h = (i, t, s, f) => (m(i, t, "write to private field"), f ? f.call(i, s) : t.set(i, s), s), c = (i, t, s) => (m(i, t, "access private method"), s);
6
- import { m as p, v as u } from "./install-B4EtpXXD.js";
6
+ import { m as p, v as u } from "./install-NAaNlYzO.js";
7
7
  var o, a, n, d;
8
8
  class F {
9
9
  constructor(t) {
@@ -1,8 +1,8 @@
1
1
  var a = Object.defineProperty;
2
2
  var o = (i, e, t) => e in i ? a(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
3
3
  var r = (i, e, t) => o(i, typeof e != "symbol" ? e + "" : e, t);
4
- import { s as p } from "./install-B4EtpXXD.js";
5
- import { H as d, a as u } from "./vidstack-Bq6c3Bam-DEJ-5jcv.js";
4
+ import { s as p } from "./install-NAaNlYzO.js";
5
+ import { H as d, a as u } from "./vidstack-Bq6c3Bam-DSDAkbP1.js";
6
6
  class n extends d {
7
7
  constructor(t, s) {
8
8
  super(t, s);
@@ -5,9 +5,9 @@ var Y = (n) => {
5
5
  var wt = (n, t, e) => t in n ? vt(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e;
6
6
  var I = (n, t, e) => wt(n, typeof t != "symbol" ? t + "" : t, e), b = (n, t, e) => t.has(n) || Y("Cannot " + e);
7
7
  var i = (n, t, e) => (b(n, t, "read from private field"), e ? e.call(n) : t.get(n)), f = (n, t, e) => t.has(n) ? Y("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(n) : t.set(n, e), p = (n, t, e, r) => (b(n, t, "write to private field"), r ? r.call(n, e) : t.set(n, e), e), h = (n, t, e) => (b(n, t, "access private method"), e);
8
- import { r as Et, b as _, d as Lt, f as At, Q as z, l as J, e as Dt, D as N, h as xt, j as O, T as Mt, L as q, t as Ct, u as Nt, v as Rt, k as Ft, m as Z, n as Pt, o as qt, q as _t } from "./install-B4EtpXXD.js";
9
- import { VideoProvider as $t } from "./vidstack-video-BTCFVA94.js";
10
- import { R as jt } from "./vidstack-DqAw8m9J-ReUPOFHP.js";
8
+ import { r as Et, b as _, d as Lt, f as At, Q as z, l as J, e as Dt, D as N, h as xt, j as O, T as Mt, L as q, t as Ct, u as Nt, v as Rt, k as Ft, m as Z, n as Pt, o as qt, q as _t } from "./install-NAaNlYzO.js";
9
+ import { VideoProvider as $t } from "./vidstack-video-BJ4-UCfM.js";
10
+ import { R as jt } from "./vidstack-DqAw8m9J-M6Odux71.js";
11
11
  function W(n) {
12
12
  try {
13
13
  return new Intl.DisplayNames(navigator.languages, { type: "language" }).of(n) ?? null;
@@ -5,9 +5,9 @@ var Q = (d) => {
5
5
  var vt = (d, t, s) => t in d ? Lt(d, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : d[t] = s;
6
6
  var G = (d, t, s) => vt(d, typeof t != "symbol" ? t + "" : t, s), O = (d, t, s) => t.has(d) || Q("Cannot " + s);
7
7
  var e = (d, t, s) => (O(d, t, "read from private field"), s ? s.call(d) : t.get(d)), T = (d, t, s) => t.has(d) ? Q("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(d) : t.set(d, s), l = (d, t, s, i) => (O(d, t, "write to private field"), i ? i.call(d, s) : t.set(d, s), s), r = (d, t, s) => (O(d, t, "access private method"), s);
8
- import { A as St, N as L, W as Z, z as At, D as tt, f as V, l as et, e as It, X as bt, L as Rt } from "./install-B4EtpXXD.js";
9
- import { R as wt } from "./vidstack-DqAw8m9J-ReUPOFHP.js";
10
- import { g as Mt, a as Dt, b as it, h as st, l as Nt, c as Pt } from "./vidstack-D2pY00kU-DWEQ9_N8.js";
8
+ import { A as St, N as L, W as Z, z as At, D as tt, f as V, l as et, e as It, X as bt, L as Rt } from "./install-NAaNlYzO.js";
9
+ import { R as wt } from "./vidstack-DqAw8m9J-M6Odux71.js";
10
+ import { g as Mt, a as Dt, b as it, h as st, l as Nt, c as Pt } from "./vidstack-D2pY00kU-Dlr1_rlI.js";
11
11
  var g, _, at;
12
12
  class _t {
13
13
  constructor(t) {
@@ -5,9 +5,9 @@ var q = (n) => {
5
5
  var ot = (n, t, i) => t in n ? rt(n, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : n[t] = i;
6
6
  var _ = (n, t, i) => ot(n, typeof t != "symbol" ? t + "" : t, i), R = (n, t, i) => t.has(n) || q("Cannot " + i);
7
7
  var e = (n, t, i) => (R(n, t, "read from private field"), i ? i.call(n) : t.get(n)), f = (n, t, i) => t.has(n) ? q("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(n) : t.set(n, i), p = (n, t, i, s) => (R(n, t, "write to private field"), s ? s.call(n, i) : t.set(n, i), i), a = (n, t, i) => (R(n, t, "access private method"), i);
8
- import { i as ht, b as C, d as at, f as O, Q as N, l as V, e as dt, D as x, h as ut, T as ct, j, L as $, k as lt, m as k, n as ft, o as pt, q as vt } from "./install-B4EtpXXD.js";
9
- import { VideoProvider as yt } from "./vidstack-video-BTCFVA94.js";
10
- import { R as gt } from "./vidstack-DqAw8m9J-ReUPOFHP.js";
8
+ import { i as ht, b as C, d as at, f as O, Q as N, l as V, e as dt, D as x, h as ut, T as ct, j, L as $, k as lt, m as k, n as ft, o as pt, q as vt } from "./install-NAaNlYzO.js";
9
+ import { VideoProvider as yt } from "./vidstack-video-BJ4-UCfM.js";
10
+ import { R as gt } from "./vidstack-DqAw8m9J-M6Odux71.js";
11
11
  const Lt = (n) => ut(n);
12
12
  var T, h, o, D, b, r, E, M, U, F, Q, K, W, B, J, X, Y, z, G, Z, tt;
13
13
  class St {
@@ -5,8 +5,8 @@ var b = (i) => {
5
5
  var N = (i, t, e) => t in i ? $(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
6
6
  var y = (i, t, e) => N(i, typeof t != "symbol" ? t + "" : t, e), E = (i, t, e) => t.has(i) || b("Cannot " + e);
7
7
  var s = (i, t, e) => (E(i, t, "read from private field"), e ? e.call(i) : t.get(i)), r = (i, t, e) => t.has(i) ? b("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(i) : t.set(i, e), c = (i, t, e, n) => (E(i, t, "write to private field"), n ? n.call(i, e) : t.set(i, e), e), p = (i, t, e) => (E(i, t, "access private method"), e);
8
- import { s as U, w as V, x as A, y as j, z as C, l as q, D as z, E as F, T as Y, j as v } from "./install-B4EtpXXD.js";
9
- import { H as _, a as B } from "./vidstack-Bq6c3Bam-DEJ-5jcv.js";
8
+ import { s as U, w as V, x as A, y as j, z as C, l as q, D as z, E as F, T as Y, j as v } from "./install-NAaNlYzO.js";
9
+ import { H as _, a as B } from "./vidstack-Bq6c3Bam-DSDAkbP1.js";
10
10
  var P, f, k, D, H;
11
11
  class G {
12
12
  constructor(t, e) {
@@ -5,9 +5,9 @@ var N = (r) => {
5
5
  var de = (r, c, e) => c in r ? ue(r, c, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[c] = e;
6
6
  var b = (r, c, e) => de(r, typeof c != "symbol" ? c + "" : c, e), S = (r, c, e) => c.has(r) || N("Cannot " + e);
7
7
  var t = (r, c, e) => (S(r, c, "read from private field"), e ? e.call(r) : c.get(r)), f = (r, c, e) => c.has(r) ? N("Cannot add the same private member more than once") : c instanceof WeakSet ? c.add(r) : c.set(r, e), u = (r, c, e, i) => (S(r, c, "write to private field"), i ? i.call(r, e) : c.set(r, e), e), o = (r, c, e) => (S(r, c, "access private method"), e);
8
- import { A as fe, M as U, N as C, d as pe, e as q, f as Q, b as ye, O as _, L as R, l as be, P as ke, T as ve, Q as W } from "./install-B4EtpXXD.js";
9
- import { R as me } from "./vidstack-DqAw8m9J-ReUPOFHP.js";
10
- import { E as we } from "./vidstack-DDXt6fpN-DHo4CIYR.js";
8
+ import { A as fe, M as U, N as C, d as pe, e as q, f as Q, b as ye, O as _, L as R, l as be, P as ke, T as ve, Q as W } from "./install-NAaNlYzO.js";
9
+ import { R as me } from "./vidstack-DqAw8m9J-M6Odux71.js";
10
+ import { E as we } from "./vidstack-DDXt6fpN-w_Cl4bTj.js";
11
11
  import { resolveVimeoVideoId as Pe, getVimeoVideoInfo as Te } from "./vidstack-krOAtKMi-B4IZWKdc.js";
12
12
  const Ce = [
13
13
  "bufferend",
@@ -5,8 +5,8 @@ var B = (r) => {
5
5
  var q = (r, n, e) => n in r ? A(r, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[n] = e;
6
6
  var T = (r, n, e) => q(r, typeof n != "symbol" ? n + "" : n, e), M = (r, n, e) => n.has(r) || B("Cannot " + e);
7
7
  var s = (r, n, e) => (M(r, n, "read from private field"), e ? e.call(r) : n.get(r)), p = (r, n, e) => n.has(r) ? B("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(r) : n.set(r, e), l = (r, n, e, t) => (M(r, n, "write to private field"), t ? t.call(r, e) : n.set(r, e), e), o = (r, n, e) => (M(r, n, "access private method"), e);
8
- import { A as z, M as G, d as H, e as J, b as K, O as Q, N as C, R as W, v as $, S as X } from "./install-B4EtpXXD.js";
9
- import { E as Z } from "./vidstack-DDXt6fpN-DHo4CIYR.js";
8
+ import { A as z, M as G, d as H, e as J, b as K, O as Q, N as C, R as W, v as $, S as X } from "./install-NAaNlYzO.js";
9
+ import { E as Z } from "./vidstack-DDXt6fpN-w_Cl4bTj.js";
10
10
  import { resolveYouTubeVideoId as ee } from "./vidstack-Dm1xEU9Q-qSXq3AI-.js";
11
11
  const b = {
12
12
  Ended: 0,
@@ -1,4 +1,4 @@
1
- import { p as d } from "./install-B4EtpXXD.js";
1
+ import { p as d } from "./install-NAaNlYzO.js";
2
2
  import { inject as lt, effectScope as dt, reactive as vt, watch as J, computed as pt } from "vue";
3
3
  function ht() {
4
4
  return W().__VUE_DEVTOOLS_GLOBAL_HOOK__;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-sdk",
3
- "version": "25.12.48",
3
+ "version": "25.12.49",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "make-all": "npm version patch --git-tag-version false && npm run build && (npm run build:types || true) && (npm run lint:fix || true) && npm run publish-lib",
@@ -56,7 +56,7 @@
56
56
  "@vuepic/vue-datepicker": "^4.5.1",
57
57
  "@vueuse/components": "^13.0.0",
58
58
  "@webitel/api-services": "^0.0.90",
59
- "@webitel/styleguide": "^24.12.89",
59
+ "@webitel/styleguide": "^24.12.90",
60
60
  "autosize": "^6.0.1",
61
61
  "axios": "^1.8.3",
62
62
  "clipboard-copy": "^4.0.1",
@@ -11,6 +11,7 @@ import WtAppNavigator from './wt-app-header/wt-app-navigator.vue';
11
11
  import WtHeaderActions from './wt-app-header/wt-header-actions.vue';
12
12
  import WtAvatar from './wt-avatar/wt-avatar.vue';
13
13
  import WtBadge from './wt-badge/wt-badge.vue';
14
+ import WtBadgeNew from './wt-badge-new/wt-badge.vue';
14
15
  import WtBreadcrumb from './wt-breadcrumb/wt-breadcrumb.vue';
15
16
  import WtButton from './wt-button/wt-button.vue';
16
17
  import WtButtonSelect from './wt-button-select/wt-button-select.vue';
@@ -81,6 +82,7 @@ const Components = {
81
82
  WtLogo,
82
83
  WtAvatar,
83
84
  WtBadge,
85
+ WtBadgeNew,
84
86
  WtIcon,
85
87
  WtIndicator,
86
88
  WtInputInfo,
@@ -157,6 +159,7 @@ export {
157
159
  WtAppNavigator,
158
160
  WtAvatar,
159
161
  WtBadge,
162
+ WtBadgeNew,
160
163
  WtBreadcrumb,
161
164
  WtButton,
162
165
  WtButtonSelect,
@@ -0,0 +1,49 @@
1
+ <template>
2
+ <p-badge
3
+ :value="props.value"
4
+ :class="[
5
+ props.size && `p-badge--${props.size}`,
6
+ props.severity && `p-badge--${props.severity}`
7
+ ]"
8
+ class="wt-badge"
9
+ >
10
+ <slot />
11
+ </p-badge>
12
+ </template>
13
+
14
+ <script setup lang="ts">
15
+ import { defineProps, withDefaults } from 'vue';
16
+
17
+ import {ComponentSize} from "../../enums";
18
+
19
+ interface Props {
20
+ value: string | number
21
+ severity?:
22
+ "secondary" |
23
+ "info" |
24
+ "success" |
25
+ "warn" |
26
+ "error" |
27
+ "online" |
28
+ "dnd" |
29
+ "busy" |
30
+ "pause" |
31
+ "onlineCc" |
32
+ "offline"
33
+ size?: ComponentSize
34
+ }
35
+
36
+ const props = withDefaults(defineProps<Props>(), {
37
+ value: '',
38
+ severity: null,
39
+ size: ComponentSize.MD,
40
+ })
41
+ </script>
42
+
43
+ <style lang="scss" scoped>
44
+ @use '@webitel/styleguide/typography' as *;
45
+
46
+ .wt-badge {
47
+ @extend %typo-caption;
48
+ }
49
+ </style>
@@ -3,6 +3,7 @@
3
3
  :class="{
4
4
  'p-button--width-by-content': widthByContent || icon,
5
5
  'p-button--wide': wide,
6
+ 'p-button--with-badge': props.badge,
6
7
  'p-button--loading': showLoader,
7
8
  'p-button--icon': icon,
8
9
  [ `p-button--icon-${variant} p-button--icon-${size}` ]: icon,
@@ -23,8 +24,23 @@
23
24
  />
24
25
  <div class="wt-button__contents">
25
26
  <slot v-if="!icon"> no content provided</slot>
27
+
28
+ <wt-badge
29
+ v-if="props.badge"
30
+ :value="props.badge"
31
+ :severity="props.badgeSeverity"
32
+ :class="badgeClass"
33
+ :size="ComponentSize.MD"
34
+ >
35
+ <template #default>
36
+ <slot name="badge">
37
+ {{ props.badge }}
38
+ </slot>
39
+ </template>
40
+ </wt-badge>
41
+
26
42
  <wt-icon
27
- v-else
43
+ v-if="icon"
28
44
  :icon="icon"
29
45
  :icon-prefix="iconPrefix"
30
46
  :size="iconButtonSizeMap[size]"
@@ -37,7 +53,9 @@
37
53
  import type { ButtonProps } from 'primevue';
38
54
  import { computed, defineEmits, defineProps, inject,ref, useAttrs, watch } from 'vue';
39
55
 
40
- import { ButtonColor, ButtonVariant, ComponentSize, } from '../../enums';
56
+ import { ButtonColor, ButtonVariant, ComponentSize } from '../../enums';
57
+ import WtBadge from "../wt-badge-new/wt-badge.vue";
58
+ import WtIcon from "../wt-icon/wt-icon.vue";
41
59
 
42
60
  const primevueSizeMap = {
43
61
  [ComponentSize.XS]: 'extra-small',
@@ -60,6 +78,9 @@ interface WtButtonProps extends /* @vue-ignore */ ButtonProps {
60
78
  widthByContent?: boolean;
61
79
  icon?: string;
62
80
  iconPrefix?: string;
81
+ badge?: string;
82
+ badgeSeverity?: string;
83
+ badgeAbsolutePosition?: boolean;
63
84
  variant?: ButtonVariant;
64
85
  }
65
86
 
@@ -81,6 +102,10 @@ const attrs = useAttrs();
81
102
 
82
103
  const showLoader = ref(false);
83
104
 
105
+ const badgeClass = computed(() => ({
106
+ 'wt-badge--absolute': props.badgeAbsolutePosition
107
+ }));
108
+
84
109
  // @Ler24
85
110
  // Compatibility mode for Vuex (old mode) and when there is no Vuex in project (new mode)
86
111
  const store = ref(null);
@@ -139,7 +164,26 @@ watch(
139
164
  </script>
140
165
 
141
166
  <style lang="scss">
142
- .wt-button__contents {
143
- display: contents;
167
+ .wt-button {
168
+ position: relative;
169
+
170
+ &.p-button {
171
+ &--with-badge {
172
+ overflow: visible;
173
+ }
174
+ }
175
+
176
+ &__contents {
177
+ display: contents;
178
+ }
179
+
180
+ .wt-badge {
181
+ &--absolute {
182
+ position: absolute;
183
+ top: 0;
184
+ right: 0;
185
+ }
186
+ }
144
187
  }
188
+
145
189
  </style>
@@ -28,8 +28,11 @@
28
28
  :disabled="!props['mic:accessed']"
29
29
  :size="buttonSizeMap[size]"
30
30
  :icon="microphoneIcon"
31
+ :badge="micBadge"
32
+ badge-severity="error"
31
33
  variant="outlined"
32
34
  color="secondary"
35
+ badge-absolute-position
33
36
  rounded
34
37
  contains-icon
35
38
  @click="emit(VideoCallAction.Mic)"
@@ -40,8 +43,11 @@
40
43
  :disabled="!props['video:accessed']"
41
44
  :size="buttonSizeMap[size]"
42
45
  :icon="videoCamIcon"
46
+ :badge="videoBadge"
47
+ badge-severity="error"
43
48
  variant="outlined"
44
49
  color="secondary"
50
+ badge-absolute-position
45
51
  rounded
46
52
  contains-icon
47
53
  @click="emit(VideoCallAction.Video)"
@@ -136,6 +142,8 @@ const microphoneIcon = computed(() => {
136
142
  return 'mic';
137
143
  });
138
144
 
145
+ const micBadge = computed(() => !props['mic:accessed'] ? '!' : null)
146
+
139
147
  const videoCamIcon = computed(() => {
140
148
  if (!props['video:accessed']) {
141
149
  return 'video-cam'; // todo
@@ -148,6 +156,8 @@ const videoCamIcon = computed(() => {
148
156
  return 'video-cam';
149
157
  });
150
158
 
159
+ const videoBadge = computed(() => !props['video:accessed'] ? '!' : null)
160
+
151
161
  const recordIcon = computed(() => (props.recordings ? 'record-stop' : 'record-start'));
152
162
 
153
163
  const screenShotIcon = computed(() => {
@@ -60,15 +60,13 @@ const attrs = useAttrs();
60
60
 
61
61
  &__indicator {
62
62
  position: absolute;
63
- width: 100%;
64
- height: 100%;
65
63
  display: flex;
66
64
  align-items: end;
67
65
  justify-content: flex-end;
68
- padding: var(--p-player-counter-position-padding-sm);
69
66
 
70
67
  &--sm {
71
- position: relative;
68
+ right: var(--p-player-counter-position-padding-sm);
69
+ bottom: calc(var(--p-player-counter-position-padding-sm) + var(--p-player-control-bar-sm-height));
72
70
  }
73
71
 
74
72
  &--md {
@@ -76,13 +76,13 @@
76
76
  :actions="props.actions"
77
77
  :actions:settings:pressed="props['actions:settings:pressed']"
78
78
  :actions:chat:pressed="props['actions:chat:pressed']"
79
- @[VideoCallAction.Screenshot]="([payload, options] = []) => emit(`action:${VideoCallAction.Screenshot}`, payload, options)"
80
- @[VideoCallAction.Recordings]="([payload, options] = []) => emit(`action:${VideoCallAction.Recordings}`, payload, options)"
81
- @[VideoCallAction.Mic]="([payload, options] = []) => emit(`action:${VideoCallAction.Mic}`, payload, options)"
82
- @[VideoCallAction.Video]="([payload, options] = []) => emit(`action:${VideoCallAction.Video}`, payload, options)"
83
- @[VideoCallAction.Settings]="([payload, options] = []) => emit(`action:${VideoCallAction.Settings}`, payload, options)"
84
- @[VideoCallAction.Chat]="([payload, options] = []) => emit(`action:${VideoCallAction.Chat}`, payload, options)"
85
- @[VideoCallAction.Hangup]="([payload, options] = []) => emit(`action:${VideoCallAction.Hangup}`, payload, options)"
79
+ @[VideoCallAction.Screenshot]="(payload, options) => emit(`action:${VideoCallAction.Screenshot}`, payload, options)"
80
+ @[VideoCallAction.Recordings]="(payload, options) => emit(`action:${VideoCallAction.Recordings}`, payload, options)"
81
+ @[VideoCallAction.Mic]="(payload, options) => emit(`action:${VideoCallAction.Mic}`, payload, options)"
82
+ @[VideoCallAction.Video]="(payload, options) => emit(`action:${VideoCallAction.Video}`, payload, options)"
83
+ @[VideoCallAction.Settings]="(payload, options) => emit(`action:${VideoCallAction.Settings}`, payload, options)"
84
+ @[VideoCallAction.Chat]="(payload, options) => emit(`action:${VideoCallAction.Chat}`, payload, options)"
85
+ @[VideoCallAction.Hangup]="(payload, options) => emit(`action:${VideoCallAction.Hangup}`, payload, options)"
86
86
  />
87
87
  </template>
88
88
  </wt-vidstack-player>
@@ -1,5 +1,6 @@
1
1
  import PAutoComplete from 'primevue/autocomplete';
2
2
  import PAvatar from 'primevue/avatar';
3
+ import PBadge from 'primevue/badge';
3
4
  import PBreadcrumb from 'primevue/breadcrumb';
4
5
  import PButton from 'primevue/button';
5
6
  import PCheckbox from 'primevue/checkbox';
@@ -57,6 +58,7 @@ const initPrimevue = (app) => {
57
58
  app.component('PDivider', changeComponentCompatMode(PDivider));
58
59
  app.component('PImage', changeComponentCompatMode(PImage));
59
60
  app.component('PGalleria', changeComponentCompatMode(PGalleria));
61
+ app.component('PBadge', changeComponentCompatMode(PBadge));
60
62
 
61
63
  app.directive('tooltip', Tooltip);
62
64
  };
@@ -0,0 +1,44 @@
1
+ import { BadgeScheme } from '@webitel/styleguide/component-schemes';
2
+
3
+ const colors = [
4
+ 'secondary',
5
+ 'info',
6
+ 'success',
7
+ 'warn',
8
+ 'error',
9
+ 'online',
10
+ 'dnd',
11
+ 'busy',
12
+ 'pause',
13
+ 'onlineCc',
14
+ 'offline',
15
+ ];
16
+
17
+ const generateCustomColorCss = ({ colorName, dt }) => `
18
+ .p-badge--${colorName} {
19
+ background: ${dt(`badge.${colorName}.background`)};
20
+ color: ${dt(`badge.${colorName}.color`)};
21
+ }
22
+ `;
23
+
24
+ const generateCustomSizeCss = ({ size, dt }) => `
25
+ .p-badge--${size} {
26
+ width: ${dt(`badge.${size}.width`)};
27
+ height: ${dt(`badge.${size}.height`)};
28
+ }
29
+ `;
30
+
31
+ const badge = {
32
+ root: BadgeScheme.sizes,
33
+ colorScheme: BadgeScheme.colorScheme,
34
+
35
+ css: ({ dt }) => `
36
+ ${generateCustomSizeCss({ size: 'sm', dt })}
37
+ ${generateCustomSizeCss({ size: 'md', dt })}
38
+ ${generateCustomSizeCss({ size: 'lg', dt })}
39
+
40
+ ${colors.map((color) => generateCustomColorCss({ colorName: color, dt })).join('')}
41
+ `,
42
+ };
43
+
44
+ export default badge;
@@ -1,5 +1,6 @@
1
1
  import autocomplete from './autocomplete/autocomplete.js';
2
2
  import avatar from './avatar/avatar.js';
3
+ import badge from './badge/badge.js';
3
4
  import breadcrumb from './breadcrumb/breadcrumb.js';
4
5
  import button from './button/button.js';
5
6
  import checkbox from './checkbox/checkbox.js';
@@ -22,6 +23,7 @@ const components = {
22
23
  avatar,
23
24
  breadcrumb,
24
25
  button,
26
+ badge,
25
27
  chip,
26
28
  checkbox,
27
29
  textarea,
@@ -4,6 +4,7 @@ import WtAppHeader from './wt-app-header/wt-app-header.vue';
4
4
  import WtAppNavigator from './wt-app-header/wt-app-navigator.vue';
5
5
  import WtAvatar from './wt-avatar/wt-avatar.vue';
6
6
  import WtBadge from './wt-badge/wt-badge.vue';
7
+ import WtBadgeNew from './wt-badge-new/wt-badge.vue';
7
8
  import WtBreadcrumb from './wt-breadcrumb/wt-breadcrumb.vue';
8
9
  import WtButton from './wt-button/wt-button.vue';
9
10
  import WtButtonSelect from './wt-button-select/wt-button-select.vue';
@@ -81,6 +82,7 @@ declare namespace Components {
81
82
  export { WtLogo };
82
83
  export { WtAvatar };
83
84
  export { WtBadge };
85
+ export { WtBadgeNew };
84
86
  export { WtIcon };
85
87
  export { WtIndicator };
86
88
  export { WtInputInfo };
@@ -150,4 +152,4 @@ declare namespace Components {
150
152
  export { WtVidstackPlayer };
151
153
  export { WtChatEmoji };
152
154
  }
153
- export { WtActionBar, WtAppHeader, WtAppNavigator, WtAvatar, WtBadge, WtBreadcrumb, WtButton, WtButtonSelect, WtChatEmoji, WtCheckbox, WtChip, WtConfirmDialog, WtContextMenu, WtCopyAction, WtDatepicker, WtDisplayChipItems, WtDivider, WtDualPanel, WtDummy, WtEmpty, WtErrorPage, WtExpansionPanel, WtFiltersPanelWrapper, WtGalleria, WtHeaderActions, WtHeadline, WtHint, WtIcon, WtIconAction, WtIconBtn, WtImage, WtIndicator, WtInput, WtInputInfo, WtIntersectionObserver, WtItemLink, WtLabel, WtLoadBar, WtLoader, WtLogo, WtNavigationBar, WtNavigationMenu, WtNotification, WtNotificationsBar, WtPageHeader, WtPageWrapper, WtPagination, WtPlayer, WtPopover, WtPopup, WtProgressBar, WtRadio, WtReplaceTransition, WtRoundedAction, WtSearchBar, WtSelect, WtSelectionPopup, WtSlider, WtStartPage, WtStatusSelect, WtStepper, WtSwitcher, WtTable, WtTableActions, WtTableColumnSelect, WtTabs, WtTagsInput, WtTextarea, WtTimeInput, WtTimepicker, WtTooltip, WtTree, WtTreeTable, WtTypeExtensionValueInput, WtVidstackPlayer };
155
+ export { WtActionBar, WtAppHeader, WtAppNavigator, WtAvatar, WtBadge, WtBadgeNew, WtBreadcrumb, WtButton, WtButtonSelect, WtChatEmoji, WtCheckbox, WtChip, WtConfirmDialog, WtContextMenu, WtCopyAction, WtDatepicker, WtDisplayChipItems, WtDivider, WtDualPanel, WtDummy, WtEmpty, WtErrorPage, WtExpansionPanel, WtFiltersPanelWrapper, WtGalleria, WtHeaderActions, WtHeadline, WtHint, WtIcon, WtIconAction, WtIconBtn, WtImage, WtIndicator, WtInput, WtInputInfo, WtIntersectionObserver, WtItemLink, WtLabel, WtLoadBar, WtLoader, WtLogo, WtNavigationBar, WtNavigationMenu, WtNotification, WtNotificationsBar, WtPageHeader, WtPageWrapper, WtPagination, WtPlayer, WtPopover, WtPopup, WtProgressBar, WtRadio, WtReplaceTransition, WtRoundedAction, WtSearchBar, WtSelect, WtSelectionPopup, WtSlider, WtStartPage, WtStatusSelect, WtStepper, WtSwitcher, WtTable, WtTableActions, WtTableColumnSelect, WtTabs, WtTagsInput, WtTextarea, WtTimeInput, WtTimepicker, WtTooltip, WtTree, WtTreeTable, WtTypeExtensionValueInput, WtVidstackPlayer };
@@ -0,0 +1,22 @@
1
+ import { ComponentSize } from "../../enums";
2
+ interface Props {
3
+ value: string | number;
4
+ severity?: "secondary" | "info" | "success" | "warn" | "error" | "online" | "dnd" | "busy" | "pause" | "onlineCc" | "offline";
5
+ size?: ComponentSize;
6
+ }
7
+ declare var __VLS_6: {};
8
+ type __VLS_Slots = {} & {
9
+ default?: (props: typeof __VLS_6) => any;
10
+ };
11
+ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
12
+ value: string | number;
13
+ size: ComponentSize;
14
+ severity: "secondary" | "info" | "success" | "warn" | "error" | "online" | "dnd" | "busy" | "pause" | "onlineCc" | "offline";
15
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
17
+ export default _default;
18
+ type __VLS_WithSlots<T, S> = T & {
19
+ new (): {
20
+ $slots: S;
21
+ };
22
+ };
@@ -9,11 +9,16 @@ interface WtButtonProps extends /* @vue-ignore */ ButtonProps {
9
9
  widthByContent?: boolean;
10
10
  icon?: string;
11
11
  iconPrefix?: string;
12
+ badge?: string;
13
+ badgeSeverity?: string;
14
+ badgeAbsolutePosition?: boolean;
12
15
  variant?: ButtonVariant;
13
16
  }
14
- declare var __VLS_14: {};
17
+ declare var __VLS_14: {}, __VLS_19: {};
15
18
  type __VLS_Slots = {} & {
16
19
  default?: (props: typeof __VLS_14) => any;
20
+ } & {
21
+ badge?: (props: typeof __VLS_19) => any;
17
22
  };
18
23
  declare const __VLS_component: import("vue").DefineComponent<WtButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
24
  click: (...args: any[]) => void;
@@ -26,8 +31,8 @@ declare const __VLS_component: import("vue").DefineComponent<WtButtonProps, {},
26
31
  icon: string;
27
32
  wide: boolean;
28
33
  loading: boolean;
29
- widthByContent: boolean;
30
34
  iconPrefix: string;
35
+ widthByContent: boolean;
31
36
  variant: ButtonVariant;
32
37
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
33
38
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;