diff --git a/packages/nextjs/src/middleware/utils/getAuthData.ts b/packages/nextjs/src/middleware/utils/getAuthData.ts index 7c1b8cd620..951501be3a 100644 --- a/packages/nextjs/src/middleware/utils/getAuthData.ts +++ b/packages/nextjs/src/middleware/utils/getAuthData.ts @@ -56,7 +56,7 @@ export async function getAuthData( const [user, session] = await Promise.all([ loadUser ? users.getUser(sessionClaims.sub as string) : Promise.resolve(undefined), - loadSession ? await sessions.getSession(sessionClaims.sid as string) : Promise.resolve(undefined), + loadSession ? sessions.getSession(sessionClaims.sid as string) : Promise.resolve(undefined), ]); return { diff --git a/packages/remix/src/ssr/getAuth.ts b/packages/remix/src/ssr/getAuth.ts index 0448479820..f0512b78b1 100644 --- a/packages/remix/src/ssr/getAuth.ts +++ b/packages/remix/src/ssr/getAuth.ts @@ -1,18 +1,15 @@ import { noRequestPassedInGetAuth } from '../errors'; import { getAuthData } from './getAuthData'; -import { GetAuthOptions, GetAuthReturn, LoaderFunctionArgs } from './types'; +import { GetAuthReturn, LoaderFunctionArgs } from './types'; import { sanitizeAuthData } from './utils'; -export async function getAuth( - argsOrReq: Request | LoaderFunctionArgs, - options?: Options, -): GetAuthReturn { +export async function getAuth(argsOrReq: Request | LoaderFunctionArgs): GetAuthReturn { if (!argsOrReq) { throw new Error(noRequestPassedInGetAuth); } const request = 'request' in argsOrReq ? argsOrReq.request : argsOrReq; - const { authData } = await getAuthData(request, options || {}); + const { authData } = await getAuthData(request); // @ts-expect-error This can only return null during interstitial, // but the public types should not know that return sanitizeAuthData(authData || {}); diff --git a/packages/remix/src/ssr/getAuthData.ts b/packages/remix/src/ssr/getAuthData.ts index 59bd1d8ee9..5fda8ecdd2 100644 --- a/packages/remix/src/ssr/getAuthData.ts +++ b/packages/remix/src/ssr/getAuthData.ts @@ -2,7 +2,7 @@ import { AuthStatus, Session, User } from '@clerk/backend-core'; import Clerk, { sessions, users } from '@clerk/clerk-sdk-node'; import { GetSessionTokenOptions } from '@clerk/types'; -import { GetAuthOptions } from './types'; +import { RootAuthLoaderOptions } from './types'; import { extractInterstitialHtmlContent, parseCookies } from './utils'; export type AuthData = { @@ -15,7 +15,7 @@ export type AuthData = { export async function getAuthData( req: Request, - opts: GetAuthOptions, + opts: RootAuthLoaderOptions = {}, ): Promise<{ authData: AuthData | null; interstitial?: string }> { const { loadSession, loadUser } = opts; const { headers } = req; @@ -60,7 +60,7 @@ export async function getAuthData( const [user, session] = await Promise.all([ loadUser ? users.getUser(sessionClaims.sub as string) : Promise.resolve(undefined), - loadSession ? await sessions.getSession(sessionClaims.sid as string) : Promise.resolve(undefined), + loadSession ? sessions.getSession(sessionClaims.sid as string) : Promise.resolve(undefined), ]); return { diff --git a/packages/remix/src/ssr/types.ts b/packages/remix/src/ssr/types.ts index a63de43be6..be6a2a8194 100644 --- a/packages/remix/src/ssr/types.ts +++ b/packages/remix/src/ssr/types.ts @@ -7,19 +7,13 @@ export type InferRootLoaderData = { clerkState: { __type: 'clerkState' }; }; -export type GetAuthReturn = Promise< - ServerSideAuth & - (Options extends { loadSession: true } ? { session: Session | null } : {}) & - (Options extends { loadUser: true } ? { user: User | null } : {}) ->; +export type GetAuthReturn = Promise; -export type GetAuthOptions = { +export type RootAuthLoaderOptions = { loadUser?: boolean; loadSession?: boolean; }; -export type RootAuthLoaderOptions = GetAuthOptions; - export type RootAuthLoaderCallback = (args: LoaderFunctionArgsWithAuth) => LoaderFunctionReturn; export type LoaderFunctionArgs = Parameters[0];