import "dotenv/config"; import config from "./src/payload.config"; import { getPayload } from "payload"; async function main() { const payload = await getPayload({ config }); const login = await payload.login({ collection: "users", data: { username: "dev", password: "Test123" }, }); const token = login.token; console.log("login ok, token:", token ? token.slice(0, 20) + "..." : "(none)"); const headers = new Headers({ cookie: `payload-token=${token}` }); const { user } = await payload.auth({ headers, canSetHeaders: false }); console.log("auth user:", user?.id, user?.username, user ? "(defined)" : "(NULL)"); if (!user) throw new Error("no user from auth"); const fullUser = await payload.findByID({ collection: "users", id: user.id, depth: 0, overrideAccess: true, }); console.log("findByID(users) ok:", fullUser.id); const profiles = await payload.find({ collection: "profiles", where: { user: { equals: user.id } }, select: { progression: { xp: true } }, }); console.log("find(profiles) ok:", profiles.docs.length); process.exit(0); } main().catch((err) => { console.error("REPRO FAILED:", err); process.exit(1); });