mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-15 02:53:31 +01:00
committed by
abalabahaha
parent
d73ebcdfd4
commit
71db8555fe
@@ -408,6 +408,22 @@ var Client = (function (_EventEmitter) {
|
|||||||
return this.internal.deleteMessage(message, options).then(dataCallback(callback), errorCallback(callback));
|
return this.internal.deleteMessage(message, options).then(dataCallback(callback), errorCallback(callback));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bulk deletes messages (if the client has permission to)
|
||||||
|
* @param {Array<MessageResolvable>} message the message to delete
|
||||||
|
* @param {function(err: Error)} [callback] callback to the method
|
||||||
|
* @returns {Promise<null, Error>} Resolves with null if the deletion was successful, otherwise rejects with an Error.
|
||||||
|
* @example
|
||||||
|
* // deleting messages
|
||||||
|
* client.deleteMessages([message1, message2]);
|
||||||
|
*/
|
||||||
|
|
||||||
|
Client.prototype.deleteMessages = function deleteMessages(messages) {
|
||||||
|
var callback = arguments.length <= 1 || arguments[1] === undefined ? function () /*err, {}*/{} : arguments[1];
|
||||||
|
|
||||||
|
return this.internal.deleteMessages(messages).then(dataCallback(callback), errorCallback(callback));
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Edits a previously sent message (if the client has permission to)
|
* Edits a previously sent message (if the client has permission to)
|
||||||
* @param {MessageResolvable} message the message to edit
|
* @param {MessageResolvable} message the message to edit
|
||||||
|
|||||||
@@ -837,6 +837,52 @@ var InternalClient = (function () {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// def deleteMessages
|
||||||
|
|
||||||
|
InternalClient.prototype.deleteMessages = function deleteMessages(_messages) {
|
||||||
|
if (!_messages instanceof Array) return Promise.reject(new Error("Messages provided must be in an array"));
|
||||||
|
if (_messages.length < 1) return Promise.reject(new Error("You must provide at least one message to delete"));
|
||||||
|
|
||||||
|
var messages = [];
|
||||||
|
var channel;
|
||||||
|
for (var _iterator4 = _messages, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) {
|
||||||
|
var _ref4;
|
||||||
|
|
||||||
|
if (_isArray4) {
|
||||||
|
if (_i4 >= _iterator4.length) break;
|
||||||
|
_ref4 = _iterator4[_i4++];
|
||||||
|
} else {
|
||||||
|
_i4 = _iterator4.next();
|
||||||
|
if (_i4.done) break;
|
||||||
|
_ref4 = _i4.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
var _message = _ref4;
|
||||||
|
|
||||||
|
var message = this.resolver.resolveMessage(_message);
|
||||||
|
if (!message) return Promise.reject(new Error("Something other than a message could not be resolved in the array..."));
|
||||||
|
|
||||||
|
// ensure same channel
|
||||||
|
if (!channel) {
|
||||||
|
channel = message.channel;
|
||||||
|
} else {
|
||||||
|
if (message.channel.id !== channel.id) return Promise.reject(new Error("You can only bulk delete messages from the same channel at one time..."));
|
||||||
|
}
|
||||||
|
|
||||||
|
messages.push(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.apiRequest("post", _Constants.Endpoints.CHANNEL_MESSAGES(channel.id) + "/bulk_delete", true, {
|
||||||
|
messages: messages.map(function (m) {
|
||||||
|
return m.id;
|
||||||
|
})
|
||||||
|
}).then(function () {
|
||||||
|
return messages.forEach(function (m) {
|
||||||
|
return channel.messages.remove(m);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
// def updateMessage
|
// def updateMessage
|
||||||
|
|
||||||
InternalClient.prototype.updateMessage = function updateMessage(msg, _content) {
|
InternalClient.prototype.updateMessage = function updateMessage(msg, _content) {
|
||||||
@@ -1068,19 +1114,19 @@ var InternalClient = (function () {
|
|||||||
|
|
||||||
if (data.permissions) {
|
if (data.permissions) {
|
||||||
newData.permissions = 0;
|
newData.permissions = 0;
|
||||||
for (var _iterator4 = data.permissions, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) {
|
for (var _iterator5 = data.permissions, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) {
|
||||||
var _ref4;
|
var _ref5;
|
||||||
|
|
||||||
if (_isArray4) {
|
if (_isArray5) {
|
||||||
if (_i4 >= _iterator4.length) break;
|
if (_i5 >= _iterator5.length) break;
|
||||||
_ref4 = _iterator4[_i4++];
|
_ref5 = _iterator5[_i5++];
|
||||||
} else {
|
} else {
|
||||||
_i4 = _iterator4.next();
|
_i5 = _iterator5.next();
|
||||||
if (_i4.done) break;
|
if (_i5.done) break;
|
||||||
_ref4 = _i4.value;
|
_ref5 = _i5.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var perm = _ref4;
|
var perm = _ref5;
|
||||||
|
|
||||||
if (perm instanceof String || typeof perm === "string") {
|
if (perm instanceof String || typeof perm === "string") {
|
||||||
newData.permissions |= _Constants.Permissions[perm] || 0;
|
newData.permissions |= _Constants.Permissions[perm] || 0;
|
||||||
@@ -1163,19 +1209,19 @@ var InternalClient = (function () {
|
|||||||
|
|
||||||
var roledata = role.server.rolesOf(member);
|
var roledata = role.server.rolesOf(member);
|
||||||
if (roledata) {
|
if (roledata) {
|
||||||
for (var _iterator5 = roledata, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) {
|
for (var _iterator6 = roledata, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) {
|
||||||
var _ref5;
|
var _ref6;
|
||||||
|
|
||||||
if (_isArray5) {
|
if (_isArray6) {
|
||||||
if (_i5 >= _iterator5.length) break;
|
if (_i6 >= _iterator6.length) break;
|
||||||
_ref5 = _iterator5[_i5++];
|
_ref6 = _iterator6[_i6++];
|
||||||
} else {
|
} else {
|
||||||
_i5 = _iterator5.next();
|
_i6 = _iterator6.next();
|
||||||
if (_i5.done) break;
|
if (_i6.done) break;
|
||||||
_ref5 = _i5.value;
|
_ref6 = _i6.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var r = _ref5;
|
var r = _ref6;
|
||||||
|
|
||||||
if (r.id == role.id) {
|
if (r.id == role.id) {
|
||||||
return r;
|
return r;
|
||||||
@@ -1213,19 +1259,19 @@ var InternalClient = (function () {
|
|||||||
return r.id;
|
return r.id;
|
||||||
});
|
});
|
||||||
|
|
||||||
for (var _iterator6 = roles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) {
|
for (var _iterator7 = roles, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) {
|
||||||
var _ref6;
|
var _ref7;
|
||||||
|
|
||||||
if (_isArray6) {
|
if (_isArray7) {
|
||||||
if (_i6 >= _iterator6.length) break;
|
if (_i7 >= _iterator7.length) break;
|
||||||
_ref6 = _iterator6[_i6++];
|
_ref7 = _iterator7[_i7++];
|
||||||
} else {
|
} else {
|
||||||
_i6 = _iterator6.next();
|
_i7 = _iterator7.next();
|
||||||
if (_i6.done) break;
|
if (_i7.done) break;
|
||||||
_ref6 = _i6.value;
|
_ref7 = _i7.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var role = _ref6;
|
var role = _ref7;
|
||||||
|
|
||||||
if (!role.server.memberMap[member.id]) {
|
if (!role.server.memberMap[member.id]) {
|
||||||
return Promise.reject(new Error("member not in server"));
|
return Promise.reject(new Error("member not in server"));
|
||||||
@@ -1822,26 +1868,7 @@ var InternalClient = (function () {
|
|||||||
if (!data.unavailable) {
|
if (!data.unavailable) {
|
||||||
client.emit("serverDeleted", server);
|
client.emit("serverDeleted", server);
|
||||||
|
|
||||||
for (var _iterator7 = server.channels, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) {
|
for (var _iterator8 = server.channels, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) {
|
||||||
var _ref7;
|
|
||||||
|
|
||||||
if (_isArray7) {
|
|
||||||
if (_i7 >= _iterator7.length) break;
|
|
||||||
_ref7 = _iterator7[_i7++];
|
|
||||||
} else {
|
|
||||||
_i7 = _iterator7.next();
|
|
||||||
if (_i7.done) break;
|
|
||||||
_ref7 = _i7.value;
|
|
||||||
}
|
|
||||||
|
|
||||||
var channel = _ref7;
|
|
||||||
|
|
||||||
self.channels.remove(channel);
|
|
||||||
}
|
|
||||||
|
|
||||||
self.servers.remove(server);
|
|
||||||
|
|
||||||
for (var _iterator8 = server.members, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) {
|
|
||||||
var _ref8;
|
var _ref8;
|
||||||
|
|
||||||
if (_isArray8) {
|
if (_isArray8) {
|
||||||
@@ -1853,22 +1880,41 @@ var InternalClient = (function () {
|
|||||||
_ref8 = _i8.value;
|
_ref8 = _i8.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var user = _ref8;
|
var channel = _ref8;
|
||||||
|
|
||||||
|
self.channels.remove(channel);
|
||||||
|
}
|
||||||
|
|
||||||
|
self.servers.remove(server);
|
||||||
|
|
||||||
|
for (var _iterator9 = server.members, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) {
|
||||||
|
var _ref9;
|
||||||
|
|
||||||
|
if (_isArray9) {
|
||||||
|
if (_i9 >= _iterator9.length) break;
|
||||||
|
_ref9 = _iterator9[_i9++];
|
||||||
|
} else {
|
||||||
|
_i9 = _iterator9.next();
|
||||||
|
if (_i9.done) break;
|
||||||
|
_ref9 = _i9.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
var user = _ref9;
|
||||||
|
|
||||||
var found = false;
|
var found = false;
|
||||||
for (var _iterator9 = self.servers, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) {
|
for (var _iterator10 = self.servers, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) {
|
||||||
var _ref9;
|
var _ref10;
|
||||||
|
|
||||||
if (_isArray9) {
|
if (_isArray10) {
|
||||||
if (_i9 >= _iterator9.length) break;
|
if (_i10 >= _iterator10.length) break;
|
||||||
_ref9 = _iterator9[_i9++];
|
_ref10 = _iterator10[_i10++];
|
||||||
} else {
|
} else {
|
||||||
_i9 = _iterator9.next();
|
_i10 = _iterator10.next();
|
||||||
if (_i9.done) break;
|
if (_i10.done) break;
|
||||||
_ref9 = _i9.value;
|
_ref10 = _i10.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var s = _ref9;
|
var s = _ref10;
|
||||||
|
|
||||||
if (s.members.get("id", user.id)) {
|
if (s.members.get("id", user.id)) {
|
||||||
found = true;
|
found = true;
|
||||||
@@ -2230,19 +2276,19 @@ var InternalClient = (function () {
|
|||||||
|
|
||||||
var testtime = Date.now();
|
var testtime = Date.now();
|
||||||
|
|
||||||
for (var _iterator10 = data.members, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) {
|
for (var _iterator11 = data.members, _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) {
|
||||||
var _ref10;
|
var _ref11;
|
||||||
|
|
||||||
if (_isArray10) {
|
if (_isArray11) {
|
||||||
if (_i10 >= _iterator10.length) break;
|
if (_i11 >= _iterator11.length) break;
|
||||||
_ref10 = _iterator10[_i10++];
|
_ref11 = _iterator11[_i11++];
|
||||||
} else {
|
} else {
|
||||||
_i10 = _iterator10.next();
|
_i11 = _iterator11.next();
|
||||||
if (_i10.done) break;
|
if (_i11.done) break;
|
||||||
_ref10 = _i10.value;
|
_ref11 = _i11.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var user = _ref10;
|
var user = _ref11;
|
||||||
|
|
||||||
server.memberMap[user.user.id] = {
|
server.memberMap[user.user.id] = {
|
||||||
roles: user.roles.map(function (pid) {
|
roles: user.roles.map(function (pid) {
|
||||||
|
|||||||
@@ -511,6 +511,21 @@ export default class Client extends EventEmitter {
|
|||||||
return this.internal.deleteMessage(message, options)
|
return this.internal.deleteMessage(message, options)
|
||||||
.then(dataCallback(callback), errorCallback(callback));
|
.then(dataCallback(callback), errorCallback(callback));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bulk deletes messages (if the client has permission to)
|
||||||
|
* @param {Array<MessageResolvable>} message the message to delete
|
||||||
|
* @param {function(err: Error)} [callback] callback to the method
|
||||||
|
* @returns {Promise<null, Error>} Resolves with null if the deletion was successful, otherwise rejects with an Error.
|
||||||
|
* @example
|
||||||
|
* // deleting messages
|
||||||
|
* client.deleteMessages([message1, message2]);
|
||||||
|
*/
|
||||||
|
deleteMessages(messages, callback = (/*err, {}*/) => { }) {
|
||||||
|
return this.internal.deleteMessages(messages)
|
||||||
|
.then(dataCallback(callback), errorCallback(callback));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Edits a previously sent message (if the client has permission to)
|
* Edits a previously sent message (if the client has permission to)
|
||||||
* @param {MessageResolvable} message the message to edit
|
* @param {MessageResolvable} message the message to edit
|
||||||
|
|||||||
@@ -689,6 +689,37 @@ export default class InternalClient {
|
|||||||
.then(() => message.channel.messages.remove(message));
|
.then(() => message.channel.messages.remove(message));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// def deleteMessages
|
||||||
|
deleteMessages(_messages) {
|
||||||
|
if (!_messages instanceof Array)
|
||||||
|
return Promise.reject(new Error("Messages provided must be in an array"));
|
||||||
|
if (_messages.length < 1)
|
||||||
|
return Promise.reject(new Error("You must provide at least one message to delete"))
|
||||||
|
|
||||||
|
var messages = [];
|
||||||
|
var channel;
|
||||||
|
for (var _message of _messages) {
|
||||||
|
var message = this.resolver.resolveMessage(_message);
|
||||||
|
if (!message)
|
||||||
|
return Promise.reject(new Error("Something other than a message could not be resolved in the array..."));
|
||||||
|
|
||||||
|
// ensure same channel
|
||||||
|
if (!channel) {
|
||||||
|
channel = message.channel;
|
||||||
|
} else {
|
||||||
|
if (message.channel.id !== channel.id)
|
||||||
|
return Promise.reject(new Error("You can only bulk delete messages from the same channel at one time..."));
|
||||||
|
}
|
||||||
|
|
||||||
|
messages.push(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.apiRequest("post", `${Endpoints.CHANNEL_MESSAGES(channel.id)}/bulk_delete`, true, {
|
||||||
|
messages: messages.map(m => m.id)
|
||||||
|
})
|
||||||
|
.then(() => messages.forEach(m => channel.messages.remove(m)));
|
||||||
|
}
|
||||||
|
|
||||||
// def updateMessage
|
// def updateMessage
|
||||||
updateMessage(msg, _content, options = {}) {
|
updateMessage(msg, _content, options = {}) {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user