Merge remote-tracking branch 'refs/remotes/origin/rewrite' into rewrite-docs

This commit is contained in:
hydrabolt
2015-11-19 20:51:50 +00:00
33 changed files with 190 additions and 70 deletions

View File

@@ -420,6 +420,27 @@ class Client extends EventEmitter {
});
}
//def updateRole
updateRole(role, data = null, callback = function (err, res) { }) {
var self = this;
return new Promise((resolve, reject) => {
if (typeof data === "function") {
// data is the callback
callback = data;
}
self.internal.updateRole(role, data)
.then((role) => {
callback(null, role);
resolve(role);
})
.catch(e => {
callback(e);
reject(e);
});
});
}
//def deleteRole
deleteRole(role, callback = function (err) { }) {
@@ -508,6 +529,22 @@ class Client extends EventEmitter {
});
}
// def deleteInvite
deleteInvite(invite, callback = function (err) { }) {
var self = this;
return new Promise((resolve, reject) => {
self.internal.deleteInvite(invite)
.then(() => {
callback();
resolve();
})
.catch(e => {
callback(e);
reject(e);
});
});
}
// def overwritePermissions
overwritePermissions(channel, role, options = {}, callback = function (err) { }) {
var self = this;
@@ -641,7 +678,7 @@ class Client extends EventEmitter {
})
}
//def startTyping
startTyping(channel, callback = function (err) { }) {
var self = this;
@@ -659,7 +696,7 @@ class Client extends EventEmitter {
});
}
//def stopTyping
stopTyping(channel, callback = function (err) { }) {
var self = this;
@@ -677,7 +714,7 @@ class Client extends EventEmitter {
});
}
//def updateDetails
updateDetails(details, callback = function (err) { }) {
var self = this;
@@ -693,7 +730,7 @@ class Client extends EventEmitter {
});
});
}
//def setUsername
setUsername(name, callback = function (err) { }) {
var self = this;
@@ -725,7 +762,7 @@ class Client extends EventEmitter {
});
});
}
//def joinVoiceChannel
joinVoiceChannel(channel, callback = function (err) { }) {
var self = this;

View File

@@ -139,7 +139,7 @@ class InternalClient {
});
});
}
//def joinServer
joinServer(invite) {
var self = this;
@@ -728,9 +728,7 @@ class InternalClient {
reject(err);
} else {
var nrole = new Role(res.body, server, self.client);
resolve(
server.roles.update(role, nrole)
);
resolve(server.roles.update(role, nrole));
}
});
@@ -887,6 +885,31 @@ class InternalClient {
});
}
//def deleteInvite
deleteInvite(invite) {
var self = this;
return new Promise((resolve, reject) => {
invite = self.resolver.resolveInviteID(invite);
if (invite) {
request
.del(Endpoints.INVITE(invite))
.set("authorization", self.token)
.end((err, res) => {
if (err) {
reject(err);
} else {
resolve();
}
});
} else {
reject(new Error("Not a valid invite"));
}
});
}
//def overwritePermissions
overwritePermissions(channel, role, updated) {
var self = this;
@@ -998,56 +1021,56 @@ class InternalClient {
});
}
//def startTyping
startTyping(channel){
var self = this;
return new Promise((resolve, reject) => {
self.resolver.resolveChannel(channel).then(next).catch(reject);
function next(channel) {
if(self.typingIntervals[channel.id]){
// typing interval already exists, leave it alone
reject(new Error("Already typing in that channel"));
return;
}
self.sendTyping(channel);
self.typingIntervals[channel.id] = setInterval(
() => self.sendTyping(channel), 4000
);
}
});
}
//def stopTyping
stopTyping(channel){
var self = this;
return new Promise((resolve, reject) => {
self.resolver.resolveChannel(channel).then(next).catch(reject);
function next(channel) {
if(!self.typingIntervals[channel.id]){
// typing interval doesn't exist
reject(new Error("Not typing in that channel"));
return;
}
clearInterval(self.typingIntervals[channel.id]);
self.typingIntervals[channel.id] = false;
}
});
}
//def updateDetails
updateDetails(data) {
var self = this;
@@ -1071,12 +1094,12 @@ class InternalClient {
});
});
}
//def setAvatar
setAvatar(avatar) {
return this.updateDetails({avatar});
}
//def setUsername
setUsername(username) {
return this.updateDetails({username});
@@ -1180,7 +1203,7 @@ class InternalClient {
updateChannel(chann, data) {
return this.setChannelNameAndTopic(chann, data.name, data.topic);
}
//def ack
ack(msg) {
var self = this;

View File

@@ -172,7 +172,7 @@ class Resolver {
if (found)
resolve(found);
else
reject(new Error("not found anything"));
reject(new Error("Didn't found anything"));
});
}