import { getEuroBonusProfileData } from "../routers/partners/sas/getEuroBonusProfile" import { getVerifiedUser } from "../routers/user/utils/getVerifiedUser" import { isValidSession } from "./session" import type { Session } from "next-auth" export async function getUserPointsBalance( session: Session | null ): Promise { if (!isValidSession(session)) return undefined const verifiedUser = session.token.loginType === "sas" ? await getEuroBonusProfileData({ accessToken: session.token.access_token, loginType: session.token.loginType, }) : await getVerifiedUser({ session }) if (!verifiedUser || "error" in verifiedUser) { return undefined } const points = "points" in verifiedUser ? verifiedUser.points.total : verifiedUser.data.membership?.currentPoints return points ?? 0 }