@munsonlabs/video-player 0.1.6 → 0.2.0

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 (36) hide show
  1. package/README.md +160 -21
  2. package/dist/chunks/ads-msms49DK.mjs +1 -0
  3. package/dist/chunks/brightcove-CIqE1989.mjs +1 -0
  4. package/dist/chunks/constants-DRD0PsRw.mjs +1 -0
  5. package/dist/chunks/dailymotion-wD02TK0C.mjs +1 -0
  6. package/dist/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  7. package/dist/chunks/jwplayer-Dv826deA.mjs +1 -0
  8. package/dist/chunks/loadScript-Du6JsTc2.mjs +1 -0
  9. package/dist/chunks/prebid-RHDT0DOX.mjs +1 -0
  10. package/dist/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  11. package/dist/chunks/vimeo-SrHhodcx.mjs +1 -0
  12. package/dist/chunks/youtube-Boz9Goek.mjs +1 -0
  13. package/dist/elements/chunks/ads-msms49DK.mjs +1 -0
  14. package/dist/elements/chunks/brightcove-CIqE1989.mjs +1 -0
  15. package/dist/elements/chunks/constants-DRD0PsRw.mjs +1 -0
  16. package/dist/elements/chunks/dailymotion-wD02TK0C.mjs +1 -0
  17. package/dist/elements/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  18. package/dist/elements/chunks/jwplayer-Dv826deA.mjs +1 -0
  19. package/dist/elements/chunks/loadScript-Du6JsTc2.mjs +1 -0
  20. package/dist/elements/chunks/prebid-RHDT0DOX.mjs +1 -0
  21. package/dist/elements/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  22. package/dist/elements/chunks/vimeo-SrHhodcx.mjs +1 -0
  23. package/dist/elements/chunks/youtube-Boz9Goek.mjs +1 -0
  24. package/dist/elements/controls.css +1 -1
  25. package/dist/elements/controls.d.mts +28 -49
  26. package/dist/elements/controls.mjs +1 -1
  27. package/dist/elements/core.css +1 -1
  28. package/dist/elements/core.d.mts +105 -5
  29. package/dist/elements/core.mjs +1 -1
  30. package/dist/elements/index.d.mts +118 -52
  31. package/dist/elements/index.mjs +1 -1
  32. package/dist/elements/style.css +1 -1
  33. package/dist/index.d.mts +298 -286
  34. package/dist/index.mjs +1 -1
  35. package/dist/style.css +1 -1
  36. package/package.json +3 -2
package/dist/index.d.mts CHANGED
@@ -1,5 +1,23 @@
1
- import { ComputedRef, InjectionKey, Plugin, Ref, UnwrapNestedRefs } from "vue";
1
+ import { ComputedRef, Plugin, Ref, UnwrapNestedRefs } from "vue";
2
+ //#region src/composables/player/emitter.d.ts
3
+ type PlaybackListener = (...args: unknown[]) => void;
4
+ //#endregion
5
+ //#region src/adapters/embeds/embedShared.d.ts
6
+ interface EmbedAdapterOptions {
7
+ src: string;
8
+ poster?: string;
9
+ autoplay?: boolean;
10
+ muted?: boolean;
11
+ volume?: number;
12
+ nativeUi?: boolean;
13
+ customVars?: Record<string, unknown>;
14
+ }
15
+ //#endregion
2
16
  //#region src/types/playback.d.ts
17
+ interface MediaErrorLike {
18
+ code: number;
19
+ message: string;
20
+ }
3
21
  interface CaptionTrackInfo {
4
22
  index: number;
5
23
  label: string;
@@ -11,8 +29,64 @@ interface QualityLevelInfo {
11
29
  bitrate: number;
12
30
  label: string;
13
31
  }
32
+ interface PlaybackAdapter {
33
+ readonly el: HTMLElement;
34
+ play(): void | Promise<void>;
35
+ pause(): void;
36
+ paused(): boolean;
37
+ currentTime(): number;
38
+ setCurrentTime(seconds: number): void;
39
+ duration(): number;
40
+ volume(): number;
41
+ setVolume(vol: number): void;
42
+ muted(): boolean;
43
+ setMuted(muted: boolean): void;
44
+ playbackRate(): number;
45
+ setPlaybackRate(rate: number): void;
46
+ bufferedEnd(): number;
47
+ error(): MediaErrorLike | null;
48
+ setSrc(src: string, type?: string): void;
49
+ supportsPlaybackRate(): boolean;
50
+ supportsCaptions(): boolean;
51
+ getCaptionTracks(): CaptionTrackInfo[];
52
+ setCaptionTrack(index: number | null): void;
53
+ getActiveCaptionTrack(): number | null;
54
+ supportsQuality(): boolean;
55
+ getQualityLevels(): QualityLevelInfo[];
56
+ getCurrentQuality(): number | null;
57
+ isAutoQuality(): boolean;
58
+ setQuality(index: number | null): void;
59
+ supportsPip(): boolean;
60
+ isPipActive(): boolean;
61
+ togglePip(): void;
62
+ enterFullscreen(): void;
63
+ exitFullscreen(): void;
64
+ on(event: string | string[], listener: PlaybackListener): void;
65
+ off(event: string, listener: PlaybackListener): void;
66
+ dispose(): void;
67
+ }
68
+ interface ResolvedSource {
69
+ src: string;
70
+ type?: string;
71
+ poster?: string | null;
72
+ adTagUrl?: string | null;
73
+ }
74
+ interface Matcher {
75
+ test: (src: string) => boolean;
76
+ key: string;
77
+ embed: boolean;
78
+ }
79
+ type EmbedAdapterFactory = (videoEl: HTMLVideoElement, options: EmbedAdapterOptions) => PlaybackAdapter;
80
+ type SourceResolver = (url: string) => ResolvedSource | Promise<ResolvedSource>;
81
+ type PlatformConfig = Pick<Matcher, 'key' | 'test'> & ({
82
+ embed: true;
83
+ createAdapter: EmbedAdapterFactory;
84
+ } | {
85
+ embed: false;
86
+ resolveSource?: SourceResolver;
87
+ });
14
88
  //#endregion
15
- //#region src/types.d.ts
89
+ //#region src/types/player.d.ts
16
90
  type BuiltinAction = 'mute' | 'loop' | 'autoplay';
17
91
  interface CustomAction {
18
92
  icon: string;
@@ -20,7 +94,7 @@ interface CustomAction {
20
94
  onClick: () => void;
21
95
  }
22
96
  type PlayerAction = BuiltinAction | CustomAction;
23
- type StateChangeType = 'play' | 'pause' | 'ended' | 'seeked' | 'error' | 'adstart' | 'adend' | 'volumechange' | 'ratechange' | 'captionchange' | 'qualitychange' | 'pipchange' | 'loopchange' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'controlsopen' | 'controlsclose' | 'bufferstart' | 'bufferend' | 'timeupdate' | 'tap';
97
+ type StateChangeType = 'play' | 'pause' | 'ended' | 'seeked' | 'error' | 'adstart' | 'adend' | 'volumechange' | 'ratechange' | 'captionchange' | 'qualitychange' | 'pipchange' | 'loopchange' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'controlsopen' | 'controlsclose' | 'stageopen' | 'stageclose' | 'bufferstart' | 'bufferend' | 'timeupdate' | 'tap';
24
98
  interface StateChangeEvent {
25
99
  type: StateChangeType;
26
100
  currentTime: number;
@@ -72,17 +146,19 @@ interface PlayerProps {
72
146
  tracks?: CaptionTrackDef[];
73
147
  autoplay?: boolean;
74
148
  muted?: boolean;
149
+ volume?: number;
75
150
  playbackRate?: number;
76
151
  nativeUi?: boolean;
77
152
  autoStage?: boolean;
78
153
  lazy?: boolean;
79
- payload?: Record<string, unknown>;
154
+ payload?: Record<string, unknown> | string;
80
155
  action?: PlayerAction | null;
81
156
  disableTapCapture?: boolean;
82
157
  controls?: boolean;
83
158
  playWhenInView?: boolean;
159
+ pinPosition?: PinCorner;
84
160
  }
85
- type VideoSelectDetail = PlayerProps;
161
+ type PinCorner = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
86
162
  interface VideoStateDetail {
87
163
  currentVideoUrl: string | null;
88
164
  isPlaying: boolean;
@@ -91,6 +167,14 @@ interface VideoToggleDetail {
91
167
  videoUrl: string;
92
168
  }
93
169
  type VideoEntry = PlayerProps;
170
+ interface VideoSelectDetail extends VideoEntry {
171
+ fromGesture?: boolean;
172
+ }
173
+ interface TranscriptCue {
174
+ time: number;
175
+ end?: number;
176
+ text: string;
177
+ }
94
178
  interface PlayerHandle {
95
179
  isPlaying: boolean;
96
180
  togglePlay(): void;
@@ -125,73 +209,116 @@ interface PlayerHandle {
125
209
  isAutoQuality: boolean;
126
210
  setQuality(index: number | null): void;
127
211
  supportsPlaybackRate: boolean;
128
- playbackRate: number;
212
+ currentPlaybackRate: number;
129
213
  setPlaybackRate(rate: number): void;
130
214
  }
131
215
  //#endregion
132
- //#region src/components/VideoPlayer.vue.d.ts
133
- type __VLS_Props$13 = PlayerProps & {
134
- hasPlaylist?: boolean;
135
- hasNext?: boolean;
136
- hasPrevious?: boolean;
137
- autoAdvance?: boolean;
138
- };
139
- declare const __VLS_export$16: import("vue").DefineComponent<__VLS_Props$13, {
140
- isPlaying: boolean;
141
- hasEnded: boolean;
142
- isReady: boolean;
143
- isAdPlaying: boolean;
144
- isAdPaused: boolean;
145
- isAdMuted: boolean;
146
- adRemainingTime: number;
147
- isLive: boolean;
148
- isBuffering: boolean;
149
- current: number;
150
- total: number;
151
- vol: number;
152
- isMuted: boolean;
153
- isAudible: boolean;
154
- isLooping: boolean;
155
- playbackRate: number;
156
- hasStarted: boolean;
157
- isError: boolean;
158
- errorMessage: string;
159
- progress: number;
160
- bufferedDisplay: number;
161
- isFullscreen: boolean;
162
- isFullscreenPending: boolean;
216
+ //#region src/composables/player/usePlayer.d.ts
217
+ interface UsePlayerReturn {
218
+ isPlaying: Ref<boolean>;
219
+ hasEnded: Ref<boolean>;
220
+ isReady: Ref<boolean>;
221
+ isLive: Ref<boolean>;
222
+ isBuffering: Ref<boolean>;
223
+ current: Ref<number>;
224
+ total: Ref<number>;
225
+ progress: ComputedRef<number>;
226
+ bufferedDisplay: ComputedRef<number>;
227
+ hasStarted: Ref<boolean>;
228
+ isError: Ref<boolean>;
229
+ errorMessage: Ref<string>;
163
230
  fmt: (s: number) => string;
164
231
  fire: (type: StateChangeType, extras?: Partial<StateChangeEvent>) => void;
165
232
  retry: () => void;
166
233
  togglePlay: () => void;
167
234
  seek: (val: number) => void;
235
+ isAdPlaying: Ref<boolean>;
236
+ isAdPaused: Ref<boolean>;
237
+ isAdMuted: Ref<boolean>;
238
+ adRemainingTime: Ref<number>;
239
+ toggleAdMute: () => void;
240
+ vol: Ref<number>;
241
+ isMuted: Ref<boolean>;
242
+ isAudible: ComputedRef<boolean>;
168
243
  toggleMute: () => void;
169
244
  setVolume: (val: number) => void;
170
- toggleFullscreen: () => void;
171
- markFullscreenPending: () => void;
245
+ isLooping: Ref<boolean>;
172
246
  toggleLoop: () => void;
173
- toggleAdMute: () => void;
247
+ currentPlaybackRate: Ref<number>;
174
248
  setPlaybackRate: (rate: number) => void;
175
- supportsPlaybackRate: boolean;
176
- supportsCaptions: boolean;
177
- captionTracks: CaptionTrackInfo[];
178
- activeCaptionIndex: number | null;
249
+ supportsPlaybackRate: Ref<boolean>;
250
+ isFullscreen: Ref<boolean>;
251
+ isFullscreenPending: Ref<boolean>;
252
+ toggleFullscreen: () => void;
253
+ markFullscreenPending: () => void;
254
+ supportsCaptions: Ref<boolean>;
255
+ captionTracks: Ref<CaptionTrackInfo[]>;
256
+ activeCaptionIndex: Ref<number | null>;
179
257
  setCaptionTrack: (index: number | null) => void;
180
- supportsQuality: boolean;
181
- qualityLevels: QualityLevelInfo[];
182
- currentQualityIndex: number | null;
183
- isAutoQuality: boolean;
258
+ supportsQuality: Ref<boolean>;
259
+ qualityLevels: Ref<QualityLevelInfo[]>;
260
+ currentQualityIndex: Ref<number | null>;
261
+ isAutoQuality: Ref<boolean>;
184
262
  setQuality: (index: number | null) => void;
185
- supportsPip: boolean;
186
- isPipActive: boolean;
263
+ supportsPip: Ref<boolean>;
264
+ isPipActive: Ref<boolean>;
187
265
  togglePip: () => void;
188
- nativeUi: boolean;
189
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
266
+ isNativeUi: Ref<boolean>;
267
+ }
268
+ //#endregion
269
+ //#region src/composables/overlay/useHud.d.ts
270
+ interface UseHudReturn {
271
+ showHUD: Ref<boolean>;
272
+ isOpen: Ref<boolean>;
273
+ scheduleHide: (delay?: number) => void;
274
+ pauseHide: () => void;
275
+ onVideoTap: () => void;
276
+ onMouseMove: () => void;
277
+ onMouseLeave: () => void;
278
+ openControls: () => void;
279
+ closeControls: () => void;
280
+ keepOpen: () => void;
281
+ suppressMouseLeave: (ms?: number) => void;
282
+ }
283
+ //#endregion
284
+ //#region src/composables/player/playerContext.d.ts
285
+ type PlayerContext = UnwrapNestedRefs<UsePlayerReturn>;
286
+ type HudContext = UnwrapNestedRefs<UseHudReturn>;
287
+ interface PlaylistContext {
288
+ hasPlaylist: boolean;
289
+ hasNext: boolean;
290
+ hasPrevious: boolean;
291
+ autoAdvance: boolean;
292
+ playNext: () => void;
293
+ playPrevious: () => void;
294
+ toggleAutoAdvance: () => void;
295
+ }
296
+ //#endregion
297
+ //#region src/composables/useForwardedPlayer.d.ts
298
+ declare const METHOD_KEYS: readonly ["retry", "togglePlay", "seek", "toggleMute", "setVolume", "toggleFullscreen", "markFullscreenPending", "toggleLoop", "toggleAdMute", "setPlaybackRate", "setCaptionTrack", "setQuality", "togglePip"];
299
+ declare const STATE_KEYS: readonly ["isPlaying", "hasEnded", "isReady", "isAdPlaying", "isAdPaused", "isAdMuted", "adRemainingTime", "isLive", "isBuffering", "current", "total", "vol", "isMuted", "isAudible", "isLooping", "currentPlaybackRate", "hasStarted", "isError", "errorMessage", "progress", "bufferedDisplay", "isFullscreen", "isFullscreenPending", "supportsPlaybackRate", "supportsCaptions", "captionTracks", "activeCaptionIndex", "supportsQuality", "qualityLevels", "currentQualityIndex", "isAutoQuality", "supportsPip", "isPipActive", "isNativeUi"];
300
+ type MethodKey = (typeof METHOD_KEYS)[number];
301
+ type StateKey = (typeof STATE_KEYS)[number];
302
+ type ForwardedPlayer = { [K in MethodKey]: (...args: Parameters<PlayerContext[K]>) => Promise<void>; } & { [K in StateKey]: ComputedRef<PlayerContext[K]>; };
303
+ interface UseForwardedPlayerReturn {
304
+ playerRef: Ref<PlayerContext | null>;
305
+ forwarded: ForwardedPlayer;
306
+ }
307
+ declare function useForwardedPlayer(guard?: (key: MethodKey) => boolean | Promise<boolean>): UseForwardedPlayerReturn;
308
+ //#endregion
309
+ //#region src/components/VideoPlayer.vue.d.ts
310
+ type __VLS_Props$2 = PlayerProps & {
311
+ hasPlaylist?: boolean;
312
+ hasNext?: boolean;
313
+ hasPrevious?: boolean;
314
+ autoAdvance?: boolean;
315
+ };
316
+ declare const __VLS_export$17: import("vue").DefineComponent<__VLS_Props$2, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
190
317
  "state-change": (event: StateChangeEvent) => any;
191
318
  "play-next": () => any;
192
319
  "play-previous": () => any;
193
320
  "toggle-auto-advance": () => any;
194
- }, string, import("vue").PublicProps, Readonly<__VLS_Props$13> & Readonly<{
321
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props$2> & Readonly<{
195
322
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
196
323
  "onPlay-next"?: (() => any) | undefined;
197
324
  "onPlay-previous"?: (() => any) | undefined;
@@ -207,7 +334,7 @@ declare const __VLS_export$16: import("vue").DefineComponent<__VLS_Props$13, {
207
334
  nativeUi: boolean;
208
335
  autoStage: boolean;
209
336
  lazy: boolean;
210
- payload: Record<string, unknown>;
337
+ payload: Record<string, unknown> | string;
211
338
  action: PlayerAction | null;
212
339
  disableTapCapture: boolean;
213
340
  controls: boolean;
@@ -217,16 +344,19 @@ declare const __VLS_export$16: import("vue").DefineComponent<__VLS_Props$13, {
217
344
  hasPrevious: boolean;
218
345
  autoAdvance: boolean;
219
346
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
220
- declare const _default$14: typeof __VLS_export$16;
347
+ declare const _default$15: typeof __VLS_export$17;
221
348
  //#endregion
222
349
  //#region src/components/VideoStage.vue.d.ts
223
- type __VLS_Props$12 = {
350
+ type __VLS_Props$1 = {
224
351
  pinPosition?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left' | 'full-width';
225
352
  playlist?: VideoEntry[];
226
353
  };
227
- declare function playNext(): void;
228
- declare function playPrevious(): void;
229
- declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$12, {
354
+ declare function playNext(fromGesture?: boolean): void;
355
+ declare function playPrevious(fromGesture?: boolean): void;
356
+ declare const __VLS_export$16: import("vue").DefineComponent<__VLS_Props$1, {
357
+ setCaptionTrack: (index: number | null) => Promise<void>;
358
+ setQuality: (index: number | null) => Promise<void>;
359
+ togglePip: () => Promise<void>;
230
360
  retry: () => Promise<void>;
231
361
  togglePlay: () => Promise<void>;
232
362
  seek: (val: number) => Promise<void>;
@@ -237,11 +367,11 @@ declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$12, {
237
367
  toggleLoop: () => Promise<void>;
238
368
  toggleAdMute: () => Promise<void>;
239
369
  setPlaybackRate: (rate: number) => Promise<void>;
240
- setCaptionTrack: (index: number | null) => Promise<void>;
241
- setQuality: (index: number | null) => Promise<void>;
242
- togglePip: () => Promise<void>;
243
- playbackRate: import("vue").ComputedRef<number>;
244
- nativeUi: import("vue").ComputedRef<boolean>;
370
+ supportsCaptions: import("vue").ComputedRef<boolean>;
371
+ supportsQuality: import("vue").ComputedRef<boolean>;
372
+ isAutoQuality: import("vue").ComputedRef<boolean>;
373
+ supportsPip: import("vue").ComputedRef<boolean>;
374
+ isPipActive: import("vue").ComputedRef<boolean>;
245
375
  isPlaying: import("vue").ComputedRef<boolean>;
246
376
  hasEnded: import("vue").ComputedRef<boolean>;
247
377
  isReady: import("vue").ComputedRef<boolean>;
@@ -257,6 +387,7 @@ declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$12, {
257
387
  isMuted: import("vue").ComputedRef<boolean>;
258
388
  isAudible: import("vue").ComputedRef<boolean>;
259
389
  isLooping: import("vue").ComputedRef<boolean>;
390
+ currentPlaybackRate: import("vue").ComputedRef<number>;
260
391
  hasStarted: import("vue").ComputedRef<boolean>;
261
392
  isError: import("vue").ComputedRef<boolean>;
262
393
  errorMessage: import("vue").ComputedRef<string>;
@@ -265,32 +396,28 @@ declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$12, {
265
396
  isFullscreen: import("vue").ComputedRef<boolean>;
266
397
  isFullscreenPending: import("vue").ComputedRef<boolean>;
267
398
  supportsPlaybackRate: import("vue").ComputedRef<boolean>;
268
- supportsCaptions: import("vue").ComputedRef<boolean>;
269
399
  captionTracks: import("vue").ComputedRef<CaptionTrackInfo[]>;
270
400
  activeCaptionIndex: import("vue").ComputedRef<number | null>;
271
- supportsQuality: import("vue").ComputedRef<boolean>;
272
401
  qualityLevels: import("vue").ComputedRef<QualityLevelInfo[]>;
273
402
  currentQualityIndex: import("vue").ComputedRef<number | null>;
274
- isAutoQuality: import("vue").ComputedRef<boolean>;
275
- supportsPip: import("vue").ComputedRef<boolean>;
276
- isPipActive: import("vue").ComputedRef<boolean>;
403
+ isNativeUi: import("vue").ComputedRef<boolean>;
277
404
  playNext: typeof playNext;
278
405
  playPrevious: typeof playPrevious;
279
406
  hasNext: import("vue").ComputedRef<boolean>;
280
407
  hasPrevious: import("vue").ComputedRef<boolean>;
281
408
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
282
409
  "state-change": (event: StateChangeEvent) => any;
283
- }, string, import("vue").PublicProps, Readonly<__VLS_Props$12> & Readonly<{
410
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{
284
411
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
285
412
  }>, {
286
413
  pinPosition: "bottom-right" | "bottom-left" | "top-right" | "top-left" | "full-width";
287
414
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
288
- declare const _default$15: typeof __VLS_export$15;
415
+ declare const _default$16: typeof __VLS_export$16;
289
416
  //#endregion
290
417
  //#region src/components/VideoPlaceholder.vue.d.ts
291
- declare const __VLS_export$14: import("vue").DefineComponent<PlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
418
+ declare const __VLS_export$15: import("vue").DefineComponent<VideoSelectDetail, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
292
419
  "enter-view": () => any;
293
- }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
420
+ }, string, import("vue").PublicProps, Readonly<VideoSelectDetail> & Readonly<{
294
421
  "onEnter-view"?: (() => any) | undefined;
295
422
  }>, {
296
423
  title: string;
@@ -301,114 +428,15 @@ declare const __VLS_export$14: import("vue").DefineComponent<PlayerProps, {}, {}
301
428
  muted: boolean;
302
429
  nativeUi: boolean;
303
430
  autoStage: boolean;
304
- payload: Record<string, unknown>;
431
+ payload: Record<string, unknown> | string;
305
432
  action: PlayerAction | null;
306
433
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
307
- declare const _default$13: typeof __VLS_export$14;
308
- //#endregion
309
- //#region src/composables/player/usePlayer.d.ts
310
- interface UsePlayerReturn {
311
- isPlaying: Ref<boolean>;
312
- hasEnded: Ref<boolean>;
313
- isReady: Ref<boolean>;
314
- isAdPlaying: Ref<boolean>;
315
- isAdPaused: Ref<boolean>;
316
- isAdMuted: Ref<boolean>;
317
- adRemainingTime: Ref<number>;
318
- isLive: Ref<boolean>;
319
- isBuffering: Ref<boolean>;
320
- current: Ref<number>;
321
- total: Ref<number>;
322
- vol: Ref<number>;
323
- isMuted: Ref<boolean>;
324
- isAudible: ComputedRef<boolean>;
325
- isLooping: Ref<boolean>;
326
- playbackRate: Ref<number>;
327
- hasStarted: Ref<boolean>;
328
- isError: Ref<boolean>;
329
- errorMessage: Ref<string>;
330
- progress: ComputedRef<number>;
331
- bufferedDisplay: ComputedRef<number>;
332
- isFullscreen: Ref<boolean>;
333
- isFullscreenPending: Ref<boolean>;
334
- fmt: (s: number) => string;
335
- fire: (type: StateChangeType, extras?: Partial<StateChangeEvent>) => void;
336
- retry: () => void;
337
- togglePlay: () => void;
338
- seek: (val: number) => void;
339
- toggleMute: () => void;
340
- setVolume: (val: number) => void;
341
- toggleFullscreen: () => void;
342
- markFullscreenPending: () => void;
343
- toggleLoop: () => void;
344
- toggleAdMute: () => void;
345
- setPlaybackRate: (rate: number) => void;
346
- supportsPlaybackRate: Ref<boolean>;
347
- supportsCaptions: Ref<boolean>;
348
- captionTracks: Ref<CaptionTrackInfo[]>;
349
- activeCaptionIndex: Ref<number | null>;
350
- setCaptionTrack: (index: number | null) => void;
351
- supportsQuality: Ref<boolean>;
352
- qualityLevels: Ref<QualityLevelInfo[]>;
353
- currentQualityIndex: Ref<number | null>;
354
- isAutoQuality: Ref<boolean>;
355
- setQuality: (index: number | null) => void;
356
- supportsPip: Ref<boolean>;
357
- isPipActive: Ref<boolean>;
358
- togglePip: () => void;
359
- nativeUi: Ref<boolean>;
360
- }
361
- //#endregion
362
- //#region src/composables/overlay/useHud.d.ts
363
- interface UseHudReturn {
364
- showHUD: Ref<boolean>;
365
- isOpen: Ref<boolean>;
366
- scheduleHide: (delay?: number) => void;
367
- pauseHide: () => void;
368
- onVideoTap: () => void;
369
- onMouseMove: () => void;
370
- onMouseLeave: () => void;
371
- openControls: () => void;
372
- closeControls: () => void;
373
- keepOpen: () => void;
374
- suppressMouseLeave: (ms?: number) => void;
375
- }
376
- //#endregion
377
- //#region src/composables/playerContext.d.ts
378
- type PlayerContext = UnwrapNestedRefs<UsePlayerReturn>;
379
- type HudContext = UnwrapNestedRefs<UseHudReturn>;
380
- declare const PlayerKey: InjectionKey<PlayerContext>;
381
- declare const HudKey: InjectionKey<HudContext>;
382
- declare const ActionKey: InjectionKey<Ref<PlayerAction | null | undefined>>;
383
- declare const CompactKey: InjectionKey<Ref<boolean>>;
384
- interface PlaylistContext {
385
- hasPlaylist: boolean;
386
- hasNext: boolean;
387
- hasPrevious: boolean;
388
- autoAdvance: boolean;
389
- playNext: () => void;
390
- playPrevious: () => void;
391
- toggleAutoAdvance: () => void;
392
- }
393
- declare const PlaylistKey: InjectionKey<PlaylistContext>;
394
- declare function injectStrict<T>(key: InjectionKey<T>): T;
395
- //#endregion
396
- //#region src/composables/useForwardedPlayer.d.ts
397
- declare const METHOD_KEYS: readonly ["retry", "togglePlay", "seek", "toggleMute", "setVolume", "toggleFullscreen", "markFullscreenPending", "toggleLoop", "toggleAdMute", "setPlaybackRate", "setCaptionTrack", "setQuality", "togglePip"];
398
- declare const STATE_KEYS: readonly ["isPlaying", "hasEnded", "isReady", "isAdPlaying", "isAdPaused", "isAdMuted", "adRemainingTime", "isLive", "isBuffering", "current", "total", "vol", "isMuted", "isAudible", "isLooping", "playbackRate", "hasStarted", "isError", "errorMessage", "progress", "bufferedDisplay", "isFullscreen", "isFullscreenPending", "supportsPlaybackRate", "supportsCaptions", "captionTracks", "activeCaptionIndex", "supportsQuality", "qualityLevels", "currentQualityIndex", "isAutoQuality", "supportsPip", "isPipActive", "nativeUi"];
399
- type MethodKey = (typeof METHOD_KEYS)[number];
400
- type StateKey = (typeof STATE_KEYS)[number];
401
- type ForwardedPlayer = { [K in MethodKey]: (...args: Parameters<PlayerContext[K]>) => Promise<void>; } & { [K in StateKey]: ComputedRef<PlayerContext[K]>; };
402
- interface UseForwardedPlayerReturn {
403
- playerRef: Ref<PlayerContext | null>;
404
- forwarded: ForwardedPlayer;
405
- }
406
- declare function useForwardedPlayer(guard?: (key: MethodKey) => boolean | Promise<boolean>): UseForwardedPlayerReturn;
434
+ declare const _default$14: typeof __VLS_export$15;
407
435
  //#endregion
408
436
  //#region src/components/VideoItem.vue.d.ts
409
- declare const __VLS_export$13: import("vue").DefineComponent<PlayerProps, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
437
+ declare const __VLS_export$14: import("vue").DefineComponent<VideoSelectDetail, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
410
438
  "state-change": (event: StateChangeEvent) => any;
411
- }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
439
+ }, string, import("vue").PublicProps, Readonly<VideoSelectDetail> & Readonly<{
412
440
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
413
441
  }>, {
414
442
  muted: boolean;
@@ -416,254 +444,234 @@ declare const __VLS_export$13: import("vue").DefineComponent<PlayerProps, Forwar
416
444
  action: PlayerAction | null;
417
445
  controls: boolean;
418
446
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
419
- declare const _default$12: typeof __VLS_export$13;
447
+ declare const _default$13: typeof __VLS_export$14;
420
448
  //#endregion
421
449
  //#region src/components/HideMarker.vue.d.ts
422
- declare const __VLS_export$12: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
423
- declare const _default$3: typeof __VLS_export$12;
450
+ declare const __VLS_export$13: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
451
+ declare const _default$3: typeof __VLS_export$13;
424
452
  //#endregion
425
- //#region src/components/controls/Scrubber.vue.d.ts
426
- type __VLS_Props$11 = {
453
+ //#region src/composables/controls/useResolvedPlayer.d.ts
454
+ interface ResolvedPlayerProps {
427
455
  player?: PlayerHandle | null;
428
456
  for?: string;
429
- };
430
- declare var __VLS_1$11: {
457
+ }
458
+ //#endregion
459
+ //#region src/components/controls/Scrubber.vue.d.ts
460
+ declare var __VLS_1$12: {
431
461
  scrubbing: boolean;
432
462
  percent: number;
433
463
  previewSeconds: number;
434
464
  formatTime: (seconds: number) => string;
435
465
  };
436
- type __VLS_Slots$11 = {} & {
437
- preview?: (props: typeof __VLS_1$11) => any;
466
+ type __VLS_Slots$12 = {} & {
467
+ preview?: (props: typeof __VLS_1$12) => any;
438
468
  };
439
- declare const __VLS_base$11: import("vue").DefineComponent<__VLS_Props$11, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$11> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
440
- declare const __VLS_export$11: __VLS_WithSlots$11<typeof __VLS_base$11, __VLS_Slots$11>;
441
- declare const _default$10: typeof __VLS_export$11;
442
- type __VLS_WithSlots$11<T, S> = T & {
469
+ declare const __VLS_base$12: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
470
+ declare const __VLS_export$12: __VLS_WithSlots$12<typeof __VLS_base$12, __VLS_Slots$12>;
471
+ declare const _default$10: typeof __VLS_export$12;
472
+ type __VLS_WithSlots$12<T, S> = T & {
443
473
  new (): {
444
474
  $slots: S;
445
475
  };
446
476
  };
447
477
  //#endregion
448
478
  //#region src/components/controls/PlayButton.vue.d.ts
449
- type __VLS_Props$10 = {
450
- player?: PlayerHandle | null;
451
- for?: string;
452
- };
453
- declare var __VLS_1$10: {
479
+ declare var __VLS_1$11: {
454
480
  isPlaying: boolean;
455
481
  hasEnded: boolean;
456
482
  isError: boolean;
457
483
  };
484
+ type __VLS_Slots$11 = {} & {
485
+ default?: (props: typeof __VLS_1$11) => any;
486
+ };
487
+ declare const __VLS_base$11: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
488
+ declare const __VLS_export$11: __VLS_WithSlots$11<typeof __VLS_base$11, __VLS_Slots$11>;
489
+ declare const _default$7: typeof __VLS_export$11;
490
+ type __VLS_WithSlots$11<T, S> = T & {
491
+ new (): {
492
+ $slots: S;
493
+ };
494
+ };
495
+ //#endregion
496
+ //#region src/components/controls/MuteButton.vue.d.ts
497
+ declare var __VLS_1$10: {
498
+ isMuted: boolean;
499
+ };
458
500
  type __VLS_Slots$10 = {} & {
459
501
  default?: (props: typeof __VLS_1$10) => any;
460
502
  };
461
- declare const __VLS_base$10: import("vue").DefineComponent<__VLS_Props$10, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$10> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
503
+ declare const __VLS_base$10: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
462
504
  declare const __VLS_export$10: __VLS_WithSlots$10<typeof __VLS_base$10, __VLS_Slots$10>;
463
- declare const _default$7: typeof __VLS_export$10;
505
+ declare const _default$5: typeof __VLS_export$10;
464
506
  type __VLS_WithSlots$10<T, S> = T & {
465
507
  new (): {
466
508
  $slots: S;
467
509
  };
468
510
  };
469
511
  //#endregion
470
- //#region src/components/controls/MuteButton.vue.d.ts
471
- type __VLS_Props$9 = {
472
- player?: PlayerHandle | null;
473
- for?: string;
474
- };
512
+ //#region src/components/controls/FullscreenButton.vue.d.ts
475
513
  declare var __VLS_1$9: {
476
- isMuted: boolean;
514
+ isFullscreen: boolean;
477
515
  };
478
516
  type __VLS_Slots$9 = {} & {
479
517
  default?: (props: typeof __VLS_1$9) => any;
480
518
  };
481
- declare const __VLS_base$9: import("vue").DefineComponent<__VLS_Props$9, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$9> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
519
+ declare const __VLS_base$9: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
482
520
  declare const __VLS_export$9: __VLS_WithSlots$9<typeof __VLS_base$9, __VLS_Slots$9>;
483
- declare const _default$5: typeof __VLS_export$9;
521
+ declare const _default$2: typeof __VLS_export$9;
484
522
  type __VLS_WithSlots$9<T, S> = T & {
485
523
  new (): {
486
524
  $slots: S;
487
525
  };
488
526
  };
489
527
  //#endregion
490
- //#region src/components/controls/FullscreenButton.vue.d.ts
491
- type __VLS_Props$8 = {
492
- player?: PlayerHandle | null;
493
- for?: string;
494
- };
495
- declare var __VLS_1$8: {
496
- isFullscreen: boolean;
497
- };
528
+ //#region src/components/controls/Buffering.vue.d.ts
529
+ declare var __VLS_1$8: {};
498
530
  type __VLS_Slots$8 = {} & {
499
531
  default?: (props: typeof __VLS_1$8) => any;
500
532
  };
501
- declare const __VLS_base$8: import("vue").DefineComponent<__VLS_Props$8, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$8> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
533
+ declare const __VLS_base$8: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
502
534
  declare const __VLS_export$8: __VLS_WithSlots$8<typeof __VLS_base$8, __VLS_Slots$8>;
503
- declare const _default$2: typeof __VLS_export$8;
535
+ declare const _default: typeof __VLS_export$8;
504
536
  type __VLS_WithSlots$8<T, S> = T & {
505
537
  new (): {
506
538
  $slots: S;
507
539
  };
508
540
  };
509
541
  //#endregion
510
- //#region src/components/controls/Buffering.vue.d.ts
511
- type __VLS_Props$7 = {
512
- player?: PlayerHandle | null;
513
- for?: string;
542
+ //#region src/components/controls/LoopButton.vue.d.ts
543
+ declare var __VLS_1$7: {
544
+ isLooping: boolean;
514
545
  };
515
- declare var __VLS_1$7: {};
516
546
  type __VLS_Slots$7 = {} & {
517
547
  default?: (props: typeof __VLS_1$7) => any;
518
548
  };
519
- declare const __VLS_base$7: import("vue").DefineComponent<__VLS_Props$7, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$7> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
549
+ declare const __VLS_base$7: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
520
550
  declare const __VLS_export$7: __VLS_WithSlots$7<typeof __VLS_base$7, __VLS_Slots$7>;
521
- declare const _default: typeof __VLS_export$7;
551
+ declare const _default$4: typeof __VLS_export$7;
522
552
  type __VLS_WithSlots$7<T, S> = T & {
523
553
  new (): {
524
554
  $slots: S;
525
555
  };
526
556
  };
527
557
  //#endregion
528
- //#region src/components/controls/LoopButton.vue.d.ts
529
- type __VLS_Props$6 = {
530
- player?: PlayerHandle | null;
531
- for?: string;
532
- };
558
+ //#region src/components/controls/PipButton.vue.d.ts
533
559
  declare var __VLS_1$6: {
534
- isLooping: boolean;
560
+ isPipActive: boolean;
535
561
  };
536
562
  type __VLS_Slots$6 = {} & {
537
563
  default?: (props: typeof __VLS_1$6) => any;
538
564
  };
539
- declare const __VLS_base$6: import("vue").DefineComponent<__VLS_Props$6, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$6> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
565
+ declare const __VLS_base$6: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
540
566
  declare const __VLS_export$6: __VLS_WithSlots$6<typeof __VLS_base$6, __VLS_Slots$6>;
541
- declare const _default$4: typeof __VLS_export$6;
567
+ declare const _default$6: typeof __VLS_export$6;
542
568
  type __VLS_WithSlots$6<T, S> = T & {
543
569
  new (): {
544
570
  $slots: S;
545
571
  };
546
572
  };
547
573
  //#endregion
548
- //#region src/components/controls/PipButton.vue.d.ts
549
- type __VLS_Props$5 = {
550
- player?: PlayerHandle | null;
551
- for?: string;
552
- };
574
+ //#region src/components/controls/CaptionsButton.vue.d.ts
553
575
  declare var __VLS_1$5: {
554
- isPipActive: boolean;
576
+ currentLabel: string;
577
+ tracks: CaptionTrackInfo[];
578
+ activeIndex: number | null;
555
579
  };
556
580
  type __VLS_Slots$5 = {} & {
557
581
  default?: (props: typeof __VLS_1$5) => any;
558
582
  };
559
- declare const __VLS_base$5: import("vue").DefineComponent<__VLS_Props$5, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$5> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
583
+ declare const __VLS_base$5: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
560
584
  declare const __VLS_export$5: __VLS_WithSlots$5<typeof __VLS_base$5, __VLS_Slots$5>;
561
- declare const _default$6: typeof __VLS_export$5;
585
+ declare const _default$1: typeof __VLS_export$5;
562
586
  type __VLS_WithSlots$5<T, S> = T & {
563
587
  new (): {
564
588
  $slots: S;
565
589
  };
566
590
  };
567
591
  //#endregion
568
- //#region src/components/controls/CaptionsButton.vue.d.ts
569
- type __VLS_Props$4 = {
570
- player?: PlayerHandle | null;
571
- for?: string;
572
- };
592
+ //#region src/components/controls/QualityButton.vue.d.ts
573
593
  declare var __VLS_1$4: {
574
594
  currentLabel: string;
575
- tracks: CaptionTrackInfo[];
576
- activeIndex: number | null;
595
+ levels: QualityLevelInfo[];
596
+ currentIndex: number | null;
597
+ isAuto: boolean;
577
598
  };
578
599
  type __VLS_Slots$4 = {} & {
579
600
  default?: (props: typeof __VLS_1$4) => any;
580
601
  };
581
- declare const __VLS_base$4: import("vue").DefineComponent<__VLS_Props$4, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$4> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
602
+ declare const __VLS_base$4: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
582
603
  declare const __VLS_export$4: __VLS_WithSlots$4<typeof __VLS_base$4, __VLS_Slots$4>;
583
- declare const _default$1: typeof __VLS_export$4;
604
+ declare const _default$9: typeof __VLS_export$4;
584
605
  type __VLS_WithSlots$4<T, S> = T & {
585
606
  new (): {
586
607
  $slots: S;
587
608
  };
588
609
  };
589
610
  //#endregion
590
- //#region src/components/controls/QualityButton.vue.d.ts
591
- type __VLS_Props$3 = {
592
- player?: PlayerHandle | null;
593
- for?: string;
594
- };
611
+ //#region src/components/controls/PlaybackRateButton.vue.d.ts
595
612
  declare var __VLS_1$3: {
596
613
  currentLabel: string;
597
- levels: QualityLevelInfo[];
598
- currentIndex: number | null;
599
- isAuto: boolean;
614
+ rate: number;
615
+ rates: number[];
600
616
  };
601
617
  type __VLS_Slots$3 = {} & {
602
618
  default?: (props: typeof __VLS_1$3) => any;
603
619
  };
604
- declare const __VLS_base$3: import("vue").DefineComponent<__VLS_Props$3, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$3> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
620
+ declare const __VLS_base$3: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
605
621
  declare const __VLS_export$3: __VLS_WithSlots$3<typeof __VLS_base$3, __VLS_Slots$3>;
606
- declare const _default$9: typeof __VLS_export$3;
622
+ declare const _default$8: typeof __VLS_export$3;
607
623
  type __VLS_WithSlots$3<T, S> = T & {
608
624
  new (): {
609
625
  $slots: S;
610
626
  };
611
627
  };
612
628
  //#endregion
613
- //#region src/components/controls/PlaybackRateButton.vue.d.ts
614
- type __VLS_Props$2 = {
615
- player?: PlayerHandle | null;
616
- for?: string;
617
- };
629
+ //#region src/components/controls/VolumeSlider.vue.d.ts
618
630
  declare var __VLS_1$2: {
619
- currentLabel: string;
620
- rate: number;
621
- rates: number[];
631
+ percent: number;
622
632
  };
623
633
  type __VLS_Slots$2 = {} & {
624
634
  default?: (props: typeof __VLS_1$2) => any;
625
635
  };
626
- declare const __VLS_base$2: import("vue").DefineComponent<__VLS_Props$2, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$2> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
636
+ declare const __VLS_base$2: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
627
637
  declare const __VLS_export$2: __VLS_WithSlots$2<typeof __VLS_base$2, __VLS_Slots$2>;
628
- declare const _default$8: typeof __VLS_export$2;
638
+ declare const _default$17: typeof __VLS_export$2;
629
639
  type __VLS_WithSlots$2<T, S> = T & {
630
640
  new (): {
631
641
  $slots: S;
632
642
  };
633
643
  };
634
644
  //#endregion
635
- //#region src/components/controls/VolumeSlider.vue.d.ts
636
- type __VLS_Props$1 = {
637
- player?: PlayerHandle | null;
638
- for?: string;
639
- };
645
+ //#region src/utils/time.d.ts
646
+ declare function fmtTime(s: number, round?: boolean): string;
647
+ //#endregion
648
+ //#region src/components/controls/TimeDisplay.vue.d.ts
640
649
  declare var __VLS_1$1: {
641
- percent: number;
650
+ isLive: boolean;
651
+ current: number;
652
+ total: number;
653
+ formatTime: typeof fmtTime;
642
654
  };
643
655
  type __VLS_Slots$1 = {} & {
644
656
  default?: (props: typeof __VLS_1$1) => any;
645
657
  };
646
- declare const __VLS_base$1: import("vue").DefineComponent<__VLS_Props$1, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
658
+ declare const __VLS_base$1: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
647
659
  declare const __VLS_export$1: __VLS_WithSlots$1<typeof __VLS_base$1, __VLS_Slots$1>;
648
- declare const _default$16: typeof __VLS_export$1;
660
+ declare const _default$11: typeof __VLS_export$1;
649
661
  type __VLS_WithSlots$1<T, S> = T & {
650
662
  new (): {
651
663
  $slots: S;
652
664
  };
653
665
  };
654
666
  //#endregion
655
- //#region src/utils/tech.d.ts
656
- declare function fmtTime(s: number, round?: boolean): string;
657
- //#endregion
658
- //#region src/components/controls/TimeDisplay.vue.d.ts
659
- type __VLS_Props = {
660
- player?: PlayerHandle | null;
661
- for?: string;
667
+ //#region src/components/controls/Transcript.vue.d.ts
668
+ type __VLS_Props = ResolvedPlayerProps & {
669
+ cues?: TranscriptCue[] | string;
662
670
  };
663
671
  declare var __VLS_1: {
664
- isLive: boolean;
665
- current: number;
666
- total: number;
672
+ cue: TranscriptCue;
673
+ index: number;
674
+ isActive: boolean;
667
675
  formatTime: typeof fmtTime;
668
676
  };
669
677
  type __VLS_Slots = {} & {
@@ -671,7 +679,7 @@ type __VLS_Slots = {} & {
671
679
  };
672
680
  declare const __VLS_base: 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>;
673
681
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
674
- declare const _default$11: typeof __VLS_export;
682
+ declare const _default$12: typeof __VLS_export;
675
683
  type __VLS_WithSlots<T, S> = T & {
676
684
  new (): {
677
685
  $slots: S;
@@ -679,7 +687,11 @@ type __VLS_WithSlots<T, S> = T & {
679
687
  };
680
688
  //#endregion
681
689
  //#region src/adapters/index.d.ts
690
+ declare function registerMatcher(matcher: Matcher): void;
682
691
  declare function getPlatform(url: string): string;
692
+ declare function registerEmbedAdapter(key: string, factory: EmbedAdapterFactory): void;
693
+ declare function registerSourceResolver(key: string, resolver: SourceResolver): void;
694
+ declare function registerPlatform(config: PlatformConfig): void;
683
695
  //#endregion
684
696
  //#region src/composables/controls/useScrubber.d.ts
685
697
  interface UseScrubberReturn {
@@ -715,4 +727,4 @@ declare function usePlaybackRate(player: PlayerHandle): UsePlaybackRateReturn;
715
727
  //#region src/index.d.ts
716
728
  declare const VideoPlayerPlugin: Plugin;
717
729
  //#endregion
718
- export { ActionKey, _default as Buffering, BuiltinAction, CaptionTrackDef, type CaptionTrackInfo, _default$1 as CaptionsButton, CompactKey, CustomAction, type ForwardedPlayer, _default$2 as FullscreenButton, HeaderBiddingAdUnit, HeaderBiddingConfig, _default$3 as HideMarker, HudContext, HudKey, _default$4 as LoopButton, type MethodKey, _default$5 as MuteButton, _default$6 as PipButton, _default$7 as PlayButton, _default$8 as PlaybackRateButton, PlayerAction, PlayerContext, PlayerHandle, PlayerKey, PlayerProps, PlaylistContext, PlaylistKey, _default$9 as QualityButton, type QualityLevelInfo, _default$10 as Scrubber, StateChangeEvent, StateChangeType, _default$11 as TimeDisplay, type UseForwardedPlayerReturn, VideoEntry, _default$12 as VideoItem, _default$13 as VideoPlaceholder, _default$14 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$15 as VideoStage, VideoStateDetail, VideoToggleDetail, _default$16 as VolumeSlider, getPlatform, injectStrict, useCaptions, useForwardedPlayer, usePlaybackRate, useQuality, useScrubber };
730
+ export { _default as Buffering, BuiltinAction, CaptionTrackDef, type CaptionTrackInfo, _default$1 as CaptionsButton, CustomAction, type EmbedAdapterFactory, type EmbedAdapterOptions, type ForwardedPlayer, _default$2 as FullscreenButton, HeaderBiddingAdUnit, HeaderBiddingConfig, _default$3 as HideMarker, type HudContext, _default$4 as LoopButton, type Matcher, type MediaErrorLike, type MethodKey, _default$5 as MuteButton, PinCorner, _default$6 as PipButton, type PlatformConfig, _default$7 as PlayButton, type PlaybackAdapter, _default$8 as PlaybackRateButton, PlayerAction, type PlayerContext, PlayerHandle, PlayerProps, type PlaylistContext, _default$9 as QualityButton, type QualityLevelInfo, type ResolvedSource, _default$10 as Scrubber, type SourceResolver, StateChangeEvent, StateChangeType, _default$11 as TimeDisplay, _default$12 as Transcript, TranscriptCue, type UseForwardedPlayerReturn, VideoEntry, _default$13 as VideoItem, _default$14 as VideoPlaceholder, _default$15 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$16 as VideoStage, VideoStateDetail, VideoToggleDetail, _default$17 as VolumeSlider, getPlatform, registerEmbedAdapter, registerMatcher, registerPlatform, registerSourceResolver, useCaptions, useForwardedPlayer, usePlaybackRate, useQuality, useScrubber };