@webitel/ui-sdk 26.2.115 → 26.2.117
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/{index-BjzpFL4E.js → index-BFynmdSW.js} +1 -1
- package/dist/{index-fuTf2dMU.js → index-m0E8fIQb.js} +1 -1
- package/dist/{install-oaxyJuzb.js → install-DzazF_oO.js} +36 -36
- package/dist/{isObject-DApJLItD.js → isObject-ofapkEKz.js} +1 -1
- package/dist/ui-sdk.css +1 -1
- package/dist/ui-sdk.js +1 -1
- package/dist/ui-sdk.umd.cjs +267 -267
- package/dist/{vidstack-Bq6c3Bam-CPemCoye.js → vidstack-Bq6c3Bam-D9EU2NxL.js} +2 -2
- package/dist/{vidstack-D2pY00kU-kmkAc5iq.js → vidstack-D2pY00kU-DGHlDxMW.js} +2 -2
- package/dist/{vidstack-DDXt6fpN-BDXHoWfA.js → vidstack-DDXt6fpN-DwAeAfLy.js} +1 -1
- package/dist/{vidstack-D_-9AA6_-BY6PdB7k.js → vidstack-D_-9AA6_-BfS7q4TM.js} +1 -1
- package/dist/{vidstack-DqAw8m9J-B-A1fMjZ.js → vidstack-DqAw8m9J-C0-wFQrp.js} +1 -1
- package/dist/{vidstack-audio-DNWZXBiG.js → vidstack-audio-jULqlhW3.js} +2 -2
- package/dist/{vidstack-dash-fxUAiNxL.js → vidstack-dash-CIw72WMz.js} +3 -3
- package/dist/{vidstack-google-cast-B_GkOx7C.js → vidstack-google-cast-DfXD6loe.js} +3 -3
- package/dist/{vidstack-hls-BDoCXLGS.js → vidstack-hls-BA2misUI.js} +3 -3
- package/dist/{vidstack-video-CnEJWJBm.js → vidstack-video-4LWT9o8o.js} +2 -2
- package/dist/{vidstack-vimeo-CkW2M6pH.js → vidstack-vimeo-C1Op41dk.js} +3 -3
- package/dist/{vidstack-youtube-COxHxfHB.js → vidstack-youtube-g7kQBNNj.js} +2 -2
- package/dist/{wt-action-bar-CelN5cph.js → wt-action-bar-DBpgD0EC.js} +1 -1
- package/dist/{wt-button-select-BT40HkxV.js → wt-button-select-C43-ybCc.js} +1 -1
- package/dist/{wt-chat-emoji-DROOc6bl.js → wt-chat-emoji-9mCFysqa.js} +2 -2
- package/dist/{wt-confirm-dialog-CN4LDnWw.js → wt-confirm-dialog-CnUDGpR6.js} +1 -1
- package/dist/{wt-context-menu-DDEdTwmo.js → wt-context-menu-Cjot1BE-.js} +1 -1
- package/dist/{wt-copy-action-BxrmG1PF.js → wt-copy-action-DAPawWRN.js} +1 -1
- package/dist/{wt-datepicker-VPrJ2zIK.js → wt-datepicker-YZTotBwv.js} +1 -1
- package/dist/{wt-display-chip-items-Dp6aUwP7.js → wt-display-chip-items-DdZBNSEn.js} +1 -1
- package/dist/{wt-dual-panel-DZ7yGaM_.js → wt-dual-panel-BZanJCpX.js} +1 -1
- package/dist/{wt-dummy-Dn7tHpr7.js → wt-dummy-na1iklN7.js} +1 -1
- package/dist/{wt-error-page-Bgkn7Kk3.js → wt-error-page-DkZOxEF4.js} +1 -1
- package/dist/{wt-expansion-card-LonwOu2T.js → wt-expansion-card-DZQEvHZZ.js} +1 -1
- package/dist/{wt-expansion-panel-DPz0bAba.js → wt-expansion-panel-QXanZILo.js} +1 -1
- package/dist/{wt-filters-panel-wrapper-CxOraVEI.js → wt-filters-panel-wrapper-D3oUlcKI.js} +1 -1
- package/dist/{wt-galleria-BbFrD78g.js → wt-galleria-DWXkw5eD.js} +1 -1
- package/dist/{wt-navigation-menu-0XBga4Sm.js → wt-navigation-menu-n-ebh7Wq.js} +1 -1
- package/dist/{wt-notifications-bar-Cgqo668H.js → wt-notifications-bar-4WdKoUWB.js} +2 -2
- package/dist/{wt-page-header-BC9WlWm2.js → wt-page-header-BgMy57yR.js} +1 -1
- package/dist/{wt-pagination-D2lSnVYF.js → wt-pagination-rqAg_cO8.js} +1 -1
- package/dist/wt-player-CZGX0VGn.js +140 -0
- package/dist/{wt-search-bar-DqGX3Ty2.js → wt-search-bar-DKntklU-.js} +1 -1
- package/dist/{wt-selection-popup-DuNVRHnI.js → wt-selection-popup-DziTUE4w.js} +1 -1
- package/dist/wt-slider-BEkw4KGp.js +4 -0
- package/dist/{wt-slider-D5TBCXMq.js → wt-slider.vue_vue_type_script_setup_true_lang-DlaRDHxo.js} +5 -5
- package/dist/{wt-start-page-DwcLcNXb.js → wt-start-page-BMw4Wa-V.js} +1 -1
- package/dist/{wt-status-select-DJeBGbhm.js → wt-status-select-Db16DKg7.js} +1 -1
- package/dist/{wt-stepper--f9yXRnp.js → wt-stepper-BQYKPNdQ.js} +1 -1
- package/dist/{wt-table-DAqH0enN.js → wt-table-BrYjnZhH.js} +1 -1
- package/dist/{wt-table-actions-D_ke_oEf.js → wt-table-actions-DnuDZxll.js} +1 -1
- package/dist/{wt-table-column-select-TmGCmp8y.js → wt-table-column-select-B4HppkDV.js} +2 -2
- package/dist/{wt-tabs-DfWXJZcJ.js → wt-tabs-BxVMV8h1.js} +1 -1
- package/dist/{wt-tags-input-DwSHG_hj.js → wt-tags-input-CQ8nOhW-.js} +2 -2
- package/dist/{wt-timepicker-CPORh3XF.js → wt-timepicker-CedbvtH0.js} +1 -1
- package/dist/{wt-tree-AIg73-16.js → wt-tree-BvQexNhI.js} +2 -2
- package/dist/{wt-tree-table-DbM4mARe.js → wt-tree-table-KlQQbZ_X.js} +1 -1
- package/dist/{wt-type-extension-value-input-Dghs56WS.js → wt-type-extension-value-input-cr-l1qEm.js} +2 -2
- package/dist/{wt-vidstack-player-eM0NjopU.js → wt-vidstack-player-DTitYIww.js} +30 -29
- package/package.json +1 -1
- package/src/components/wt-player/src/components/buttons/mute-button.vue +22 -0
- package/src/components/wt-player/src/components/buttons/play-button.vue +22 -0
- package/src/components/wt-player/src/components/sliders/time-slider.vue +41 -0
- package/src/components/wt-player/src/components/sliders/volume-slide.vue +41 -0
- package/src/components/wt-player/wt-player.vue +104 -168
- package/src/components/wt-vidstack-player/components/panels/media-controls-panel/components/sliders/time-slider.vue +6 -3
- package/src/components/wt-vidstack-player/components/panels/media-controls-panel/components/time-group.vue +2 -1
- package/types/components/wt-player/src/components/buttons/mute-button.vue.d.ts +3 -0
- package/types/components/wt-player/src/components/buttons/play-button.vue.d.ts +3 -0
- package/types/components/wt-player/src/components/sliders/time-slider.vue.d.ts +3 -0
- package/types/components/wt-player/src/components/sliders/volume-slide.vue.d.ts +3 -0
- package/types/components/wt-player/wt-player.vue.d.ts +8 -2
- package/dist/wt-player-C01Lo5pu.js +0 -134
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<media-volume-slider class="volume-slider media-slider">
|
|
3
|
+
<wt-slider class="volume-slider__slider" />
|
|
4
|
+
</media-volume-slider>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script
|
|
8
|
+
lang="ts"
|
|
9
|
+
setup
|
|
10
|
+
>
|
|
11
|
+
import WtSlider from '../../../../wt-slider/wt-slider.vue';
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<style scoped>
|
|
15
|
+
.volume-slider {
|
|
16
|
+
display: inline-flex;
|
|
17
|
+
align-items: center;
|
|
18
|
+
width: 15%;
|
|
19
|
+
padding: var(--spacing-xs) 0;
|
|
20
|
+
cursor: pointer;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.volume-slider:deep(.p-slider-handle) {
|
|
24
|
+
transform: scale(1.5);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.volume-slider__slider {
|
|
28
|
+
width: 100%;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.volume-slider:deep(.p-slider-range) {
|
|
32
|
+
/* set vidstach slider variable to primevue component @author liza-pohrsnichna */
|
|
33
|
+
width: var(--slider-fill, 0%) !important;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.volume-slider:deep(.p-slider-handle) {
|
|
37
|
+
/*set vidstach slider variable to primevue component @author liza-pohrsnichna */
|
|
38
|
+
transition: transform ease var(--transition);
|
|
39
|
+
inset-inline-start: var(--slider-fill, 0%) !important;
|
|
40
|
+
}
|
|
41
|
+
</style>
|
|
@@ -3,33 +3,44 @@
|
|
|
3
3
|
ref="player"
|
|
4
4
|
class="wt-player"
|
|
5
5
|
:class="`wt-player--position-${position}`"
|
|
6
|
-
:src="
|
|
6
|
+
:src="normalizedSrc"
|
|
7
7
|
:loop="loop"
|
|
8
8
|
:autoplay="autoplay"
|
|
9
9
|
>
|
|
10
|
-
|
|
11
|
-
<media-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
<
|
|
17
|
-
<
|
|
18
|
-
<
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
<
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
10
|
+
|
|
11
|
+
<media-provider />
|
|
12
|
+
|
|
13
|
+
<media-controls-group class="controls-group">
|
|
14
|
+
|
|
15
|
+
<play-button />
|
|
16
|
+
<time-slider />
|
|
17
|
+
<time-group />
|
|
18
|
+
<mute-button />
|
|
19
|
+
<volume-slide />
|
|
20
|
+
|
|
21
|
+
<media-button
|
|
22
|
+
v-if="props.download"
|
|
23
|
+
class="download-button"
|
|
24
|
+
@click="downloadMedia"
|
|
25
|
+
>
|
|
26
|
+
<wt-icon-btn
|
|
27
|
+
icon="plyr-download"
|
|
28
|
+
size="sm"
|
|
29
|
+
/>
|
|
30
|
+
</media-button>
|
|
31
|
+
|
|
32
|
+
<media-button
|
|
33
|
+
v-if="props.closable"
|
|
34
|
+
class="close-button"
|
|
35
|
+
@click="$emit('close')"
|
|
36
|
+
>
|
|
37
|
+
<wt-icon-btn
|
|
38
|
+
icon="close"
|
|
39
|
+
size="sm"
|
|
40
|
+
/>
|
|
41
|
+
</media-button>
|
|
42
|
+
|
|
43
|
+
</media-controls-group>
|
|
33
44
|
</media-player>
|
|
34
45
|
</template>
|
|
35
46
|
|
|
@@ -38,18 +49,27 @@
|
|
|
38
49
|
lang="ts"
|
|
39
50
|
>
|
|
40
51
|
import 'vidstack/bundle';
|
|
41
|
-
|
|
42
|
-
import type { PlyrControl } from 'vidstack';
|
|
52
|
+
import type { MediaSrc, PlyrControl } from 'vidstack';
|
|
43
53
|
import { computed, onMounted, watch } from 'vue';
|
|
44
54
|
|
|
45
55
|
import WtIcon from '../wt-icon/wt-icon.vue';
|
|
56
|
+
import TimeGroup from '../wt-vidstack-player/components/panels/media-controls-panel/components/time-group.vue';
|
|
57
|
+
import MuteButton from './src/components/buttons/mute-button.vue';
|
|
58
|
+
import PlayButton from './src/components/buttons/play-button.vue';
|
|
59
|
+
import TimeSlider from './src/components/sliders/time-slider.vue';
|
|
60
|
+
import VolumeSlide from './src/components/sliders/volume-slide.vue';
|
|
46
61
|
|
|
47
62
|
interface Props {
|
|
48
63
|
/**
|
|
49
|
-
*
|
|
64
|
+
* vidstack media src
|
|
65
|
+
* @type {MediaSrc}
|
|
66
|
+
*/
|
|
67
|
+
src?: MediaSrc;
|
|
68
|
+
/**
|
|
69
|
+
* Media id
|
|
50
70
|
* @type {string}
|
|
51
71
|
*/
|
|
52
|
-
|
|
72
|
+
id?: string;
|
|
53
73
|
/**
|
|
54
74
|
* Autoplay media on load
|
|
55
75
|
* @type {boolean}
|
|
@@ -119,175 +139,91 @@ const props = withDefaults(defineProps<Props>(), {
|
|
|
119
139
|
});
|
|
120
140
|
|
|
121
141
|
const emit = defineEmits<{
|
|
122
|
-
initialized: []; //
|
|
123
|
-
close: [];
|
|
142
|
+
initialized: []; // is needed?
|
|
143
|
+
close: [];
|
|
124
144
|
}>();
|
|
125
145
|
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
* order matters!
|
|
129
|
-
*/
|
|
130
|
-
let baseControls: PlyrControl[] = [
|
|
131
|
-
'play',
|
|
132
|
-
'progress',
|
|
133
|
-
'mute+volume',
|
|
134
|
-
'download',
|
|
135
|
-
'fullscreen',
|
|
136
|
-
'settings',
|
|
137
|
-
];
|
|
138
|
-
if (props.hideDuration) {
|
|
139
|
-
baseControls = baseControls.filter((control) => control !== 'duration');
|
|
140
|
-
}
|
|
141
|
-
if (!props.download) {
|
|
142
|
-
baseControls = baseControls.filter((control) => control !== 'download');
|
|
143
|
-
}
|
|
144
|
-
return baseControls;
|
|
145
|
-
});
|
|
146
|
+
const normalizedSrc = computed(() => {
|
|
147
|
+
if (!props.src?.type) return props.src;
|
|
146
148
|
|
|
147
|
-
|
|
148
|
-
watch(
|
|
149
|
-
() => props.src,
|
|
150
|
-
() => {
|
|
151
|
-
setupDownload();
|
|
152
|
-
},
|
|
153
|
-
);
|
|
154
|
-
// todo??
|
|
155
|
-
watch(
|
|
156
|
-
() => props.download,
|
|
157
|
-
() => {
|
|
158
|
-
setupDownload();
|
|
159
|
-
},
|
|
160
|
-
);
|
|
149
|
+
const type = handleVidstackUnsupportedAudioTypes(props.src.type);
|
|
161
150
|
|
|
162
|
-
|
|
163
|
-
|
|
151
|
+
return {
|
|
152
|
+
src: props.src.src,
|
|
153
|
+
type,
|
|
154
|
+
};
|
|
164
155
|
});
|
|
165
156
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
157
|
+
// https://github.com/vidstack/player/issues/1453
|
|
158
|
+
function handleVidstackUnsupportedAudioTypes(mimeType: string): AudioMimeType {
|
|
159
|
+
const unsupportedTypes = [
|
|
160
|
+
'audio/wav',
|
|
161
|
+
];
|
|
162
|
+
return unsupportedTypes.includes(mimeType)
|
|
163
|
+
? 'audio/mp3'
|
|
164
|
+
: (mimeType as AudioMimeType);
|
|
172
165
|
}
|
|
173
166
|
|
|
174
|
-
function
|
|
175
|
-
|
|
176
|
-
player.value.volume = 1;
|
|
177
|
-
player.value.muted = false;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
167
|
+
function downloadMedia() {
|
|
168
|
+
const src = typeof props.src === 'string' ? props.src : props.src?.src;
|
|
180
169
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
setupPlayer();
|
|
184
|
-
} else if (player.value) {
|
|
185
|
-
if (typeof props.download === 'string') {
|
|
186
|
-
player.value.download = props.download;
|
|
187
|
-
} else if (typeof props.download === 'function') {
|
|
188
|
-
player.value.download = props.download(props.src || '');
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
}
|
|
170
|
+
const url =
|
|
171
|
+
typeof props.download === 'function' ? props.download(src) : props.download;
|
|
192
172
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
//
|
|
198
|
-
|
|
199
|
-
|
|
173
|
+
const ext = props.src?.type.split('/').pop();
|
|
174
|
+
|
|
175
|
+
const filename = props.id || 'unknown';
|
|
176
|
+
|
|
177
|
+
// download with [a] tag el
|
|
178
|
+
const link = document.createElement('a');
|
|
179
|
+
link.style.display = 'none';
|
|
180
|
+
link.href = url;
|
|
181
|
+
link.download = `${filename}.${ext}`;
|
|
182
|
+
document.body.appendChild(link);
|
|
183
|
+
link.click();
|
|
184
|
+
document.body.removeChild(link);
|
|
200
185
|
}
|
|
201
186
|
</script>
|
|
202
187
|
|
|
203
188
|
<style scoped>
|
|
204
189
|
.wt-player {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
.wt-player--position-sticky {
|
|
209
|
-
position: sticky;
|
|
210
|
-
z-index: 2;
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
.wt-player--position-relative {
|
|
214
|
-
position: relative;
|
|
215
|
-
bottom: unset;
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
.wt-player--position-static {
|
|
219
|
-
position: static;
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
.wt-player :deep(.plyr) {
|
|
190
|
+
width: auto;
|
|
191
|
+
max-width: 100%;
|
|
223
192
|
box-shadow: var(--elevation-10);
|
|
224
193
|
border-radius: var(--border-radius);
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
.wt-player :deep(.plyr__controls > .plyr__control),
|
|
229
|
-
.wt-player :deep(.plyr__controls > .plyr__controls__item > .plyr__control) {
|
|
230
|
-
padding: var(--plyr-controls-icon-padding);
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
.wt-player :deep(.plyr__controls > .plyr__control > svg),
|
|
234
|
-
.wt-player :deep(.plyr__controls > .plyr__controls__item > .plyr__control > svg) {
|
|
235
|
-
width: var(--plyr-controls-icon-size);
|
|
236
|
-
height: var(--plyr-controls-icon-size);
|
|
194
|
+
background: var(--wt-popup-background-color);
|
|
195
|
+
z-index: 2;
|
|
237
196
|
}
|
|
238
197
|
|
|
239
|
-
.
|
|
240
|
-
|
|
241
|
-
|
|
198
|
+
.controls-group {
|
|
199
|
+
padding: var(--spacing-sm);
|
|
200
|
+
width: 100%;
|
|
201
|
+
display: flex;
|
|
202
|
+
justify-content: center;
|
|
203
|
+
align-self: center;
|
|
204
|
+
gap: var(--spacing-sm);
|
|
242
205
|
}
|
|
243
206
|
|
|
244
|
-
.
|
|
245
|
-
.
|
|
207
|
+
.close-button,
|
|
208
|
+
.download-button {
|
|
209
|
+
display: flex;
|
|
210
|
+
align-items: center;
|
|
246
211
|
cursor: pointer;
|
|
247
212
|
}
|
|
248
213
|
|
|
249
|
-
.wt-player
|
|
250
|
-
|
|
214
|
+
.wt-player--position-fixed {
|
|
215
|
+
position: fixed;
|
|
251
216
|
}
|
|
252
217
|
|
|
253
|
-
.wt-player
|
|
254
|
-
|
|
255
|
-
-webkit-appearance: none;
|
|
256
|
-
transition: var(--transition);
|
|
257
|
-
border: var(--wt-slider-border);
|
|
258
|
-
border-radius: var(--wt-slider-pointer-radius);
|
|
259
|
-
background: var(--wt-slider-pointer-background-color);
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
.wt-player :deep(.plyr__progress input)::-webkit-slider-runnable-track,
|
|
263
|
-
.wt-player :deep(.plyr__volume input)::-webkit-slider-runnable-track {
|
|
264
|
-
-webkit-appearance: none;
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
.wt-player :deep(.plyr__progress input)::-moz-range-thumb,
|
|
268
|
-
.wt-player :deep(.plyr__volume input)::-moz-range-thumb {
|
|
269
|
-
-moz-appearance: none;
|
|
270
|
-
transition: var(--transition);
|
|
271
|
-
border: var(--wt-slider-border);
|
|
272
|
-
border-color: var(--wt-slider-pointer-border-color);
|
|
273
|
-
border-radius: var(--wt-slider-pointer-radius);
|
|
274
|
-
background: var(--wt-slider-pointer-background-color);
|
|
275
|
-
width: var(--wt-slider-pointer-size);
|
|
276
|
-
height: var(--wt-slider-pointer-size);
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
.wt-player :deep(.plyr__progress input)::-moz-range-track,
|
|
280
|
-
.wt-player :deep(.plyr__volume input)::-moz-range-track {
|
|
281
|
-
-moz-appearance: none;
|
|
218
|
+
.wt-player--position-sticky {
|
|
219
|
+
position: sticky;
|
|
282
220
|
}
|
|
283
221
|
|
|
284
|
-
.wt-player
|
|
285
|
-
|
|
286
|
-
appearance: none;
|
|
222
|
+
.wt-player--position-relative {
|
|
223
|
+
position: relative;
|
|
287
224
|
}
|
|
288
225
|
|
|
289
|
-
.wt-player
|
|
290
|
-
|
|
291
|
-
appearance: none;
|
|
226
|
+
.wt-player--position-static {
|
|
227
|
+
position: static;
|
|
292
228
|
}
|
|
293
229
|
</style>
|
|
@@ -4,7 +4,10 @@
|
|
|
4
4
|
</media-time-slider>
|
|
5
5
|
</template>
|
|
6
6
|
|
|
7
|
-
<script
|
|
7
|
+
<script
|
|
8
|
+
lang="ts"
|
|
9
|
+
setup
|
|
10
|
+
>
|
|
8
11
|
import WtSlider from '../../../../../../../components/wt-slider/wt-slider.vue';
|
|
9
12
|
</script>
|
|
10
13
|
|
|
@@ -29,12 +32,12 @@ import WtSlider from '../../../../../../../components/wt-slider/wt-slider.vue';
|
|
|
29
32
|
}
|
|
30
33
|
|
|
31
34
|
.time-slider:deep(.p-slider-range) {
|
|
32
|
-
/* set vidstach slider variable to
|
|
35
|
+
/* set vidstach slider variable to primevue component @author liza-pohrsnichna */
|
|
33
36
|
width: var(--slider-fill, 0%) !important;
|
|
34
37
|
}
|
|
35
38
|
|
|
36
39
|
.time-slider:deep(.p-slider-handle) {
|
|
37
|
-
/*set vidstach slider variable to
|
|
40
|
+
/*set vidstach slider variable to primevue component @author liza-pohrsnichna */
|
|
38
41
|
transition: transform ease var(--transition);
|
|
39
42
|
inset-inline-start: var(--slider-fill, 0%) !important;
|
|
40
43
|
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import 'vidstack/bundle';
|
|
2
|
+
import type { MediaSrc } from 'vidstack';
|
|
2
3
|
interface Props {
|
|
3
4
|
/**
|
|
4
|
-
*
|
|
5
|
+
* vidstack media src
|
|
6
|
+
* @type {MediaSrc}
|
|
7
|
+
*/
|
|
8
|
+
src?: MediaSrc;
|
|
9
|
+
/**
|
|
10
|
+
* Media id
|
|
5
11
|
* @type {string}
|
|
6
12
|
*/
|
|
7
|
-
|
|
13
|
+
id?: string;
|
|
8
14
|
/**
|
|
9
15
|
* Autoplay media on load
|
|
10
16
|
* @type {boolean}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { defineComponent as y, computed as m, watch as r, onMounted as w, createElementBlock as v, openBlock as B, normalizeClass as g, createElementVNode as s, createVNode as o } from "vue";
|
|
2
|
-
import { E as e, _ as x } from "./install-oaxyJuzb.js";
|
|
3
|
-
const V = ["src", "loop", "autoplay"], _ = ["controls", "download"], b = /* @__PURE__ */ y({
|
|
4
|
-
__name: "wt-player",
|
|
5
|
-
props: {
|
|
6
|
-
src: {},
|
|
7
|
-
autoplay: { type: Boolean, default: !0 },
|
|
8
|
-
loop: { type: Boolean, default: !1 },
|
|
9
|
-
hideDuration: { type: Boolean, default: !1 },
|
|
10
|
-
download: { type: [String, Function, Boolean], default: () => (t) => t.replace("/stream", "/download") },
|
|
11
|
-
resetOnEnd: { type: Boolean, default: !1 },
|
|
12
|
-
invertTime: { type: Boolean, default: !0 },
|
|
13
|
-
resetVolume: { type: Boolean, default: !1 },
|
|
14
|
-
closable: { type: Boolean, default: !0 },
|
|
15
|
-
position: { default: "sticky" }
|
|
16
|
-
},
|
|
17
|
-
emits: ["initialized", "close"],
|
|
18
|
-
setup(t, { emit: c }) {
|
|
19
|
-
const l = t, p = c, d = m(() => {
|
|
20
|
-
let n = [
|
|
21
|
-
"play",
|
|
22
|
-
"progress",
|
|
23
|
-
"mute+volume",
|
|
24
|
-
"download",
|
|
25
|
-
"fullscreen",
|
|
26
|
-
"settings"
|
|
27
|
-
];
|
|
28
|
-
return l.hideDuration && (n = n.filter((a) => a !== "duration")), l.download || (n = n.filter((a) => a !== "download")), n;
|
|
29
|
-
});
|
|
30
|
-
r(
|
|
31
|
-
() => l.src,
|
|
32
|
-
() => {
|
|
33
|
-
i();
|
|
34
|
-
}
|
|
35
|
-
), r(
|
|
36
|
-
() => l.download,
|
|
37
|
-
() => {
|
|
38
|
-
i();
|
|
39
|
-
}
|
|
40
|
-
), w(() => {
|
|
41
|
-
});
|
|
42
|
-
async function u() {
|
|
43
|
-
l.resetVolume && f(), l.download && i(), l.closable, p("initialized", player.value);
|
|
44
|
-
}
|
|
45
|
-
function f() {
|
|
46
|
-
player.value && (player.value.volume = 1, player.value.muted = !1);
|
|
47
|
-
}
|
|
48
|
-
function i() {
|
|
49
|
-
l.download ? player.value && (typeof l.download == "string" ? player.value.download = l.download : typeof l.download == "function" && (player.value.download = l.download(l.src || ""))) : u();
|
|
50
|
-
}
|
|
51
|
-
return (n, a) => (B(), v("media-player", {
|
|
52
|
-
ref: "player",
|
|
53
|
-
class: g(["wt-player", `wt-player--position-${t.position}`]),
|
|
54
|
-
src: t.src,
|
|
55
|
-
loop: t.loop,
|
|
56
|
-
autoplay: t.autoplay
|
|
57
|
-
}, [
|
|
58
|
-
a[0] || (a[0] = s("media-provider", null, null, -1)),
|
|
59
|
-
s("media-plyr-layout", {
|
|
60
|
-
controls: d.value,
|
|
61
|
-
download: t.download,
|
|
62
|
-
"custom-icons": ""
|
|
63
|
-
}, [
|
|
64
|
-
o(e, {
|
|
65
|
-
icon: "plyr-airplay",
|
|
66
|
-
slot: "airplay-icon"
|
|
67
|
-
}),
|
|
68
|
-
o(e, {
|
|
69
|
-
icon: "plyr-captions-off",
|
|
70
|
-
slot: "captions-off-icon"
|
|
71
|
-
}),
|
|
72
|
-
o(e, {
|
|
73
|
-
icon: "plyr-captions-on",
|
|
74
|
-
slot: "captions-on-icon"
|
|
75
|
-
}),
|
|
76
|
-
o(e, {
|
|
77
|
-
icon: "plyr-download",
|
|
78
|
-
slot: "download-icon"
|
|
79
|
-
}),
|
|
80
|
-
o(e, {
|
|
81
|
-
icon: "plyr-enter-fullscreen",
|
|
82
|
-
slot: "enter-fullscreen-icon"
|
|
83
|
-
}),
|
|
84
|
-
o(e, {
|
|
85
|
-
icon: "plyr-pip",
|
|
86
|
-
slot: "enter-pip-icon"
|
|
87
|
-
}),
|
|
88
|
-
o(e, {
|
|
89
|
-
icon: "plyr-exit-fullscreen",
|
|
90
|
-
slot: "exit-fullscreen-icon"
|
|
91
|
-
}),
|
|
92
|
-
o(e, {
|
|
93
|
-
icon: "plyr-pip",
|
|
94
|
-
slot: "exit-pip-icon"
|
|
95
|
-
}),
|
|
96
|
-
o(e, {
|
|
97
|
-
icon: "plyr-fast-forward",
|
|
98
|
-
slot: "fast-forward-icon"
|
|
99
|
-
}),
|
|
100
|
-
o(e, {
|
|
101
|
-
icon: "plyr-muted",
|
|
102
|
-
slot: "muted-icon"
|
|
103
|
-
}),
|
|
104
|
-
o(e, {
|
|
105
|
-
icon: "plyr-pause",
|
|
106
|
-
slot: "pause-icon"
|
|
107
|
-
}),
|
|
108
|
-
o(e, {
|
|
109
|
-
icon: "plyr-play",
|
|
110
|
-
slot: "play-icon"
|
|
111
|
-
}),
|
|
112
|
-
o(e, {
|
|
113
|
-
icon: "plyr-restart",
|
|
114
|
-
slot: "restart-icon"
|
|
115
|
-
}),
|
|
116
|
-
o(e, {
|
|
117
|
-
icon: "plyr-rewind",
|
|
118
|
-
slot: "rewind-icon"
|
|
119
|
-
}),
|
|
120
|
-
o(e, {
|
|
121
|
-
icon: "plyr-settings",
|
|
122
|
-
slot: "settings-icon"
|
|
123
|
-
}),
|
|
124
|
-
o(e, {
|
|
125
|
-
icon: "plyr-volume",
|
|
126
|
-
slot: "volume-icon"
|
|
127
|
-
})
|
|
128
|
-
], 8, _)
|
|
129
|
-
], 10, V));
|
|
130
|
-
}
|
|
131
|
-
}), E = /* @__PURE__ */ x(b, [["__scopeId", "data-v-0789b80f"]]);
|
|
132
|
-
export {
|
|
133
|
-
E as default
|
|
134
|
-
};
|