@webitel/ui-sdk 25.10.52 → 25.10.54

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 (67) hide show
  1. package/dist/img/sprite/index.js +14 -1
  2. package/dist/img/sprite/record-start.svg +7 -0
  3. package/dist/img/sprite/record-stop.svg +7 -0
  4. package/dist/img/sprite/screenshot-done.svg +7 -0
  5. package/dist/img/sprite/screenshot-false.svg +7 -0
  6. package/dist/img/sprite/screenshot.svg +8 -0
  7. package/dist/img/sprite/sharing-end.svg +5 -0
  8. package/dist/{install-hlMLq0U3.js → install-Cvn-xDmg.js} +30453 -31092
  9. package/dist/ui-sdk.css +1 -1
  10. package/dist/ui-sdk.js +1 -1
  11. package/dist/ui-sdk.umd.cjs +1001 -989
  12. package/dist/vidstack-Bq6c3Bam-S5OrhBq2.js +413 -0
  13. package/dist/vidstack-D2pY00kU-HK4wj-R2.js +138 -0
  14. package/dist/vidstack-DDXt6fpN-D1Nzo26r.js +60 -0
  15. package/dist/vidstack-D_-9AA6_-DBOQembh.js +20 -0
  16. package/dist/vidstack-Dm1xEU9Q-qSXq3AI-.js +31 -0
  17. package/dist/vidstack-DqAw8m9J-k1JRevJl.js +29 -0
  18. package/dist/vidstack-audio-B1snbo-4.js +32 -0
  19. package/dist/vidstack-dash-BeCOt7Pp.js +403 -0
  20. package/dist/vidstack-google-cast-iUp-BySZ.js +377 -0
  21. package/dist/vidstack-hls-DVZy4g9e.js +324 -0
  22. package/dist/vidstack-krOAtKMi-B4IZWKdc.js +29 -0
  23. package/dist/vidstack-video-ykJKnrB2.js +181 -0
  24. package/dist/vidstack-vimeo-Bk8cduzE.js +437 -0
  25. package/dist/vidstack-youtube-FNzWU8v0.js +236 -0
  26. package/package.json +3 -3
  27. package/src/assets/icons/sprite/index.js +14 -1
  28. package/src/assets/icons/sprite/record-start.svg +7 -0
  29. package/src/assets/icons/sprite/record-stop.svg +7 -0
  30. package/src/assets/icons/sprite/screenshot-done.svg +7 -0
  31. package/src/assets/icons/sprite/screenshot-false.svg +7 -0
  32. package/src/assets/icons/sprite/screenshot.svg +8 -0
  33. package/src/assets/icons/sprite/sharing-end.svg +5 -0
  34. package/src/components/wt-image/wt-image.vue +4 -1
  35. package/src/components/wt-vidstack-player/components/layouts/video-layout.vue +12 -2
  36. package/src/components/wt-vidstack-player/components/panels/screen-sharing-control-panel/screen-sharing-control-panel.vue +211 -0
  37. package/src/components/wt-vidstack-player/types/WtVidstackPlayerControlsMode.ts +7 -0
  38. package/src/components/wt-vidstack-player/types/WtVidstackPlayerSession.ts +7 -0
  39. package/src/components/wt-vidstack-player/wt-vidstack-player.vue +24 -3
  40. package/src/plugins/primevue/theme/components/components.js +1 -2
  41. package/src/plugins/primevue/theme/extend/player/player.js +15 -0
  42. package/src/plugins/primevue/theme/webitel-theme.js +6 -1
  43. package/types/components/wt-image/wt-image.vue.d.ts +12 -2
  44. package/types/components/wt-vidstack-player/components/layouts/video-layout.vue.d.ts +5 -1
  45. package/types/components/wt-vidstack-player/components/panels/screen-sharing-control-panel/screen-sharing-control-panel.vue.d.ts +6 -0
  46. package/types/components/wt-vidstack-player/types/WtVidstackPlayerControlsMode.d.ts +5 -0
  47. package/types/components/wt-vidstack-player/types/WtVidstackPlayerSession.d.ts +7 -0
  48. package/types/components/wt-vidstack-player/wt-vidstack-player.vue.d.ts +6 -0
  49. package/types/plugins/primevue/theme/extend/player/player.d.ts +3 -0
  50. package/dist/vidstack-54Jpr2Lq-B-3uagaf.js +0 -142
  51. package/dist/vidstack-BP-l85ST-cd089zs4.js +0 -21
  52. package/dist/vidstack-BTBUzdbF-BuhaE3ef.js +0 -29
  53. package/dist/vidstack-Ccp8mxka-Cyoe3N05.js +0 -20
  54. package/dist/vidstack-Dgd3Tj9x-D_ifpfX9.js +0 -397
  55. package/dist/vidstack-DscYSLiW-Dk1undJ-.js +0 -33
  56. package/dist/vidstack-HTyVv8Yq-DRdwbVZd.js +0 -52
  57. package/dist/vidstack-audio-CFFRqrJ3.js +0 -26
  58. package/dist/vidstack-dash-BDtu3f4j.js +0 -405
  59. package/dist/vidstack-google-cast-hKSzmdiF.js +0 -405
  60. package/dist/vidstack-hls-BLyFYePL.js +0 -328
  61. package/dist/vidstack-video-BlmYiw-x.js +0 -149
  62. package/dist/vidstack-vimeo-DhWdWK51.js +0 -434
  63. package/dist/vidstack-youtube-l9Si5Vl-.js +0 -204
  64. package/src/plugins/primevue/theme/extend/extend.js +0 -7
  65. package/src/plugins/primevue/theme/extend/spacings/spacings.js +0 -15
  66. package/types/plugins/primevue/theme/extend/extend.d.ts +0 -5
  67. package/types/plugins/primevue/theme/extend/spacings/spacings.d.ts +0 -13
@@ -6,6 +6,7 @@
6
6
  <media-player
7
7
  ref="player"
8
8
  :src="playerSrc"
9
+ :autoplay="props.autoplay"
9
10
  class="wt-vidstack-player__player"
10
11
  cross-origin
11
12
  plays-inline
@@ -18,6 +19,8 @@
18
19
  :autoplay="props.autoplay"
19
20
  :title="props.title"
20
21
  :username="props.username"
22
+ :session="props.session"
23
+ :mode="mode"
21
24
  @close-player="emit('close')"
22
25
  />
23
26
 
@@ -30,10 +33,12 @@ import 'vidstack/player';
30
33
  import 'vidstack/player/ui';
31
34
 
32
35
  import type { MediaPlayerElement } from 'vidstack/elements';
33
- import {computed, defineEmits, defineProps, provide, ref, useTemplateRef, watch} from 'vue';
36
+ import {computed, defineEmits, defineProps, onMounted,provide, ref, useTemplateRef} from 'vue';
34
37
 
35
- import { ComponentSize } from '../../enums';
38
+ import {ComponentSize} from '../../enums';
36
39
  import VideoLayout from './components/layouts/video-layout.vue';
40
+ import {WtVidstakPlayerControlsMode} from "./types/WtVidstackPlayerControlsMode";
41
+ import {WtVidstackPlayerSession} from "./types/WtVidstackPlayerSession";
37
42
 
38
43
  interface Props {
39
44
  src: string | { src: string; type?: string };
@@ -42,6 +47,9 @@ interface Props {
42
47
  title?: string;
43
48
  username?: string;
44
49
  closable?: boolean;
50
+ stream?: MediaStream
51
+ mode: WtVidstakPlayerControlsMode;
52
+ session?: WtVidstackPlayerSession
45
53
  }
46
54
 
47
55
  const props = withDefaults(defineProps<Props>(), {
@@ -50,6 +58,7 @@ const props = withDefaults(defineProps<Props>(), {
50
58
  title: '',
51
59
  username: '',
52
60
  closable: false,
61
+ mode: 'media',
53
62
  });
54
63
 
55
64
  const emit = defineEmits<{
@@ -90,7 +99,19 @@ const playerSrc = computed(() => {
90
99
  };
91
100
  });
92
101
 
93
-
102
+ /** @author @Oleksandr Palonnyi
103
+ * Attach MediaStream to Vidstack player after mount.
104
+ * A short delay ensures the internal <video> is ready before playback.
105
+ */
106
+ onMounted(async () => {
107
+ if (player.value && props.mode === 'stream') {
108
+ setTimeout(async () => {
109
+ const videoEl = player.value.querySelector('video')
110
+ videoEl.srcObject = props.stream
111
+ await videoEl.play().catch((err) => console.error('play error:', err))
112
+ }, 100)
113
+ }
114
+ })
94
115
  </script>
95
116
 
96
117
  <style scoped lang="scss">
@@ -9,7 +9,7 @@ import image from './image/image.js';
9
9
  import menubar from './menubar/menubar.js';
10
10
  import popover from './popover/popover.js';
11
11
  import radio from './radio/radio.js';
12
- import slider from './slider/slider.js'
12
+ import slider from './slider/slider.js';
13
13
  import switcher from './switcher/switcher.js';
14
14
  import table from './table/table.js';
15
15
  import toolbar from './toolbar/toolbar.js';
@@ -30,7 +30,6 @@ const components = {
30
30
  radiobutton: radio,
31
31
  slider,
32
32
  tooltip,
33
- checkbox,
34
33
  datatable: table,
35
34
  toolbar,
36
35
  };
@@ -0,0 +1,15 @@
1
+ const generateCustomSharingPanelSizeCss = ({ size, dt }) => `
2
+ .screen-sharing-control-panel--${size} .screen-sharing-control-panel__actions {
3
+ gap: ${dt(`player-control-bar-${size}-gap`)};
4
+ border-radius: ${dt(`player-control-bar-${size}-border-radius`)};
5
+ padding: ${dt(`player-control-bar-${size}-padding`)};
6
+ }
7
+ `;
8
+
9
+ const playerCss = ({ dt }) => `
10
+ ${generateCustomSharingPanelSizeCss({ size: 'sm', dt })}
11
+ ${generateCustomSharingPanelSizeCss({ size: 'md', dt })}
12
+ ${generateCustomSharingPanelSizeCss({ size: 'lg', dt })}
13
+ `;
14
+
15
+ export { playerCss };
@@ -1,10 +1,11 @@
1
1
  import { definePreset } from '@primeuix/themes';
2
2
  import Aura from '@primeuix/themes/aura';
3
+ import extend from '@webitel/styleguide/extend';
3
4
  import primitive from '@webitel/styleguide/primitive';
4
5
  import semantic from '@webitel/styleguide/semantic';
5
6
 
6
7
  import components from './components/components';
7
- import extend from './extend/extend';
8
+ import { playerCss } from './extend/player/player.js';
8
9
 
9
10
  const WebitelTheme = definePreset(Aura, {
10
11
  semantic,
@@ -13,6 +14,10 @@ const WebitelTheme = definePreset(Aura, {
13
14
 
14
15
  extend,
15
16
 
17
+ css: ({ dt }) => `
18
+ ${playerCss({ dt })}
19
+ `,
20
+
16
21
  primitive,
17
22
  });
18
23
 
@@ -23,6 +23,7 @@ type __VLS_Props = {
23
23
  overlayIcon?: string;
24
24
  overlayIconPrefix?: string;
25
25
  };
26
+ declare const emit: (event: "click", ...args: any[]) => void;
26
27
  declare const width: import("vue").ComputedRef<string | number>;
27
28
  declare const height: import("vue").ComputedRef<string | number>;
28
29
  declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
@@ -35,10 +36,19 @@ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$
35
36
  }>;
36
37
  declare const __VLS_self: import("vue").DefineComponent<__VLS_Props, {
37
38
  IconColor: typeof IconColor;
39
+ emit: typeof emit;
38
40
  width: typeof width;
39
41
  height: typeof height;
40
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
41
- declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
42
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
43
+ click: (...args: any[]) => void;
44
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
45
+ onClick?: (...args: any[]) => any;
46
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
47
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
48
+ click: (...args: any[]) => void;
49
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
50
+ onClick?: (...args: any[]) => any;
51
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
42
52
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
43
53
  export default _default;
44
54
  type __VLS_WithSlots<T, S> = T & {
@@ -1,11 +1,15 @@
1
+ import { WtVidstakPlayerControlsMode } from "../../types/WtVidstackPlayerControlsMode";
2
+ import { WtVidstackPlayerSession } from "../../types/WtVidstackPlayerSession";
1
3
  type __VLS_Props = {
2
4
  title?: string;
3
5
  username?: string;
4
6
  closable?: boolean;
7
+ mode: WtVidstakPlayerControlsMode;
8
+ session: WtVidstackPlayerSession;
5
9
  };
6
10
  declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
11
  "close-player": () => any;
8
12
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
9
13
  "onClose-player"?: () => any;
10
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
14
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
15
  export default _default;
@@ -0,0 +1,6 @@
1
+ import { WtVidstackPlayerSession } from "../../../types/WtVidstackPlayerSession";
2
+ interface Props {
3
+ session: WtVidstackPlayerSession;
4
+ }
5
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const WtVidstakPlayerControlsMode: {
2
+ readonly STREAM: "stream";
3
+ readonly MEDIA: "media";
4
+ };
5
+ export type WtVidstakPlayerControlsMode = (typeof WtVidstakPlayerControlsMode)[keyof typeof WtVidstakPlayerControlsMode];
@@ -0,0 +1,7 @@
1
+ export interface WtVidstackPlayerSession {
2
+ close: () => void;
3
+ screenshot: () => void;
4
+ stopRecord: () => void;
5
+ startRecord: () => void;
6
+ recordings: boolean;
7
+ }
@@ -1,5 +1,7 @@
1
1
  import 'vidstack/player';
2
2
  import 'vidstack/player/ui';
3
+ import { WtVidstakPlayerControlsMode } from "./types/WtVidstackPlayerControlsMode";
4
+ import { WtVidstackPlayerSession } from "./types/WtVidstackPlayerSession";
3
5
  interface Props {
4
6
  src: string | {
5
7
  src: string;
@@ -10,6 +12,9 @@ interface Props {
10
12
  title?: string;
11
13
  username?: string;
12
14
  closable?: boolean;
15
+ stream?: MediaStream;
16
+ mode: WtVidstakPlayerControlsMode;
17
+ session?: WtVidstackPlayerSession;
13
18
  }
14
19
  declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
20
  close: () => any;
@@ -17,6 +22,7 @@ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, imp
17
22
  onClose?: () => any;
18
23
  }>, {
19
24
  title: string;
25
+ mode: WtVidstakPlayerControlsMode;
20
26
  username: string;
21
27
  autoplay: boolean;
22
28
  mime: string;
@@ -0,0 +1,3 @@
1
+ export function playerCss({ dt }: {
2
+ dt: any;
3
+ }): string;
@@ -1,142 +0,0 @@
1
- import { R as g, I as p, S as u, B as C, d as f, o as h } from "./install-hlMLq0U3.js";
2
- function m() {
3
- return "https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1";
4
- }
5
- function w() {
6
- var a;
7
- return !!((a = window.cast) != null && a.framework);
8
- }
9
- function E() {
10
- var a, e;
11
- return !!((e = (a = window.chrome) == null ? void 0 : a.cast) != null && e.isAvailable);
12
- }
13
- function l() {
14
- return s().getCastState() === cast.framework.CastState.CONNECTED;
15
- }
16
- function s() {
17
- return window.cast.framework.CastContext.getInstance();
18
- }
19
- function d() {
20
- return s().getCurrentSession();
21
- }
22
- function v() {
23
- var a;
24
- return (a = d()) == null ? void 0 : a.getSessionObj().media[0];
25
- }
26
- function k(a) {
27
- var t;
28
- return ((t = v()) == null ? void 0 : t.media.contentId) === (a == null ? void 0 : a.src);
29
- }
30
- function y() {
31
- return {
32
- language: "en-US",
33
- autoJoinPolicy: chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED,
34
- receiverApplicationId: chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,
35
- resumeSavedSession: !0,
36
- androidReceiverCompatible: !0
37
- };
38
- }
39
- function S(a) {
40
- return `Google Cast Error Code: ${a}`;
41
- }
42
- function b(a, e) {
43
- return g(s(), a, e);
44
- }
45
- class I {
46
- constructor() {
47
- this.name = "google-cast";
48
- }
49
- /**
50
- * @see {@link https://developers.google.com/cast/docs/reference/web_sender/cast.framework.CastContext}
51
- */
52
- get cast() {
53
- return s();
54
- }
55
- mediaType() {
56
- return "video";
57
- }
58
- canPlay(e) {
59
- return p && !C && u(e);
60
- }
61
- async prompt(e) {
62
- var i;
63
- let t, o, r;
64
- try {
65
- t = await this.Ej(e), this.f || (this.f = new cast.framework.RemotePlayer(), new cast.framework.RemotePlayerController(this.f)), o = e.player.createEvent("google-cast-prompt-open", {
66
- trigger: t
67
- }), e.player.dispatchEvent(o), this.Ce(e, "connecting", o), await this.Fj(f(e.$props.googleCast)), e.$state.remotePlaybackInfo.set({
68
- deviceName: (i = d()) == null ? void 0 : i.getCastDevice().friendlyName
69
- }), l() && this.Ce(e, "connected", o);
70
- } catch (n) {
71
- const c = n instanceof Error ? n : this.De(
72
- (n + "").toUpperCase(),
73
- "Prompt failed."
74
- );
75
- throw r = e.player.createEvent("google-cast-prompt-error", {
76
- detail: c,
77
- trigger: o ?? t,
78
- cancelable: !0
79
- }), e.player.dispatch(r), this.Ce(
80
- e,
81
- l() ? "connected" : "disconnected",
82
- r
83
- ), c;
84
- } finally {
85
- e.player.dispatch("google-cast-prompt-close", {
86
- trigger: r ?? o ?? t
87
- });
88
- }
89
- }
90
- async load(e) {
91
- if (!this.f)
92
- throw Error("[vidstack] google cast player was not initialized");
93
- return new (await import("./vidstack-google-cast-hKSzmdiF.js")).GoogleCastProvider(this.f, e);
94
- }
95
- async Ej(e) {
96
- if (w())
97
- return;
98
- const t = e.player.createEvent("google-cast-load-start");
99
- e.player.dispatch(t), await h(m()), await customElements.whenDefined("google-cast-launcher");
100
- const o = e.player.createEvent("google-cast-loaded", { trigger: t });
101
- if (e.player.dispatch(o), !E())
102
- throw this.De("CAST_NOT_AVAILABLE", "Google Cast not available on this platform.");
103
- return o;
104
- }
105
- async Fj(e) {
106
- this.Gj(e);
107
- const t = await this.cast.requestSession();
108
- if (t)
109
- throw this.De(
110
- t.toUpperCase(),
111
- S(t)
112
- );
113
- }
114
- Gj(e) {
115
- var t;
116
- (t = this.cast) == null || t.setOptions({
117
- ...y(),
118
- ...e
119
- });
120
- }
121
- Ce(e, t, o) {
122
- const r = { type: "google-cast", state: t };
123
- e.delegate.c("remote-playback-change", r, o);
124
- }
125
- De(e, t) {
126
- const o = Error(t);
127
- return o.code = e, o;
128
- }
129
- }
130
- const A = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
131
- __proto__: null,
132
- GoogleCastLoader: I
133
- }, Symbol.toStringTag, { value: "Module" }));
134
- export {
135
- d as a,
136
- v as b,
137
- S as c,
138
- s as g,
139
- k as h,
140
- b as l,
141
- A as v
142
- };
@@ -1,21 +0,0 @@
1
- import { c, a as s, e as r } from "./install-hlMLq0U3.js";
2
- var d = '<path fill-rule="evenodd" clip-rule="evenodd" d="M6 7C5.63181 7 5.33333 7.29848 5.33333 7.66667V14.8667C5.33333 14.9403 5.39361 14.9999 5.46724 15.0009C10.8844 15.0719 15.2614 19.449 15.3325 24.8661C15.3334 24.9397 15.393 25 15.4667 25H26C26.3682 25 26.6667 24.7015 26.6667 24.3333V7.66667C26.6667 7.29848 26.3682 7 26 7H6ZM17.0119 22.2294C17.0263 22.29 17.0802 22.3333 17.1425 22.3333H23.3333C23.7015 22.3333 24 22.0349 24 21.6667V10.3333C24 9.96514 23.7015 9.66667 23.3333 9.66667H8.66667C8.29848 9.66667 8 9.96514 8 10.3333V13.1909C8 13.2531 8.04332 13.3071 8.10392 13.3214C12.5063 14.3618 15.9715 17.827 17.0119 22.2294Z" fill="currentColor"/> <path d="M13.2 25C13.2736 25 13.3334 24.9398 13.3322 24.8661C13.2615 20.5544 9.77889 17.0718 5.46718 17.0011C5.39356 16.9999 5.33333 17.0597 5.33333 17.1333V18.8667C5.33333 18.9403 5.39348 18.9999 5.4671 19.0015C8.67465 19.0716 11.2617 21.6587 11.3319 24.8662C11.3335 24.9399 11.393 25 11.4667 25H13.2Z" fill="currentColor"/> <path d="M5.33333 21.1333C5.33333 21.0597 5.39332 20.9998 5.46692 21.0022C7.57033 21.0712 9.26217 22.763 9.33114 24.8664C9.33356 24.94 9.27364 25 9.2 25H6C5.63181 25 5.33333 24.7015 5.33333 24.3333V21.1333Z" fill="currentColor"/>';
3
- const i = /* @__PURE__ */ s(
4
- '<svg viewBox="0 0 32 32" fill="none" aria-hidden="true" xmlns="http://www.w3.org/2000/svg"></svg>'
5
- );
6
- function m(o, C) {
7
- const a = c(i);
8
- a.innerHTML = d, o.append(a);
9
- const e = document.createElement("span");
10
- e.classList.add("vds-google-cast-info"), o.append(e);
11
- const n = document.createElement("span");
12
- n.classList.add("vds-google-cast-device-name"), r(() => {
13
- const { remotePlaybackInfo: l } = C, t = l();
14
- return t != null && t.deviceName && (n.textContent = t.deviceName, e.append("Google Cast on ", n)), () => {
15
- e.textContent = "";
16
- };
17
- });
18
- }
19
- export {
20
- m as insertContent
21
- };
@@ -1,29 +0,0 @@
1
- const f = /(?:https:\/\/)?(?:player\.)?vimeo(?:\.com)?\/(?:video\/)?(\d+)(?:\?hash=(.*))?/, t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
2
- function g(n) {
3
- const o = n.match(f);
4
- return { videoId: o == null ? void 0 : o[1], hash: o == null ? void 0 : o[2] };
5
- }
6
- async function b(n, o) {
7
- if (t.has(n))
8
- return t.get(n);
9
- if (i.has(n))
10
- return i.get(n);
11
- const p = `https://vimeo.com/api/oembed.json?url=https://player.vimeo.com/video/${n}`, c = window.fetch(p, {
12
- mode: "cors",
13
- signal: o.signal
14
- }).then((e) => e.json()).then((e) => {
15
- var m, h;
16
- const l = /vimeocdn.com\/video\/(.*)?_/, s = (h = (m = e == null ? void 0 : e.thumbnail_url) == null ? void 0 : m.match(l)) == null ? void 0 : h[1], u = s ? `https://i.vimeocdn.com/video/${s}_1920x1080.webp` : "", r = {
17
- title: (e == null ? void 0 : e.title) ?? "",
18
- duration: (e == null ? void 0 : e.duration) ?? 0,
19
- poster: u,
20
- pro: e.account_type !== "basic"
21
- };
22
- return t.set(n, r), r;
23
- }).finally(() => i.delete(n));
24
- return i.set(n, c), c;
25
- }
26
- export {
27
- b as getVimeoVideoInfo,
28
- g as resolveVimeoVideoId
29
- };
@@ -1,20 +0,0 @@
1
- import { m as i, k as t } from "./install-hlMLq0U3.js";
2
- class n {
3
- constructor(s) {
4
- this.La = s;
5
- }
6
- Xa() {
7
- i(this.ya) && this.fg();
8
- }
9
- $() {
10
- t(this.ya) && window.cancelAnimationFrame(this.ya), this.ya = void 0;
11
- }
12
- fg() {
13
- this.ya = window.requestAnimationFrame(() => {
14
- i(this.ya) || (this.La(), this.fg());
15
- });
16
- }
17
- }
18
- export {
19
- n as R
20
- };