unified-video-framework 1.4.401 → 1.4.403

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.401",
3
+ "version": "1.4.403",
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",
@@ -22,6 +22,7 @@ export declare class GoogleAdsManager {
22
22
  private isAdPlaying;
23
23
  private isMuted;
24
24
  private unmuteButton;
25
+ private adSafetyTimeout;
25
26
  constructor(video: HTMLVideoElement, adContainer: HTMLElement, config: GoogleAdsConfig);
26
27
  private setupFocusHandler;
27
28
  initialize(): Promise<void>;
@@ -42,6 +43,7 @@ export declare class GoogleAdsManager {
42
43
  private toggleAdMute;
43
44
  private resumeAdPlayback;
44
45
  private hideUnmuteButton;
46
+ private forceHideAdContainer;
45
47
  destroy(): void;
46
48
  }
47
49
  //# sourceMappingURL=GoogleAdsManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleAdsManager.d.ts","sourceRoot":"","sources":["../../src/ads/GoogleAdsManager.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,eAAe;IAE9B,QAAQ,EAAE,MAAM,CAAC;IAIjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAGxB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAGH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAC/C;AAED,qBAAa,gBAAgB;IAC3B,SAAS,CAAC,KAAK,EAAE,gBAAgB,CAAC;IAClC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC;IAClC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,YAAY,CAA4B;gBAEpC,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe;IAYtF,OAAO,CAAC,iBAAiB;IAuBnB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,cAAc;IAqCtB,UAAU,IAAI,IAAI;IAoClB,sBAAsB,IAAI,IAAI;IAW9B,OAAO,CAAC,kBAAkB;IA0D1B,OAAO,CAAC,wBAAwB;IAsIhC,OAAO,CAAC,SAAS;IAmBjB,KAAK,IAAI,IAAI;IASb,MAAM,IAAI,IAAI;IASd,IAAI,IAAI,IAAI;IASZ,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI;IAyB3D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAS/B,WAAW,IAAI,OAAO;IAOtB,OAAO,CAAC,gBAAgB;IAwGxB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,IAAI,IAAI;CAehB"}
1
+ {"version":3,"file":"GoogleAdsManager.d.ts","sourceRoot":"","sources":["../../src/ads/GoogleAdsManager.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,eAAe;IAE9B,QAAQ,EAAE,MAAM,CAAC;IAIjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAGxB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAGH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAC/C;AAED,qBAAa,gBAAgB;IAC3B,SAAS,CAAC,KAAK,EAAE,gBAAgB,CAAC;IAClC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC;IAClC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,eAAe,CAAa;gBAExB,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe;IAYtF,OAAO,CAAC,iBAAiB;IAuBnB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,cAAc;IAqCtB,UAAU,IAAI,IAAI;IAoClB,sBAAsB,IAAI,IAAI;IAW9B,OAAO,CAAC,kBAAkB;IA0D1B,OAAO,CAAC,wBAAwB;IA6JhC,OAAO,CAAC,SAAS;IAkCjB,KAAK,IAAI,IAAI;IASb,MAAM,IAAI,IAAI;IASd,IAAI,IAAI,IAAI;IASZ,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI;IAyB3D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAS/B,WAAW,IAAI,OAAO;IAOtB,OAAO,CAAC,gBAAgB;IAwGxB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,oBAAoB;IA8C5B,OAAO,IAAI,IAAI;CAehB"}
@@ -6,6 +6,7 @@ export class GoogleAdsManager {
6
6
  this.isAdPlaying = false;
7
7
  this.isMuted = true;
8
8
  this.unmuteButton = null;
9
+ this.adSafetyTimeout = null;
9
10
  this.video = video;
10
11
  this.adContainer = adContainer;
11
12
  this.config = config;
@@ -151,16 +152,33 @@ export class GoogleAdsManager {
151
152
  };
152
153
  this.video.addEventListener('play', preventPlayDuringAd);
153
154
  this.video.__adPlayBlocker = preventPlayDuringAd;
155
+ this.adSafetyTimeout = setTimeout(() => {
156
+ if (this.isAdPlaying) {
157
+ console.warn('⚠️ Ad safety timeout triggered - forcing ad container to hide');
158
+ this.forceHideAdContainer();
159
+ }
160
+ }, 120000);
154
161
  this.config.onAdStart?.();
155
162
  });
156
163
  this.adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, () => {
157
164
  console.log('Ad: Content resume');
158
165
  this.isAdPlaying = false;
166
+ if (this.adSafetyTimeout) {
167
+ clearTimeout(this.adSafetyTimeout);
168
+ this.adSafetyTimeout = null;
169
+ }
159
170
  const preventPlayDuringAd = this.video.__adPlayBlocker;
160
171
  if (preventPlayDuringAd) {
161
172
  this.video.removeEventListener('play', preventPlayDuringAd);
162
173
  delete this.video.__adPlayBlocker;
163
174
  }
175
+ if (this.adContainer) {
176
+ this.adContainer.style.visibility = 'hidden';
177
+ this.adContainer.style.opacity = '0';
178
+ this.adContainer.style.pointerEvents = 'none';
179
+ this.adContainer.style.zIndex = '1';
180
+ console.log('✅ Ad container hidden - video visible again');
181
+ }
164
182
  this.config.onAdEnd?.();
165
183
  this.video.play().catch(() => { });
166
184
  });
@@ -200,9 +218,20 @@ export class GoogleAdsManager {
200
218
  const error = event.getError?.();
201
219
  console.error('Ad error:', error?.getMessage?.() || error);
202
220
  this.config.onAdError?.(error);
221
+ if (this.adSafetyTimeout) {
222
+ clearTimeout(this.adSafetyTimeout);
223
+ this.adSafetyTimeout = null;
224
+ }
203
225
  if (this.adsManager) {
204
226
  this.adsManager.destroy();
205
227
  }
228
+ if (this.adContainer) {
229
+ this.adContainer.style.visibility = 'hidden';
230
+ this.adContainer.style.opacity = '0';
231
+ this.adContainer.style.pointerEvents = 'none';
232
+ this.adContainer.style.zIndex = '1';
233
+ console.log('✅ Ad container hidden after error - video visible again');
234
+ }
206
235
  this.isAdPlaying = false;
207
236
  this.video.play().catch(() => { });
208
237
  }
@@ -389,6 +418,36 @@ export class GoogleAdsManager {
389
418
  this.unmuteButton = null;
390
419
  }
391
420
  }
421
+ forceHideAdContainer() {
422
+ console.warn('🚨 Force hiding ad container and resuming video');
423
+ this.isAdPlaying = false;
424
+ if (this.adSafetyTimeout) {
425
+ clearTimeout(this.adSafetyTimeout);
426
+ this.adSafetyTimeout = null;
427
+ }
428
+ const preventPlayDuringAd = this.video.__adPlayBlocker;
429
+ if (preventPlayDuringAd) {
430
+ this.video.removeEventListener('play', preventPlayDuringAd);
431
+ delete this.video.__adPlayBlocker;
432
+ }
433
+ if (this.adContainer) {
434
+ this.adContainer.style.visibility = 'hidden';
435
+ this.adContainer.style.opacity = '0';
436
+ this.adContainer.style.pointerEvents = 'none';
437
+ this.adContainer.style.zIndex = '1';
438
+ console.log('✅ Ad container force-hidden');
439
+ }
440
+ if (this.adsManager) {
441
+ try {
442
+ this.adsManager.destroy();
443
+ }
444
+ catch (e) {
445
+ console.warn('Failed to destroy ads manager:', e);
446
+ }
447
+ }
448
+ this.video.play().catch(() => { });
449
+ this.config.onAdEnd?.();
450
+ }
392
451
  destroy() {
393
452
  this.hideUnmuteButton();
394
453
  if (this.adsManager) {
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleAdsManager.js","sourceRoot":"","sources":["../../src/ads/GoogleAdsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleAdsManager.js","sourceRoot":"","sources":["../../src/ads/GoogleAdsManager.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ export class GoogleAdsManager {
43
43
  private isAdPlaying = false;
44
44
  private isMuted = true;
45
45
  private unmuteButton: HTMLElement | null = null;
46
+ private adSafetyTimeout: any = null;
46
47
 
47
48
  constructor(video: HTMLVideoElement, adContainer: HTMLElement, config: GoogleAdsConfig) {
48
49
  this.video = video;
@@ -288,6 +289,14 @@ export class GoogleAdsManager {
288
289
  // Store cleanup function to remove listener later
289
290
  (this.video as any).__adPlayBlocker = preventPlayDuringAd;
290
291
 
292
+ // ✅ Safety timeout: Force hide ad container after 120 seconds if ad gets stuck
293
+ this.adSafetyTimeout = setTimeout(() => {
294
+ if (this.isAdPlaying) {
295
+ console.warn('⚠️ Ad safety timeout triggered - forcing ad container to hide');
296
+ this.forceHideAdContainer();
297
+ }
298
+ }, 120000); // 120 seconds = 2 minutes max ad length
299
+
291
300
  this.config.onAdStart?.();
292
301
  }
293
302
  );
@@ -299,6 +308,12 @@ export class GoogleAdsManager {
299
308
  console.log('Ad: Content resume');
300
309
  this.isAdPlaying = false;
301
310
 
311
+ // ✅ Clear safety timeout
312
+ if (this.adSafetyTimeout) {
313
+ clearTimeout(this.adSafetyTimeout);
314
+ this.adSafetyTimeout = null;
315
+ }
316
+
302
317
  // Remove play blocker
303
318
  const preventPlayDuringAd = (this.video as any).__adPlayBlocker;
304
319
  if (preventPlayDuringAd) {
@@ -306,6 +321,15 @@ export class GoogleAdsManager {
306
321
  delete (this.video as any).__adPlayBlocker;
307
322
  }
308
323
 
324
+ // ✅ Hide ad container to show video again
325
+ if (this.adContainer) {
326
+ this.adContainer.style.visibility = 'hidden';
327
+ this.adContainer.style.opacity = '0';
328
+ this.adContainer.style.pointerEvents = 'none';
329
+ this.adContainer.style.zIndex = '1';
330
+ console.log('✅ Ad container hidden - video visible again');
331
+ }
332
+
309
333
  this.config.onAdEnd?.();
310
334
  this.video.play().catch(() => { });
311
335
  }
@@ -393,11 +417,26 @@ export class GoogleAdsManager {
393
417
 
394
418
  this.config.onAdError?.(error);
395
419
 
420
+ // ✅ Clear safety timeout
421
+ if (this.adSafetyTimeout) {
422
+ clearTimeout(this.adSafetyTimeout);
423
+ this.adSafetyTimeout = null;
424
+ }
425
+
396
426
  // Destroy ads manager on error
397
427
  if (this.adsManager) {
398
428
  this.adsManager.destroy();
399
429
  }
400
430
 
431
+ // ✅ Hide ad container on error
432
+ if (this.adContainer) {
433
+ this.adContainer.style.visibility = 'hidden';
434
+ this.adContainer.style.opacity = '0';
435
+ this.adContainer.style.pointerEvents = 'none';
436
+ this.adContainer.style.zIndex = '1';
437
+ console.log('✅ Ad container hidden after error - video visible again');
438
+ }
439
+
401
440
  // Resume content playback
402
441
  this.isAdPlaying = false;
403
442
  this.video.play().catch(() => { });
@@ -647,6 +686,52 @@ export class GoogleAdsManager {
647
686
  }
648
687
  }
649
688
 
689
+ /**
690
+ * Force hide ad container (safety mechanism)
691
+ */
692
+ private forceHideAdContainer(): void {
693
+ console.warn('🚨 Force hiding ad container and resuming video');
694
+
695
+ this.isAdPlaying = false;
696
+
697
+ // Clear safety timeout
698
+ if (this.adSafetyTimeout) {
699
+ clearTimeout(this.adSafetyTimeout);
700
+ this.adSafetyTimeout = null;
701
+ }
702
+
703
+ // Remove play blocker
704
+ const preventPlayDuringAd = (this.video as any).__adPlayBlocker;
705
+ if (preventPlayDuringAd) {
706
+ this.video.removeEventListener('play', preventPlayDuringAd);
707
+ delete (this.video as any).__adPlayBlocker;
708
+ }
709
+
710
+ // Hide ad container
711
+ if (this.adContainer) {
712
+ this.adContainer.style.visibility = 'hidden';
713
+ this.adContainer.style.opacity = '0';
714
+ this.adContainer.style.pointerEvents = 'none';
715
+ this.adContainer.style.zIndex = '1';
716
+ console.log('✅ Ad container force-hidden');
717
+ }
718
+
719
+ // Destroy stuck ads manager
720
+ if (this.adsManager) {
721
+ try {
722
+ this.adsManager.destroy();
723
+ } catch (e) {
724
+ console.warn('Failed to destroy ads manager:', e);
725
+ }
726
+ }
727
+
728
+ // Resume video
729
+ this.video.play().catch(() => { });
730
+
731
+ // Notify callback
732
+ this.config.onAdEnd?.();
733
+ }
734
+
650
735
  /**
651
736
  * Cleanup
652
737
  */