vidply 1.0.35 → 1.0.36
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/dev/vidply.esm.js +51 -0
- package/dist/dev/vidply.esm.js.map +2 -2
- package/dist/legacy/vidply.js +51 -0
- package/dist/legacy/vidply.js.map +2 -2
- package/dist/legacy/vidply.min.js +1 -1
- package/dist/legacy/vidply.min.meta.json +3 -3
- package/dist/prod/vidply.esm.min.js +3 -3
- package/dist/vidply.css +75 -0
- package/dist/vidply.esm.min.meta.json +3 -3
- package/dist/vidply.min.css +1 -1
- package/package.json +1 -1
- package/src/core/Player.js +74 -0
- package/src/styles/vidply.css +75 -0
package/src/styles/vidply.css
CHANGED
|
@@ -1717,9 +1717,84 @@
|
|
|
1717
1717
|
/* Fullscreen Styles */
|
|
1718
1718
|
.vidply-player.vidply-fullscreen,
|
|
1719
1719
|
.vidply-player:fullscreen {
|
|
1720
|
+
background: #000;
|
|
1720
1721
|
height: 100vh;
|
|
1721
1722
|
max-width: none;
|
|
1722
1723
|
width: 100vw;
|
|
1724
|
+
z-index: 2147483647; /* Maximum z-index to ensure we're above everything */
|
|
1725
|
+
}
|
|
1726
|
+
|
|
1727
|
+
/* Video wrapper also needs black background in fullscreen to prevent letterbox areas showing gray */
|
|
1728
|
+
.vidply-player.vidply-fullscreen .vidply-video-wrapper,
|
|
1729
|
+
.vidply-player:fullscreen .vidply-video-wrapper {
|
|
1730
|
+
background: #000 !important;
|
|
1731
|
+
}
|
|
1732
|
+
|
|
1733
|
+
/* Fullscreen backdrop - the pseudo-element behind the fullscreen element */
|
|
1734
|
+
.vidply-player:fullscreen::backdrop {
|
|
1735
|
+
background: #000;
|
|
1736
|
+
}
|
|
1737
|
+
|
|
1738
|
+
/* Webkit/Safari prefix for backdrop */
|
|
1739
|
+
.vidply-player:-webkit-full-screen::backdrop {
|
|
1740
|
+
background: #000;
|
|
1741
|
+
}
|
|
1742
|
+
|
|
1743
|
+
/* Hide fixed/sticky positioned elements when any vidply player is fullscreen */
|
|
1744
|
+
/* This ensures headers, nav bars, and other fixed elements don't appear above the player */
|
|
1745
|
+
:root:has(.vidply-player:fullscreen) .fixed-top,
|
|
1746
|
+
:root:has(.vidply-player:fullscreen) .fixed-bottom,
|
|
1747
|
+
:root:has(.vidply-player:fullscreen) .sticky-top,
|
|
1748
|
+
:root:has(.vidply-player:fullscreen) [style*="position: fixed"],
|
|
1749
|
+
:root:has(.vidply-player:fullscreen) [style*="position:fixed"] {
|
|
1750
|
+
display: none !important;
|
|
1751
|
+
}
|
|
1752
|
+
|
|
1753
|
+
/* Same for webkit fullscreen */
|
|
1754
|
+
:root:has(.vidply-player:-webkit-full-screen) .fixed-top,
|
|
1755
|
+
:root:has(.vidply-player:-webkit-full-screen) .fixed-bottom,
|
|
1756
|
+
:root:has(.vidply-player:-webkit-full-screen) .sticky-top,
|
|
1757
|
+
:root:has(.vidply-player:-webkit-full-screen) [style*="position: fixed"],
|
|
1758
|
+
:root:has(.vidply-player:-webkit-full-screen) [style*="position:fixed"] {
|
|
1759
|
+
display: none !important;
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
/* Fallback: Also hide elements when pseudo-fullscreen class is applied (for iOS/Safari fallback) */
|
|
1763
|
+
:root:has(.vidply-player.vidply-fullscreen) .fixed-top,
|
|
1764
|
+
:root:has(.vidply-player.vidply-fullscreen) .fixed-bottom,
|
|
1765
|
+
:root:has(.vidply-player.vidply-fullscreen) .sticky-top {
|
|
1766
|
+
display: none !important;
|
|
1767
|
+
}
|
|
1768
|
+
|
|
1769
|
+
/* Additional fallback using body class for browsers that don't support :has() */
|
|
1770
|
+
body.vidply-fullscreen-active .fixed-top,
|
|
1771
|
+
body.vidply-fullscreen-active .fixed-bottom,
|
|
1772
|
+
body.vidply-fullscreen-active .sticky-top,
|
|
1773
|
+
body.vidply-fullscreen-active [class*="fixed-"] {
|
|
1774
|
+
display: none !important;
|
|
1775
|
+
}
|
|
1776
|
+
|
|
1777
|
+
/* Set body and html to black background when in fullscreen */
|
|
1778
|
+
body.vidply-fullscreen-active,
|
|
1779
|
+
html:has(body.vidply-fullscreen-active) {
|
|
1780
|
+
background: #000 !important;
|
|
1781
|
+
}
|
|
1782
|
+
|
|
1783
|
+
/* Also target when :has() is supported */
|
|
1784
|
+
body:has(.vidply-player.vidply-fullscreen),
|
|
1785
|
+
html:has(.vidply-player.vidply-fullscreen) {
|
|
1786
|
+
background: #000 !important;
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
/* Hide all other video players when one is in fullscreen mode */
|
|
1790
|
+
/* This prevents stacking context issues where other players show through */
|
|
1791
|
+
body.vidply-fullscreen-active .vidply-player:not(.vidply-fullscreen) {
|
|
1792
|
+
visibility: hidden !important;
|
|
1793
|
+
}
|
|
1794
|
+
|
|
1795
|
+
/* Same rule using :has() for browsers that support it */
|
|
1796
|
+
body:has(.vidply-player.vidply-fullscreen) .vidply-player:not(.vidply-fullscreen) {
|
|
1797
|
+
visibility: hidden !important;
|
|
1723
1798
|
}
|
|
1724
1799
|
|
|
1725
1800
|
/* Pseudo-fullscreen for iOS and browsers without Fullscreen API support */
|