@webitel/ui-sdk 25.12.40 → 25.12.42
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.
- package/dist/{install-DGNb9nVr.js → install-Bfl8ofha.js} +63 -58
- package/dist/{plyr-ByorDhcr.js → plyr-Df5cOiTy.js} +1 -1
- package/dist/ui-sdk.css +1 -1
- package/dist/ui-sdk.js +1 -1
- package/dist/ui-sdk.umd.cjs +541 -541
- package/dist/{vidstack-Bq6c3Bam-D5KBuWRZ.js → vidstack-Bq6c3Bam-DVCWftqH.js} +2 -2
- package/dist/{vidstack-D2pY00kU-Ws1Jvjkb.js → vidstack-D2pY00kU-DTpKOJ6o.js} +2 -2
- package/dist/{vidstack-DDXt6fpN-CMGNnPQV.js → vidstack-DDXt6fpN-aIclxRPV.js} +1 -1
- package/dist/{vidstack-D_-9AA6_-DLAWXBQ4.js → vidstack-D_-9AA6_-D1N8-Xl9.js} +1 -1
- package/dist/{vidstack-DqAw8m9J-BPmv6sOh.js → vidstack-DqAw8m9J-CW-yfsyI.js} +1 -1
- package/dist/{vidstack-audio-BIY4ys0T.js → vidstack-audio-cY3mT_Ph.js} +2 -2
- package/dist/{vidstack-dash-HCChLXEY.js → vidstack-dash-DoiwnJj9.js} +3 -3
- package/dist/{vidstack-google-cast-Be_1pOC-.js → vidstack-google-cast-BTmWbvmy.js} +3 -3
- package/dist/{vidstack-hls-BbnSLJID.js → vidstack-hls-BXZ0v6qf.js} +3 -3
- package/dist/{vidstack-video-Dxw2U6Fe.js → vidstack-video-DEuCzb_1.js} +2 -2
- package/dist/{vidstack-vimeo-G_rdpj4P.js → vidstack-vimeo-DVKRt2s2.js} +3 -3
- package/dist/{vidstack-youtube-Csh5czsD.js → vidstack-youtube-nXbTkV-N.js} +2 -2
- package/dist/{vuex.esm-bundler-VVqVSpHV.js → vuex.esm-bundler-CIjQVM6w.js} +1 -1
- package/package.json +2 -2
- package/src/components/wt-vidstack-player/components/buttons/play-button.vue +3 -1
- package/src/components/wt-vidstack-player/components/controls-group/controls-group.vue +3 -1
- package/src/components/wt-vidstack-player/components/layouts/video-layout.vue +6 -4
- package/src/components/wt-vidstack-player/components/panels/media-controls-panel/components/buttons/play-button.vue +3 -1
- package/src/components/wt-vidstack-player/components/panels/media-controls-panel/media-controls-panel.vue +4 -0
- package/src/components/wt-vidstack-player/components/panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue +3 -2
- package/src/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue +5 -10
- package/src/components/wt-vidstack-player/types/WtVidstackPlayerSizeProvider.ts +9 -0
- package/src/components/wt-vidstack-player/wt-vidstack-player.vue +28 -7
- package/src/modules/CallSession/modules/VideoCall/video-call.vue +84 -73
- package/types/components/wt-vidstack-player/components/layouts/video-layout.vue.d.ts +2 -1
- package/types/components/wt-vidstack-player/components/panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/types/WtVidstackPlayerSizeProvider.d.ts +7 -0
- package/types/components/wt-vidstack-player/wt-vidstack-player.vue.d.ts +2 -1
- package/types/modules/CallSession/modules/VideoCall/video-call.vue.d.ts +21 -3
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
:stream="mainStream"
|
|
4
4
|
:static="props.static"
|
|
5
5
|
:size="props.size"
|
|
6
|
-
:class="`video-call-position--${props.position}`"
|
|
6
|
+
:class="[!props.static && `video-call-position--${props.position}`]"
|
|
7
7
|
:username="props.username"
|
|
8
|
+
:resizable="props.resizable"
|
|
9
|
+
:hide-header="props.hideHeader"
|
|
8
10
|
class="video-call"
|
|
9
11
|
hide-background
|
|
10
12
|
autoplay
|
|
@@ -12,59 +14,55 @@
|
|
|
12
14
|
@change-size="(payload) => emit('change-size', payload)"
|
|
13
15
|
>
|
|
14
16
|
<template #content="{ size: innerSize }">
|
|
17
|
+
<slot name="content" :size="innerSize" />
|
|
18
|
+
|
|
19
|
+
<slot name="overlay" :size="innerSize">
|
|
20
|
+
<div class="video-call-overlay"></div>
|
|
21
|
+
</slot>
|
|
22
|
+
|
|
15
23
|
<div
|
|
16
|
-
:class="`video-call-content--${innerSize}`"
|
|
17
|
-
class="video-call-content"
|
|
24
|
+
:class="`video-call-content-wrapper--${innerSize}`"
|
|
25
|
+
class="video-call-content-wrapper"
|
|
18
26
|
>
|
|
19
|
-
<
|
|
27
|
+
<screenshot-box
|
|
28
|
+
:src="props['screenshot:src']"
|
|
29
|
+
:size="innerSize"
|
|
30
|
+
@zoom="emit(`action:${VideoCallAction.ZoomScreenshot}`)"
|
|
31
|
+
@close="emit(`action:${VideoCallAction.CloseScreenshot}`)"
|
|
32
|
+
/>
|
|
33
|
+
|
|
34
|
+
<template v-if="props['receiver:stream'] && !props['receiver:video:enabled']">
|
|
20
35
|
<div
|
|
21
|
-
:class="`video-call-
|
|
22
|
-
class="video-call-
|
|
36
|
+
:class="`video-call-receiver--${innerSize}`"
|
|
37
|
+
class="video-call-receiver video-call-receiver--muted"
|
|
23
38
|
>
|
|
24
|
-
<wt-icon :size="
|
|
39
|
+
<wt-icon :size="senderVideoMutedIconSizes[innerSize]" icon="video-cam-off--filled" />
|
|
25
40
|
</div>
|
|
26
41
|
</template>
|
|
27
42
|
|
|
28
|
-
<
|
|
29
|
-
<
|
|
30
|
-
:
|
|
31
|
-
:
|
|
32
|
-
|
|
33
|
-
|
|
43
|
+
<template v-else-if="props['receiver:stream']">
|
|
44
|
+
<wt-vidstack-player
|
|
45
|
+
:stream="props['receiver:stream']"
|
|
46
|
+
:resizable="false"
|
|
47
|
+
:class="`video-call-receiver--${innerSize}`"
|
|
48
|
+
hide-header
|
|
49
|
+
hide-controls-panel
|
|
50
|
+
static
|
|
51
|
+
autoplay
|
|
52
|
+
muted
|
|
53
|
+
class="video-call-receiver"
|
|
34
54
|
/>
|
|
55
|
+
</template>
|
|
56
|
+
</div>
|
|
35
57
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
<template v-else-if="props['receiver:stream']">
|
|
46
|
-
<wt-vidstack-player
|
|
47
|
-
:stream="props['receiver:stream']"
|
|
48
|
-
:resizable="false"
|
|
49
|
-
:class="`video-call-receiver--${innerSize}`"
|
|
50
|
-
hide-display-panel
|
|
51
|
-
static
|
|
52
|
-
autoplay
|
|
53
|
-
muted
|
|
54
|
-
class="video-call-receiver"
|
|
55
|
-
/>
|
|
56
|
-
</template>
|
|
57
|
-
</div>
|
|
58
|
-
|
|
59
|
-
<div
|
|
60
|
-
:class="`video-call__indicator--${innerSize}`"
|
|
61
|
-
class="video-call__indicator"
|
|
62
|
-
>
|
|
63
|
-
<recording-indicator
|
|
64
|
-
v-if="props.recordings"
|
|
65
|
-
:recording="props.recordings"
|
|
66
|
-
/>
|
|
67
|
-
</div>
|
|
58
|
+
<div
|
|
59
|
+
:class="`video-call__indicator--${innerSize}`"
|
|
60
|
+
class="video-call__indicator"
|
|
61
|
+
>
|
|
62
|
+
<recording-indicator
|
|
63
|
+
v-if="props.recordings"
|
|
64
|
+
:recording="props.recordings"
|
|
65
|
+
/>
|
|
68
66
|
</div>
|
|
69
67
|
</template>
|
|
70
68
|
|
|
@@ -125,8 +123,10 @@ const props = withDefaults(defineProps<{
|
|
|
125
123
|
recordings?: boolean;
|
|
126
124
|
|
|
127
125
|
static?: boolean;
|
|
128
|
-
position?: 'left-bottom' | 'right-bottom';
|
|
126
|
+
position?: 'left-bottom' | 'right-bottom' | 'center';
|
|
129
127
|
size?: ComponentSize
|
|
128
|
+
hideHeader?: boolean
|
|
129
|
+
resizable?: boolean;
|
|
130
130
|
|
|
131
131
|
actions: VideoCallAction[];
|
|
132
132
|
username: string;
|
|
@@ -153,12 +153,6 @@ const mainStream = computed(() => {
|
|
|
153
153
|
return props['receiver:stream'] || props['sender:stream'];
|
|
154
154
|
})
|
|
155
155
|
|
|
156
|
-
const receiverVideoMutedIconSizes = {
|
|
157
|
-
[ComponentSize.SM]: ComponentSize.MD,
|
|
158
|
-
[ComponentSize.MD]: ComponentSize.LG,
|
|
159
|
-
[ComponentSize.LG]: ComponentSize.XXL,
|
|
160
|
-
}
|
|
161
|
-
|
|
162
156
|
const senderVideoMutedIconSizes = {
|
|
163
157
|
[ComponentSize.SM]: ComponentSize.MD,
|
|
164
158
|
[ComponentSize.MD]: ComponentSize['4XL'],
|
|
@@ -168,6 +162,8 @@ const senderVideoMutedIconSizes = {
|
|
|
168
162
|
|
|
169
163
|
<style lang="scss" scoped>
|
|
170
164
|
.video-call {
|
|
165
|
+
flex: 0 0 auto;
|
|
166
|
+
|
|
171
167
|
&-position {
|
|
172
168
|
&--left-bottom {
|
|
173
169
|
&.wt-vidstack-player {
|
|
@@ -180,8 +176,6 @@ const senderVideoMutedIconSizes = {
|
|
|
180
176
|
top: unset;
|
|
181
177
|
left: var(--spacing-sm);
|
|
182
178
|
bottom: var(--spacing-sm);
|
|
183
|
-
max-width: var(--p-player-wrapper-md-width);
|
|
184
|
-
max-height: var(--p-player-wrapper-md-height);
|
|
185
179
|
}
|
|
186
180
|
}
|
|
187
181
|
}
|
|
@@ -197,11 +191,30 @@ const senderVideoMutedIconSizes = {
|
|
|
197
191
|
top: unset;
|
|
198
192
|
right: var(--spacing-sm);
|
|
199
193
|
bottom: var(--spacing-sm);
|
|
200
|
-
max-width: var(--p-player-wrapper-md-width);
|
|
201
|
-
max-height: var(--p-player-wrapper-md-height);
|
|
202
194
|
}
|
|
203
195
|
}
|
|
204
196
|
}
|
|
197
|
+
|
|
198
|
+
&--center {
|
|
199
|
+
&.wt-vidstack-player {
|
|
200
|
+
top: 50%;
|
|
201
|
+
left: 50%;
|
|
202
|
+
right: unset;
|
|
203
|
+
bottom: unset;
|
|
204
|
+
transform: translate(-50%, -50%);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
&-overlay {
|
|
210
|
+
width: 100%;
|
|
211
|
+
height: 100%;
|
|
212
|
+
display: block;
|
|
213
|
+
position: absolute;
|
|
214
|
+
left: 0;
|
|
215
|
+
top: 0;
|
|
216
|
+
z-index: 0;
|
|
217
|
+
background: var(--p-player-wrapper-background);
|
|
205
218
|
}
|
|
206
219
|
|
|
207
220
|
&-content {
|
|
@@ -220,27 +233,24 @@ const senderVideoMutedIconSizes = {
|
|
|
220
233
|
}
|
|
221
234
|
|
|
222
235
|
&-wrapper {
|
|
236
|
+
position: absolute;
|
|
223
237
|
display: flex;
|
|
224
238
|
flex-direction: column;
|
|
225
239
|
gap: var(--p-player-control-bar-sm-gap);
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
240
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
width: 100%;
|
|
234
|
-
height: 100%;
|
|
235
|
-
display: flex;
|
|
236
|
-
align-items: center;
|
|
237
|
-
justify-content: center;
|
|
238
|
-
z-index: -1;
|
|
239
|
-
background: var(--p-player-wrapper-background);
|
|
241
|
+
&--sm {
|
|
242
|
+
left: var(--p-player-counter-position-padding-sm);
|
|
243
|
+
bottom: calc(var(--p-player-counter-position-padding-sm) + var(--p-player-control-bar-sm-height));
|
|
244
|
+
}
|
|
240
245
|
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
246
|
+
&--md {
|
|
247
|
+
left: var(--p-player-counter-position-padding-md);
|
|
248
|
+
bottom: var(--p-player-counter-position-padding-md);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
&--lg {
|
|
252
|
+
left: var(--p-player-counter-position-padding-lg);
|
|
253
|
+
bottom: var(--p-player-counter-position-padding-lg);
|
|
244
254
|
}
|
|
245
255
|
}
|
|
246
256
|
}
|
|
@@ -318,7 +328,8 @@ const senderVideoMutedIconSizes = {
|
|
|
318
328
|
justify-content: flex-end;
|
|
319
329
|
|
|
320
330
|
&--sm {
|
|
321
|
-
|
|
331
|
+
right: var(--p-player-counter-position-padding-sm);
|
|
332
|
+
bottom: calc(var(--p-player-counter-position-padding-sm) + var(--p-player-control-bar-sm-height));
|
|
322
333
|
}
|
|
323
334
|
|
|
324
335
|
&--md {
|
|
@@ -15,18 +15,36 @@ type __VLS_Props = {
|
|
|
15
15
|
'screenshot:src'?: string;
|
|
16
16
|
recordings?: boolean;
|
|
17
17
|
static?: boolean;
|
|
18
|
-
position?: 'left-bottom' | 'right-bottom';
|
|
18
|
+
position?: 'left-bottom' | 'right-bottom' | 'center';
|
|
19
19
|
size?: ComponentSize;
|
|
20
|
+
hideHeader?: boolean;
|
|
21
|
+
resizable?: boolean;
|
|
20
22
|
actions: VideoCallAction[];
|
|
21
23
|
username: string;
|
|
22
24
|
};
|
|
23
|
-
declare
|
|
25
|
+
declare var __VLS_10: {
|
|
26
|
+
size: ComponentSize;
|
|
27
|
+
}, __VLS_12: {
|
|
28
|
+
size: ComponentSize;
|
|
29
|
+
};
|
|
30
|
+
type __VLS_Slots = {} & {
|
|
31
|
+
content?: (props: typeof __VLS_10) => any;
|
|
32
|
+
} & {
|
|
33
|
+
overlay?: (props: typeof __VLS_12) => any;
|
|
34
|
+
};
|
|
35
|
+
declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
24
36
|
[x: string]: any;
|
|
25
37
|
} & {
|
|
26
38
|
[x: string]: any;
|
|
27
39
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
28
40
|
[x: `on${Capitalize<any>}`]: (...args: any) => any;
|
|
29
41
|
}>, {
|
|
30
|
-
position: "left-bottom" | "right-bottom";
|
|
42
|
+
position: "left-bottom" | "right-bottom" | "center";
|
|
31
43
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
44
|
+
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
32
45
|
export default _default;
|
|
46
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
47
|
+
new (): {
|
|
48
|
+
$slots: S;
|
|
49
|
+
};
|
|
50
|
+
};
|