next-auth
Version:
Authentication for Next.js
36 lines (31 loc) • 998 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = Discord;
function Discord(options) {
return {
id: "discord",
name: "Discord",
type: "oauth",
authorization: "https://discord.com/api/oauth2/authorize?scope=identify+email",
token: "https://discord.com/api/oauth2/token",
userinfo: "https://discord.com/api/users/@me",
profile(profile) {
if (profile.avatar === null) {
const defaultAvatarNumber = parseInt(profile.discriminator) % 5;
profile.image_url = `https://cdn.discordapp.com/embed/avatars/${defaultAvatarNumber}.png`;
} else {
const format = profile.avatar.startsWith("a_") ? "gif" : "png";
profile.image_url = `https://cdn.discordapp.com/avatars/${profile.id}/${profile.avatar}.${format}`;
}
return {
id: profile.id,
name: profile.username,
email: profile.email,
image: profile.image_url
};
},
options
};
}
;