softbuilders-react-video-player 1.3.13 → 1.3.14
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/components/BufferTracker/index.js +8 -6
- package/dist/components/BufferTracker/index.js.map +1 -1
- package/dist/components/BufferTracker/index.tsx +7 -5
- package/dist/components/CurrentTimeTracker/index.js +3 -3
- package/dist/components/CurrentTimeTracker/index.js.map +1 -1
- package/dist/components/CurrentTimeTracker/index.tsx +3 -3
- package/dist/components/VolumeSlider/index.js +21 -10
- package/dist/components/VolumeSlider/index.js.map +1 -1
- package/dist/components/VolumeSlider/index.tsx +29 -16
- package/dist/index.mjs +15 -14
- package/package.json +1 -1
|
@@ -4,12 +4,14 @@ import { useSoftBuildersVideoPlayerContext } from "../VideoPlayerComponent/provi
|
|
|
4
4
|
const BufferTracker = () => {
|
|
5
5
|
const { player, setDownloadedBufferTimeufferTime } = useSoftBuildersVideoPlayerContext();
|
|
6
6
|
useEffect(() => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
if (player && typeof player.bufferedEnd === "function") {
|
|
8
|
+
const intervalId = setInterval(() => {
|
|
9
|
+
if (player)
|
|
10
|
+
setDownloadedBufferTimeufferTime(player === null || player === void 0 ? void 0 : player.bufferedEnd());
|
|
11
|
+
}, 1000);
|
|
12
|
+
// Cleanup function to clear the interval
|
|
13
|
+
return () => clearInterval(intervalId);
|
|
14
|
+
}
|
|
13
15
|
}, [player]);
|
|
14
16
|
return _jsx(_Fragment, {});
|
|
15
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/BufferTracker/index.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,aAAa,GAAG,GAAG,EAAE;IACzB,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,GAChD,iCAAiC,EAAE,CAAC;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/BufferTracker/index.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,aAAa,GAAG,GAAG,EAAE;IACzB,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,GAChD,iCAAiC,EAAE,CAAC;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;YACvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;gBAClC,IAAI,MAAM;oBAAE,gCAAgC,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,CAAC,CAAC;YACtE,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,yCAAyC;YACzC,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,mBAAK,CAAC;AACf,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -6,12 +6,14 @@ const BufferTracker = () => {
|
|
|
6
6
|
useSoftBuildersVideoPlayerContext();
|
|
7
7
|
|
|
8
8
|
useEffect(() => {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
if (player && typeof player.bufferedEnd === "function") {
|
|
10
|
+
const intervalId = setInterval(() => {
|
|
11
|
+
if (player) setDownloadedBufferTimeufferTime(player?.bufferedEnd());
|
|
12
|
+
}, 1000);
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
// Cleanup function to clear the interval
|
|
15
|
+
return () => clearInterval(intervalId);
|
|
16
|
+
}
|
|
15
17
|
}, [player]);
|
|
16
18
|
return <></>;
|
|
17
19
|
};
|
|
@@ -4,10 +4,10 @@ import { useSoftBuildersVideoPlayerContext } from "../VideoPlayerComponent/provi
|
|
|
4
4
|
const CurrentTimeTracker = () => {
|
|
5
5
|
const { setCurrentTime, player } = useSoftBuildersVideoPlayerContext();
|
|
6
6
|
useEffect(() => {
|
|
7
|
-
if (player) {
|
|
7
|
+
if (player && typeof player.currentTime === "function") {
|
|
8
8
|
const intervalId = setInterval(() => {
|
|
9
|
-
|
|
10
|
-
? setCurrentTime(
|
|
9
|
+
player.currentTime
|
|
10
|
+
? setCurrentTime(player === null || player === void 0 ? void 0 : player.currentTime())
|
|
11
11
|
: setCurrentTime(0);
|
|
12
12
|
}, 500);
|
|
13
13
|
// Cleanup function to clear the interval
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CurrentTimeTracker/index.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,iCAAiC,EAAE,CAAC;IAEvE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CurrentTimeTracker/index.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,iCAAiC,EAAE,CAAC;IAEvE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;YACvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;gBAClC,MAAM,CAAC,WAAW;oBAChB,CAAC,CAAC,cAAc,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,CAAC;oBACvC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,yCAAyC;YACzC,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,mBAAK,CAAC;AACf,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -5,10 +5,10 @@ const CurrentTimeTracker = () => {
|
|
|
5
5
|
const { setCurrentTime, player } = useSoftBuildersVideoPlayerContext();
|
|
6
6
|
|
|
7
7
|
useEffect(() => {
|
|
8
|
-
if (player) {
|
|
8
|
+
if (player && typeof player.currentTime === "function") {
|
|
9
9
|
const intervalId = setInterval(() => {
|
|
10
|
-
player
|
|
11
|
-
? setCurrentTime(player?.currentTime()
|
|
10
|
+
player.currentTime
|
|
11
|
+
? setCurrentTime(player?.currentTime())
|
|
12
12
|
: setCurrentTime(0);
|
|
13
13
|
}, 500);
|
|
14
14
|
|
|
@@ -10,11 +10,21 @@ const VolumeSlider = ({ width = 0, setIsSeeking, handleControlDisplayTimer, volu
|
|
|
10
10
|
const [volume, setVolume] = useState(0);
|
|
11
11
|
const [isClicked, setClicked] = useState(false);
|
|
12
12
|
// Sync volume state with player's volume and mute states
|
|
13
|
+
// const updateVolumeState = () => {
|
|
14
|
+
// if (player?.muted && player?.volume) {
|
|
15
|
+
// const currentVolume = player?.muted()
|
|
16
|
+
// ? 0
|
|
17
|
+
// : Number(player?.volume() || 0) * 100;
|
|
18
|
+
// setVolume(currentVolume);
|
|
19
|
+
// }
|
|
20
|
+
// };
|
|
13
21
|
const updateVolumeState = () => {
|
|
14
|
-
if (
|
|
15
|
-
|
|
22
|
+
if (player &&
|
|
23
|
+
typeof player.muted === "function" &&
|
|
24
|
+
typeof player.volume === "function") {
|
|
25
|
+
const currentVolume = player.muted()
|
|
16
26
|
? 0
|
|
17
|
-
: Number(
|
|
27
|
+
: Number(player.volume() || 0) * 100;
|
|
18
28
|
setVolume(currentVolume);
|
|
19
29
|
}
|
|
20
30
|
};
|
|
@@ -22,15 +32,16 @@ const VolumeSlider = ({ width = 0, setIsSeeking, handleControlDisplayTimer, volu
|
|
|
22
32
|
if (player) {
|
|
23
33
|
// Initial volume setup
|
|
24
34
|
updateVolumeState();
|
|
35
|
+
const handleVolumeChange = () => updateVolumeState();
|
|
25
36
|
// Listen for volume changes
|
|
26
|
-
|
|
37
|
+
// player?.on("volumechange", updateVolumeState);
|
|
38
|
+
player.on("volumechange", handleVolumeChange);
|
|
39
|
+
// Cleanup event listener on unmount
|
|
40
|
+
return () => {
|
|
41
|
+
// player?.off("volumechange", updateVolumeState);
|
|
42
|
+
player.off("volumechange", handleVolumeChange);
|
|
43
|
+
};
|
|
27
44
|
}
|
|
28
|
-
// Cleanup event listener on unmount
|
|
29
|
-
return () => {
|
|
30
|
-
if (player) {
|
|
31
|
-
player === null || player === void 0 ? void 0 : player.off("volumechange", updateVolumeState);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
45
|
}, [player]);
|
|
35
46
|
const handleVolumeSliderClick = (e) => {
|
|
36
47
|
e.stopPropagation();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/VolumeSlider/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEzE,MAAM,GAAG,GAAG,CAAC,EACX,GAAG,GAAG,GAAG,CAAC;AAWZ,MAAM,YAAY,GAAG,CAAC,EACpB,KAAK,GAAG,CAAC,EACT,YAAY,EACZ,yBAAyB,EACzB,mBAAmB,EACnB,SAAS,EACT,WAAW,GACL,EAAE,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,GAAG,iCAAiC,EAAE,CAAC;IACvD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,yDAAyD;IACzD,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/VolumeSlider/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEzE,MAAM,GAAG,GAAG,CAAC,EACX,GAAG,GAAG,GAAG,CAAC;AAWZ,MAAM,YAAY,GAAG,CAAC,EACpB,KAAK,GAAG,CAAC,EACT,YAAY,EACZ,yBAAyB,EACzB,mBAAmB,EACnB,SAAS,EACT,WAAW,GACL,EAAE,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,GAAG,iCAAiC,EAAE,CAAC;IACvD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,yDAAyD;IACzD,oCAAoC;IACpC,2CAA2C;IAC3C,4CAA4C;IAC5C,YAAY;IACZ,+CAA+C;IAC/C,gCAAgC;IAChC,MAAM;IACN,KAAK;IAEL,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,IACE,MAAM;YACN,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU;YAClC,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EACnC,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,EAAE;gBAClC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;YACvC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE,CAAC;YACX,uBAAuB;YACvB,iBAAiB,EAAE,CAAC;YAEpB,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;YAErD,4BAA4B;YAC5B,iDAAiD;YACjD,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAC9C,oCAAoC;YACpC,OAAO,GAAG,EAAE;gBACV,kDAAkD;gBAClD,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YACjD,CAAC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,MAAM,uBAAuB,GAAG,CAAC,CAAmC,EAAE,EAAE;QACtE,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC;QACZ,IAAI,SAAS,CAAC;QACd,IAAI,CAAC,SAAS,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAClC,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;YAC/B,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAC5C,CAAC;QAED,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;QAEhC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,CAAmC,EAAE,EAAE;QAC1D,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC;YAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC;YACZ,IAAI,SAAS,CAAC;YACd,IAAI,CAAC,SAAS,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;gBAC9B,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;gBAClC,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;gBAC/B,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;YAC5C,CAAC;YAED,SAAS,CAAC,SAAS,CAAC,CAAC;YACrB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;YAEhC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACpB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAM,IAAI,CAAC,CAAC;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,MAAM,gBAAgB,GAAG,CAAC,CAAM,EAAE,EAAE;QAClC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,yBAAyB,CAAC,CAAC,CAAC,CAAC;QAE7B,YAAY,CAAC,SAAS,CAAC,CAAC;QACxB,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,SAAS,CAAC,EAAE,CAAC,CAAC;YACd,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACpB,MAAM,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,KAAK,CAAC,CAAA,CAAC;QACjC,CAAC;QACD,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACnC,UAAU,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,EAAE,IAAI,CAAC,CAAC;QACX,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,MAAM,iBAAiB,GAAG,CAAC,CAAsC,EAAE,EAAE;QACnE,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,mCAAmC;QAEpE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,IAAI,CAAC,CAAA,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,KAAK,CAAC,CAAA,CAAC;QACjC,CAAC;IACH,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,CAAC,CAAmC,EAAE,EAAE;QAChE,SAAS,CAAC,CAAC,CAAC,CAAC;QACb,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,OAAO,CACL,eACE,SAAS,EAAE,WAAW,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KACvC,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,IAAI,CAAC,IAAI,CAAC,SAAS;YAC3D,CAAC,CAAC,qBAAqB;YACvB,CAAC,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EACxD,qCAAqC,aAGrC,cACE,SAAS,EAAE,uBACT,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,KAAK,CAAC,IAAI,SAAS;oBAC3D,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,UACN,EAAE,EACF,OAAO,EAAE,gBAAgB,EACzB,aAAa,EAAE,iBAAiB,YAE/B,MAAM;oBACL,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CACb,KAAC,UAAU,IACT,SAAS,EAAE,iBACT,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,KAAK,CAAC,IAAI,SAAS;4BAC3D,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EACN,gBAAgB,GAChB,CACH,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAChB,KAAC,UAAU,IACT,SAAS,EAAE,iBACT,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,KAAK,CAAC,IAAI,SAAS;4BAC3D,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EACN,gBAAgB,GAChB,CACH,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAChB,KAAC,SAAS,IACR,SAAS,EAAE,iBACT,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,KAAK,CAAC,IAAI,SAAS;4BAC3D,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EACN,gBAAgB,GACL,CACd,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IACT,SAAS,EAAE,iBACT,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,KAAK,CAAC,IAAI,SAAS;4BAC3D,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,EACN,gBAAgB,GACJ,CACf,CAAC,GACA,EAGN,cAAK,SAAS,EAAC,4CAA4C,YAEzD,cACE,SAAS,EAAE,sDACT,SAAS;wBACP,CAAC,CAAC,uCAAuC;wBACzC,CAAC,CAAC,uCACN,IACE,CAAC,KAAK,GAAG,GAAG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAK,IAAI,CAAC,IAAI,CAAC,SAAS;wBAC3D,CAAC,CAAC,iCAAiC;wBACnC,CAAC,CAAC,+BACN,cAAc,YAEd,KAAC,MAAM,IACL,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,iBAAiB,EAAE,iBAAiB,EACpC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,WAAW,EACrB,iBAAiB,EAAE,uBAAuB,EAC1C,UAAU,EAAE,UAAU,GACtB,GACE,GACF,IACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useEffect, useState } from "react";
|
|
2
2
|
import Slider from "../Slider";
|
|
3
|
-
import { useSoftBuildersVideoPlayerContext } from "../VideoPlayerComponent/provider";
|
|
4
|
-
import { VolumeHigh, VolumeLow, VolumeMute, VolumeVLow } from "../icons";
|
|
3
|
+
import { useSoftBuildersVideoPlayerContext } from "../VideoPlayerComponent/provider";
|
|
4
|
+
import { VolumeHigh, VolumeLow, VolumeMute, VolumeVLow } from "../icons";
|
|
5
5
|
|
|
6
6
|
const MIN = 0,
|
|
7
7
|
MAX = 100;
|
|
@@ -29,11 +29,24 @@ const VolumeSlider = ({
|
|
|
29
29
|
const [isClicked, setClicked] = useState(false);
|
|
30
30
|
|
|
31
31
|
// Sync volume state with player's volume and mute states
|
|
32
|
+
// const updateVolumeState = () => {
|
|
33
|
+
// if (player?.muted && player?.volume) {
|
|
34
|
+
// const currentVolume = player?.muted()
|
|
35
|
+
// ? 0
|
|
36
|
+
// : Number(player?.volume() || 0) * 100;
|
|
37
|
+
// setVolume(currentVolume);
|
|
38
|
+
// }
|
|
39
|
+
// };
|
|
40
|
+
|
|
32
41
|
const updateVolumeState = () => {
|
|
33
|
-
if (
|
|
34
|
-
|
|
42
|
+
if (
|
|
43
|
+
player &&
|
|
44
|
+
typeof player.muted === "function" &&
|
|
45
|
+
typeof player.volume === "function"
|
|
46
|
+
) {
|
|
47
|
+
const currentVolume = player.muted()
|
|
35
48
|
? 0
|
|
36
|
-
: Number(player
|
|
49
|
+
: Number(player.volume() || 0) * 100;
|
|
37
50
|
setVolume(currentVolume);
|
|
38
51
|
}
|
|
39
52
|
};
|
|
@@ -43,15 +56,17 @@ const VolumeSlider = ({
|
|
|
43
56
|
// Initial volume setup
|
|
44
57
|
updateVolumeState();
|
|
45
58
|
|
|
59
|
+
const handleVolumeChange = () => updateVolumeState();
|
|
60
|
+
|
|
46
61
|
// Listen for volume changes
|
|
47
|
-
player?.on("volumechange", updateVolumeState);
|
|
62
|
+
// player?.on("volumechange", updateVolumeState);
|
|
63
|
+
player.on("volumechange", handleVolumeChange);
|
|
64
|
+
// Cleanup event listener on unmount
|
|
65
|
+
return () => {
|
|
66
|
+
// player?.off("volumechange", updateVolumeState);
|
|
67
|
+
player.off("volumechange", handleVolumeChange);
|
|
68
|
+
};
|
|
48
69
|
}
|
|
49
|
-
// Cleanup event listener on unmount
|
|
50
|
-
return () => {
|
|
51
|
-
if (player) {
|
|
52
|
-
player?.off("volumechange", updateVolumeState);
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
70
|
}, [player]);
|
|
56
71
|
const handleVolumeSliderClick = (e: React.MouseEvent<HTMLDivElement>) => {
|
|
57
72
|
e.stopPropagation();
|
|
@@ -169,7 +184,7 @@ const VolumeSlider = ({
|
|
|
169
184
|
onDoubleClick={handleDoubleClick}
|
|
170
185
|
>
|
|
171
186
|
{player &&
|
|
172
|
-
(volume == 0
|
|
187
|
+
(volume == 0 ? (
|
|
173
188
|
<VolumeMute
|
|
174
189
|
className={`sb-w-3 sb-h-3 ${
|
|
175
190
|
(width < 400 && player?.isFullscreen_ === false) || isTrailer
|
|
@@ -219,9 +234,7 @@ const VolumeSlider = ({
|
|
|
219
234
|
} sb-relative`}
|
|
220
235
|
>
|
|
221
236
|
<Slider
|
|
222
|
-
onMouseMove={
|
|
223
|
-
onMouseMove
|
|
224
|
-
}
|
|
237
|
+
onMouseMove={onMouseMove}
|
|
225
238
|
setNoteOpen={setNoteOpen}
|
|
226
239
|
value={volume}
|
|
227
240
|
handleValueChange={handleValueChange}
|
package/dist/index.mjs
CHANGED
|
@@ -623,21 +623,20 @@ var VolumeSlider = ({
|
|
|
623
623
|
const [volume, setVolume] = useState2(0);
|
|
624
624
|
const [isClicked, setClicked] = useState2(false);
|
|
625
625
|
const updateVolumeState = () => {
|
|
626
|
-
if (
|
|
627
|
-
const currentVolume =
|
|
626
|
+
if (player && typeof player.muted === "function" && typeof player.volume === "function") {
|
|
627
|
+
const currentVolume = player.muted() ? 0 : Number(player.volume() || 0) * 100;
|
|
628
628
|
setVolume(currentVolume);
|
|
629
629
|
}
|
|
630
630
|
};
|
|
631
631
|
useEffect2(() => {
|
|
632
632
|
if (player) {
|
|
633
633
|
updateVolumeState();
|
|
634
|
-
|
|
634
|
+
const handleVolumeChange = () => updateVolumeState();
|
|
635
|
+
player.on("volumechange", handleVolumeChange);
|
|
636
|
+
return () => {
|
|
637
|
+
player.off("volumechange", handleVolumeChange);
|
|
638
|
+
};
|
|
635
639
|
}
|
|
636
|
-
return () => {
|
|
637
|
-
if (player) {
|
|
638
|
-
player == null ? void 0 : player.off("volumechange", updateVolumeState);
|
|
639
|
-
}
|
|
640
|
-
};
|
|
641
640
|
}, [player]);
|
|
642
641
|
const handleVolumeSliderClick = (e) => {
|
|
643
642
|
e.stopPropagation();
|
|
@@ -1370,10 +1369,12 @@ import { Fragment as Fragment2, jsx as jsx35 } from "react/jsx-runtime";
|
|
|
1370
1369
|
var BufferTracker = () => {
|
|
1371
1370
|
const { player, setDownloadedBufferTimeufferTime } = useSoftBuildersVideoPlayerContext();
|
|
1372
1371
|
useEffect10(() => {
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1372
|
+
if (player && typeof player.bufferedEnd === "function") {
|
|
1373
|
+
const intervalId = setInterval(() => {
|
|
1374
|
+
if (player) setDownloadedBufferTimeufferTime(player == null ? void 0 : player.bufferedEnd());
|
|
1375
|
+
}, 1e3);
|
|
1376
|
+
return () => clearInterval(intervalId);
|
|
1377
|
+
}
|
|
1377
1378
|
}, [player]);
|
|
1378
1379
|
return /* @__PURE__ */ jsx35(Fragment2, {});
|
|
1379
1380
|
};
|
|
@@ -1385,9 +1386,9 @@ import { Fragment as Fragment3, jsx as jsx36 } from "react/jsx-runtime";
|
|
|
1385
1386
|
var CurrentTimeTracker = () => {
|
|
1386
1387
|
const { setCurrentTime, player } = useSoftBuildersVideoPlayerContext();
|
|
1387
1388
|
useEffect11(() => {
|
|
1388
|
-
if (player) {
|
|
1389
|
+
if (player && typeof player.currentTime === "function") {
|
|
1389
1390
|
const intervalId = setInterval(() => {
|
|
1390
|
-
|
|
1391
|
+
player.currentTime ? setCurrentTime(player == null ? void 0 : player.currentTime()) : setCurrentTime(0);
|
|
1391
1392
|
}, 500);
|
|
1392
1393
|
return () => clearInterval(intervalId);
|
|
1393
1394
|
}
|