From bb57421e9878e8c00636c357afb80eff563ba263 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Thu, 10 Oct 2024 01:29:18 -0700 Subject: added diff historical to channel card, fix channel card CD alignment on sm devices --- src/components/Countdown.tsx | 117 +++++++++++++++++++++++-------------------- 1 file changed, 62 insertions(+), 55 deletions(-) (limited to 'src/components/Countdown.tsx') diff --git a/src/components/Countdown.tsx b/src/components/Countdown.tsx index a7af166..51b11af 100644 --- a/src/components/Countdown.tsx +++ b/src/components/Countdown.tsx @@ -1,70 +1,77 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState } from "react"; interface CountdownProps { - targetDate: string; + targetDate: string; } const Countdown: React.FC = ({ targetDate }) => { - const calculateTimeLeft = () => { - const difference = new Date(targetDate).getTime() - new Date().getTime(); - let timeLeft = { - days: '0', - hours: '0', - minutes: '0', - seconds: '0', - }; + const calculateTimeLeft = () => { + const difference = + new Date(targetDate).getTime() - new Date().getTime(); + let timeLeft = { + days: "0", + hours: "0", + minutes: "0", + seconds: "0", + }; - if (difference > 0) { - timeLeft = { - days: Math.floor(difference / (1000 * 60 * 60 * 24)).toString(), - hours: Math.floor((difference / (1000 * 60 * 60)) % 24).toString(), - minutes: Math.floor((difference / 1000 / 60) % 60).toString(), - seconds: Math.floor((difference / 1000) % 60).toString(), - }; - } + if (difference > 0) { + timeLeft = { + days: Math.floor(difference / (1000 * 60 * 60 * 24)).toString(), + hours: Math.floor( + (difference / (1000 * 60 * 60)) % 24, + ).toString(), + minutes: Math.floor((difference / 1000 / 60) % 60).toString(), + seconds: Math.floor((difference / 1000) % 60).toString(), + }; + } - return timeLeft; - }; + return timeLeft; + }; - const [timeLeft, setTimeLeft] = useState({ - days: '--', - hours: '--', - minutes: '--', - seconds: '--', - }); + const [timeLeft, setTimeLeft] = useState({ + days: "--", + hours: "--", + minutes: "--", + seconds: "--", + }); - useEffect(() => { - setTimeLeft(calculateTimeLeft()); + useEffect(() => { + setTimeLeft(calculateTimeLeft()); - const timer = setInterval(() => { - setTimeLeft(calculateTimeLeft()); - }, 1000); + const timer = setInterval(() => { + setTimeLeft(calculateTimeLeft()); + }, 1000); - return () => clearInterval(timer); - }, [targetDate]); + return () => clearInterval(timer); + }, [targetDate]); - return ( -
-
-
-
{timeLeft.days}
-
Days
-
-
-
{timeLeft.hours}
-
Hours
-
-
-
{timeLeft.minutes}
-
Minutes
-
-
-
{timeLeft.seconds}
-
Seconds
+ return ( +
+
+
+
{timeLeft.days}
+
Days
+
+
+
{timeLeft.hours}
+
Hours
+
+
+
+ {timeLeft.minutes} +
+
Minutes
+
+
+
+ {timeLeft.seconds} +
+
Seconds
+
+
-
-
- ); + ); }; -export default Countdown; \ No newline at end of file +export default Countdown; -- cgit v1.2.3