histories slider after 100% video swipe

This commit is contained in:
2024-03-26 16:56:30 +05:00
parent 6ef83b13a1
commit 41b49c43ac
+8 -13
View File
@@ -54,13 +54,15 @@ const Histories = () => {
const [_document, setDocument] = useState<Document>();
function handleOnLeftMove(): void {
if (offset < 0) {
if (selectedVideo > 0) {
setSelectedVideo((prev) => prev - 1);
setOffset((prev) => prev + 1);
}
}
function handleOnRightMove(): void {
if (offset > -2) {
if (selectedVideo < 2) {
setSelectedVideo((prev) => prev + 1);
setOffset((prev) => prev - 1);
}
}
@@ -91,14 +93,6 @@ const Histories = () => {
}
}, [_document]);
useEffect(() => {
if (offset !== 0) {
setSelectedVideo(offset * -1);
} else {
setSelectedVideo(0);
}
}, [offset]);
useEffect(() => {
videoRefs.forEach((video, index) => {
if (!video.current) return;
@@ -136,12 +130,13 @@ const Histories = () => {
}, [selectedVideo, videoRefs]);
useEffect(() => {
const _offset = offset;
if (100 - 3 < videoProgress) {
if (_offset === -1 * videoRefs.length - 1) {
if (offset <= -1 * videoRefs.length + 1) {
setOffset(0);
setSelectedVideo(0);
} else {
setOffset((prev) => prev - 1);
setSelectedVideo((prev) => prev + 1);
}
}
}, [videoProgress]);
@@ -204,7 +199,7 @@ const Histories = () => {
<div
className="flex gap-4 w-full h-full transition-all duration-300 ease-in-out 2xl:pl-10 xl:pl-8 sm:pl-3 xl:pb-10 sm:pb-[25px] "
style={{
transform: `translateX(${offset * cardWidth}px)`,
transform: `translateX(${-selectedVideo * cardWidth}px)`,
}}
>
{videos.map((video, index) => (