mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-12 09:33:32 +01:00
Add notes (#423)
This commit is contained in:
@@ -848,6 +848,12 @@ export default class Client extends EventEmitter {
|
||||
.then(dataCallback(callback), errorCallback(callback));
|
||||
}
|
||||
|
||||
// def setNote
|
||||
setNote(user, note, callback = (/*err, {}*/) => { }) {
|
||||
return this.internal.setNote(user,note)
|
||||
.then(dataCallback(callback), errorCallback(callback));
|
||||
}
|
||||
|
||||
// def createRole
|
||||
createRole(server, data = null, callback = (/*err, role*/) => { }) {
|
||||
if (typeof data === "function") {
|
||||
|
||||
@@ -915,6 +915,18 @@ export default class InternalClient {
|
||||
return this.apiRequest("patch", `${Endpoints.SERVER_MEMBERS(server.id)}/${user.id === this.user.id ? "@me/nick" : user.id}`, true, { nick: nick });
|
||||
}
|
||||
|
||||
//def setNote
|
||||
setNote(user, note) {
|
||||
user = this.resolver.resolveUser(user);
|
||||
note = note || "";
|
||||
|
||||
if(!user) {
|
||||
return Promise.reject(new Error("Failed to resolve user"));
|
||||
}
|
||||
|
||||
return this.apiRequest("put", `${Endpoints.ME_NOTES}/${user.id}`, true, { note: note });
|
||||
}
|
||||
|
||||
// def createRole
|
||||
createRole(server, data) {
|
||||
server = this.resolver.resolveServer(server);
|
||||
@@ -1551,6 +1563,23 @@ export default class InternalClient {
|
||||
self.incoming_friend_requests = null;
|
||||
self.outgoing_friend_requests = null;
|
||||
}
|
||||
|
||||
// add notes to users
|
||||
if(data.notes) {
|
||||
for(note in data.notes) {
|
||||
var user = self.users.get("id", note);
|
||||
if(user) {
|
||||
var newUser = user;
|
||||
newUser.note = data.notes[note];
|
||||
|
||||
self.users.update(user, newUser);
|
||||
} else {
|
||||
client.emit("warn", "note in ready packet but user not cached");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
self.state = ConnectionState.READY;
|
||||
|
||||
client.emit("debug", `ready packet took ${Date.now() - startTime}ms to process`);
|
||||
@@ -1985,6 +2014,27 @@ export default class InternalClient {
|
||||
client.emit("warn", "user unbanned but user/server not in cache.");
|
||||
}
|
||||
break;
|
||||
case PacketType.USER_NOTE_UPDATE:
|
||||
if(this.user.bot) {
|
||||
return;
|
||||
}
|
||||
var user = self.users.get("id", data.id);
|
||||
var oldNote = user.note;
|
||||
var note = data.note || null;
|
||||
|
||||
// user in cache
|
||||
if(user) {
|
||||
var updatedUser = user;
|
||||
updatedUser.note = note;
|
||||
|
||||
client.emit("noteUpdated", user, oldNote);
|
||||
|
||||
self.users.update(user, updatedUser);
|
||||
|
||||
} else {
|
||||
client.emit("warn", "note updated but user not in cache");
|
||||
}
|
||||
break;
|
||||
case PacketType.VOICE_STATE_UPDATE:
|
||||
var user = self.users.get("id", data.user_id);
|
||||
var server = self.servers.get("id", data.guild_id);
|
||||
|
||||
@@ -8,6 +8,7 @@ export const Endpoints = {
|
||||
ME: `${API}/users/@me`,
|
||||
ME_CHANNELS: `${API}/users/@me/channels`,
|
||||
ME_SERVER: (serverID) => `${Endpoints.ME}/guilds/${serverID}`,
|
||||
ME_NOTES: `${API}/users/@me/notes`,
|
||||
GATEWAY: `${API}/gateway`,
|
||||
AVATAR : (userID, avatar) => `${API}/users/${userID}/avatars/${avatar}.jpg`,
|
||||
INVITE: (id) => `${API}/invite/${id}`,
|
||||
@@ -93,6 +94,7 @@ export const PacketType = {
|
||||
SERVER_UPDATE : "GUILD_UPDATE",
|
||||
TYPING : "TYPING_START",
|
||||
USER_UPDATE : "USER_UPDATE",
|
||||
USER_NOTE_UPDATE: "USER_NOTE_UPDATE",
|
||||
VOICE_STATE_UPDATE : "VOICE_STATE_UPDATE",
|
||||
FRIEND_ADD : "RELATIONSHIP_ADD",
|
||||
FRIEND_REMOVE : "RELATIONSHIP_REMOVE"
|
||||
|
||||
@@ -19,6 +19,7 @@ export default class User extends Equality{
|
||||
since : null,
|
||||
channel : null
|
||||
};
|
||||
this.note = data.note || null;
|
||||
this.voiceChannel = null;
|
||||
this.voiceState = {};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user