Updated Resolvables

This commit is contained in:
hydrabolt
2015-10-28 14:38:49 +00:00
parent e90917784c
commit 9d845ba18e
4 changed files with 37 additions and 2109 deletions

View File

@@ -23,5 +23,17 @@ A Channel Resolvable is data that can be resolved to a channel ID. Here is what
Server Resolvable
-----------------
A Server Resolvable is anything that can be resolved to a server ID. Here is what you can use:
- A Server_ object
- A Channel_ object
- A Message_ object
- A `String` representing the ID of the server
Invite Resolvable
-----------------
-----------------
An Invite Resolvable is anything that resolves to an invite code. Here is what you can use:
- An Invite_ object
- A `String` which is either the code or an invite URL containing it (e.g. ``https://discord.gg/0SCTAU1wZTZtIopF``)

View File

@@ -7,6 +7,7 @@
.. _PMChannel : ./docs_pmchannel.html
.. _Invite : ./docs_invite.html
.. _Channel Resolvable : ./docs_resolvable.html#channel-resolvable
.. _Server Resolvable : ./docs_resolvable.html#channel-resolvable
.. _Invite Resolvable : ./docs_resolvable.html#invite-resolvable
.. _Promises : https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise
.. _ServerPermissions : ./docs_permissions.html#id1

File diff suppressed because it is too large Load Diff

View File

@@ -594,7 +594,7 @@ class Client extends EventEmitter {
return new Promise(function (resolve, reject) {
var id = (invite instanceof Invite ? invite.code : invite);
var id = self.resolveInvite(invite);
request
.post(`${Endpoints.API}/invite/${id}`)
@@ -1705,6 +1705,10 @@ class Client extends EventEmitter {
if (resource instanceof Server) {
return resource.id;
} else if (resource instanceof Channel) {
return resource.server.id;
} else if (resource instanceof Message) {
return resource.channel.server.id;
} else {
return resource;
}
@@ -1995,6 +1999,23 @@ class Client extends EventEmitter {
this.setPlayingGame(id);
}
resolveInvite(resource){
if(resource instanceof Invite){
return resource.code;
}else if(typeof resource == "string" || resource instanceof String){
if(resource.indexOf("http") === 0){
var split = resource.split("/");
return split.pop();
}else{
return resource;
}
}
}
}
module.exports = Client;