unified-video-framework 1.4.246 → 1.4.247
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "unified-video-framework",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.247",
|
|
4
4
|
"description": "Cross-platform video player framework supporting iOS, Android, Web, Smart TVs (Samsung/LG), Roku, and more",
|
|
5
5
|
"main": "packages/core/dist/index.js",
|
|
6
6
|
"types": "packages/core/dist/index.d.ts",
|
|
@@ -109,6 +109,10 @@ export declare class WebPlayer extends BasePlayer {
|
|
|
109
109
|
private youtubePlayer;
|
|
110
110
|
private youtubePlayerReady;
|
|
111
111
|
private youtubeIframe;
|
|
112
|
+
private isYoutubePiPActive;
|
|
113
|
+
private youtubePiPContainer;
|
|
114
|
+
private youtubePiPOriginalParent;
|
|
115
|
+
private youtubePiPOriginalPosition;
|
|
112
116
|
private createYouTubePlayer;
|
|
113
117
|
private loadYouTubeAPI;
|
|
114
118
|
private waitForYouTubeAPI;
|
|
@@ -237,6 +241,8 @@ export declare class WebPlayer extends BasePlayer {
|
|
|
237
241
|
private setSpeed;
|
|
238
242
|
private setQualityByLabel;
|
|
239
243
|
private togglePiP;
|
|
244
|
+
private enterYoutubePiP;
|
|
245
|
+
private exitYoutubePiP;
|
|
240
246
|
private setupCastContextSafe;
|
|
241
247
|
private setupCastContext;
|
|
242
248
|
private enableCastRemoteControl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebPlayer.d.ts","sourceRoot":"","sources":["../src/WebPlayer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"WebPlayer.d.ts","sourceRoot":"","sources":["../src/WebPlayer.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,6 +93,10 @@ export class WebPlayer extends BasePlayer {
|
|
|
93
93
|
this.youtubePlayer = null;
|
|
94
94
|
this.youtubePlayerReady = false;
|
|
95
95
|
this.youtubeIframe = null;
|
|
96
|
+
this.isYoutubePiPActive = false;
|
|
97
|
+
this.youtubePiPContainer = null;
|
|
98
|
+
this.youtubePiPOriginalParent = null;
|
|
99
|
+
this.youtubePiPOriginalPosition = '';
|
|
96
100
|
this.youtubeTimeTrackingInterval = null;
|
|
97
101
|
this.clickToUnmuteHandler = null;
|
|
98
102
|
}
|
|
@@ -5563,10 +5567,18 @@ export class WebPlayer extends BasePlayer {
|
|
|
5563
5567
|
.ytp-endscreen-element,
|
|
5564
5568
|
.ytp-ce-element,
|
|
5565
5569
|
.ytp-suggested-action,
|
|
5566
|
-
.ytp-pause-overlay
|
|
5570
|
+
.ytp-pause-overlay,
|
|
5571
|
+
.ytp-endscreen,
|
|
5572
|
+
.ytp-videowall-still,
|
|
5573
|
+
.ytp-ce-covering-overlay,
|
|
5574
|
+
.ytp-ce-element-show,
|
|
5575
|
+
.ytp-cards-button,
|
|
5576
|
+
.ytp-cards-button-icon,
|
|
5577
|
+
.ytp-impression-link {
|
|
5567
5578
|
display: none !important;
|
|
5568
5579
|
visibility: hidden !important;
|
|
5569
5580
|
opacity: 0 !important;
|
|
5581
|
+
pointer-events: none !important;
|
|
5570
5582
|
}
|
|
5571
5583
|
|
|
5572
5584
|
/* Ultra-wide screens */
|
|
@@ -7820,9 +7832,17 @@ export class WebPlayer extends BasePlayer {
|
|
|
7820
7832
|
this.video.volume = Math.max(0, Math.min(1, this.video.volume + delta));
|
|
7821
7833
|
}
|
|
7822
7834
|
setSpeed(speed) {
|
|
7823
|
-
if (
|
|
7824
|
-
|
|
7825
|
-
|
|
7835
|
+
if (this.youtubePlayer && this.youtubePlayerReady) {
|
|
7836
|
+
try {
|
|
7837
|
+
this.youtubePlayer.setPlaybackRate(speed);
|
|
7838
|
+
}
|
|
7839
|
+
catch (error) {
|
|
7840
|
+
this.debugWarn('YouTube playback rate not supported:', error);
|
|
7841
|
+
}
|
|
7842
|
+
}
|
|
7843
|
+
else if (this.video) {
|
|
7844
|
+
this.video.playbackRate = speed;
|
|
7845
|
+
}
|
|
7826
7846
|
document.querySelectorAll('.speed-option').forEach(option => {
|
|
7827
7847
|
option.classList.remove('active');
|
|
7828
7848
|
if (parseFloat(option.dataset.speed || '1') === speed) {
|
|
@@ -7831,6 +7851,16 @@ export class WebPlayer extends BasePlayer {
|
|
|
7831
7851
|
});
|
|
7832
7852
|
}
|
|
7833
7853
|
setQualityByLabel(quality) {
|
|
7854
|
+
if (this.youtubePlayer && this.youtubePlayerReady) {
|
|
7855
|
+
this.showShortcutIndicator('Quality control not available for YouTube');
|
|
7856
|
+
document.querySelectorAll('.quality-option').forEach(option => {
|
|
7857
|
+
option.classList.remove('active');
|
|
7858
|
+
if (option.dataset.quality === 'auto') {
|
|
7859
|
+
option.classList.add('active');
|
|
7860
|
+
}
|
|
7861
|
+
});
|
|
7862
|
+
return;
|
|
7863
|
+
}
|
|
7834
7864
|
const qualityBadge = document.getElementById('uvf-quality-badge');
|
|
7835
7865
|
document.querySelectorAll('.quality-option').forEach(option => {
|
|
7836
7866
|
option.classList.remove('active');
|
|
@@ -7859,6 +7889,15 @@ export class WebPlayer extends BasePlayer {
|
|
|
7859
7889
|
}
|
|
7860
7890
|
async togglePiP() {
|
|
7861
7891
|
try {
|
|
7892
|
+
if (this.youtubePlayer && this.youtubePlayerReady) {
|
|
7893
|
+
if (this.isYoutubePiPActive) {
|
|
7894
|
+
await this.exitYoutubePiP();
|
|
7895
|
+
}
|
|
7896
|
+
else {
|
|
7897
|
+
await this.enterYoutubePiP();
|
|
7898
|
+
}
|
|
7899
|
+
return;
|
|
7900
|
+
}
|
|
7862
7901
|
if (document.pictureInPictureElement) {
|
|
7863
7902
|
await this.exitPictureInPicture();
|
|
7864
7903
|
}
|
|
@@ -7870,6 +7909,116 @@ export class WebPlayer extends BasePlayer {
|
|
|
7870
7909
|
console.error('PiP toggle failed:', error);
|
|
7871
7910
|
}
|
|
7872
7911
|
}
|
|
7912
|
+
async enterYoutubePiP() {
|
|
7913
|
+
try {
|
|
7914
|
+
const playerWrapper = this.playerWrapper || this.container?.querySelector('.uvf-player-wrapper');
|
|
7915
|
+
if (!playerWrapper) {
|
|
7916
|
+
this.showNotification('Player container not found');
|
|
7917
|
+
return;
|
|
7918
|
+
}
|
|
7919
|
+
this.youtubePiPOriginalParent = playerWrapper.parentElement;
|
|
7920
|
+
this.youtubePiPOriginalPosition = playerWrapper.getAttribute('style') || '';
|
|
7921
|
+
this.youtubePiPContainer = document.createElement('div');
|
|
7922
|
+
this.youtubePiPContainer.id = 'youtube-pip-container';
|
|
7923
|
+
this.youtubePiPContainer.style.cssText = `
|
|
7924
|
+
position: fixed;
|
|
7925
|
+
bottom: 20px;
|
|
7926
|
+
right: 20px;
|
|
7927
|
+
width: 400px;
|
|
7928
|
+
height: 225px;
|
|
7929
|
+
z-index: 9999;
|
|
7930
|
+
background: #000;
|
|
7931
|
+
border: 2px solid rgba(255, 255, 255, 0.3);
|
|
7932
|
+
border-radius: 8px;
|
|
7933
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
|
|
7934
|
+
cursor: grab;
|
|
7935
|
+
overflow: hidden;
|
|
7936
|
+
`;
|
|
7937
|
+
let isDragging = false;
|
|
7938
|
+
let offset = { x: 0, y: 0 };
|
|
7939
|
+
this.youtubePiPContainer.addEventListener('mousedown', (e) => {
|
|
7940
|
+
if (e.target.closest('.youtube-pip-controls'))
|
|
7941
|
+
return;
|
|
7942
|
+
isDragging = true;
|
|
7943
|
+
offset.x = e.clientX - this.youtubePiPContainer.getBoundingClientRect().left;
|
|
7944
|
+
offset.y = e.clientY - this.youtubePiPContainer.getBoundingClientRect().top;
|
|
7945
|
+
this.youtubePiPContainer.style.cursor = 'grabbing';
|
|
7946
|
+
});
|
|
7947
|
+
document.addEventListener('mousemove', (e) => {
|
|
7948
|
+
if (!isDragging || !this.youtubePiPContainer)
|
|
7949
|
+
return;
|
|
7950
|
+
this.youtubePiPContainer.style.left = (e.clientX - offset.x) + 'px';
|
|
7951
|
+
this.youtubePiPContainer.style.top = (e.clientY - offset.y) + 'px';
|
|
7952
|
+
});
|
|
7953
|
+
document.addEventListener('mouseup', () => {
|
|
7954
|
+
isDragging = false;
|
|
7955
|
+
if (this.youtubePiPContainer)
|
|
7956
|
+
this.youtubePiPContainer.style.cursor = 'grab';
|
|
7957
|
+
});
|
|
7958
|
+
const closeBtn = document.createElement('button');
|
|
7959
|
+
closeBtn.className = 'youtube-pip-controls';
|
|
7960
|
+
closeBtn.innerHTML = '✕';
|
|
7961
|
+
closeBtn.style.cssText = `
|
|
7962
|
+
position: absolute;
|
|
7963
|
+
top: 8px;
|
|
7964
|
+
right: 8px;
|
|
7965
|
+
width: 32px;
|
|
7966
|
+
height: 32px;
|
|
7967
|
+
background: rgba(255, 255, 255, 0.2);
|
|
7968
|
+
border: none;
|
|
7969
|
+
color: white;
|
|
7970
|
+
font-size: 18px;
|
|
7971
|
+
border-radius: 4px;
|
|
7972
|
+
cursor: pointer;
|
|
7973
|
+
z-index: 10000;
|
|
7974
|
+
transition: background 0.2s;
|
|
7975
|
+
`;
|
|
7976
|
+
closeBtn.addEventListener('hover', () => {
|
|
7977
|
+
closeBtn.style.background = 'rgba(255, 255, 255, 0.4)';
|
|
7978
|
+
});
|
|
7979
|
+
closeBtn.addEventListener('click', async () => {
|
|
7980
|
+
await this.exitYoutubePiP();
|
|
7981
|
+
});
|
|
7982
|
+
this.youtubePiPContainer.appendChild(playerWrapper);
|
|
7983
|
+
this.youtubePiPContainer.appendChild(closeBtn);
|
|
7984
|
+
document.body.appendChild(this.youtubePiPContainer);
|
|
7985
|
+
playerWrapper.style.width = '100%';
|
|
7986
|
+
playerWrapper.style.height = '100%';
|
|
7987
|
+
this.isYoutubePiPActive = true;
|
|
7988
|
+
this.showNotification('PiP mode active (drag to move)');
|
|
7989
|
+
this.debugLog('YouTube PiP mode enabled');
|
|
7990
|
+
}
|
|
7991
|
+
catch (error) {
|
|
7992
|
+
this.debugError('Failed to enter YouTube PiP:', error);
|
|
7993
|
+
this.showNotification('PiP mode failed');
|
|
7994
|
+
}
|
|
7995
|
+
}
|
|
7996
|
+
async exitYoutubePiP() {
|
|
7997
|
+
try {
|
|
7998
|
+
if (!this.youtubePiPContainer || !this.youtubePiPOriginalParent) {
|
|
7999
|
+
return;
|
|
8000
|
+
}
|
|
8001
|
+
const playerWrapper = this.playerWrapper || this.container?.querySelector('.uvf-player-wrapper');
|
|
8002
|
+
if (playerWrapper) {
|
|
8003
|
+
if (this.youtubePiPOriginalPosition) {
|
|
8004
|
+
playerWrapper.setAttribute('style', this.youtubePiPOriginalPosition);
|
|
8005
|
+
}
|
|
8006
|
+
else {
|
|
8007
|
+
playerWrapper.removeAttribute('style');
|
|
8008
|
+
}
|
|
8009
|
+
this.youtubePiPOriginalParent.appendChild(playerWrapper);
|
|
8010
|
+
}
|
|
8011
|
+
this.youtubePiPContainer.remove();
|
|
8012
|
+
this.youtubePiPContainer = null;
|
|
8013
|
+
this.youtubePiPOriginalParent = null;
|
|
8014
|
+
this.isYoutubePiPActive = false;
|
|
8015
|
+
this.showNotification('PiP mode closed');
|
|
8016
|
+
this.debugLog('YouTube PiP mode disabled');
|
|
8017
|
+
}
|
|
8018
|
+
catch (error) {
|
|
8019
|
+
this.debugError('Failed to exit YouTube PiP:', error);
|
|
8020
|
+
}
|
|
8021
|
+
}
|
|
7873
8022
|
setupCastContextSafe() {
|
|
7874
8023
|
try {
|
|
7875
8024
|
const castNs = window.cast;
|
|
@@ -8317,6 +8466,13 @@ export class WebPlayer extends BasePlayer {
|
|
|
8317
8466
|
}
|
|
8318
8467
|
detectAvailableSubtitles() {
|
|
8319
8468
|
this.availableSubtitles = [{ value: 'off', label: 'Off' }];
|
|
8469
|
+
if (this.youtubePlayer && this.youtubePlayerReady) {
|
|
8470
|
+
this.availableSubtitles.push({
|
|
8471
|
+
value: 'youtube-cc',
|
|
8472
|
+
label: 'YouTube Captions'
|
|
8473
|
+
});
|
|
8474
|
+
return;
|
|
8475
|
+
}
|
|
8320
8476
|
if (this.video?.textTracks) {
|
|
8321
8477
|
Array.from(this.video.textTracks).forEach((track, index) => {
|
|
8322
8478
|
if (track.kind === 'subtitles' || track.kind === 'captions') {
|
|
@@ -8563,6 +8719,26 @@ export class WebPlayer extends BasePlayer {
|
|
|
8563
8719
|
}
|
|
8564
8720
|
setSubtitle(subtitle) {
|
|
8565
8721
|
this.currentSubtitle = subtitle;
|
|
8722
|
+
if (this.youtubePlayer && this.youtubePlayerReady) {
|
|
8723
|
+
if (subtitle === 'off') {
|
|
8724
|
+
try {
|
|
8725
|
+
this.youtubePlayer.setOption('captions', 'fontSize', -1);
|
|
8726
|
+
}
|
|
8727
|
+
catch (e) {
|
|
8728
|
+
this.debugWarn('YouTube caption control limited:', e);
|
|
8729
|
+
}
|
|
8730
|
+
}
|
|
8731
|
+
else if (subtitle === 'youtube-cc') {
|
|
8732
|
+
try {
|
|
8733
|
+
this.youtubePlayer.setOption('captions', 'fontSize', 0);
|
|
8734
|
+
}
|
|
8735
|
+
catch (e) {
|
|
8736
|
+
this.debugWarn('YouTube caption control limited:', e);
|
|
8737
|
+
}
|
|
8738
|
+
}
|
|
8739
|
+
this.showShortcutIndicator('Subtitle language selection not available for YouTube');
|
|
8740
|
+
return;
|
|
8741
|
+
}
|
|
8566
8742
|
if (subtitle === 'off') {
|
|
8567
8743
|
if (this.video?.textTracks) {
|
|
8568
8744
|
Array.from(this.video.textTracks).forEach(track => {
|