import { ObjectId } from "mongodb";
import { applyUsername } from "~/server/utils/auth";

export default defineEventHandler(async (event) => {
  const { type } = await readBody(event)
  const auth = await getAuth(event)

  const usersColl = db.collection('users')

  const username = type === 'discord' ? auth.discord.username : auth.minecraft.username

  const newUser = await usersColl.findOneAndUpdate({ _id: new ObjectId(auth._id) }, { $set: { username: username, useMinecraftUsername: type === 'discord' ? false : true } }, { returnDocument: 'after' })
  await applyUsername(newUser.value)

  return newUser.value
});
