From 539f3bc599f4df9784662ca2bf972a94edf556c4 Mon Sep 17 00:00:00 2001 From: Innei Date: Sun, 22 Sep 2024 15:42:37 +0800 Subject: [PATCH] fix: add lock when login button click Signed-off-by: Innei --- .../src/modules/auth/LoginModalContent.tsx | 80 ++++++++++++++++--- 1 file changed, 70 insertions(+), 10 deletions(-) diff --git a/apps/renderer/src/modules/auth/LoginModalContent.tsx b/apps/renderer/src/modules/auth/LoginModalContent.tsx index 726bb6d21..7578b39c4 100644 --- a/apps/renderer/src/modules/auth/LoginModalContent.tsx +++ b/apps/renderer/src/modules/auth/LoginModalContent.tsx @@ -1,8 +1,11 @@ -import { m } from "framer-motion" +import clsx from "clsx" +import { AnimatePresence, m } from "framer-motion" +import { useState } from "react" import { useTranslation } from "react-i18next" import { FollowIcon } from "~/components/icons/follow" -import { Button } from "~/components/ui/button" +import { MotionButtonBase } from "~/components/ui/button" +import { LoadingCircle } from "~/components/ui/loading" import { useCurrentModal } from "~/components/ui/modal" import { modalMontionConfig } from "~/components/ui/modal/stacked/constants" import type { LoginRuntime } from "~/lib/auth" @@ -20,6 +23,8 @@ export const LoginModalContent = (props: LoginModalContentProps) => { const { t } = useTranslation() + const [loadingLockSet, setLoadingLockSet] = useState(false) + return (
{
- - + + + {t("signin.continue_with_google")} + +
) } + +const LoginButtonContent = (props: { children: React.ReactNode; isLoading: boolean }) => { + const { children, isLoading } = props + return ( + + {isLoading ? ( + + + + ) : ( + + {children} + + )} + + ) +}