"use client" import React, { createContext, useContext } from "react" import { useSocialSession } from "@/hooks/useSocialSession" /* eslint-disable formatjs/no-literal-string-in-jsx */ type SocialLoginContextType = { session: ReturnType["session"] refresh: ReturnType["refresh"] } const SocialLoginContext = createContext( undefined ) export function SocialLoginProvider({ children, }: { children: React.ReactNode }) { const { session: socialSession, refresh } = useSocialSession() return ( {process.env.NODE_ENV === "development" && ( <> Social login: {socialSession.data?.status}{" "} {socialSession?.data?.status === "expired" && ( <> Expires@{socialSession?.data.expiresAt}{" "} )} {socialSession?.data?.status === "valid" && ( <> Expires@{socialSession?.data.expiresAt}{" "} )} )} {children} ) } export function useSocialLogin() { const ctx = useContext(SocialLoginContext) if (!ctx) { throw new Error( "useSocialLogin must be used within SocialLoginContextProvider" ) } return ctx }