test auth fix idk
This commit is contained in:
@@ -10,29 +10,50 @@ import { toServerResult } from "@/lib/tanstack-query/utils/to-server-result";
|
||||
import { serverFnLoggingMiddleware } from "@/utils/activities";
|
||||
|
||||
export const fetchMe = createServerFn()
|
||||
.handler(async () =>
|
||||
.handler(async () =>
|
||||
toServerResult(async () => {
|
||||
const request = getRequest();
|
||||
|
||||
|
||||
try {
|
||||
const context = await getSessionContext(request);
|
||||
|
||||
|
||||
await pbAdmin.authPromise;
|
||||
const result = await pbAdmin.getPlayerByAuthId(context.userAuthId);
|
||||
return {
|
||||
user: result || undefined,
|
||||
roles: context.roles,
|
||||
user: result || undefined,
|
||||
roles: context.roles,
|
||||
metadata: context.metadata,
|
||||
phone: context.phone
|
||||
};
|
||||
} catch (error: any) {
|
||||
// logger.info("FetchMe: Session error", error)
|
||||
if (error?.response?.status === 401) {
|
||||
const errorData = error?.response?.data;
|
||||
if (errorData?.error === "SESSION_REFRESH_REQUIRED") {
|
||||
logger.info("FetchMe: Error caught", {
|
||||
message: error?.message,
|
||||
isResponse: error instanceof Response,
|
||||
status: error instanceof Response ? error.status : error?.response?.status
|
||||
});
|
||||
|
||||
if (error instanceof Response) {
|
||||
const status = error.status;
|
||||
if (status === 440) {
|
||||
logger.info("FetchMe: Session refresh required (440)");
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
if (error?.response?.status === 440 || error?.response?.status === 401) {
|
||||
const errorData = error?.response?.data;
|
||||
if (errorData?.error === "SESSION_REFRESH_REQUIRED") {
|
||||
logger.info("FetchMe: Session refresh required (legacy)");
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
if (error?.message === "Unauthenticated") {
|
||||
logger.info("FetchMe: No authenticated user (expected when not logged in)");
|
||||
return { user: undefined, roles: [], metadata: {}, phone: undefined };
|
||||
}
|
||||
|
||||
logger.warn("FetchMe: Unexpected error, returning default", error);
|
||||
return { user: undefined, roles: [], metadata: {}, phone: undefined };
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user