@webitel/ui-sdk 25.12.27 → 25.12.29

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 (74) hide show
  1. package/dist/{install-A9G4M7-6.js → install-BlgO8vvA.js} +70931 -66811
  2. package/dist/{plyr-dI1qsIWm.js → plyr-DJyswX07.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 +264 -265
  6. package/dist/{vidstack-Bq6c3Bam-Bpshd13A.js → vidstack-Bq6c3Bam-DjwO73JH.js} +2 -2
  7. package/dist/{vidstack-D2pY00kU-DknwOKzI.js → vidstack-D2pY00kU-9GfP8TVc.js} +2 -2
  8. package/dist/{vidstack-DDXt6fpN-2JcEs0WE.js → vidstack-DDXt6fpN-DS4AECfL.js} +1 -1
  9. package/dist/{vidstack-D_-9AA6_-ltFyEXo5.js → vidstack-D_-9AA6_-bomzWQ4f.js} +1 -1
  10. package/dist/{vidstack-DqAw8m9J-CL4FNO5F.js → vidstack-DqAw8m9J-CDpaNq7k.js} +1 -1
  11. package/dist/{vidstack-audio-CnLJOsQb.js → vidstack-audio-kqV18cx_.js} +2 -2
  12. package/dist/{vidstack-dash-DE9OxUbu.js → vidstack-dash-CQ4hwM3M.js} +3 -3
  13. package/dist/{vidstack-google-cast-DUF-rvcM.js → vidstack-google-cast-DTdO4f40.js} +3 -3
  14. package/dist/{vidstack-hls-B5QgAztZ.js → vidstack-hls-f3oAxxux.js} +3 -3
  15. package/dist/{vidstack-video-DK5nUu2T.js → vidstack-video-D0EY01uq.js} +2 -2
  16. package/dist/{vidstack-vimeo-BPIRVQ20.js → vidstack-vimeo-X0J_rLd3.js} +3 -3
  17. package/dist/{vidstack-youtube-BBGQ_xiA.js → vidstack-youtube-Crx9X7UA.js} +2 -2
  18. package/dist/{vuex.esm-bundler-07IDl-KX.js → vuex.esm-bundler-hTIuzsPk.js} +1 -1
  19. package/package.json +3 -2
  20. package/src/components/wt-app-header/wt-header-actions.vue +4 -1
  21. package/src/components/wt-vidstack-player/components/{panels/media-control-panel/components/buttons → buttons}/fullscreen-button.vue +1 -1
  22. package/src/components/wt-vidstack-player/components/{panels/media-control-panel/media-control-panel.vue → controls-group/controls-group.vue} +15 -12
  23. package/src/components/wt-vidstack-player/components/index.ts +6 -0
  24. package/src/components/wt-vidstack-player/components/layouts/video-layout.vue +11 -36
  25. package/src/components/wt-vidstack-player/components/panels/media-controls-panel/components/buttons/fullscreen-button.vue +40 -0
  26. package/src/components/wt-vidstack-player/components/panels/media-controls-panel/components/buttons/play-button.vue +42 -0
  27. package/src/components/wt-vidstack-player/components/panels/{media-control-panel → media-controls-panel}/components/sliders/time-slider.vue +1 -1
  28. package/src/components/wt-vidstack-player/components/panels/media-controls-panel/media-controls-panel.vue +20 -0
  29. package/src/components/wt-vidstack-player/components/panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue +89 -0
  30. package/src/components/wt-vidstack-player/components/panels/video-call-controls-panel/video-call-controls-panel.vue +134 -0
  31. package/src/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue +1 -1
  32. package/src/components/wt-vidstack-player/components/recording-indicator/recording-indicator.vue +64 -0
  33. package/src/components/wt-vidstack-player/wt-vidstack-player.vue +23 -40
  34. package/src/enums/FormatDateMode/FormatDateMode.ts +6 -0
  35. package/src/enums/index.ts +2 -0
  36. package/src/modules/AuditForm/components/form-answers/answer-editing-info/audit-form-answer-editing-info.vue +3 -1
  37. package/src/modules/CallSession/index.ts +4 -0
  38. package/src/modules/CallSession/modules/ScreenSharing/screen-sharing.vue +85 -0
  39. package/src/modules/CallSession/modules/VideoCall/video-call.vue +165 -0
  40. package/src/modules/CallSession/types/ScreenSharingSession.ts +7 -0
  41. package/src/modules/CallSession/types/index.ts +4 -0
  42. package/src/plugins/primevue/theme/extend/player/player.js +2 -3
  43. package/src/scripts/prettifyTime.js +5 -1
  44. package/src/utils/formatDate.ts +48 -0
  45. package/src/utils/index.ts +1 -0
  46. package/types/components/wt-datepicker/wt-datepicker.vue.d.ts +2 -2
  47. package/types/components/wt-vidstack-player/components/controls-group/controls-group.vue.d.ts +12 -0
  48. package/types/components/wt-vidstack-player/components/index.d.ts +6 -0
  49. package/types/components/wt-vidstack-player/components/layouts/video-layout.vue.d.ts +17 -11
  50. package/types/components/wt-vidstack-player/components/panels/media-controls-panel/components/buttons/fullscreen-button.vue.d.ts +6 -0
  51. package/types/components/wt-vidstack-player/components/panels/media-controls-panel/media-controls-panel.vue.d.ts +2 -0
  52. package/types/components/wt-vidstack-player/components/panels/{screen-sharing-control-panel/screen-sharing-control-panel.vue.d.ts → screen-sharing-controls-panel/screen-sharing-controls-panel.vue.d.ts} +2 -3
  53. package/types/components/wt-vidstack-player/components/panels/video-call-controls-panel/video-call-controls-panel.vue.d.ts +18 -0
  54. package/types/components/wt-vidstack-player/components/recording-indicator/recording-indicator.vue.d.ts +2 -0
  55. package/types/components/wt-vidstack-player/wt-vidstack-player.vue.d.ts +19 -15
  56. package/types/enums/FormatDateMode/FormatDateMode.d.ts +6 -0
  57. package/types/enums/index.d.ts +2 -1
  58. package/types/modules/CallSession/index.d.ts +3 -0
  59. package/types/modules/CallSession/modules/ScreenSharing/screen-sharing.vue.d.ts +16 -0
  60. package/types/modules/CallSession/modules/VideoCall/video-call.vue.d.ts +20 -0
  61. package/types/modules/CallSession/types/ScreenSharingSession.d.ts +7 -0
  62. package/types/modules/CallSession/types/index.d.ts +3 -0
  63. package/types/utils/formatDate.d.ts +2 -0
  64. package/types/utils/index.d.ts +1 -0
  65. package/src/components/wt-vidstack-player/components/panels/screen-sharing-control-panel/screen-sharing-control-panel.vue +0 -195
  66. /package/src/components/wt-vidstack-player/components/{panels/media-control-panel/components/buttons → buttons}/play-button.vue +0 -0
  67. /package/src/components/wt-vidstack-player/components/panels/{media-control-panel → media-controls-panel}/components/time-group.vue +0 -0
  68. /package/src/{components/wt-vidstack-player → modules/CallSession}/types/ScreenshotStatus.ts +0 -0
  69. /package/types/components/wt-vidstack-player/components/{panels/media-control-panel/components/buttons → buttons}/fullscreen-button.vue.d.ts +0 -0
  70. /package/types/components/wt-vidstack-player/components/{panels/media-control-panel/components/buttons → buttons}/play-button.vue.d.ts +0 -0
  71. /package/types/components/wt-vidstack-player/components/panels/{media-control-panel/components/sliders/time-slider.vue.d.ts → media-controls-panel/components/buttons/play-button.vue.d.ts} +0 -0
  72. /package/types/components/wt-vidstack-player/components/panels/{media-control-panel/components/time-group.vue.d.ts → media-controls-panel/components/sliders/time-slider.vue.d.ts} +0 -0
  73. /package/types/components/wt-vidstack-player/components/panels/{media-control-panel/media-control-panel.vue.d.ts → media-controls-panel/components/time-group.vue.d.ts} +0 -0
  74. /package/types/{components/wt-vidstack-player → modules/CallSession}/types/ScreenshotStatus.d.ts +0 -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-A9G4M7-6.js";
9
- import { R as ri } from "./vidstack-DqAw8m9J-CL4FNO5F.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-BlgO8vvA.js";
9
+ import { R as ri } from "./vidstack-DqAw8m9J-CDpaNq7k.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-A9G4M7-6.js";
8
+ import { l as b, k as A, V as O, G as D, f as R, o as G } from "./install-BlgO8vvA.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-DUF-rvcM.js")).GoogleCastProvider(c(this, n), e);
97
+ return new (await import("./vidstack-google-cast-DTdO4f40.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-A9G4M7-6.js";
8
+ import { M as w, l as f, e as A, f as P, U as O, b as S } from "./install-BlgO8vvA.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-A9G4M7-6.js";
1
+ import { c as d, a as i, I as l, e as m } from "./install-BlgO8vvA.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-A9G4M7-6.js";
6
+ import { m as p, v as u } from "./install-BlgO8vvA.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-A9G4M7-6.js";
5
- import { H as d, a as u } from "./vidstack-Bq6c3Bam-Bpshd13A.js";
4
+ import { s as p } from "./install-BlgO8vvA.js";
5
+ import { H as d, a as u } from "./vidstack-Bq6c3Bam-DjwO73JH.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-A9G4M7-6.js";
9
- import { VideoProvider as $t } from "./vidstack-video-DK5nUu2T.js";
10
- import { R as jt } from "./vidstack-DqAw8m9J-CL4FNO5F.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-BlgO8vvA.js";
9
+ import { VideoProvider as $t } from "./vidstack-video-D0EY01uq.js";
10
+ import { R as jt } from "./vidstack-DqAw8m9J-CDpaNq7k.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-A9G4M7-6.js";
9
- import { R as wt } from "./vidstack-DqAw8m9J-CL4FNO5F.js";
10
- import { g as Mt, a as Dt, b as it, h as st, l as Nt, c as Pt } from "./vidstack-D2pY00kU-DknwOKzI.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-BlgO8vvA.js";
9
+ import { R as wt } from "./vidstack-DqAw8m9J-CDpaNq7k.js";
10
+ import { g as Mt, a as Dt, b as it, h as st, l as Nt, c as Pt } from "./vidstack-D2pY00kU-9GfP8TVc.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-A9G4M7-6.js";
9
- import { VideoProvider as yt } from "./vidstack-video-DK5nUu2T.js";
10
- import { R as gt } from "./vidstack-DqAw8m9J-CL4FNO5F.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-BlgO8vvA.js";
9
+ import { VideoProvider as yt } from "./vidstack-video-D0EY01uq.js";
10
+ import { R as gt } from "./vidstack-DqAw8m9J-CDpaNq7k.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-A9G4M7-6.js";
9
- import { H as _, a as B } from "./vidstack-Bq6c3Bam-Bpshd13A.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-BlgO8vvA.js";
9
+ import { H as _, a as B } from "./vidstack-Bq6c3Bam-DjwO73JH.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-A9G4M7-6.js";
9
- import { R as me } from "./vidstack-DqAw8m9J-CL4FNO5F.js";
10
- import { E as we } from "./vidstack-DDXt6fpN-2JcEs0WE.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-BlgO8vvA.js";
9
+ import { R as me } from "./vidstack-DqAw8m9J-CDpaNq7k.js";
10
+ import { E as we } from "./vidstack-DDXt6fpN-DS4AECfL.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-A9G4M7-6.js";
9
- import { E as Z } from "./vidstack-DDXt6fpN-2JcEs0WE.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-BlgO8vvA.js";
9
+ import { E as Z } from "./vidstack-DDXt6fpN-DS4AECfL.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-A9G4M7-6.js";
1
+ import { p as d } from "./install-BlgO8vvA.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.27",
3
+ "version": "25.12.29",
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,12 +56,13 @@
56
56
  "@vuepic/vue-datepicker": "^4.5.1",
57
57
  "@vueuse/components": "^13.0.0",
58
58
  "@webitel/api-services": "^0.0.81",
59
- "@webitel/styleguide": "^24.12.83",
59
+ "@webitel/styleguide": "^24.12.84",
60
60
  "autosize": "^6.0.1",
61
61
  "axios": "^1.8.3",
62
62
  "clipboard-copy": "^4.0.1",
63
63
  "csv-stringify": "^5.5.3",
64
64
  "date-fns": "^4.1.0",
65
+ "date-fns-tz": "^3.2.0",
65
66
  "deep-copy": "^1.4.2",
66
67
  "deep-equal": "^2.2.3",
67
68
  "deepmerge": "^4.3.1",
@@ -75,6 +75,9 @@
75
75
  </template>
76
76
 
77
77
  <script>
78
+ import { FormatDateMode } from '@webitel/ui-sdk/enums';
79
+ import { formatDate } from '@webitel/ui-sdk/utils';
80
+
78
81
  export default {
79
82
  name: 'WtHeaderActions',
80
83
  props: {
@@ -107,7 +110,7 @@ export default {
107
110
  let buildString = '';
108
111
  buildString = `${this.$t('webitelUI.headerActions.buildVersion')}: v${this.buildInfo.release}-${this.buildInfo.build}`;
109
112
  if (this.buildInfo.timestamp) {
110
- buildString += `, ${new Date(this.buildInfo.timestamp).toLocaleString()}`;
113
+ buildString += `, ${formatDate(this.buildInfo.timestamp, FormatDateMode.DATETIME)}`;
111
114
  }
112
115
  return buildString;
113
116
  },
@@ -20,7 +20,7 @@
20
20
  <script setup lang="ts">
21
21
  import {defineEmits} from "vue";
22
22
 
23
- import WtIconBtn from '../../../../../../wt-icon-btn/wt-icon-btn.vue';
23
+ import WtIconBtn from '../../../wt-icon-btn/wt-icon-btn.vue';
24
24
 
25
25
  const emit = defineEmits<{
26
26
  'toggle': [value: boolean];
@@ -1,12 +1,10 @@
1
1
  <template>
2
2
  <media-controls-group
3
- class="media-control-panel controls-group"
4
- :class="`media-control-panel--${size}`"
3
+ class="controls-group"
4
+ :class="`controls-group--${size}`"
5
5
  >
6
- <div class="media-control-panel__actions">
7
- <play-button />
8
- <time-slider />
9
- <time-group />
6
+ <div class="controls-group__actions">
7
+ <slot />
10
8
  </div>
11
9
  </media-controls-group>
12
10
  </template>
@@ -14,27 +12,32 @@
14
12
  <script setup lang="ts">
15
13
  import {inject} from "vue";
16
14
 
17
- import PlayButton from "./components/buttons/play-button.vue";
18
- import TimeSlider from "./components/sliders/time-slider.vue";
19
- import TimeGroup from "./components/time-group.vue";
20
-
21
15
  const { size } = inject('size');
22
16
 
23
17
  </script>
24
18
 
25
19
  <style scoped lang="scss">
26
- .media-control-panel {
20
+ .controls-group {
27
21
  display: flex;
28
22
  justify-content: center;
23
+ max-width: fit-content;
24
+ align-self: center;
29
25
 
30
26
  &--sm {
31
- .media-control-panel__actions {
27
+ width: 100%;
28
+ max-width: 100%;
29
+
30
+ .controls-group__actions {
32
31
  border-top-left-radius: 0 !important;
33
32
  border-top-right-radius: 0 !important;
34
33
  gap: calc(var(--p-player-control-bar-sm-gap) * 2);
35
34
  }
36
35
  }
37
36
 
37
+ &--md {
38
+ align-self: center;
39
+ }
40
+
38
41
  &__actions {
39
42
  width: 100%;
40
43
  display: flex;
@@ -0,0 +1,6 @@
1
+ export { default as ControlsGroup } from './controls-group/controls-group.vue';
2
+ export { default as VideoLayout } from './layouts/video-layout.vue';
3
+ export { default as MediaControlsPanel } from './panels/media-controls-panel/media-controls-panel.vue';
4
+ export { default as ScreenSharingControlsPanel } from './panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue';
5
+ export { default as VideoCallControlsPanel } from './panels/video-call-controls-panel/video-call-controls-panel.vue';
6
+ export { default as RecordingIndicator } from './recording-indicator/recording-indicator.vue';
@@ -4,28 +4,20 @@
4
4
  :class="`video-layout--${size}`"
5
5
  >
6
6
  <video-display-panel
7
+ v-if="!props.hideDisplayPanel"
7
8
  :title="props.title"
8
9
  :username="props.username"
9
10
  :closable="props.closable"
10
11
  @close="emit('close-player')"
11
12
  />
12
13
 
13
- <wt-loader size="sm" color="on-dark"/>
14
+ <wt-loader size="sm" color="on-dark" />
14
15
 
15
- <template v-if="props.mode === 'media'">
16
- <media-control-panel />
17
- </template>
16
+ <slot name="content" />
18
17
 
19
- <template v-if="props.mode === 'stream'">
20
- <screen-sharing-control-panel
21
- :session="props.session"
22
- :screenshot-status="props.screenshotStatus"
23
- :screenshot-is-loading="screenshotIsLoading"
24
- @close-session="emit('close-session')"
25
- @make-screenshot="emit('make-screenshot')"
26
- @toggle-record="emit('toggle-record')"
27
- />
28
- </template>
18
+ <slot name="controls-panel">
19
+ <media-controls-panel />
20
+ </slot>
29
21
  </media-controls>
30
22
  </template>
31
23
 
@@ -33,23 +25,16 @@
33
25
  import {defineEmits, inject} from "vue";
34
26
 
35
27
  import WtLoader from "../../../wt-loader/wt-loader.vue";
36
- import {ScreenshotStatus} from "../../types/ScreenshotStatus";
37
- import {WtVidstakPlayerControlsMode} from "../../types/WtVidstackPlayerControlsMode";
38
- import {WtVidstackPlayerSession} from "../../types/WtVidstackPlayerSession";
39
- import MediaControlPanel from "../panels/media-control-panel/media-control-panel.vue";
40
- import ScreenSharingControlPanel from "../panels/screen-sharing-control-panel/screen-sharing-control-panel.vue";
28
+ import {MediaControlsPanel} from "../index";
41
29
  import VideoDisplayPanel from "../panels/video-display-panel/video-display-panel.vue";
42
30
 
43
- const { size } = inject('size');
31
+ const {size} = inject('size');
44
32
 
45
33
  const props = defineProps<{
46
34
  title?: string;
47
35
  username?: string;
48
36
  closable?: boolean;
49
- mode: WtVidstakPlayerControlsMode;
50
- session: WtVidstackPlayerSession
51
- screenshotStatus: ScreenshotStatus
52
- screenshotIsLoading: boolean
37
+ hideDisplayPanel?: boolean
53
38
  }>();
54
39
 
55
40
  const emit = defineEmits<{
@@ -62,15 +47,11 @@ const emit = defineEmits<{
62
47
 
63
48
  <style scoped lang="scss">
64
49
  .video-layout {
50
+ position: relative;
51
+
65
52
  &--sm {
66
53
  border-radius: var(--p-player-wrapper-sm-border-radius);
67
54
  }
68
-
69
- &--md {
70
- .media-control-panel {
71
- border-radius: var(--p-player-control-bar-md-border-radius);
72
- }
73
- }
74
55
  }
75
56
 
76
57
  .controls {
@@ -85,12 +66,6 @@ const emit = defineEmits<{
85
66
  transition: all var(--transition) ease-out;
86
67
  }
87
68
 
88
- .controls-group {
89
- display: flex;
90
- align-items: center;
91
- width: 100%;
92
- }
93
-
94
69
  .wt-loader {
95
70
  display: flex;
96
71
  align-items: center;
@@ -0,0 +1,40 @@
1
+ <template>
2
+ <media-fullscreen-button
3
+ class="fullscreen-button"
4
+ @media-enter-fullscreen-request="toggleFullScreenRequest(true)"
5
+ @media-exit-fullscreen-request="toggleFullScreenRequest(false)"
6
+ >
7
+ <wt-icon-btn
8
+ icon="player-enter-fullscreen"
9
+ color="on-dark"
10
+ class="fullscreen-button__enter"
11
+ />
12
+ <wt-icon-btn
13
+ icon="player-exit-fullscreen"
14
+ color="on-dark"
15
+ class="fullscreen-button__exit"
16
+ />
17
+ </media-fullscreen-button>
18
+ </template>
19
+
20
+ <script setup lang="ts">
21
+ import {defineEmits} from "vue";
22
+
23
+ import WtIconBtn from '../../../../../../wt-icon-btn/wt-icon-btn.vue';
24
+
25
+ const emit = defineEmits<{
26
+ 'toggle': [value: boolean];
27
+ }>();
28
+
29
+ const toggleFullScreenRequest = (val: boolean) => {
30
+ emit('toggle', val)
31
+ }
32
+ </script>
33
+
34
+ <style scoped>
35
+ .fullscreen-button[data-active] .fullscreen-button__enter,
36
+ .fullscreen-button:not([data-active]) .fullscreen-button__exit {
37
+ display: none;
38
+ }
39
+
40
+ </style>
@@ -0,0 +1,42 @@
1
+ <template>
2
+ <media-play-button class="play-button">
3
+ <wt-button
4
+ :size="size"
5
+ variant="outlined"
6
+ color="secondary"
7
+ icon="play"
8
+ type="play"
9
+ rounded
10
+ contains-icon
11
+ class="play-button__play-icon"
12
+ />
13
+
14
+ <wt-button
15
+ :size="size"
16
+ variant="outlined"
17
+ color="secondary"
18
+ icon="pause"
19
+ type="pause"
20
+ rounded
21
+ contains-icon
22
+ class="play-button__pause-icon"
23
+ />
24
+ </media-play-button>
25
+ </template>
26
+
27
+ <script setup lang="ts">
28
+ import {inject} from "vue";
29
+
30
+ const {size} = inject('size');
31
+ </script>
32
+
33
+ <style scoped>
34
+ .play-button {
35
+ cursor: pointer;
36
+ }
37
+
38
+ .play-button[data-paused] .play-button__pause-icon,
39
+ .play-button:not([data-paused]) .play-button__play-icon {
40
+ display: none;
41
+ }
42
+ </style>
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script setup lang="ts">
8
- import WtSlider from "../../../../../../wt-slider/wt-slider.vue";
8
+ import WtSlider from "../../../../../../../components/wt-slider/wt-slider.vue";
9
9
 
10
10
  </script>
11
11
 
@@ -0,0 +1,20 @@
1
+ <template>
2
+ <controls-group class="media-control-panel">
3
+ <play-button />
4
+
5
+ <time-slider />
6
+
7
+ <time-group />
8
+ </controls-group>
9
+ </template>
10
+
11
+ <script setup lang="ts">
12
+ import {ControlsGroup} from "../../../../../components/wt-vidstack-player/components";
13
+ import PlayButton from "./components/buttons/play-button.vue";
14
+ import TimeSlider from "./components/sliders/time-slider.vue";
15
+ import TimeGroup from "./components/time-group.vue";
16
+
17
+ </script>
18
+
19
+ <style scoped lang="scss">
20
+ </style>
@@ -0,0 +1,89 @@
1
+ <template>
2
+ <controls-group class="screen-sharing-controls-panel">
3
+ <wt-button
4
+ rounded
5
+ contains-icon
6
+ variant="outlined"
7
+ color="secondary"
8
+ :loading="props.screenshotIsLoading"
9
+ :size="size"
10
+ :icon="screenShotIcon"
11
+ @click="makeScreenshot"
12
+ />
13
+
14
+ <wt-button
15
+ rounded
16
+ contains-icon
17
+ variant="outlined"
18
+ color="secondary"
19
+ :size="size"
20
+ :icon="recordIcon"
21
+ @click="emit('toggle-record')"
22
+ />
23
+
24
+ <wt-button
25
+ icon="sharing-end"
26
+ class="screen-sharing-control-panel__sharing-end"
27
+ color="error"
28
+ variant="outlined"
29
+ :size="size"
30
+ rounded
31
+ contains-icon
32
+ @click="closeSession"
33
+ />
34
+ </controls-group>
35
+ </template>
36
+
37
+ <script setup lang="ts">
38
+ import {computed, defineEmits, inject} from 'vue';
39
+
40
+ import {ControlsGroup} from '../../../../../components/wt-vidstack-player/components'
41
+ import {ScreenSharingSession, ScreenshotStatus} from "../../../types";
42
+
43
+ interface Props {
44
+ session: ScreenSharingSession
45
+ screenshotStatus: ScreenshotStatus | null
46
+ screenshotIsLoading: boolean
47
+ }
48
+
49
+ const props = defineProps<Props>();
50
+
51
+ const emit = defineEmits<{
52
+ 'close-session': [],
53
+ 'make-screenshot': [],
54
+ 'toggle-record': [],
55
+ }>()
56
+
57
+ const {size} = inject('size');
58
+
59
+ const recordIcon = computed(() => (props.session.recordings ? 'record-stop' : 'record-start'));
60
+
61
+ const screenShotIcon = computed(() => {
62
+ switch (props.screenshotStatus) {
63
+ case 'done':
64
+ return 'screenshot-done';
65
+ case 'error':
66
+ return 'screenshot-false';
67
+ default:
68
+ return 'screenshot';
69
+ }
70
+ });
71
+
72
+ const closeSession = () => {
73
+ emit('close-session')
74
+ };
75
+
76
+ const makeScreenshot = () => {
77
+ emit('make-screenshot')
78
+ };
79
+ </script>
80
+
81
+ <style scoped lang="scss">
82
+ .screen-sharing-controls-panel {
83
+ position: relative;
84
+ display: flex;
85
+ justify-content: center;
86
+ }
87
+ </style>
88
+
89
+