diff --git a/README.md b/README.md index 0529768..738839d 100644 --- a/README.md +++ b/README.md @@ -17,4 +17,7 @@ JWT_TTL_SECONDS=2592000 // 1Month UPSTASH_URL= UPSTASH_TOKEN= + +BETTER_AUTH_SECRET= +BETTER_AUTH_URL=http://localhost:3000 ``` diff --git a/app/components/settings/GoogleLogin.vue b/app/components/settings/GoogleLogin.vue index 3775f54..b35404b 100644 --- a/app/components/settings/GoogleLogin.vue +++ b/app/components/settings/GoogleLogin.vue @@ -6,59 +6,34 @@ PopoverRoot, PopoverTrigger, } from "reka-ui"; - import type { ImplicitFlowSuccessResponse } from "vue3-google-signin"; + import { useLoginID } from "~/composables/login/useLoginID"; import { useLoginImageUrl } from "~/composables/login/useLoginImageUrl"; - import { useLoginToken } from "~/composables/login/useLoginToken"; + import { authClient } from "~/utils/auth"; const { t } = useI18n(); - const token = useLoginToken(); + const id = useLoginID(); const userImage = useLoginImageUrl(); const isLoggedIn = computed(() => { - return !!token.value; + return !!id.value; }); - const { isReady, login } = useCodeClient({ - onSuccess: handleLoginSuccess, - onError: handleLoginError, - }); - - async function handleLoginSuccess(response: ImplicitFlowSuccessResponse) { - const code = response.code; - - const res = await $fetch("/api/auth/", { - method: "POST", - body: { code }, - ...useFetchOptions(), - }).catch(async (err) => { - //todo - show in toast - console.warn(err); - return undefined; + async function login() { + const data = await authClient.signIn.social({ + provider: "google", }); - - if (res) { - token.value = res.token; - } - } - - async function handleLoginError() { - console.error("Login failed"); } - function logout() { - token.value = undefined; + async function logout() { + await authClient.signOut(); }