unified-video-framework 1.4.163 → 1.4.165

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.163",
3
+ "version": "1.4.165",
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",
@@ -28,6 +28,7 @@ export declare class WebPlayer extends BasePlayer {
28
28
  private currentSubtitle;
29
29
  private currentPlaybackRate;
30
30
  private isDragging;
31
+ private isSettingsOpen;
31
32
  private settingsConfig;
32
33
  private watermarkCanvas;
33
34
  private playerWrapper;
@@ -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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"}
@@ -21,6 +21,7 @@ export class WebPlayer extends BasePlayer {
21
21
  this.currentSubtitle = 'off';
22
22
  this.currentPlaybackRate = 1;
23
23
  this.isDragging = false;
24
+ this.isSettingsOpen = false;
24
25
  this.settingsConfig = {
25
26
  enabled: true,
26
27
  speed: true,
@@ -3930,244 +3931,61 @@ export class WebPlayer extends BasePlayer {
3930
3931
  }
3931
3932
 
3932
3933
  /* Enhanced Responsive Media Queries with UX Best Practices */
3933
- /* Mobile Portrait Layout - CENTERED PLAYER with TOP/BOTTOM BLACK AREAS */
3934
+ /* Mobile devices (portrait) - Enhanced UX with Safe Areas */
3934
3935
  @media screen and (max-width: 767px) and (orientation: portrait) {
3935
- /* CENTERED LAYOUT: 25% top black + 50% player + 25% bottom black */
3936
3936
  .uvf-responsive-container {
3937
- display: flex;
3938
- flex-direction: column;
3939
- height: 100vh;
3940
- height: 100dvh;
3941
- background: #000;
3942
- overflow: hidden;
3943
- position: fixed;
3944
- top: 0;
3945
- left: 0;
3946
- width: 100vw;
3947
3937
  padding: 0;
3938
+ width: 100vw !important;
3939
+ height: calc(100vh - var(--uvf-safe-area-top) - var(--uvf-safe-area-bottom));
3948
3940
  margin: 0;
3941
+ position: relative;
3942
+ overflow: hidden;
3949
3943
  }
3950
3944
 
3951
- /* TOP BLACK AREA - 25% of viewport - COMPLETELY EMPTY */
3952
- .uvf-responsive-container::before {
3953
- content: '';
3954
- flex: 0 0 25vh;
3955
- background: #000;
3956
- pointer-events: none;
3957
- }
3958
-
3959
- /* BOTTOM BLACK AREA - 25% of viewport - COMPLETELY EMPTY */
3960
- .uvf-responsive-container::after {
3961
- content: '';
3962
- flex: 0 0 25vh;
3963
- background: #000;
3964
- pointer-events: none;
3945
+ @supports (height: 100dvh) {
3946
+ .uvf-responsive-container {
3947
+ height: calc(100dvh - var(--uvf-safe-area-top) - var(--uvf-safe-area-bottom));
3948
+ }
3965
3949
  }
3966
3950
 
3967
- /* CENTERED VIDEO PLAYER WRAPPER - 50% of viewport */
3968
3951
  .uvf-responsive-container .uvf-player-wrapper {
3969
- flex: 1; /* Takes remaining 50% */
3970
- width: 100vw;
3971
- display: flex;
3972
- align-items: center;
3973
- justify-content: center;
3974
- background: #000;
3975
- position: relative;
3976
- overflow: hidden; /* CRITICAL: Ensure nothing extends beyond this area */
3952
+ width: 100vw !important;
3953
+ height: 100% !important;
3954
+ min-height: calc(100vh - var(--uvf-safe-area-top) - var(--uvf-safe-area-bottom));
3977
3955
  }
3978
3956
 
3979
- /* Video container fills player wrapper */
3980
- .uvf-responsive-container .uvf-video-container {
3981
- width: 100%;
3982
- height: 100%;
3983
- position: relative;
3984
- background: #000;
3985
- border-radius: 0;
3986
- overflow: hidden;
3957
+ @supports (height: 100dvh) {
3958
+ .uvf-responsive-container .uvf-player-wrapper {
3959
+ min-height: calc(100dvh - var(--uvf-safe-area-top) - var(--uvf-safe-area-bottom));
3960
+ }
3987
3961
  }
3988
3962
 
3989
- /* Video element fills container */
3990
- .uvf-responsive-container .uvf-video {
3991
- width: 100%;
3992
- height: 100%;
3993
- object-fit: contain;
3994
- background: #000;
3963
+ .uvf-responsive-container .uvf-video-container {
3964
+ width: 100vw !important;
3965
+ height: 100% !important;
3966
+ aspect-ratio: unset !important;
3967
+ min-height: inherit;
3995
3968
  }
3996
3969
 
3997
- /* CONTROLS STRICTLY CONTAINED WITHIN VIDEO AREA - NEVER EXTEND TO BLACK AREAS */
3970
+ /* Enhanced mobile controls bar with safe area padding - iOS Safari specific fixes */
3998
3971
  .uvf-controls-bar {
3999
3972
  position: absolute !important;
4000
- /* Keep controls INSIDE video container with margins from all edges */
4001
- bottom: 20px !important; /* 20px margin from video bottom */
4002
- left: 16px !important; /* 16px margin from video left */
4003
- right: 16px !important; /* 16px margin from video right */
4004
- top: auto !important;
4005
- background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.7) 60%, transparent 100%);
4006
- padding: 12px 16px;
4007
- border-radius: 12px;
4008
- z-index: 1000;
4009
- /* Ensure controls are visible and contained */
4010
- opacity: 1 !important;
4011
- visibility: visible !important;
4012
- display: flex !important;
4013
- flex-direction: column !important;
4014
- /* Hardware acceleration */
4015
- -webkit-transform: translate3d(0,0,0);
4016
- transform: translate3d(0,0,0);
4017
- /* CRITICAL: Prevent any overflow into black areas */
4018
- max-height: calc(100% - 40px); /* Leave 20px margin from top and bottom */
4019
- max-width: calc(100% - 32px); /* Leave 16px margin from left and right */
4020
- box-sizing: border-box;
4021
- /* Visual containment indicators */
4022
- border: 1px solid rgba(255, 255, 255, 0.1);
4023
- backdrop-filter: blur(10px);
4024
- contain: layout style paint; /* CSS containment */
4025
- }
4026
-
4027
- /* Force controls and all child elements to stay within video container */
4028
- .uvf-responsive-container .uvf-controls-bar {
4029
- opacity: 1 !important;
4030
- visibility: visible !important;
4031
- transform: translateY(0) !important;
4032
- pointer-events: auto !important;
4033
- /* Ensure no child elements extend beyond container */
4034
- contain: layout style paint;
4035
- }
4036
-
4037
- /* Ensure all child elements of controls stay within bounds */
4038
- .uvf-responsive-container .uvf-controls-bar * {
4039
- max-width: 100%;
3973
+ bottom: 0 !important;
3974
+ left: 0 !important;
3975
+ right: 0 !important;
3976
+ padding: 16px 12px;
3977
+ padding-bottom: calc(16px + var(--uvf-safe-area-bottom, 0px));
3978
+ padding-left: calc(12px + var(--uvf-safe-area-left, 0px));
3979
+ padding-right: calc(12px + var(--uvf-safe-area-right, 0px));
3980
+ background: linear-gradient(to top, var(--uvf-overlay-strong) 0%, var(--uvf-overlay-medium) 80%, var(--uvf-overlay-transparent) 100%);
4040
3981
  box-sizing: border-box;
4041
- }
4042
-
4043
- /* Progress section contained within controls */
4044
- .uvf-progress-section {
4045
- width: 100%;
4046
- margin-bottom: 8px;
4047
- opacity: 1 !important;
4048
- visibility: visible !important;
4049
- display: block !important;
4050
- }
4051
-
4052
- /* Progress bar styling */
4053
- .uvf-progress-bar-wrapper {
4054
- opacity: 1 !important;
4055
- visibility: visible !important;
4056
- }
4057
-
4058
- .uvf-progress-bar {
4059
- height: 4px;
4060
- background: rgba(255, 255, 255, 0.3);
4061
- border-radius: 2px;
4062
- }
4063
-
4064
- .uvf-progress-filled {
4065
- background: var(--uvf-accent-1, #8B5CF6);
4066
- height: 100%;
4067
- border-radius: 2px;
4068
- }
4069
-
4070
- /* Controls row alignment - ensure visibility */
4071
- .uvf-controls-row {
4072
- width: 100%;
4073
- display: flex !important;
4074
- align-items: center;
4075
- justify-content: flex-start;
4076
- gap: 12px;
4077
- opacity: 1 !important;
4078
- visibility: visible !important;
4079
- margin-top: 8px;
4080
- }
4081
-
4082
- /* Time display visibility */
4083
- .uvf-time-display {
4084
- color: #fff;
4085
- font-size: 12px;
4086
- font-weight: 500;
4087
- opacity: 1 !important;
4088
- visibility: visible !important;
4089
- display: block !important;
4090
- }
4091
-
4092
- /* Control buttons visibility */
4093
- .uvf-control-btn {
4094
- min-width: 44px;
4095
- min-height: 44px;
4096
- display: flex !important;
4097
- align-items: center;
4098
- justify-content: center;
4099
- border-radius: 50%;
4100
- background: rgba(255, 255, 255, 0.1);
4101
- backdrop-filter: blur(8px);
4102
- color: #fff;
4103
- opacity: 1 !important;
4104
- visibility: visible !important;
4105
- transition: all 0.2s ease;
4106
- }
4107
-
4108
- .uvf-control-btn:active {
4109
- transform: scale(0.95);
4110
- background: rgba(255, 255, 255, 0.2);
4111
- }
4112
-
4113
- /* Play/pause button prominence */
4114
- .uvf-control-btn.play-pause {
4115
- background: linear-gradient(135deg, var(--uvf-accent-1), var(--uvf-accent-2));
4116
- min-width: 52px;
4117
- min-height: 52px;
4118
- box-shadow: 0 2px 8px rgba(0,0,0,0.3);
4119
- }
4120
-
4121
- .uvf-control-btn.play-pause:active {
4122
- transform: scale(0.92);
4123
- box-shadow: 0 1px 4px rgba(0,0,0,0.4);
4124
- }
4125
-
4126
- .uvf-control-btn svg {
4127
- fill: #fff;
4128
- opacity: 1;
4129
- }
4130
-
4131
- /* Right controls */
4132
- .uvf-right-controls {
4133
- margin-left: auto;
4134
- display: flex !important;
4135
- align-items: center;
4136
- gap: 8px;
4137
- opacity: 1 !important;
4138
- visibility: visible !important;
4139
- }
4140
-
4141
- /* Center play button positioned within video */
4142
- .uvf-center-play-container {
4143
- position: absolute;
4144
- top: 50%;
4145
- left: 50%;
4146
- transform: translate(-50%, -50%);
4147
- z-index: 8;
4148
- pointer-events: none;
4149
- }
4150
-
4151
- .uvf-center-play-btn {
4152
- pointer-events: auto;
4153
- }
4154
-
4155
- /* Top controls within video */
4156
- .uvf-top-controls {
4157
- position: absolute;
4158
- top: calc(12px + var(--uvf-safe-area-top));
4159
- right: calc(16px + var(--uvf-safe-area-right));
4160
- z-index: 9;
4161
- }
4162
-
4163
- /* Title bar within video */
4164
- .uvf-title-bar {
4165
- position: absolute;
4166
- top: calc(12px + var(--uvf-safe-area-top));
4167
- left: calc(16px + var(--uvf-safe-area-left));
4168
- right: calc(80px + var(--uvf-safe-area-right));
4169
- z-index: 9;
4170
- padding: 8px 0;
3982
+ z-index: 1000 !important;
3983
+ /* iOS Safari specific fixes */
3984
+ transform: translateZ(0);
3985
+ -webkit-transform: translateZ(0);
3986
+ will-change: transform;
3987
+ /* Ensure proper stacking */
3988
+ isolation: isolate;
4171
3989
  }
4172
3990
 
4173
3991
  .uvf-progress-section {
@@ -5932,7 +5750,12 @@ export class WebPlayer extends BasePlayer {
5932
5750
  this.debugLog('Settings menu classes before toggle:', Array.from(settingsMenu?.classList || []).join(' '));
5933
5751
  settingsMenu?.classList.toggle('active');
5934
5752
  if (settingsMenu) {
5935
- if (settingsMenu.classList.contains('active')) {
5753
+ const activating = settingsMenu.classList.contains('active');
5754
+ if (activating) {
5755
+ this.isSettingsOpen = true;
5756
+ this.showControls();
5757
+ if (this.hideControlsTimeout)
5758
+ clearTimeout(this.hideControlsTimeout);
5936
5759
  settingsMenu.style.display = 'block';
5937
5760
  settingsMenu.style.visibility = 'visible';
5938
5761
  settingsMenu.style.opacity = '1';
@@ -5949,10 +5772,12 @@ export class WebPlayer extends BasePlayer {
5949
5772
  this.debugLog('Applied fallback styles to show menu');
5950
5773
  }
5951
5774
  else {
5775
+ this.isSettingsOpen = false;
5952
5776
  settingsMenu.style.display = 'none';
5953
5777
  settingsMenu.style.visibility = 'hidden';
5954
5778
  settingsMenu.style.opacity = '0';
5955
5779
  this.debugLog('Applied fallback styles to hide menu');
5780
+ this.scheduleHideControls();
5956
5781
  }
5957
5782
  }
5958
5783
  this.debugLog('Settings menu classes after toggle:', Array.from(settingsMenu?.classList || []).join(' '));
@@ -5980,6 +5805,19 @@ export class WebPlayer extends BasePlayer {
5980
5805
  this.hideSettingsMenu();
5981
5806
  }
5982
5807
  });
5808
+ if (settingsMenu) {
5809
+ const keepAlive = () => {
5810
+ if (!this.isSettingsOpen)
5811
+ return;
5812
+ this.showControls();
5813
+ if (this.hideControlsTimeout)
5814
+ clearTimeout(this.hideControlsTimeout);
5815
+ };
5816
+ settingsMenu.addEventListener('mouseenter', keepAlive);
5817
+ settingsMenu.addEventListener('mousemove', keepAlive);
5818
+ settingsMenu.addEventListener('touchstart', keepAlive, { passive: true });
5819
+ settingsMenu.addEventListener('touchmove', keepAlive, { passive: true });
5820
+ }
5983
5821
  document.addEventListener('keydown', (e) => {
5984
5822
  if (e.key === 'Escape' && settingsMenu?.classList.contains('active')) {
5985
5823
  this.hideSettingsMenu();
@@ -6533,6 +6371,8 @@ export class WebPlayer extends BasePlayer {
6533
6371
  hideControls() {
6534
6372
  if (!this.state.isPlaying)
6535
6373
  return;
6374
+ if (this.isSettingsOpen)
6375
+ return;
6536
6376
  const wrapper = this.container?.querySelector('.uvf-player-wrapper');
6537
6377
  if (wrapper) {
6538
6378
  wrapper.classList.remove('controls-visible');
@@ -6542,11 +6382,13 @@ export class WebPlayer extends BasePlayer {
6542
6382
  scheduleHideControls() {
6543
6383
  if (!this.state.isPlaying)
6544
6384
  return;
6385
+ if (this.isSettingsOpen)
6386
+ return;
6545
6387
  if (this.hideControlsTimeout)
6546
6388
  clearTimeout(this.hideControlsTimeout);
6547
6389
  const timeout = this.isFullscreen() ? 4000 : 3000;
6548
6390
  this.hideControlsTimeout = setTimeout(() => {
6549
- if (this.state.isPlaying && !this.controlsContainer?.matches(':hover')) {
6391
+ if (this.state.isPlaying && !this.controlsContainer?.matches(':hover') && !this.isSettingsOpen) {
6550
6392
  this.hideControls();
6551
6393
  }
6552
6394
  }, timeout);
@@ -7583,6 +7425,7 @@ export class WebPlayer extends BasePlayer {
7583
7425
  if (!settingsMenu)
7584
7426
  return;
7585
7427
  settingsMenu.classList.remove('active');
7428
+ this.isSettingsOpen = false;
7586
7429
  settingsMenu.style.display = 'none';
7587
7430
  settingsMenu.style.visibility = 'hidden';
7588
7431
  settingsMenu.style.opacity = '0';
@@ -7590,6 +7433,7 @@ export class WebPlayer extends BasePlayer {
7590
7433
  item.classList.remove('expanded');
7591
7434
  });
7592
7435
  this.debugLog('Settings menu hidden via hideSettingsMenu()');
7436
+ this.scheduleHideControls();
7593
7437
  }
7594
7438
  updateAccordionAfterSelection(section) {
7595
7439
  setTimeout(() => {