@webitel/ui-sdk 26.4.54 → 26.4.56

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 (65) hide show
  1. package/dist/{index-CXLn58Uw.js → index-B8uu3HCG.js} +1 -1
  2. package/dist/{index-BcvKnsta.js → index-rctF23bo.js} +1 -1
  3. package/dist/{install-Dy8FCdqU.js → install-CWTO-pUl.js} +37 -37
  4. package/dist/{isObject-D_mC0e7L.js → isObject-D-VfzobZ.js} +1 -1
  5. package/dist/ui-sdk.css +1 -1
  6. package/dist/ui-sdk.js +1 -1
  7. package/dist/ui-sdk.umd.cjs +37 -37
  8. package/dist/{useVidstackSrc-CFFNYX4t.js → useVidstackSrc-CuVEfjHt.js} +1 -1
  9. package/dist/{vidstack-Bq6c3Bam-Cm8V9-Af.js → vidstack-Bq6c3Bam-Cy2CxGIU.js} +3 -3
  10. package/dist/{vidstack-D2pY00kU-EswopiE4.js → vidstack-D2pY00kU-CkuczmHF.js} +3 -3
  11. package/dist/{vidstack-DDXt6fpN-DmfI9GYr.js → vidstack-DDXt6fpN-Dzn05oCd.js} +2 -2
  12. package/dist/{vidstack-D_-9AA6_-BpkY0Ewv.js → vidstack-D_-9AA6_-pcom8VxP.js} +2 -2
  13. package/dist/{vidstack-DqAw8m9J-v0UrSxgp.js → vidstack-DqAw8m9J-Bu5RKaAM.js} +1 -1
  14. package/dist/{vidstack-audio-dgkmjxrA.js → vidstack-audio-CUprbLLi.js} +2 -2
  15. package/dist/{vidstack-dash-BUv3XcDo.js → vidstack-dash-D_Dc0Q9b.js} +4 -4
  16. package/dist/{vidstack-google-cast-DuURcoyH.js → vidstack-google-cast-ioFZMQ4m.js} +4 -4
  17. package/dist/{vidstack-hls-8qL6KSkp.js → vidstack-hls-CpuPBnp6.js} +4 -4
  18. package/dist/{vidstack-video-BVaKT-Zj.js → vidstack-video-BoKxFvDa.js} +3 -3
  19. package/dist/{vidstack-vimeo-D0omUMJ4.js → vidstack-vimeo-D_1_z3Ro.js} +4 -4
  20. package/dist/{vidstack-youtube-DMr7-35w.js → vidstack-youtube-aJmMeQgI.js} +3 -3
  21. package/dist/{wt-action-bar-GWBUca8V.js → wt-action-bar-9zvLlAt-.js} +1 -1
  22. package/dist/{wt-button-select-C00leIuO.js → wt-button-select-x9AAytVC.js} +1 -1
  23. package/dist/{wt-call-media-action-BcKdNS54.js → wt-call-media-action-D4435-Ke.js} +1 -1
  24. package/dist/{wt-chat-emoji-9F6nz7-q.js → wt-chat-emoji-BaDigRYo.js} +2 -2
  25. package/dist/{wt-confirm-dialog-Dr9IC1Ki.js → wt-confirm-dialog-Cqkb032H.js} +1 -1
  26. package/dist/{wt-context-menu-Ci_j0i2U.js → wt-context-menu-BfQ2PKIT.js} +1 -1
  27. package/dist/{wt-copy-action-CzYcMx1x.js → wt-copy-action-E7U1jVaj.js} +1 -1
  28. package/dist/{wt-datepicker-BMdkoaTy.js → wt-datepicker-_KueScup.js} +1 -1
  29. package/dist/{wt-display-chip-items-Bxsy29Un.js → wt-display-chip-items-CYMFBJgX.js} +1 -1
  30. package/dist/{wt-dual-panel-BVmoc9hg.js → wt-dual-panel-Ct8_taN9.js} +1 -1
  31. package/dist/{wt-dummy-D3x4x6Fp.js → wt-dummy-C2aEuVqm.js} +1 -1
  32. package/dist/{wt-error-page-BEZxsYXU.js → wt-error-page-B7gPk7DD.js} +1 -1
  33. package/dist/{wt-expansion-card-qWV_pUft.js → wt-expansion-card-c6NOlFGJ.js} +1 -1
  34. package/dist/{wt-expansion-panel-B7yrTgM0.js → wt-expansion-panel-uthnUrMd.js} +1 -1
  35. package/dist/{wt-filters-panel-wrapper-Du3W-lBg.js → wt-filters-panel-wrapper-BxBggj5F.js} +1 -1
  36. package/dist/{wt-galleria-B0Fvye46.js → wt-galleria-C7FfZ8_9.js} +1 -1
  37. package/dist/{wt-inline-add-panel-CGSZPfuC.js → wt-inline-add-panel-CZbmrk-H.js} +1 -1
  38. package/dist/{wt-navigation-menu-CNkldxKf.js → wt-navigation-menu-CJA6HtI2.js} +1 -1
  39. package/dist/{wt-notifications-bar-Cl3eNbuV.js → wt-notifications-bar-C25Il3Nr.js} +2 -2
  40. package/dist/{wt-pagination-qt22Mydi.js → wt-pagination-32qDY1oa.js} +1 -1
  41. package/dist/{wt-player-BgZzrNuv.js → wt-player-C28zc2Uv.js} +2 -2
  42. package/dist/{wt-screen-recordings-action-CJ7C7b_7.js → wt-screen-recordings-action-Ac7uh_ZK.js} +1 -1
  43. package/dist/{wt-search-bar-Dr06_Ba8.js → wt-search-bar-Cd7LGTao.js} +1 -1
  44. package/dist/{wt-selection-popup-crYVIT8l.js → wt-selection-popup-DkJE4AOc.js} +1 -1
  45. package/dist/{wt-start-page-NFWbhKpZ.js → wt-start-page-C-HrzciV.js} +1 -1
  46. package/dist/{wt-status-select-BM8-a_XK.js → wt-status-select-COi8eNE7.js} +1 -1
  47. package/dist/{wt-stepper-DYgY0DP3.js → wt-stepper-5luJYzx3.js} +1 -1
  48. package/dist/{wt-table-DPbdMxgc.js → wt-table-Be4iV5NL.js} +1 -1
  49. package/dist/{wt-table-actions-Z1oNCBvd.js → wt-table-actions-BUg3lMIr.js} +1 -1
  50. package/dist/{wt-table-column-select-Ss5cVY7U.js → wt-table-column-select-TYUbysDN.js} +2 -2
  51. package/dist/{wt-tabs-BuNL61Dh.js → wt-tabs-DncYE6wM.js} +1 -1
  52. package/dist/{wt-tags-input-CB2bCckC.js → wt-tags-input-CjJfyyNS.js} +2 -2
  53. package/dist/{wt-timepicker-CQM2ovhg.js → wt-timepicker-BfShY4UJ.js} +1 -1
  54. package/dist/{wt-tree-DWrN0gOU.js → wt-tree-pMseCygd.js} +2 -2
  55. package/dist/{wt-tree-table-B26tC2zw.js → wt-tree-table-7IVpIxuI.js} +1 -1
  56. package/dist/{wt-type-extension-value-input-BMko-O7t.js → wt-type-extension-value-input-CTBNgZiS.js} +2 -2
  57. package/dist/{wt-vidstack-player-DuaRjf_T.js → wt-vidstack-player-DwVI19sF.js} +991 -986
  58. package/package.json +1 -1
  59. package/src/components/wt-vidstack-player/components/buttons/fullscreen-button.vue +20 -10
  60. package/src/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue +2 -1
  61. package/src/components/wt-vidstack-player/types/WtVidstackPlayerSizeProvider.ts +1 -0
  62. package/src/components/wt-vidstack-player/wt-vidstack-player.vue +30 -9
  63. package/src/modules/CallSession/modules/VideoCall/video-call.vue +2 -0
  64. package/types/components/wt-vidstack-player/types/WtVidstackPlayerSizeProvider.d.ts +1 -0
  65. package/types/components/wt-vidstack-player/wt-vidstack-player.vue.d.ts +1 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-sdk",
3
- "version": "26.4.54",
3
+ "version": "26.4.56",
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 biome:format:all || true) && npm run publish-lib",
@@ -1,8 +1,8 @@
1
1
  <template>
2
- <media-fullscreen-button
2
+ <div
3
3
  class="fullscreen-button"
4
- @media-enter-fullscreen-request="emit('toggle', true)"
5
- @media-exit-fullscreen-request="emit('toggle', false)"
4
+ :class="{ 'fullscreen-button--active': fullscreen }"
5
+ @click="emit('toggle', !fullscreen)"
6
6
  >
7
7
  <wt-icon-btn
8
8
  icon="player-enter-fullscreen"
@@ -14,13 +14,15 @@
14
14
  color="on-dark"
15
15
  class="fullscreen-button__exit"
16
16
  />
17
- </media-fullscreen-button>
17
+ </div>
18
18
  </template>
19
19
 
20
20
  <script setup lang="ts">
21
- import { defineEmits } from 'vue';
22
-
21
+ import { inject } from 'vue';
23
22
  import WtIconBtn from '../../../wt-icon-btn/wt-icon-btn.vue';
23
+ import type { WtVidstackPlayerSizeProvider } from '../../types/WtVidstackPlayerSizeProvider';
24
+
25
+ const { fullscreen } = inject<WtVidstackPlayerSizeProvider>('size');
24
26
 
25
27
  const emit = defineEmits<{
26
28
  toggle: [
@@ -29,7 +31,15 @@ const emit = defineEmits<{
29
31
  }>();
30
32
  </script>
31
33
 
32
- <style scoped>.fullscreen-button[data-active] .fullscreen-button__enter,
33
- .fullscreen-button:not([data-active]) .fullscreen-button__exit {
34
- display: none;
35
- }</style>
34
+ <style scoped>
35
+ .fullscreen-button {
36
+ display: inline-flex;
37
+ padding: 0;
38
+ cursor: pointer;
39
+ }
40
+
41
+ .fullscreen-button--active .fullscreen-button__enter,
42
+ .fullscreen-button:not(.fullscreen-button--active) .fullscreen-button__exit {
43
+ display: none;
44
+ }
45
+ </style>
@@ -58,7 +58,7 @@ import type { WtVidstackPlayerSizeProvider } from '../../../types/WtVidstackPlay
58
58
  import FullscreenButton from '../../buttons/fullscreen-button.vue';
59
59
  import ToggleButton from '../../toggle-button.vue';
60
60
 
61
- const { size, fullscreen, changeSize } =
61
+ const { size, fullscreen, changeSize, enterFullscreen } =
62
62
  inject<WtVidstackPlayerSizeProvider>('size');
63
63
 
64
64
  const toggleIcon = computed(() =>
@@ -81,6 +81,7 @@ const handleFullscreen = (value: boolean) => {
81
81
  if (size.value !== ComponentSize.LG) {
82
82
  fullscreen.value = true;
83
83
  changeSize(ComponentSize.LG);
84
+ enterFullscreen();
84
85
  }
85
86
  } else if (size.value === ComponentSize.LG) {
86
87
  exitFullscreen();
@@ -6,4 +6,5 @@ export interface WtVidstackPlayerSizeProvider {
6
6
  size: Ref<ComponentSize>;
7
7
  fullscreen: Ref<boolean>;
8
8
  changeSize: (value: ComponentSize) => void;
9
+ enterFullscreen: () => void;
9
10
  }
@@ -1,13 +1,8 @@
1
1
  <template>
2
2
  <div
3
- :class="[
4
- `wt-vidstack-player--${size}`,
5
- `wt-vidstack-player-video-object-fit--${props.videoObjectFit}`,
6
- fullscreen && `wt-vidstack-player--fullscreen`,
7
- stretch && `wt-vidstack-player--stretch`,
8
- props.static && 'wt-vidstack-player--static',
9
- props.hideBackground && 'wt-vidstack-player--hide-background'
10
- ]" class="wt-vidstack-player"
3
+ ref="root"
4
+ :class="rootClasses"
5
+ class="wt-vidstack-player"
11
6
  >
12
7
  <media-player
13
8
  ref="player"
@@ -54,7 +49,7 @@
54
49
  import 'vidstack/player';
55
50
  import 'vidstack/player/ui';
56
51
  import type { MediaSrc } from 'vidstack';
57
- import { computed, provide, ref, toRefs } from 'vue';
52
+ import { computed, provide, ref, toRefs, useTemplateRef } from 'vue';
58
53
 
59
54
  import { ComponentSize } from '../../enums';
60
55
  import { VideoLayout } from './components';
@@ -78,6 +73,7 @@ interface Props {
78
73
  hideExpand?: boolean;
79
74
  stretch?: boolean;
80
75
  videoObjectFit?: 'cover' | 'contain';
76
+ mirrorVideo?: boolean;
81
77
  }
82
78
 
83
79
  const props = withDefaults(defineProps<Props>(), {
@@ -101,6 +97,7 @@ const emit = defineEmits<{
101
97
  }>();
102
98
 
103
99
  // const player = useTemplateRef<MediaPlayerElement>('player');
100
+ const rootEl = useTemplateRef<HTMLElement>('root');
104
101
  const size = ref(props.size || ComponentSize.SM);
105
102
  const fullscreen = ref(false);
106
103
 
@@ -109,6 +106,10 @@ const changeSize = (value) => {
109
106
  emit('change-size', value);
110
107
  };
111
108
 
109
+ const enterFullscreen = () => {
110
+ rootEl.value?.requestFullscreen();
111
+ };
112
+
112
113
  /** @author liza-pohranichna
113
114
  * options: [sm, md, lg]
114
115
  */
@@ -116,6 +117,7 @@ provide('size', {
116
117
  size,
117
118
  fullscreen,
118
119
  changeSize,
120
+ enterFullscreen,
119
121
  });
120
122
 
121
123
  const { src: srcRef, mime: typeRef, stream: streamRef } = toRefs(props);
@@ -126,6 +128,16 @@ const { normalizedSrcObject } = useVidstackSrc({
126
128
  stream: streamRef,
127
129
  });
128
130
 
131
+ const rootClasses = computed(() => [
132
+ `wt-vidstack-player--${size.value}`,
133
+ `wt-vidstack-player-video-object-fit--${props.videoObjectFit}`,
134
+ props.mirrorVideo && 'wt-vidstack-player--mirror-video',
135
+ fullscreen.value && 'wt-vidstack-player--fullscreen',
136
+ props.stretch && 'wt-vidstack-player--stretch',
137
+ props.static && 'wt-vidstack-player--static',
138
+ props.hideBackground && 'wt-vidstack-player--hide-background',
139
+ ]);
140
+
129
141
  const onCanPlay = (ev: Event) => {
130
142
  if (!props.autoplay) return;
131
143
 
@@ -260,6 +272,7 @@ const onCanPlay = (ev: Event) => {
260
272
  .wt-vidstack-player--lg .wt-vidstack-player__player {
261
273
  display: flex;
262
274
  align-items: center;
275
+ min-height: 100%;
263
276
  }
264
277
 
265
278
  .wt-vidstack-player--lg .wt-vidstack-player__provider {
@@ -271,6 +284,10 @@ const onCanPlay = (ev: Event) => {
271
284
  border-radius: 0;
272
285
  }
273
286
 
287
+ .wt-vidstack-player--fullscreen .wt-vidstack-player__provider :deep(video) {
288
+ border-radius: 0;
289
+ }
290
+
274
291
  .wt-vidstack-player--static {
275
292
  position: relative;
276
293
  z-index: 1;
@@ -322,6 +339,10 @@ const onCanPlay = (ev: Event) => {
322
339
  object-fit: contain;
323
340
  }
324
341
 
342
+ .wt-vidstack-player--mirror-video :deep(video) {
343
+ transform: scaleX(-1);
344
+ }
345
+
325
346
  /*
326
347
  * @author Oleksandr Palonnyi
327
348
  * WTEL-9094: https://webitel.atlassian.net/browse/WTEL-9094
@@ -7,6 +7,7 @@
7
7
  :static="props.static"
8
8
  :username="props.username"
9
9
  :hide-controls-panel="props.hideControlsPanel"
10
+ :mirror-video="!showSenderScreen"
10
11
  autoplay
11
12
  class="video-call"
12
13
  hide-background
@@ -95,6 +96,7 @@
95
96
  class="video-call-sender"
96
97
  hide-controls-panel
97
98
  hide-video-display-panel
99
+ mirror-video
98
100
  static
99
101
  />
100
102
  </template>
@@ -4,4 +4,5 @@ export interface WtVidstackPlayerSizeProvider {
4
4
  size: Ref<ComponentSize>;
5
5
  fullscreen: Ref<boolean>;
6
6
  changeSize: (value: ComponentSize) => void;
7
+ enterFullscreen: () => void;
7
8
  }
@@ -20,6 +20,7 @@ interface Props {
20
20
  hideExpand?: boolean;
21
21
  stretch?: boolean;
22
22
  videoObjectFit?: 'cover' | 'contain';
23
+ mirrorVideo?: boolean;
23
24
  }
24
25
  declare var __VLS_26: {}, __VLS_29: {
25
26
  size: ComponentSize;