diff --git a/app/(auth)/auth/callback/[...provider]/page.tsx b/app/(auth)/auth/callback/[...provider]/page.tsx index e1c9e89..faca01d 100644 --- a/app/(auth)/auth/callback/[...provider]/page.tsx +++ b/app/(auth)/auth/callback/[...provider]/page.tsx @@ -1,9 +1,8 @@ import OauthCallbackHandler from "@/features/oauth-callback/pages/callbackHandler"; import React from "react"; -import { ParamProps } from "@/features/oauth-callback/types/ParamProps"; -const page = ({ params, searchParams }: ParamProps) => { - return ; +const page = () => { + return ; }; export default page; diff --git a/features/oauth-callback/lib/sendCallbackToServer.ts b/features/oauth-callback/lib/sendCallbackToServer.ts index 1ab5780..ee6ab4d 100644 --- a/features/oauth-callback/lib/sendCallbackToServer.ts +++ b/features/oauth-callback/lib/sendCallbackToServer.ts @@ -1,16 +1,13 @@ "use server"; import { api } from "@/shared/api/connector"; -export const SendCallbackToServer = async (data: Record) => { +export const SendCallbackToServer = async (data: string) => { try { - const response = await api.get("auth/google/callback", { - searchParams: { ...data }, - }); - + const response = await api.get(`auth/google/callback${data}`); const result = await response.json(); - console.log(result); + + return result; } catch (error) { - console.error("Error sending callback to server:", error); throw error; } }; diff --git a/features/oauth-callback/pages/callbackHandler.tsx b/features/oauth-callback/pages/callbackHandler.tsx index 7e729bb..e38ee3b 100644 --- a/features/oauth-callback/pages/callbackHandler.tsx +++ b/features/oauth-callback/pages/callbackHandler.tsx @@ -1,17 +1,12 @@ "use client"; -import { ParamProps } from "../types/ParamProps"; import { redirect } from "next/navigation"; import React, { useEffect, useState } from "react"; import SecurityCheckup from "@/shared/auth/ui/SecurityCheckup"; import SecurityCheckupFailed from "@/shared/auth/ui/SecurityCheckupFailed"; import LoadingProcess from "../ui/LoadingProcess"; -const OauthCallbackHandler = ({ - callbackData, -}: { - callbackData: ParamProps; -}) => { +const OauthCallbackHandler = () => { /** * Create a lit component that will be used in popp, consisting of 3 component flows: * 1. When the user opens it, a browser environment check will be performed. @@ -21,7 +16,7 @@ const OauthCallbackHandler = ({ const componentFlowList = { securityCheckup: , securityCheckupFailed: , - proceedCallback: , + proceedCallback: , }; // State to set the current page component diff --git a/features/oauth-callback/types/ParamProps.ts b/features/oauth-callback/types/ParamProps.ts index a2161f3..a0c74af 100644 --- a/features/oauth-callback/types/ParamProps.ts +++ b/features/oauth-callback/types/ParamProps.ts @@ -1,4 +1,9 @@ export interface ParamProps { params: { provider: string[] }; - searchParams: { [key: string]: string | string[] | undefined }; + searchParams: + | string + | string[][] + | Record + | URLSearchParams + | undefined; } diff --git a/features/oauth-callback/ui/LoadingProcess.tsx b/features/oauth-callback/ui/LoadingProcess.tsx index fe0748c..d873dcf 100644 --- a/features/oauth-callback/ui/LoadingProcess.tsx +++ b/features/oauth-callback/ui/LoadingProcess.tsx @@ -1,22 +1,21 @@ "use client"; import { CircularProgress } from "@heroui/react"; -import React, { useEffect } from "react"; -import { ParamProps } from "../types/ParamProps"; +import React, { useEffect, useRef } from "react"; import { SendCallbackToServer } from "../lib/sendCallbackToServer"; -const LoadingProcess = ({ callbackData }: { callbackData: ParamProps }) => { +const LoadingProcess = () => { + const calledRef = useRef(false); useEffect(() => { + if (calledRef.current) return; + calledRef.current = true; + (async () => { try { - const response = await SendCallbackToServer(callbackData); - console.log( - `Callback data sent to server successfully: ${JSON.stringify( - response - )}` - ); + await SendCallbackToServer(window.location.search); + window.close(); } catch (error) { - console.error("Error during loading process:", error); + console.log(error); } })(); }, []); @@ -28,9 +27,6 @@ const LoadingProcess = ({ callbackData }: { callbackData: ParamProps }) => {

Your request is being processed

-

- {JSON.stringify(callbackData)} -

); diff --git a/shared/api/connector.ts b/shared/api/connector.ts index 4f008f6..aceb73a 100644 --- a/shared/api/connector.ts +++ b/shared/api/connector.ts @@ -8,4 +8,5 @@ export const api = ky.create({ headers: { access_token: process.env.MAIN_BACKEND_API_KEY, }, + retry: 0, });