From ff7c981f2f1e1504b955fc52ab6c9011159bfdda Mon Sep 17 00:00:00 2001 From: Kamran Ahmed <kamranahmed.se@gmail.com> Date: Thu, 10 Apr 2025 18:32:19 +0100 Subject: [PATCH] Add loading delay --- src/components/SQLCourse/BuyButton.tsx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/components/SQLCourse/BuyButton.tsx b/src/components/SQLCourse/BuyButton.tsx index 7ad5941e5..6071e18da 100644 --- a/src/components/SQLCourse/BuyButton.tsx +++ b/src/components/SQLCourse/BuyButton.tsx @@ -38,13 +38,14 @@ type BuyButtonProps = { export function BuyButton(props: BuyButtonProps) { const { variant = 'main' } = props; + const [isFakeLoading, setIsFakeLoading] = useState(true); const [isLoginPopupOpen, setIsLoginPopupOpen] = useState(false); const [isVideoModalOpen, setIsVideoModalOpen] = useState(false); const toast = useToast(); const isTesting = getUrlParams()['testing'] === '1'; - const { data: coursePricing, isLoading: isLoadingCourse } = useQuery( + const { data: coursePricing, isLoading: isLoadingPrice } = useQuery( coursePriceOptions({ courseSlug: SQL_COURSE_SLUG }), queryClient, ); @@ -138,8 +139,17 @@ export function BuyButton(props: BuyButtonProps) { deleteUrlParam(COURSE_PURCHASE_SUCCESS_PARAM); }, []); + useEffect(() => { + const timer = setTimeout(() => { + setIsFakeLoading(false); + }, 500); + + return () => clearTimeout(timer); + }, []); + const isLoadingPricing = - isLoadingCourse || + isFakeLoading || + isLoadingPrice || !coursePricing || isLoadingCourseProgress || isCreatingCheckoutSession;