This commit is contained in:
Gus Caplan
2017-03-31 16:13:41 -05:00
committed by Crawl
parent e86ec7de6f
commit 305a7d14af
3 changed files with 17 additions and 11 deletions

View File

@@ -245,7 +245,7 @@ class Guild {
*/
get iconURL() {
if (!this.icon) return null;
return Constants.Endpoints.guildIcon(this.id, this.icon);
return Constants.Endpoints.Guild(this).Icon(this.client.options.http.cdn, this.icon);
}
/**
@@ -255,7 +255,7 @@ class Guild {
*/
get splashURL() {
if (!this.splash) return null;
return Constants.Endpoints.guildSplash(this.id, this.splash);
return Constants.Endpoints.Guild(this).Splash(this.client.options.http.cdn, this.splash);
}
/**

View File

@@ -109,7 +109,7 @@ class User {
*/
get avatarURL() {
if (!this.avatar) return null;
return Constants.Endpoints.avatar(this.id, this.avatar);
return Constants.Endpoints.User(this).Avatar(this.client.options.http.cdn, this.avatar);
}
/**

View File

@@ -66,6 +66,7 @@ exports.DefaultOptions = {
http: {
version: 6,
host: 'https://discordapp.com',
cdn: 'https://cdn.discordapp.com',
},
};
@@ -83,7 +84,7 @@ exports.Errors = {
INVALID_TOKEN: 'An invalid token was provided.',
};
exports.Endpoints = {
const Endpoints = exports.Endpoints = {
User: userID => {
if (userID.id) userID = userID.id;
const base = `/users/${userID}`;
@@ -97,9 +98,9 @@ exports.Endpoints = {
Note: id => `${base}/notes/${id}`,
Mentions: (limit, roles, everyone, guildID) =>
`${base}/mentions?limit=${limit}&roles=${roles}&everyone=${everyone}${guildID ? `&guild_id=${guildID}` : ''}`,
Avatar: hash => {
Avatar: (root, hash) => {
if (userID === '1') return hash;
return hash;
return Endpoints.CDN(root).Avatar(userID, hash);
},
};
},
@@ -124,8 +125,8 @@ exports.Endpoints = {
ack: `${base}/ack`,
settings: `${base}/settings`,
Emoji: emojiID => `${base}/emojis/${emojiID}`,
Icon: hash => `cdn/${hash}`,
Splash: hash => `cdn/${hash}`,
Icon: (root, hash) => Endpoints.CDN(root).Icon(guildID, hash),
Splash: (root, hash) => Endpoints.CDN(root).Splash(guildID, hash),
Role: roleID => `${base}/roles/${roleID}`,
Member: memberID => {
const mbase = `${base}/members/${memberID}`;
@@ -176,9 +177,14 @@ exports.Endpoints = {
},
Message: m => exports.Endpoints.Channel(m.channel).Message(m),
Member: m => exports.Endpoints.Guild(m.guild).Member(m),
CDN: {
Emoji: emojiID => `/emojis/$${emojiID}.png`,
Asset: name => `/assets/${name}`,
CDN(root) {
return {
Emoji: emojiID => `${root}/emojis/$${emojiID}.png`,
Asset: name => `${root}/assets/${name}`,
Avatar: (userID, hash) => `${root}/avatars/${userID}/${hash}.${hash.startsWith('a_') ? 'gif' : 'png'}?size=2048`,
Icon: (guildID, hash) => `${root}/icons/${guildID}/${hash}.jpg`,
Splash: (guildID, hash) => `${root}/splashes/${guildID}/${hash}.jpg`,
};
},
OAUTH2: {
Application: appID => {