Commit graph

268 commits

Author SHA1 Message Date
Gus Caplan
beffb390e6 Add search (#1043)
* add search

* Update ClientDataResolver.js
2016-12-30 02:44:19 -05:00
Amish Shah
b0c2f818a8 Remove cached events 2016-12-26 21:56:04 +00:00
Amish Shah
bf7767fe2c Rename emoji events 2016-12-26 21:30:27 +00:00
Amish Shah
cd657be8be Add functionality for GuildEmoji events 2016-12-26 19:21:00 +00:00
Amish Shah
544e456302 Add ClientOptions.restTimeOffset for better performance for bots with a good network connection 2016-12-24 12:13:42 +00:00
Schuyler Cebulskie
28ca83011c Implement missing Collection#reduce functionality 2016-12-24 01:59:14 -05:00
Gus Caplan
265ac90234 Update Constants.js (#1014) 2016-12-23 18:41:04 +00:00
Gus Caplan
2390e525ef Fix User#avatarURL for Nitro animated avatars (#1012)
* fix avatar url

* switch to cdn
2016-12-23 00:57:49 -05:00
Hackzzila
84954c8860 Add notice about disabling events (#1008)
* Add notice about disabling events

* fix english

* Update Constants.js

* Update Constants.js

* Update Constants.js

* Update Constants.js
2016-12-22 15:01:04 -05:00
Gus Caplan
c483dd8239 add some useful events (#1004) 2016-12-20 23:37:06 +00:00
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
Alexander
264ee8e7f1 Equals updates (#987)
* Docs update

Changed the param names and param descriptions to be consistent.

* Added === comparison

Changed Presence.equals and Game.equals to first compare using ===

* Collection.equals fix

Now returns false when collection is undefined, instead of crashing
💯
2016-12-14 17:10:34 -05:00
Cole
586d652c16 Quality of life changes (#968)
* + Added function to get a user's default avatar
+ Added HOST constant to Constants
+ Added assets endpoint
+ Added quality of life function to get a user's avatar or default avatar
+ Added quality of life function to get member's nickname or username

* * Fixed invocation of a getter.

* Fixed lint issue

* Made the API constant use the HOST constant for DRY-ness
Changed DOC comment to be more descriptive

* Update GuildMember.js
2016-12-12 22:34:19 -05:00
Gus Caplan
e51fed968d hydarplz (#962) 2016-12-09 20:47:56 +00:00
Évelyne Lachance
f9bf0ed5e6 Quick fix for error in guildMemberRole
Because Gus is a massive derp.
2016-12-06 18:35:33 -05:00
bdistin
8eff36b744 Fix reconnect when using WS (#952)
* Fix reconnect when using WS

* Add disconnect status (fix reconnect with WS)
2016-12-05 21:06:49 +00:00
Schuyler Cebulskie
bd00bc404c Make Collection#set/delete return the result of the super call, and clean up equals docs 2016-12-03 21:38:27 -05:00
Slamakans
a0b245bfe1 equals function added (#948)
Adds an equals function that checks for differing size and differing
key-value pairs, and takes into account the edge case for when there's
an entry for the key, but the value is undefined.
2016-12-03 21:34:26 -05: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
edfb27f428 switch to cdn endpoints, add guild splash url (#932) 2016-12-01 19:33:15 -05:00
Schuyler Cebulskie
dc6c1140bc Improve some JSDocs 2016-11-27 01:08:08 -05:00
Amish Shah
0d574a0678 Address #919, add WSEventType typedef 2016-11-26 23:01:47 +00:00
Schuyler Cebulskie
ac64f8bd23 Improve rest args docs 2016-11-24 11:22:13 -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
2bb5aa1fda Change Collection description 2016-11-20 18:05:01 -05:00
Schuyler Cebulskie
a80a64f8ce Update Collection docs some more 2016-11-20 17:59:54 -05:00
Schuyler Cebulskie
74ab72fdea Update Collection docs 2016-11-20 17:39:55 -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
Schuyler Cebulskie
bb3b709d6e Nothing to see here 👀 2016-11-13 01:13:13 -05:00
Schuyler Cebulskie
da9d1a3daf Don't mind me 2016-11-13 01:07:48 -05:00
Schuyler Cebulskie
ee3a03f707 Make Collection.find/exists error when using with IDs 2016-11-13 00:27:56 -05:00
Schuyler Cebulskie
b07a31d44e Change case of "function" 2016-11-12 21:07:22 -05:00
Schuyler Cebulskie
90304aa7d6 Fix loads of JSDoc type issues 2016-11-12 20:52:37 -05:00
Schuyler Cebulskie
93e6c69bd1 Update sync option docs 2016-11-01 02:28:23 -04:00
Schuyler Cebulskie
b91590d3a8 Fix mispositioned line in ClientOptions doc 2016-11-01 02:24:42 -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
a673a97441 Rephrase Collection.find/exists slightly 2016-10-30 22:28:06 -04:00
Schuyler Cebulskie
d7e1e1c0c9 Add warnings for Collection.find/exists 2016-10-30 22:22:16 -04:00
Schuyler Cebulskie
85330769a7 Refactor OAuth application stuff 2016-10-30 16:55:08 -04:00
Schuyler Cebulskie
589c44327a Make bot/user account notices consistent 2016-10-30 16:41:39 -04:00
Hackzzila
c9dbf1f7f0 OAuth info stuff (#849)
* OAuth info stuff

* fix docs

* oops
2016-10-27 21:50:04 +01:00
Hackzzila
986b05442d Make errors great again (#850) 2016-10-27 21:49:09 +01:00
Amish Shah
c4da8d1009 rename file fix 2016-10-27 18:52:49 +01:00
Amish Shah
dfeafbf5fa Add the ADD_REACTIONS permission 2016-10-27 17:32:23 +01:00
Amish Shah
9cba1bc6d0 remove users from message reactions 2016-10-27 17:16:40 +01:00
Amish Shah
d129457624 Improve emoji support 2016-10-27 16:12:02 +01:00
Amish Shah
81059885a2 Start work on adding reaction support 2016-10-27 15:22:42 +01:00
Amish Shah
ad90705c93 fix bug 2016-10-26 19:21:45 +01:00
Amish Shah
18e9850e1e Merge branch 'indev' of https://github.com/hydrabolt/discord.js into indev 2016-10-26 17:29:26 +01:00
Amish Shah
4a5cef0ccf Rename getRecommendedShards to fetchRecommendedShards 2016-10-26 17:29:23 +01:00
Gus Caplan
c6bcf69dc3 added User#fetchProfile (#835)
* add User#fetchProfile

* fix merge conflicts?
2016-10-26 16:23:39 +01:00
Amish Shah
35ac80024a Rename some events (mainly guild events) 2016-10-26 15:52:40 +01:00
Amish Shah
0f8e8dddff fix presence updating 2016-10-25 21:40:53 +01:00
Gus Caplan
422b90c711 add way more friend shit (#815) 2016-10-22 16:25:55 -04:00
Schuyler Cebulskie
caec3648c0 Added onlyInlineCode to escapeMarkdown 2016-10-21 02:35:36 -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
Gus Caplan
bd5540314b
add message@#type 2016-10-17 21:24:16 -05:00
Schuyler Cebulskie
13aae621b8 Fix Hyper's error and make it more useful 2016-10-16 20:58:03 -04:00
Schuyler Cebulskie
6baf43dc24 Add Collection.filterArray 2016-10-15 01:20:31 -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
Schuyler Cebulskie
aad06c1116 Teensy cleanup 2016-10-13 23:32:52 -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
96355a4968 add constants, some debug stuff (#791)
* add constants, some debug stuff

* i can't believe i did this
2016-10-10 20:53:54 +01:00
Schuyler Cebulskie
bd7ff36b66 Allow infinite messageCacheMaxSize 2016-10-09 15:22:14 -04:00
Schuyler Cebulskie
7a53f70978 Rename maxMessageCache -> messageCacheMaxSize 2016-10-09 15:16:54 -04:00
Schuyler Cebulskie
a717b60417 Add validation for all non-ws client options 2016-10-09 15:11:15 -04:00
Schuyler Cebulskie
7b571f9729 Add escapeMarkdown util function 2016-10-09 14:32:48 -04:00
Programmix
4653f88555 Add disabledEvents option to Client (#784) 2016-10-09 18:27:31 +01: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
93425c3979 Expand collection array caching 2016-10-04 19:10:29 -04:00
Schuyler Cebulskie
2c3c91fe41 Merge branch 'master' into indev 2016-10-04 19:02:09 -04:00
Slamakans
53f5c2cb52 Cache array and keyArray in Collection (#771)
* Cache array and keyArray in Collection

Cache array and keyArray in the Collection class to improve consecutive
calls of collection.random() by around 400,000%, I think lel.

The speed decrease (I assume) compared to the previous version when
calling after it has changed is most likely negligible.

* Fix for ESLint

I think this fixes it.
2016-10-04 18:53:26 -04:00
Amish Shah
530035e14b Fix stacked heartbeats on reconnect and fix documentation 2016-10-01 20:21:38 +01:00
Amish Shah
7c26603773 Fix presences probably ¯\_(ツ)_/¯ 2016-10-01 15:27:56 +01:00
Schuyler Cebulskie
5997aecc22 Rearrange events some more 2016-09-30 02:53:57 -04:00
Schuyler Cebulskie
1473f8c462 Rearrange event constants 2016-09-30 02:50:20 -04:00
Schuyler Cebulskie
543e814f8e Move protocol version to a constant, and reorganise constants a bit 2016-09-30 02:45:16 -04:00
Schuyler Cebulskie
0bcca7bb55 Add Collection.concat 2016-09-27 20:47:12 -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
Schuyler Cebulskie
38366f627d Fix transmitting errors through IPC 2016-09-27 02:40:29 -04:00
Schuyler Cebulskie
e5a987e0ef Add client shard eval/client property fetching, and improve existing shard stuff 2016-09-27 02:19:53 -04:00
Gus Caplan
3e9253827f add manage emojis constant (#744)
* add manage emojis constant

* this is why you don't commit on github i guess
2016-09-26 21:07:16 -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
Kelvin Wu
a38f34899d Merge remote-tracking branch 'upstream/indev' into bugfix/docs 2016-09-24 14:10:04 -04:00
Gus Caplan
bd1449bc5a make login sane (#735) 2016-09-24 17:55:31 +01:00
Kelvin Wu
bd465108a7 Fix return type in docs. 2016-09-24 11:58:51 -04:00
Schuyler Cebulskie
737ad8e92b Slightly improve some Collection docs 2016-09-22 21:36:06 -04:00
Schuyler Cebulskie
9503990a86 Rename max_message_lifetime to message_cache_lifetime 2016-09-19 17:52:11 -04:00
Schuyler Cebulskie
afc8e5bee0 Add message sweeping 2016-09-19 16:52:46 -04:00
Gus Caplan
e0b614c3b2 weee add clyde because we all love clyde (#716)
* update to work with clyde's avatar image ;)

* add clyde to user cache on ready

* Update Ready.js

* Update Ready.js
2016-09-19 14:56:52 -04:00
meew0
74b9e5d643 Update default permissions (#706)
During the nickname update the default value was changed from
36953089 to 104324097 to include some of the new nickname permissions.
2016-09-15 17:09:57 -07:00
Gus Caplan
7cb2e8eef7 add disconnect event, document warn and debug events (#702)
* add documentation for events, and add a disconnect event, because i know people use that

* generate docs, and fix a hastily copied docstring

* fix permissions freak out
2016-09-14 00:12:10 -04:00
Schuyler Cebulskie
9cd249342b Teensy reorganisation 2016-09-12 21:40:15 -04:00
Schuyler Cebulskie
ac85ffce4b Add Collection.keyArray/firstKey/lastKey/randomKey 2016-09-12 21:39:41 -04:00
Schuyler Cebulskie
84b33f9b66 Add Collection.reduce 2016-09-12 21:33:29 -04:00
Schuyler Cebulskie
0bd00b12b7 Add Invite.url and toString 2016-09-12 21:07:05 -04:00
Schuyler Cebulskie
8bcb670920 Spit-polishing ClientOptions docs 2016-09-12 17:50:24 -04:00
Schuyler Cebulskie
6aa9bfd7f9 More ClientOptions docs cleanup 2016-09-12 17:17:16 -04:00
Schuyler Cebulskie
168ecdf8a9 Reorganise client options and use typedef properties 2016-09-12 17:04:19 -04:00
Schuyler Cebulskie
fba3508079 Add a little more detail about value 2016-09-12 02:52:32 -04:00
Schuyler Cebulskie
2aae20085b Key -> Property 2016-09-12 02:20:53 -04:00
Schuyler Cebulskie
e24c1e55a0 Remove wholly unnecessary example 2016-09-12 00:33:24 -04:00
Schuyler Cebulskie
7457985e60 Fix Collection.findKey doc link 2016-09-12 00:28:27 -04:00
Schuyler Cebulskie
95605863c7 Add Collection.findKey 2016-09-12 00:26:02 -04:00
Schuyler Cebulskie
ac1f5f32e2 Add Collection.find with function 2016-09-12 00:18:21 -04: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
e75dd2638c Add Burst requests - addresses #656 2016-09-10 22:12:10 +01:00
Schuyler Cebulskie
7fe032c785 Make default max_message_cache match docs 2016-09-08 03:01:49 -04:00
Schuyler Cebulskie
594836b1bf Rewrite Collection.map/filter, and add some/every 2016-09-08 02:26:28 -04:00
Amish Shah
7b870d13de Fix collection.find/findAll docs 2016-09-04 21:41:19 +01:00
Hackzzila
3b7d5e869b Added disable_everyone (#603)
* Added disable_everyone

* Fixed docs
2016-09-04 19:03:59 +01:00
Amish Shah
9c915d1e0a Fix constants errors not giving a stacktrace 2016-09-04 11:53:48 +01:00
Amish Shah
4d2bb891a9 Fix doc gen 2016-09-04 11:39:40 +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
Amish Shah
7f9ea762ed Add Collection.map(); 2016-09-03 23:00:14 +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
Amish Shah
a172fffd76 Actually add GUILD_SYNC 2016-09-03 17:59:16 +01:00
Schuyler Cebulskie
27652b94af Make JSDocs follow general conventions (#582)
* Make JSDocs follow usual conventions

* Fix StringResolvable name

* Make function lowercase
2016-09-03 09:57:25 +01:00
Schuyler Cebulskie
bce3cd2b8b Add key/value validation to Collection.find/findAll (#569)
* Add key/value validation to Collection.find/findAll

* Fix ESLint errors
2016-08-30 18:20:20 +01:00
Schuyler Cebulskie
56352220af Make Collection.find and findAll use .values() (#567)
* Make Collection.find and findAll use .values()

* Make Collection.deleteAll use .values()
2016-08-30 09:47:11 +01:00
Schuyler Cebulskie
60a1ba3088 Fix Collection.exists (#566) 2016-08-30 09:46:40 +01:00
Amish Shah
5d06be6333 Add Emoji class 2016-08-29 15:18:41 +01:00
Amish Shah
144638e746 Experimental ClientOptions.fetch_all_members 2016-08-29 13:54:35 +01:00
Amish Shah
a91fcd5cab Add ChannelPinsUpdate event 2016-08-28 18:50:55 +01:00
Amish Shah
6293f28ad9 Add guild member nickname setting n stuff 2016-08-27 18:55:08 +01:00
Amish Shah
8a1bfe559d Add guildmember nickname tracking 2016-08-27 17:54:58 +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
b22bda74b8 Fix ESLint 2016-08-26 21:17:37 +01:00
Amish Shah
0988b47fcd fix the derp 2016-08-26 18:49:19 +01:00
Amish Shah
ccf513a2fc Fix DMs breaking 2016-08-25 21:38:50 +01:00
Amish Shah
8683f45816 errory voice 2016-08-24 21:38:52 +01:00
Amish Shah
e370ccf806 Complete voice connection 2016-08-23 20:59:08 +01:00
Amish Shah
fa085c18cd Handle Voice Server Update events 2016-08-23 17:52:40 +01:00
Amish Shah
c8be80abd7 Add support to recognise 4004 codes and throw an error 2016-08-23 15:09:03 +01:00
Amish Shah
84a4755f53 Fix typo in docs 2016-08-23 14:44:22 +01:00
Amish Shah
51a399d558 fix docs 2016-08-23 00:18:43 +01:00
Amish Shah
1deefbd8cd change maps to Collections 2016-08-23 00:17:44 +01:00
Amish Shah
3fded1d7af Add Sharding Support! 2016-08-22 21:31:43 +01:00
Amish Shah
115850ad04 Fix channelMessage endpoint 2016-08-22 18:04:22 +01:00
Amish Shah
65350348a8 Document all the events 2016-08-20 00:15:09 +01:00
Amish Shah
00be14b5d1 Add options.api_request_method 2016-08-19 18:15:16 +01:00
Amish Shah
0224138dc9 crappy ratelimiting it doesnt work but its here ok 2016-08-13 22:22:24 +01:00
Amish Shah
7ada70f856 update back to v6 (again) and start work patching the lib 2016-08-13 16:41:06 +01:00
Amish Shah
c02d7808c1 go back to protocol 5 because the docs aren't ready for v6 ¯\_(ツ)_/¯ 2016-08-13 16:01:01 +01:00
Amish Shah
50af835774 Move to v6 protocol 2016-08-13 14:53:04 +01:00