Gus Caplan
801633b970
User settings ( #1337 )
...
* user settings bruh
* remove development dump
* emit stuff
* i am so done
* Update ClientUserSettings.js
* modularize
* Update ClientUserSettings.js
* Update Constants.js
* Update ClientUserSettings.js
* Update RESTMethods.js
* Update ClientUserSettings.js
* <.<
2017-04-05 22:03:33 +02:00
Gus Caplan
5d85de0883
add auth session change handling ( #1339 )
...
* add auth session change handling
* eek
2017-04-05 21:52:55 +02:00
Amish Shah
970bfffc46
Fix emoji events ( fixes #1333 )
2017-04-05 17:05:27 +01:00
Schuyler Cebulskie
136cab240d
Add new ESLint rules
2017-03-17 01:23:39 -04:00
Gus Caplan
fa609caee2
remove pako ( #1258 )
2017-03-16 09:15:48 -04:00
Schuyler Cebulskie
7232531eb1
Move all util methods into class
...
Remove TransformMessageOptions altogether
2017-02-15 22:25:18 -05:00
Gus Caplan
59ff1d99ba
fix types for snowflakes ( #1156 )
...
* fix types for snowflakes
* Update TextBasedChannel.js
2017-02-03 21:37:58 -05:00
Schuyler Cebulskie
f4724d61b2
Fix #1095
2017-01-30 22:54:37 -05:00
Gus Caplan
87b600f78f
switch to os shim for safety ( #1136 )
...
* switch to os shim for safety
* Update Client.js
2017-01-26 21:21:43 +00:00
Programmix
c1a5bee61f
GuildMembersChunk packet handler hotfix ( #1125 )
...
* GuildMembersChunk packet handler hotfix
* Add limit, resolve properly if a query is used
* Document new GuildMemberChunk param
2017-01-24 21:55:36 +00:00
Gus Caplan
306ea97f99
fix guild member fetching edge cases ( #1115 )
...
* thx4tipprogrammixluvubye
* consistancy
* make this loop for some reason
* so impatient
2017-01-21 16:37:28 +00:00
Amish Shah
7357fc2163
Update typings and increase performance when not listening for presence updates
2017-01-13 19:15:21 +00:00
Gus Caplan
a3091f5262
Handle 4011 ws event code ( #1083 )
...
* 4011
* Update WebSocketManager.js
* smh gawdl3y
2017-01-11 22:59:09 +00:00
Gus Caplan
22b1c425ac
add ClientUser.settings ( #1041 )
...
* add user settings
* Update Ready.js
2016-12-29 18:58:39 +00:00
Amish Shah
7ede44bc00
Add CloseEvent external
2016-12-29 00:27:40 +00:00
Gus Caplan
8d966932a9
funny ( #1030 )
2016-12-28 01:42:42 -05:00
Schuyler Cebulskie
84991c767e
Improve some Gus shenanigans
2016-12-27 22:30:51 -05:00
meew0
14ba0373eb
Fix a small spelling mistake in a debug log
2016-12-27 23:16:30 +01:00
Gus Caplan
779681e88f
"knock knock. who's there? ack lol. GET OFF MY PORCH!" ( #1023 )
2016-12-27 17:31:23 +00:00
Gus Caplan
bac4ccead7
"knock, knock. who's there. discord, lol" ( #1021 )
2016-12-27 12:13:57 +00:00
Gus Caplan
b79533e373
correctly handle invalid session ( #1020 )
...
* correctly handle invalid session
* give discord some time, use it wisely
2016-12-27 00:04:09 +00:00
Amish Shah
72c667b307
Fix potential ReferenceError with GuildMembersChunk
2016-12-26 20:20:58 +00:00
Amish Shah
cd657be8be
Add functionality for GuildEmoji events
2016-12-26 19:21:00 +00:00
Gus Caplan
2410fdf8d2
fix heartbeats once and for all ( #1016 )
2016-12-25 16:28:36 +00:00
Gus Caplan
3eca3ba95e
add handler in case heartbeat is not acked ( #1013 )
...
* add handler in case heartbeat is not acked
* ffs
2016-12-24 11:04:27 +00:00
Gus Caplan
e6a041241b
cleanup ws ratelimiting, and apirequest ( #957 )
...
* cleanup ws ratelimiting, and apirequest
* cleanup timestamps
* clean up timestamps
2016-12-23 14:37:43 +00:00
Amish Shah
74ef0b2e14
minor fixes
2016-12-23 14:37:35 +00:00
Amish Shah
b518437f52
Emit the close event on disconnect
2016-12-23 13:59:06 +00:00
Gus Caplan
050d3f9303
fix serialize for webpack ( #960 )
...
* fix serialize for webpack
* Update WebSocketManager.js
* Update WebSocketManager.js
2016-12-06 23:45:31 -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
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
Schuyler Cebulskie
58c7c2e7b8
Add client ping stuff
2016-12-02 20:58:19 -05:00
Amish Shah
1933451d2f
fix reconnecting
2016-11-28 16:14:34 +00:00
Hackzzila
6afd80cf53
Make uws a peer dep, and readd ws ( #928 )
...
* Make uws a peer dep, and readd ws
* if -> else if
2016-11-27 19:59:50 +00:00
Amish Shah
9323882a8d
fix disabledEvents
2016-11-27 12:01:51 +00:00
Schuyler Cebulskie
c683790de7
Remove old uws-specific code (0.11.1 has the good stuff)
2016-11-25 19:40:53 -05:00
Gus Caplan
0008a18deb
Fantastic PR #368 by Gus ( #921 )
2016-11-23 22:16:19 -05:00
Gus Caplan
c91ee7a3e7
Replace ws with uws ( #918 )
...
* change to uws (waiting for the next release tho)
* clean up, fix reconnections (maybe)
* change voice to use uws
* so messy
2016-11-23 19:30:00 -05:00
Schuyler Cebulskie
a4193553e2
Optimise websocket events
2016-11-20 23:39:40 -05:00
Schuyler Cebulskie
3ef16f97c4
Remove dynamic requires
2016-11-20 20:52:39 -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
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
Programmix
fe3914658a
Grammar cleanup ( #875 )
...
This commit:
* fixes inconsistencies (primarily regarding capitalization)
* fixes non-proper nouns that were improperly capitalized
* fixes reminents from not-so-meticulous copy+paste jobs
2016-11-05 23:57:34 +00: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
8306d50bd8
Clean up a bunch of promise stuff
2016-10-30 12:47:17 -04:00
Amish Shah
81059885a2
Start work on adding reaction support
2016-10-27 15:22:42 +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
Amish Shah
f3439dcf6d
Merge remote-tracking branch 'origin/indev' into indev-voice
2016-10-23 14:46:41 +01:00
Gus Caplan
422b90c711
add way more friend shit ( #815 )
2016-10-22 16:25:55 -04:00
Gus Caplan
e04dbbdb82
add clientuser#friends ( #807 )
...
* add client#friends
* Update Ready.js
* Update Client.js
* move friends to client.user
* Update ClientUser.js
* Update ClientUser.js
2016-10-16 21:28:17 -04:00
Schuyler Cebulskie
fc307fab8a
Remove unnecessary array conversions
2016-10-16 21:14:59 -04:00
Schuyler Cebulskie
13aae621b8
Fix Hyper's error and make it more useful
2016-10-16 20:58:03 -04:00
Schuyler Cebulskie
492f706035
Fix Gus' log messages
2016-10-13 20:05:07 -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
dabe51fc8d
Reorganise disabledEvents stuff
2016-10-09 14:41:57 -04:00
Programmix
3e2d6ccc48
Convert disabledEvents Array to Object ( #786 )
...
* Convert disabledEvents Array to Object
Increased performance
* Commit to please Lord Gawdl3y
* Nitpick with chopsticks
2016-10-09 14:22:52 -04:00
Programmix
4653f88555
Add disabledEvents option to Client ( #784 )
2016-10-09 18:27:31 +01:00
Schuyler Cebulskie
79b0d3f2a5
Client.readyTime -> readyAt (consistency)
2016-10-06 21:48:25 -04:00
Amish Shah
c286c1443f
voice rewrite part 1
2016-10-01 22:23:00 +01: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
Amish Shah
cda31dd224
Fix a potential bug some people have in retrieving endpoints
2016-09-28 18:03:30 +01: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
Amish Shah
0ee3d6bb8a
fix sequences not being reset on new ws sessions
2016-09-27 20:10:42 +01:00
Amish Shah
045153584a
redo the client user presence stuff
2016-09-27 17:57:47 +01:00
Schuyler Cebulskie
36f4df2931
Capitalise two letters
2016-09-26 23:18:39 -04:00
Amish Shah
534d7af8c3
Fix resuming sessions ( fixes #699 )
2016-09-25 15:03:54 +01:00
Amish Shah
03651fd6e3
Change how presences are handled
2016-09-25 14:16:03 +01:00
Gus Caplan
bd1449bc5a
make login sane ( #735 )
2016-09-24 17:55:31 +01: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
Schuyler Cebulskie
47d873a8ca
Move and improve debug/warn docs
2016-09-19 05:11:35 -04:00
Schuyler Cebulskie
6a94658dd7
Clean up some stuff
2016-09-19 04:32:24 -04:00
Schuyler Cebulskie
7d8667694d
Fix massive timeout/interval memory leaks
2016-09-19 03:49:42 -04: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
Amish Shah
f7e89f61e6
Fix channelCreate being emitted twice - fixes #698
2016-09-13 20:00:00 +01:00
Amish Shah
f0a9a1353f
prevent further user inaccuracies
2016-09-11 16:57:09 +01:00
Amish Shah
af33b2b5bb
fix #684
2016-09-11 12:38:57 +01:00
Amish Shah
5b8f882a0f
fix avatars being set to undefined
2016-09-11 11:50:19 +01:00
Schuyler Cebulskie
47d71d32f3
Make grammer gooder
2016-09-11 01:40:37 -04:00
Schuyler Cebulskie
a5a269b940
Fix Hydra's ESLint failure
2016-09-10 12:42:04 -04:00
Amish Shah
fd564176ff
Have block in place for rare weird typing in voice channel bug
2016-09-10 17:28:51 +01:00
Amish Shah
84fe65ec78
Fix members being recreated after leaving - fixes #667
2016-09-10 11:38:48 +01:00
Amish Shah
dd623891e2
websocket should silently error if there are no listeners for error
2016-09-09 17:05:38 +01:00
Amish Shah
85fae72b7b
Fix #657
2016-09-09 16:23:07 +01:00
Schuyler Cebulskie
465ff074e1
Prevent Guild.fetchMember from messing with fetchMembers
2016-09-07 23:12:36 -04:00
Schuyler Cebulskie
f185d892c7
Fix two more lines to use new typing map
...
And a tiny text fix
2016-09-07 00:58:19 -04:00
Schuyler Cebulskie
b7f582b7f0
Clean up a bunch of stuff
...
- Channel typing data is now a Map
- Client properties on structures are now non-enumerable and
non-configurable
2016-09-07 00:24:45 -04:00
Amish Shah
7475f734ac
Add debug stuff
2016-09-04 12:31:16 +01:00
Amish Shah
906672e538
Merge branch 'indev-rewrite-sharding' into indev-rewrite
2016-09-04 12:17:42 +01:00
Amish Shah
1155c482f1
make client.readyTime a date
2016-09-04 11:55:23 +01:00
Amish Shah
9c915d1e0a
Fix constants errors not giving a stacktrace
2016-09-04 11:53:48 +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
Amish Shah
7ff2568cfc
Fix collectors and make guild sync add previously unknown members
2016-09-03 21:21:15 +01:00
Amish Shah
09dee3d46a
Fix ready never firing for truly unavailable guilds
2016-09-03 21:10:10 +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
Amish Shah
c70dfa83fb
Add ShardManager
2016-08-30 17:26:32 +01:00
Amish Shah
680ac48e3d
Emit error instead of console.log
2016-08-30 14:06:16 +01:00
Amish Shah
d249aa10cc
Add client.destroy();
2016-08-30 13:05:57 +01:00
Amish Shah
144638e746
Experimental ClientOptions.fetch_all_members
2016-08-29 13:54:35 +01:00
Amish Shah
001460acc0
Add guild.fetchMembers() 🎉 🎉
2016-08-29 13:20:06 +01:00
Amish Shah
a91fcd5cab
Add ChannelPinsUpdate event
2016-08-28 18:50:55 +01:00
Amish Shah
22062f1f86
Added guild.unban
2016-08-27 22:31:21 +01:00
Amish Shah
642d768cdc
Add textBasedChannel.bulkDelete()
2016-08-26 22:13:27 +01:00
Amish Shah
baff7a094c
Merge remote-tracking branch 'origin/indev-rewrite' into indev-rewrite-voice
2016-08-25 14:26:38 +01:00
Amish Shah
8683f45816
errory voice
2016-08-24 21:38:52 +01:00
Hyper-Coder
7892e62604
Added Client.uptime ( #533 )
...
* Added Client.uptime
* Added Client.uptime
* Update Client.js
2016-08-24 17:16:22 +01:00
Amish Shah
48444a5444
Fix voice channel members
2016-08-23 22:34:51 +01:00
Amish Shah
328f3c4ae8
Add VoiceConnection.disconnect([reason]);
2016-08-23 21:47:41 +01:00
Amish Shah
d8b1ef47cd
voice setup waits for all data
2016-08-23 18:29:53 +01:00
Amish Shah
fa085c18cd
Handle Voice Server Update events
2016-08-23 17:52:40 +01:00
Amish Shah
0edf838474
more voice stuff
2016-08-23 16:59:38 +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
3fded1d7af
Add Sharding Support!
2016-08-22 21:31:43 +01:00
Amish Shah
ac7c543dfe
Fix doc gen
2016-08-21 17:47:16 +01:00
Amish Shah
65350348a8
Document all the events
2016-08-20 00:15:09 +01:00
Amish Shah
d2cba74c13
Remove unused variable to pass ESLint test
2016-08-19 22:35:46 +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
ad8b4c7698
Remove WebSocket datastore - move directly to WebSocketManager
2016-08-19 21:37:27 +01:00
Amish Shah
bd50e3c0a5
Remove VoiceChannel store and add members map
2016-08-19 21:29:07 +01:00
Amish Shah
ed818d6e7f
Remove GuildDataStore and move towards storing data in Maps
2016-08-19 19:58:37 +01:00
Amish Shah
dcba580d89
Implement Sequential Rate Limiting
2016-08-19 18:01:28 +01:00
Amish Shah
392133f927
document websocketmanager
2016-08-19 14:14:30 +01:00
Amish Shah
a2f8680514
Fix protocol versions
2016-08-13 16:23:24 +01:00
Amish Shah
50af835774
Move to v6 protocol
2016-08-13 14:53:04 +01:00
Amish Shah
b8db4c4f4b
ESLint stuff...
2016-08-13 14:44:49 +01:00
Amish Shah
0d53afe3ce
Added ability to edit a role
2016-07-03 16:27:04 +01:00
Amish Shah
3cd91a19aa
Added role.delete()
2016-07-03 13:04:39 +01:00
Amish Shah
849b8df2da
Added guild.createRole()
2016-07-02 21:28:49 +01:00
Amish Shah
bbf0b0683a
Added guild.kick(member) and member.kick()
2016-07-02 17:50:44 +01:00
hydrabolt
fb49ad7d93
Fix Message Sending and Support New Features. The library now supports
...
all the game streaming and URL stuff and is fixed for roles #328
src/client/websocket/packets/handlers/PresenceUpdate.js
2016-05-07 15:35:42 +01:00
hydrabolt
ab17375248
Added GuildUpdate handling, and setting guilds details
2016-05-03 16:42:38 +01:00
hydrabolt
ebfc2169d5
Added ClientUser modification support
2016-05-01 21:12:42 +01:00
hydrabolt
f95c588d87
Added Guild Deletion
2016-05-01 14:51:46 +01:00
hydrabolt
90cf787759
I think I got ChannelUpdate working??
2016-04-30 18:22:09 +01:00
hydrabolt
2341c83638
Added channel.delete()
2016-04-27 16:25:57 +01:00
hydrabolt
b436fac5c4
Fix presence update bug ( #297 )
2016-04-26 17:46:34 +01:00
hydrabolt
2d3116d505
Added guild.createChannel(name, type)
2016-04-26 17:44:42 +01:00
hydrabolt
e9d7dfaee3
Added message.edit(content)
2016-04-24 17:30:58 +01:00
hydrabolt
1676a5e73f
Bridged WebSocket Events and REST Requests. Now REST Requests will respond exactly like WS Events to data
2016-04-24 16:30:58 +01:00
hydrabolt
f3e1760538
add channel.sendMessage and channel.sendTTSMessage
2016-04-21 17:42:52 +01:00
hydrabolt
b8283a8f29
src/client/websocket/packets/WebSocketPacketManager.js
...
Unify ready and reconnecting properties into a single status property
and future-proof Message class
The state of the WebSocketManager is now represented by a single
status property, removing emittedReady
and reconnecting as representations of state.
Message class will now also cache users it isn't aware of that appear
in mentions and authors.
2016-04-20 17:45:20 +01:00
hydrabolt
acc9c9bf12
src/client/websocket/packets/WebSocketPacketManager.js
...
src/structures/datastore/WebSocketManagerDataStore.js
Added "rough" reconnection attempting
The following however still needs to be done:
1) stop trying after a certain amount of time
2) increasing timeout between each timeout
3) re-evaluate the current method of how reconnecting is handled
internally
2016-04-19 20:24:23 +01:00
hydrabolt
00327a5776
Add MessageUpdate handling
2016-04-18 18:12:57 +01:00
hydrabolt
d437fd31cf
MessageDelete handling
2016-04-18 18:06:31 +01:00