@livepeer-frameworks/player-wc 0.1.2 → 0.1.4
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/cjs/components/fw-dev-mode-panel.js +845 -212
- package/dist/cjs/components/fw-dev-mode-panel.js.map +1 -1
- package/dist/cjs/components/fw-dvd-logo.js +211 -0
- package/dist/cjs/components/fw-dvd-logo.js.map +1 -0
- package/dist/cjs/components/fw-idle-screen.js +641 -97
- package/dist/cjs/components/fw-idle-screen.js.map +1 -1
- package/dist/cjs/components/fw-loading-screen.js +513 -0
- package/dist/cjs/components/fw-loading-screen.js.map +1 -0
- package/dist/cjs/components/fw-player-controls.js +390 -173
- package/dist/cjs/components/fw-player-controls.js.map +1 -1
- package/dist/cjs/components/fw-player.js +506 -63
- package/dist/cjs/components/fw-player.js.map +1 -1
- package/dist/cjs/components/fw-seek-bar.js +292 -142
- package/dist/cjs/components/fw-seek-bar.js.map +1 -1
- package/dist/cjs/components/fw-settings-menu.js +208 -81
- package/dist/cjs/components/fw-settings-menu.js.map +1 -1
- package/dist/cjs/components/fw-stats-panel.js +134 -70
- package/dist/cjs/components/fw-stats-panel.js.map +1 -1
- package/dist/cjs/components/fw-stream-state-overlay.js +338 -0
- package/dist/cjs/components/fw-stream-state-overlay.js.map +1 -0
- package/dist/cjs/components/fw-subtitle-renderer.js +174 -27
- package/dist/cjs/components/fw-subtitle-renderer.js.map +1 -1
- package/dist/cjs/components/fw-thumbnail-overlay.js +161 -0
- package/dist/cjs/components/fw-thumbnail-overlay.js.map +1 -0
- package/dist/cjs/components/fw-volume-control.js +150 -69
- package/dist/cjs/components/fw-volume-control.js.map +1 -1
- package/dist/cjs/components/shared/hitmarker-audio.js +76 -0
- package/dist/cjs/components/shared/hitmarker-audio.js.map +1 -0
- package/dist/cjs/constants/media-assets.js +11 -0
- package/dist/cjs/constants/media-assets.js.map +1 -0
- package/dist/cjs/controllers/player-controller-host.js +51 -2
- package/dist/cjs/controllers/player-controller-host.js.map +1 -1
- package/dist/cjs/define.js +8 -0
- package/dist/cjs/define.js.map +1 -1
- package/dist/cjs/icons/index.js +27 -0
- package/dist/cjs/icons/index.js.map +1 -1
- package/dist/cjs/index.js +20 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/components/fw-dev-mode-panel.js +846 -213
- package/dist/esm/components/fw-dev-mode-panel.js.map +1 -1
- package/dist/esm/components/fw-dvd-logo.js +211 -0
- package/dist/esm/components/fw-dvd-logo.js.map +1 -0
- package/dist/esm/components/fw-idle-screen.js +643 -99
- package/dist/esm/components/fw-idle-screen.js.map +1 -1
- package/dist/esm/components/fw-loading-screen.js +513 -0
- package/dist/esm/components/fw-loading-screen.js.map +1 -0
- package/dist/esm/components/fw-player-controls.js +391 -174
- package/dist/esm/components/fw-player-controls.js.map +1 -1
- package/dist/esm/components/fw-player.js +506 -63
- package/dist/esm/components/fw-player.js.map +1 -1
- package/dist/esm/components/fw-seek-bar.js +293 -143
- package/dist/esm/components/fw-seek-bar.js.map +1 -1
- package/dist/esm/components/fw-settings-menu.js +209 -82
- package/dist/esm/components/fw-settings-menu.js.map +1 -1
- package/dist/esm/components/fw-stats-panel.js +135 -71
- package/dist/esm/components/fw-stats-panel.js.map +1 -1
- package/dist/esm/components/fw-stream-state-overlay.js +338 -0
- package/dist/esm/components/fw-stream-state-overlay.js.map +1 -0
- package/dist/esm/components/fw-subtitle-renderer.js +175 -28
- package/dist/esm/components/fw-subtitle-renderer.js.map +1 -1
- package/dist/esm/components/fw-thumbnail-overlay.js +161 -0
- package/dist/esm/components/fw-thumbnail-overlay.js.map +1 -0
- package/dist/esm/components/fw-volume-control.js +150 -69
- package/dist/esm/components/fw-volume-control.js.map +1 -1
- package/dist/esm/components/shared/hitmarker-audio.js +74 -0
- package/dist/esm/components/shared/hitmarker-audio.js.map +1 -0
- package/dist/esm/constants/media-assets.js +8 -0
- package/dist/esm/constants/media-assets.js.map +1 -0
- package/dist/esm/controllers/player-controller-host.js +51 -2
- package/dist/esm/controllers/player-controller-host.js.map +1 -1
- package/dist/esm/define.js +8 -0
- package/dist/esm/define.js.map +1 -1
- package/dist/esm/icons/index.js +26 -2
- package/dist/esm/icons/index.js.map +1 -1
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/fw-player.iife.js +2097 -883
- package/dist/types/components/fw-dev-mode-panel.d.ts +36 -9
- package/dist/types/components/fw-dvd-logo.d.ts +29 -0
- package/dist/types/components/fw-idle-screen.d.ts +36 -0
- package/dist/types/components/fw-loading-screen.d.ts +36 -0
- package/dist/types/components/fw-player-controls.d.ts +23 -6
- package/dist/types/components/fw-player.d.ts +32 -1
- package/dist/types/components/fw-seek-bar.d.ts +31 -14
- package/dist/types/components/fw-settings-menu.d.ts +16 -1
- package/dist/types/components/fw-stats-panel.d.ts +4 -4
- package/dist/types/components/fw-stream-state-overlay.d.ts +20 -0
- package/dist/types/components/fw-subtitle-renderer.d.ts +33 -2
- package/dist/types/components/fw-thumbnail-overlay.d.ts +17 -0
- package/dist/types/components/fw-volume-control.d.ts +11 -4
- package/dist/types/components/shared/hitmarker-audio.d.ts +1 -0
- package/dist/types/constants/media-assets.d.ts +5 -0
- package/dist/types/controllers/player-controller-host.d.ts +14 -1
- package/dist/types/iife-entry.d.ts +4 -0
- package/dist/types/index.d.ts +4 -0
- package/package.json +2 -2
- package/src/components/fw-dev-mode-panel.ts +929 -228
- package/src/components/fw-dvd-logo.ts +233 -0
- package/src/components/fw-idle-screen.ts +680 -100
- package/src/components/fw-loading-screen.ts +540 -0
- package/src/components/fw-player-controls.ts +475 -175
- package/src/components/fw-player.ts +551 -60
- package/src/components/fw-seek-bar.ts +336 -143
- package/src/components/fw-settings-menu.ts +248 -85
- package/src/components/fw-stats-panel.ts +150 -77
- package/src/components/fw-stream-state-overlay.ts +331 -0
- package/src/components/fw-subtitle-renderer.ts +216 -28
- package/src/components/fw-thumbnail-overlay.ts +148 -0
- package/src/components/fw-volume-control.ts +166 -66
- package/src/components/shared/hitmarker-audio.ts +92 -0
- package/src/constants/media-assets.ts +7 -0
- package/src/controllers/player-controller-host.ts +52 -3
- package/src/define.ts +8 -0
- package/src/iife-entry.ts +4 -0
- package/src/index.ts +4 -0
- package/dist/fw-player.iife.js.map +0 -1
|
@@ -54,7 +54,7 @@ export interface PlayerControllerHostState {
|
|
|
54
54
|
isAuto?: boolean;
|
|
55
55
|
active?: boolean;
|
|
56
56
|
}>;
|
|
57
|
-
textTracks: Array<{ id: string; label: string;
|
|
57
|
+
textTracks: Array<{ id: string; label: string; lang?: string; active: boolean }>;
|
|
58
58
|
streamInfo: StreamInfo | null;
|
|
59
59
|
toast: { message: string; timestamp: number } | null;
|
|
60
60
|
}
|
|
@@ -185,6 +185,7 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
185
185
|
isLoopEnabled: c.isLoopEnabled(),
|
|
186
186
|
subtitlesEnabled: c.isSubtitlesEnabled(),
|
|
187
187
|
qualities: c.getQualities(),
|
|
188
|
+
textTracks: c.getTextTracks(),
|
|
188
189
|
streamInfo: c.getStreamInfo(),
|
|
189
190
|
});
|
|
190
191
|
}
|
|
@@ -215,7 +216,18 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
215
216
|
|
|
216
217
|
u.push(
|
|
217
218
|
controller.on("timeUpdate", ({ currentTime, duration }) => {
|
|
218
|
-
|
|
219
|
+
const next: Partial<PlayerControllerHostState> = {
|
|
220
|
+
currentTime,
|
|
221
|
+
duration,
|
|
222
|
+
shouldShowControls: controller.shouldShowControls(),
|
|
223
|
+
};
|
|
224
|
+
if (this.s.qualities.length === 0) {
|
|
225
|
+
const qualities = controller.getQualities();
|
|
226
|
+
if (qualities.length > 0) {
|
|
227
|
+
next.qualities = qualities;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
this.update(next);
|
|
219
231
|
this.dispatchEvent("fw-time-update", { currentTime, duration });
|
|
220
232
|
})
|
|
221
233
|
);
|
|
@@ -248,8 +260,10 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
248
260
|
currentPlayerInfo: controller.getCurrentPlayerInfo(),
|
|
249
261
|
currentSourceInfo: controller.getCurrentSourceInfo(),
|
|
250
262
|
qualities: controller.getQualities(),
|
|
263
|
+
textTracks: controller.getTextTracks(),
|
|
251
264
|
});
|
|
252
265
|
this.dispatchEvent("fw-ready", { videoElement });
|
|
266
|
+
this.syncState();
|
|
253
267
|
|
|
254
268
|
const handleVideoEvent = () => {
|
|
255
269
|
if (this.controller?.shouldSuppressVideoEvents?.()) return;
|
|
@@ -274,7 +288,9 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
274
288
|
currentPlayerInfo: controller.getCurrentPlayerInfo(),
|
|
275
289
|
currentSourceInfo: { url: source.url, type: source.type },
|
|
276
290
|
qualities: controller.getQualities(),
|
|
291
|
+
textTracks: controller.getTextTracks(),
|
|
277
292
|
});
|
|
293
|
+
this.syncState();
|
|
278
294
|
})
|
|
279
295
|
);
|
|
280
296
|
|
|
@@ -334,7 +350,7 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
334
350
|
|
|
335
351
|
u.push(
|
|
336
352
|
controller.on("captionsChange", ({ enabled }) => {
|
|
337
|
-
this.update({ subtitlesEnabled: enabled });
|
|
353
|
+
this.update({ subtitlesEnabled: enabled, textTracks: controller.getTextTracks() });
|
|
338
354
|
})
|
|
339
355
|
);
|
|
340
356
|
|
|
@@ -428,18 +444,51 @@ export class PlayerControllerHost implements ReactiveController {
|
|
|
428
444
|
selectQuality(id: string) {
|
|
429
445
|
this.controller?.selectQuality(id);
|
|
430
446
|
}
|
|
447
|
+
getTextTracks() {
|
|
448
|
+
return this.controller?.getTextTracks() ?? [];
|
|
449
|
+
}
|
|
450
|
+
selectTextTrack(id: string | null) {
|
|
451
|
+
this.controller?.selectTextTrack(id);
|
|
452
|
+
}
|
|
453
|
+
setPlaybackRate(rate: number) {
|
|
454
|
+
this.controller?.setPlaybackRate(rate);
|
|
455
|
+
}
|
|
456
|
+
getSeekableStart() {
|
|
457
|
+
return this.controller?.getSeekableStart() ?? 0;
|
|
458
|
+
}
|
|
459
|
+
getLiveEdge() {
|
|
460
|
+
return this.controller?.getLiveEdge() ?? 0;
|
|
461
|
+
}
|
|
462
|
+
canSeekStream() {
|
|
463
|
+
return this.controller?.canSeekStream() ?? false;
|
|
464
|
+
}
|
|
465
|
+
getBufferedRanges() {
|
|
466
|
+
return this.controller?.getBufferedRanges() ?? null;
|
|
467
|
+
}
|
|
468
|
+
async getStats() {
|
|
469
|
+
return this.controller?.getStats();
|
|
470
|
+
}
|
|
431
471
|
|
|
432
472
|
handleMouseEnter() {
|
|
433
473
|
this.controller?.handleMouseEnter();
|
|
474
|
+
this.update({ isHovering: true, shouldShowControls: true });
|
|
434
475
|
}
|
|
435
476
|
handleMouseLeave() {
|
|
436
477
|
this.controller?.handleMouseLeave();
|
|
478
|
+
this.update({
|
|
479
|
+
isHovering: false,
|
|
480
|
+
shouldShowControls: this.controller?.shouldShowControls() ?? false,
|
|
481
|
+
});
|
|
437
482
|
}
|
|
438
483
|
handleMouseMove() {
|
|
439
484
|
this.controller?.handleMouseMove();
|
|
485
|
+
if (this.controller) {
|
|
486
|
+
this.update({ shouldShowControls: this.controller.shouldShowControls() });
|
|
487
|
+
}
|
|
440
488
|
}
|
|
441
489
|
handleTouchStart() {
|
|
442
490
|
this.controller?.handleTouchStart();
|
|
491
|
+
this.update({ shouldShowControls: true });
|
|
443
492
|
}
|
|
444
493
|
|
|
445
494
|
async setDevModeOptions(options: {
|
package/src/define.ts
CHANGED
|
@@ -9,6 +9,10 @@ import { FwVolumeControl } from "./components/fw-volume-control.js";
|
|
|
9
9
|
import { FwSettingsMenu } from "./components/fw-settings-menu.js";
|
|
10
10
|
import { FwIdleScreen } from "./components/fw-idle-screen.js";
|
|
11
11
|
import { FwLoadingSpinner } from "./components/fw-loading-spinner.js";
|
|
12
|
+
import { FwLoadingScreen } from "./components/fw-loading-screen.js";
|
|
13
|
+
import { FwStreamStateOverlay } from "./components/fw-stream-state-overlay.js";
|
|
14
|
+
import { FwThumbnailOverlay } from "./components/fw-thumbnail-overlay.js";
|
|
15
|
+
import { FwDvdLogo } from "./components/fw-dvd-logo.js";
|
|
12
16
|
import { FwTitleOverlay } from "./components/fw-title-overlay.js";
|
|
13
17
|
import { FwErrorOverlay } from "./components/fw-error-overlay.js";
|
|
14
18
|
import { FwToast } from "./components/fw-toast.js";
|
|
@@ -32,6 +36,10 @@ safeDefine("fw-volume-control", FwVolumeControl);
|
|
|
32
36
|
safeDefine("fw-settings-menu", FwSettingsMenu);
|
|
33
37
|
safeDefine("fw-idle-screen", FwIdleScreen);
|
|
34
38
|
safeDefine("fw-loading-spinner", FwLoadingSpinner);
|
|
39
|
+
safeDefine("fw-loading-screen", FwLoadingScreen);
|
|
40
|
+
safeDefine("fw-stream-state-overlay", FwStreamStateOverlay);
|
|
41
|
+
safeDefine("fw-thumbnail-overlay", FwThumbnailOverlay);
|
|
42
|
+
safeDefine("fw-dvd-logo", FwDvdLogo);
|
|
35
43
|
safeDefine("fw-title-overlay", FwTitleOverlay);
|
|
36
44
|
safeDefine("fw-error-overlay", FwErrorOverlay);
|
|
37
45
|
safeDefine("fw-toast", FwToast);
|
package/src/iife-entry.ts
CHANGED
|
@@ -8,4 +8,8 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import "./define.js";
|
|
10
10
|
export { FwPlayer } from "./components/fw-player.js";
|
|
11
|
+
export { FwLoadingScreen } from "./components/fw-loading-screen.js";
|
|
12
|
+
export { FwIdleScreen } from "./components/fw-idle-screen.js";
|
|
13
|
+
export { FwStreamStateOverlay } from "./components/fw-stream-state-overlay.js";
|
|
14
|
+
export { FwThumbnailOverlay } from "./components/fw-thumbnail-overlay.js";
|
|
11
15
|
export { PlayerControllerHost } from "./controllers/player-controller-host.js";
|
package/src/index.ts
CHANGED
|
@@ -16,6 +16,10 @@ export { FwVolumeControl } from "./components/fw-volume-control.js";
|
|
|
16
16
|
export { FwSettingsMenu } from "./components/fw-settings-menu.js";
|
|
17
17
|
export { FwIdleScreen } from "./components/fw-idle-screen.js";
|
|
18
18
|
export { FwLoadingSpinner } from "./components/fw-loading-spinner.js";
|
|
19
|
+
export { FwLoadingScreen } from "./components/fw-loading-screen.js";
|
|
20
|
+
export { FwStreamStateOverlay } from "./components/fw-stream-state-overlay.js";
|
|
21
|
+
export { FwThumbnailOverlay } from "./components/fw-thumbnail-overlay.js";
|
|
22
|
+
export { FwDvdLogo } from "./components/fw-dvd-logo.js";
|
|
19
23
|
export { FwTitleOverlay } from "./components/fw-title-overlay.js";
|
|
20
24
|
export { FwErrorOverlay } from "./components/fw-error-overlay.js";
|
|
21
25
|
export { FwToast } from "./components/fw-toast.js";
|