Commit graph

169 commits

Author SHA1 Message Date
Gus Caplan
e392107369 add ClientUser#fetchMentions (#999)
* add ClientUser#fetchMentions

Signed-off-by: Gus Caplan <gus@localhost.localdomain>

* ugh

* Update ClientUser.js

* Update ClientUser.js

* Update ClientUser.js
2016-12-19 02:16:27 -05:00
Will Nelson
736fa7c611 friendlier notification of an invalid token (#997)
* friendlier notification of an invalid token

* fixed

* even fixeder

* no token -> invalid token

* eslint

* Update RESTMethods.js
2016-12-17 13:22:39 -05:00
Gus Caplan
a20bac7258 update per issue 69 on the h&c github (#963)
* update per issue 69 on the h&c github

* clean up things that don't exist anymore
2016-12-15 16:32:19 +00:00
Gus Caplan
d766e727a1 add GuildChannel#clone (#973)
* add GuildChannel#clone

* e
2016-12-11 09:07:52 +00:00
Gus Caplan
e51fed968d hydarplz (#962) 2016-12-09 20:47:56 +00:00
Will Nelson
275d9d3ce0 fix remove reactions return (#961) 2016-12-07 10:12:00 -05:00
Gus Caplan
d67ecdd2af fix authenticating role updates (#956)
* Update RESTMethods.js

* Update RESTMethods.js
2016-12-06 17:23:40 +00:00
Gus Caplan
638e51a18c support new guild member role endpoints for cleaner role updates (#901)
* support new roles endpoints

* use promise chaining

* properties man

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js
2016-12-02 23:46:55 -05:00
Gus Caplan
1e5afc1608 Add etf encoding support with erlpack (#943)
* the performance from this is astounding

* help uws

* save 15 bytes in webpacks

* update readme

* why is markdown like this

* optimizations

* Update WebSocketManager.js
2016-12-02 21:35:59 -05:00
Gus Caplan
2440a4a2c8 Add webpack building (#907)
* friggin webpack tho

* probably important

* add all the stuff to the package.json

* add minify builds and a nice package.json script to run it all

* clean up

* use uglify harmony branch so we can actually run minify builds that work

* update build system

* make test better

* clean up

* fix issues with compression

* ‮

* c++ requirements in a node lib? whaaaaat?

* fix travis yml?

* put railings on voice connections

* 🖕🏻

* aaaaaa

* handle arraybuffers in the unlikely event one is sent

* support arraybuffers in resolvebuffer

* this needs to be fixed at some point

* this was fixed

* disable filename versioning if env VERSIONED is set to false

* Update ClientDataResolver.js

* Update ClientVoiceManager.js

* Update WebSocketManager.js

* Update ConvertArrayBuffer.js

* Update webpack.html

* enable compression for browser and fix ws error handler

* Update WebSocketManager.js

* everything will be okay gawdl3y

* compression is slower in browser, so rip the last three hours of my life

* Update Constants.js

* Update .gitignore
2016-11-20 19:38:16 -05:00
Schuyler Cebulskie
49fdc331a7 Fix formatting 2016-11-17 02:49:24 -05:00
Programmix
5ed8098af8 Clean up reactions, add remove all reactions (#890)
* Clean up reactions, add remove all reactions

* Reorganize reactions

* Re-add Gawdl3y's precious little inline

* Update Message.js
2016-11-13 02:29:26 -05:00
Gus Caplan
27270a3bad add embed support! (#894)
* add embed support!

* document message embeds

* make gawdl3y happy

* make edit great again

* make docs better

* Update Message.js

* Update TextBasedChannel.js

* Update TextBasedChannel.js
2016-11-13 01:05:13 -05:00
Programmix
9a61de1493 Document GuildChannel.edit, add VoiceChannel.setUserLimit, fix typo (#866) 2016-11-01 01:42:05 -04:00
Programmix
6dc95cd084 Add support for notes (#860)
* Add support for notes

* Ensure consistency with notes from ready payload

* Add getter method for users

* Minor tweaks

* Update warning messages

* More minor fixes
2016-10-30 23:06:09 -04:00
Schuyler Cebulskie
85330769a7 Refactor OAuth application stuff 2016-10-30 16:55:08 -04:00
Schuyler Cebulskie
60e0d507f0 Clean up nearly all promises to utilise chaining, other small fixes 2016-10-30 16:27:28 -04:00
Schuyler Cebulskie
8306d50bd8 Clean up a bunch of promise stuff 2016-10-30 12:47:17 -04:00
Hackzzila
c9dbf1f7f0 OAuth info stuff (#849)
* OAuth info stuff

* fix docs

* oops
2016-10-27 21:50:04 +01:00
Amish Shah
9cba1bc6d0 remove users from message reactions 2016-10-27 17:16:40 +01:00
Amish Shah
dd9c291508 Add reaction fetching of users 2016-10-27 16:58:06 +01:00
Amish Shah
81059885a2 Start work on adding reaction support 2016-10-27 15:22:42 +01:00
Amish Shah
5e2ee2398e Fix some destroy stuff (#828) 2016-10-26 19:42:21 +01:00
Amish Shah
7d04863b66 Revert "fix Client.destroy bugs" (#839) 2016-10-26 17:30:18 +01:00
Gus Caplan
c6bcf69dc3 added User#fetchProfile (#835)
* add User#fetchProfile

* fix merge conflicts?
2016-10-26 16:23:39 +01:00
Gus Caplan
60a911e4a0 add clientUser#createGuild (#832)
* add clientUser#createGuild merge docs

* almost caused a memory leak!

* muh triggers
2016-10-26 15:59:15 +01:00
isonmad
e9fa8a438c fix Client.destroy bugs (#828)
* add test for Client.destroy()

* propagate errors in ClientManager.destroy

If the promise returned by logout() rejects, previously
it would be completely uncaught, and just return an
eternally pending promise that never resolved.

* fix RESTMethods.logout

Without a data argument, the POST that superagent sends causes
the discord server to reply with a HTTP 400 error:

text: '{"Content-Type": "Expected Content-Type to be one of set([\'application/json\'])."}',

* fix Client.destroy

_timeouts and _intervals were changed to Set objects in
commit 6ede7a32fd a month ago.

Changing them to arrays causes failures if you try to reuse
the client object again.

* always close websocket in ClientManager.destroy

Invoking logout does not implicitly cause the server to close
the websocket for you, so cleanup everything.

Otherwise the websocket being open keeps node alive and hanging
mysteriously until the connection hits a timeout.

* fix indentation for eslint
2016-10-26 14:49:45 +01:00
Amish Shah
968883ec35 Merge branch 'indev' of https://github.com/hydrabolt/discord.js into indev 2016-10-26 14:19:39 +01:00
Amish Shah
0c4a4023ce Fix setting guild role positions (#751) 2016-10-26 14:19:36 +01:00
Schuyler Cebulskie
c96d5ad30e Optimise everyone/here replacing 2016-10-25 19:01:56 -04:00
Amish Shah
21533eec5b fix banning probably hopefully 2016-10-23 20:51:04 +01:00
Gus Caplan
422b90c711 add way more friend shit (#815) 2016-10-22 16:25:55 -04:00
Gus Caplan
9c8eb2dfc3 lets all be friendly! (#809)
* lets all be friendly!

* fix doc

* Update ClientUser.js

* Update ClientUser.js
2016-10-18 01:36:25 -04:00
Schuyler Cebulskie
0b5ef296cb Fix split messages resolving with multiple of the same message 2016-10-15 20:23:32 -04:00
Schuyler Cebulskie
8f0e2e0c56 Make token "Bot" removal more lenient
In case of heavy user error. :)
2016-10-14 02:14:00 -04:00
Schuyler Cebulskie
e4636243b2 Improve token "Bot" removal 2016-10-14 02:11:31 -04:00
Gus Caplan
853a3dfa04 Add getRecommendedShards and automatic shard count in ShardingManager (#796)
* draft stuff

fix docstring for Client#token

Reorganise resolver

make env better for shards, clean up docs

Fix Gus' log messages

7

meh just gateway/bot not v7 :(

final changes, ready for mergin!

build docs

make default totalShards 'auto', fix docs for totalShards type

clean up docs more

run docs

* make consistancy real

* Update and rename getRecommendedShards.js to GetRecommendedShards.js

* Update GetRecommendedShards.js

* Update index.js

* Update RESTMethods.js

* Update Shard.js

* Update GetRecommendedShards.js

* Update ShardingManager.js

* run docs
2016-10-13 23:26:10 -04:00
Gus Caplan
32eeb8ad5e Fix feature/login (#790)
* eeeeeeee

* too tired

* ok gawdl3y

Signed-off-by: Gus Caplan <fluffyrobotcheese@gmail.com>
2016-10-10 02:55:09 -04:00
Gus Caplan
5ddefc3682 fix webhook#edit (#789)
* fix webhook#edit

* hehe
2016-10-10 02:54:46 -04:00
Gus Caplan
e48d7d52f1 add webhook#sendSlackMessage (#788) 2016-10-10 01:56:18 -04:00
Schuyler Cebulskie
29b33bffaa Rearrange and clean up more webhook stuff 2016-10-09 15:50:50 -04:00
Gus Caplan
1c4ed4547f adds new WebhookClient and allows you to fetch channel webhooks and such without being "over the top" (#768)
* start blocking out client

* proto webhookclient

* wee working webhooks

* it's all working

* run docs

* fix jsdoc issues

* add example for webhookClient

* add example in the examples place

* fix docs
2016-10-07 19:09:41 +01:00
Schuyler Cebulskie
77e37b62ef Fix sendMessage with no content and split/disableEveryone 2016-10-02 11:14:32 -04:00
Schuyler Cebulskie
8945344a3b Improve role position updating (allows for <=0) 2016-09-30 22:51:37 -04:00
Schuyler Cebulskie
c2c477834f Add Role.setMentionable 2016-09-30 22:48:25 -04:00
Schuyler Cebulskie
543e814f8e Move protocol version to a constant, and reorganise constants a bit 2016-09-30 02:45:16 -04:00
Gus Caplan
aed75e1f9a Add full guild emoji functionality (#749)
* all the emoji stuff

* fix things for hydra 😘

* feck i need to stop committing on github

* update docs again

* Butts
2016-09-27 20:44:09 -04:00
Schuyler Cebulskie
ba8dd3467a Switch config back to camelCase 2016-09-27 18:42:32 -04:00
Gus Caplan
c8761d72de add guild emoji methods (#742)
* add guild emoji methods

* run docs

* crawl pointed out some things about the docs, so i fixed

* actually run the docs on the changes 🤦
2016-09-26 21:39:07 +01:00
Gus Caplan
15d7f8e2fe Add Guild#prune (#723)
* make all changes neat

* run docs build
2016-09-21 15:57:14 -04:00
Schuyler Cebulskie
6a94658dd7 Clean up some stuff 2016-09-19 04:32:24 -04:00
Schuyler Cebulskie
6c6da43da3 Fix ban/unban with IDs 2016-09-18 23:07:30 -04:00
Amish Shah
9308d2ead3 Address #700 2016-09-14 16:35:38 +01:00
Schuyler Cebulskie
25531170ec Fix catch in _sendMessageRequest 2016-09-13 21:29:45 -04:00
Schuyler Cebulskie
bb0ca11776 De-stupify RESTMethods.getExistingDM 2016-09-13 20:50:18 -04:00
Amish Shah
fbcea236c5 Fix avatars not being set on selfbots - fixes #697 2016-09-13 20:21:12 +01:00
Amish Shah
3dab19a3bc Add Client.fetchInvite 2016-09-11 18:19:55 +01:00
Schuyler Cebulskie
47d71d32f3 Make grammer gooder 2016-09-11 01:40:37 -04:00
Schuyler Cebulskie
7da00cf0fe Add long message splitting 2016-09-11 01:01:36 -04:00
Amish Shah
4255dcd3ca Fix multipart for requests, fixes #675 2016-09-10 12:40:51 +01:00
Programmix
ab4707f9b4 Fix crash on role update (#648) 2016-09-07 00:26:34 -04:00
Schuyler Cebulskie
c7b4cf3d3f Add Guild.fetchMember 2016-09-06 20:36:58 -04:00
Kelvin Wu
f3286402fb Make Message.edit() accept arrays. (#630)
* Make Message.edit() accept arrays. Update corresponding parameters in docs (#624).

* Tweak parameter types in docs.

* Update docs.
2016-09-06 20:32:24 -04:00
Schuyler Cebulskie
9d694d2b67 Add ability to ban non-members from guilds (#638) 2016-09-06 16:55:42 -04:00
Schuyler Cebulskie
dc7b07022c Add GuildMember.addRole/addRoles (#615)
* Add GuildMember.addRole/addRoles

* Add GuildMember.removeRole/removeRoles
2016-09-05 07:18:51 +01:00
Schuyler Cebulskie
5bd258a557 Allow sendMessage disableEveryone to override client option (#605) 2016-09-04 21:05:38 +01:00
Hackzzila
3b7d5e869b Added disable_everyone (#603)
* Added disable_everyone

* Fixed docs
2016-09-04 19:03:59 +01:00
Manuel Kraus
48e7fad1c9 Expose TextBasedChannel#fetchMessage() (#602) 2016-09-04 18:46:29 +01:00
Amish Shah
9f0db9d0d8 join arrays with new lines when sending as messages 2016-09-04 17:16:01 +01:00
Amish Shah
7475f734ac Add debug stuff 2016-09-04 12:31:16 +01:00
Schuyler Cebulskie
0b908f5bce Cleanup Part 2: Electric Boogaloo (Reloaded) (#594)
* Cleanup Part 2: Electric Boogaloo (Reloaded)

* Moar cleanup

* Tweak NOT_A_PERMISSION error
2016-09-04 10:08:09 +01:00
Schuyler Cebulskie
59a5862f2d Clean up Actions code (#591) 2016-09-03 22:48:51 +01:00
Schuyler Cebulskie
68acf37fd4 Add stricter/better ESLint config (#589)
* Add stricter/better ESLint config

* Remove more unnecessary @returns
2016-09-03 20:45:23 +01:00
Schuyler Cebulskie
d97ce2e181 Remove all string object references (#586) 2016-09-03 16:58:28 +01:00
Amish Shah
1cbd1bda46 fix the bug in a better way 2016-09-02 16:57:14 +01:00
Amish Shah
7d27667afc Fix weird guild ug 2016-09-02 16:56:13 +01:00
Amish Shah
d249aa10cc Add client.destroy(); 2016-08-30 13:05:57 +01:00
Amish Shah
897cbfec77 Fix leaving guilds if you are the owner 2016-08-29 19:03:50 +01:00
Manuel Kraus
d9ae732bfd Add sendFile function (#562)
* sendFile

* Add default value to filename

* eslint

* (╯°□°)╯︵ ┻━┻
2016-08-29 19:01:05 +01:00
Amish Shah
b44a3770d9 Added guild.fetchInvites() 2016-08-28 21:00:01 +01:00
Amish Shah
1dba048d2e Add invite.delete() 2016-08-28 20:51:27 +01:00
Amish Shah
ba3d104619 Added guildChannel.createInvite(); 2016-08-28 20:32:37 +01:00
Amish Shah
9f1475f358 Add TextBasedChanel.fetchPinnedMessages() 2016-08-28 19:42:40 +01:00
Amish Shah
a57d6b723a Add message.pin() and .unpin(); 2016-08-28 19:03:08 +01:00
Amish Shah
ef0f38930f Added Guild.fetchBans() 2016-08-27 22:48:48 +01:00
Amish Shah
22062f1f86 Added guild.unban 2016-08-27 22:31:21 +01:00
Amish Shah
4d6c604322 Added GuildMember.ban() 2016-08-27 21:59:35 +01:00
Amish Shah
6a1a36813f Add TextBasedChannel.setTyping(bool) 2016-08-27 21:44:08 +01:00
Amish Shah
9ea9623de0 Add Permission Overwrites deletion 2016-08-27 19:40:14 +01:00
Amish Shah
135ab02104 fix eslint 2016-08-27 18:55:20 +01:00
Amish Shah
6293f28ad9 Add guild member nickname setting n stuff 2016-08-27 18:55:08 +01:00
Amish Shah
50c6fa3433 Role hex stuff 2016-08-27 17:46:13 +01:00
Schuyler Cebulskie
f944dce5c7 Add client.cacheUser method (#548)
* Add client.cacheUser method

* Fixed ESLint issues

* Added existence check first
2016-08-27 15:22:07 +01:00
Amish Shah
642d768cdc Add textBasedChannel.bulkDelete() 2016-08-26 22:13:27 +01:00
Amish Shah
576a7f2488 Add TextBasedChannel{full}.getMessages() 2016-08-23 13:52:01 +01:00
Amish Shah
6f2caffd32 Add setting channel overwrites 2016-08-22 18:47:21 +01:00
Amish Shah
8d5d90e222 Remove all data stores! Move to maps 2016-08-19 22:35:03 +01:00
Amish Shah
82ab92ca2a Migrate most of the Client Data Store to Clien 2016-08-19 22:21:34 +01:00
Amish Shah
b2950b2997 Fix DM Channels 2016-08-13 16:51:01 +01:00
Amish Shah
a2f8680514 Fix protocol versions 2016-08-13 16:23:24 +01:00