Commit graph

275 commits

Author SHA1 Message Date
iCrawl
8a9b6cbdb5 Stop doubling the message key 2017-07-31 01:32:44 +02:00
iCrawl
bdc61a4068 Wrong operator in flattenErrors 2017-07-31 01:29:46 +02:00
SpaceEEC
a56a24d042 Fixed DiscordAPIError#message sometimes being undefined 2017-07-31 01:26:42 +02:00
Crawl
26e5ef3205 Update deps and fix webpack 2017-07-16 14:34:23 +02:00
Gus Caplan
85ec7c64bc update docs for discord api error (#1575)
* aaaaa

* Update DiscordAPIError.js
2017-06-29 19:52:44 +01:00
Gus Caplan
3ec08d5976 add nsfw options to 11.1 search (#1540)
* Update RESTMethods.js

* Update TextBasedChannel.js
2017-05-29 23:53:49 +02:00
Gus Caplan
6eced4d465 fix infinte loop issue (#1488) 2017-05-14 19:34:51 +02:00
aemino
e3c3a4fd60 GuildMember#setVoiceChannel fix (#1482)
Looks like someone forgot to remove the full channel object from the PATCH payload.
2017-05-12 06:42:18 +02:00
SpaceEEC
1e115efa56 fix fetchMentions' auth header, options and data mapping (#1457)
* fix fetchMentions' auth header, options and data mapping

* vscode strikes again

* switched to Util.mergeDefault

* vscode

* removed duplicated optionals and switched to instanceof
2017-05-06 01:04:05 +02:00
Anxeal
e96daba7c0 Fix typo in RESTMethods.js (#1455)
Mentions should be written with a capital M
2017-05-03 20:36:22 +01:00
Anxeal
3a73628567 Fix typo in RESTMethods.js (#1454)
fetchMeMentions -> fetchMentions 🤔
2017-05-03 20:36:17 +01:00
Cody A. Taylor
61a081faa5 Document flattenErrors keys param (#1447)
* Document flattenErrors keys param.

* Remove parens.

* Capitalise a letter
2017-05-01 20:47:45 +01:00
Crawl
ac92d2cecc Improve docs a bit 2017-04-30 04:30:44 +02:00
Amish Shah
1a69331f0c Merge branch 'master' of https://github.com/hydrabolt/discord.js 2017-04-29 21:09:56 +01:00
Amish Shah
c40252381b Deprecate all the things 2017-04-29 21:09:53 +01:00
Gus Caplan
4127cf6e40 Experimental support for Audit Logs (#1403)
* start audit logs

* make better var types so gawdl3y doesn't shit on this

* add constructor stuff

* make more changes

* add entry creation

* add methods

* make it all work hopefully

* aaa

* aaaa

* i wish i could test this locally

* fix users, guild when i feel like it

* make guild prop non-enumerable

* make better types

* change nouns

* e

* Update GuildAuditLogs.js

* Update GuildAuditLogs.js

* Update GuildAuditLogs.js

* eek

* Update GuildAuditLogs.js

* Update GuildAuditLogs.js

* friggin trailing spaces

* Update GuildAuditLogs.js

* docs!

* Update GuildAuditLogs.js

* reason stuff

* Update GuildAuditLogs.js

* Update GuildAuditLogs.js

* support before/after for pagination

* Update Guild.js

* Update GuildAuditLogs.js

* mfw using github web editor

* fix build

* Update Guild.js

* amazing cache fuckery shit evil

* cool stuff

* make building audit logs nicer

* ban endpoint stuff

* dox

* <.<
2017-04-29 20:34:57 +01:00
Amish Shah
b0a3528411 sorry gus i borked 2017-04-29 20:00:05 +01:00
Amish Shah
195fcfa15c Rewrite WebSocket internals (#1410)
* Start rewriting Manager and Connection

* more stuff

* stuff

* Fix ready bug

* some stuff i forgot

* fix some stuff

* add stupid heartbeat ack like seriously who cares

* woo!

* fix a bug

* rate limit the dumb websocket

* stuff

* hdocs

* Docs

* Remove ClientManager#setupKeepAlive as it is now redundant

* Change Client._pingTimestamp to a getter that fetches the timestamp from the WebSocketConnection

* are you happy now eslint smh

* make gus happy

* Add CloseEvent external doc

* Make sure to emit 'reconnecting' when actually reconnecting

* ffs

* Fix RESUME logic

* Add heartbeat ack debug messages, including latency data

* Dumb stuff for Gus

* thx eslint

* more dumb stuff

* more dumb crap smh gus i h8 u

* moar messages

* fix for using wrong status, causing certain events not to be fired (#1422)
2017-04-28 16:13:06 +01:00
SpaceEEC
909b825c94 Fixed acknowledging of channels (#1411)
* Fixed acknowledging of channels

* using channel#lastMessageID and resolve when it's not present
2017-04-25 23:29:08 +02:00
Gus Caplan
c670209021 allow search('string here') (#1408) 2017-04-24 16:43:30 +02:00
Drahcirius
84aab1021a reaction remove fix (#1366) 2017-04-11 18:10:14 +01:00
Amish Shah
25e0048bbf remove useless waiting reference 2017-04-11 17:59:27 +01:00
Amish Shah
6495df50f9 Fix sequential rate limiting 2017-04-11 17:54:03 +01:00
Gus Caplan
0a56fa0aae websocket cleanup (#1346)
* websocket cleanup

* resume event

* Update Resumed.js

* Update WebSocketManager.js
2017-04-10 20:02:17 +02:00
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
SpaceEEC
6ce24398ab Fix messageReactionAdd internally & doc fix (#1341) 2017-04-05 21:34:14 +02:00
SpaceEEC
ecb8655dac Document readonly and private properties (#1338) 2017-04-03 20:05:36 +02:00
SpaceEEC
d2e3d6dc63 replaced 'del' with 'delete' (#1328) 2017-04-01 16:16:05 +02:00
Gus Caplan
cb3f6d9646 http rewrite (actually works this time!!1!) (#1257)
* rewrite http

* browser fun

* all the mimes dammit

* i need a newline

* whoops

* forgot about this

* use promises and HTTPRequest.method

* fluent

* move httpclient to external module

* branding

* middleware

* revert middleware
2017-04-01 09:04:01 +02:00
Gus Caplan
a4e0af2e45 make positions for channels and roles nicer (#1211)
* make role calculated position nicer

* make channels sortable in a nice way too

* stupid git web rebase editor

* Update Guild.js

* Update Guild.js

* Update Guild.js

* Update Guild.js

* Update RESTMethods.js
2017-04-01 08:28:54 +02:00
SpaceEEC
07740955cf Fixing stuff, borked by #1323 (#1326)
* several things

* see my comment

* Fixed missing stuff and returned undefined
2017-04-01 07:29:31 +02:00
Gus Caplan
1df3b84da6 rewrite endpoints for consistancy and modularity (#1323)
* rewrite endpoints for consistancy and modularity

* clean up a bit

* add missing endpoint
2017-03-31 18:36:09 +01:00
SpaceEEC
e08f2bad30 Add guild#createRole resolve permissions and RoleData optional (#1321)
* resolving permissions

* make RoleData optional
2017-03-31 12:55:23 +02:00
Gus Caplan
dd8907472c nonce has to be a uint64 :< (#1240)
* nonce me daddy

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* (╯°□°)╯︵ ┻━┻

* Update RESTMethods.js

* Update RESTMethods.js
2017-03-21 03:17:20 -04:00
Gus Caplan
3e0c0f44a2 make useragent better because data is fun (#1244)
* Update UserAgentManager.js

* Update UserAgentManager.js

* gawdl3y is one of the most pants-on-head retarded people i have ever met

* Update UserAgentManager.js

* Update UserAgentManager.js

* Update UserAgentManager.js

* Update UserAgentManager.js
2017-03-21 03:12:20 -04:00
Programmix
633e3ca896 Fix addRole/removeRole when the user has/doesn't have the role (#1288) 2017-03-21 01:52:43 -04:00
Schuyler Cebulskie
136cab240d Add new ESLint rules 2017-03-17 01:23:39 -04:00
Gus Caplan
94062d19dd Add message/channel/guild acknowledging (#1239)
* add acking

* 👀

* Update RESTMethods.js

* Update TextBasedChannel.js

* Update RESTMethods.js

* Update Guild.js

* Update TextBasedChannel.js

* Update Message.js

* super shitty names

* Update GroupDMChannel.js

* Update DMChannel.js

* Update TextChannel.js
2017-03-16 09:38:12 -04:00
Gus Caplan
a82d9f1fbb add multi-file support (#1268)
* add multi-file support

* (╯°□°)╯︵ ┻━┻

(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻(╯°□°)╯︵ ┻━┻

* stupid git web rebase editor - Gus2k17

* Update TextBasedChannel.js

* Update TextBasedChannel.js
2017-03-15 15:10:49 +01:00
Crawl
4ef0ec491c Add arrow-parens eslint rule & fix inconsistencies 2017-03-13 15:56:00 +01:00
Schuyler Cebulskie
16fe48d405 Overhaul Permissions utilities (EvaluatedPermissions no more) 2017-03-06 02:22:42 -05:00
Amish Shah
33de408a70 fix bulk delete endpoint 2017-03-04 00:35:54 +00:00
Schuyler Cebulskie
f3a7f59824 Several improvements
- Rename Guild#updateChannelPositions -> setChannelPositions
- Allow Guild#setChannelPositions to take ChannelResolvables
- Prioritise ClientDataResolver#resolveChannel's string case
- Minor cleanup
2017-02-25 15:29:32 -05:00
Gus Caplan
4c9d8d6cd7 add lots of group dm features (#1208)
* group dm stuff

* minor doc changes
2017-02-22 20:33:20 +00:00
lipgloss
f068010e96 Implement 'Modify Guild Channel Positions' (#1198)
* Adding shuffleArray method to utils

* Shuffle channels functionality on guild.

* Comment fix

* Removing shuffle functionality and replacing with a simple update

* Code review changes to method/variable names

* Update comment reference to channelId as well

* Updating jsdoc with typedef of ChannelPosition
2017-02-22 20:24:05 +00:00
Gus Caplan
61e12c637b Add support for more OAuth features (#1203) 2017-02-22 20:09:40 +00:00
Schuyler Cebulskie
8d1bc30e40 Clean up dd6dd6f 2017-02-21 15:07:54 -05:00
Schuyler Cebulskie
7232531eb1 Move all util methods into class
Remove TransformMessageOptions altogether
2017-02-15 22:25:18 -05:00
Gus Caplan
ec1ed15c88 Fix request handling (#1180)
* clean up ratelimiters, and disable burst until some big questions are handled

* burst mode is a work

* fix burst again
2017-02-11 12:04:24 +00:00
Mike
dd6dd6fb59 Added support for adding users to guild 2 (#1179)
* Added support for adding users to guild

added RESTMethods#AddGuildMemberOptions and Guild#addMember with typedef
AddGuildMemberOptions to be able to add user to guild as a member
through `PUT/guilds/{guild.id}/members/{user.id}`
https://discordapp.com/developers/docs/resources/guild#add-guild-member

* fixing lint errors

* Changes based on discussion

* Changes based on discussion 2

* Changes based on discussion 3

Yay! More changes.
2017-02-08 21:04:39 +00:00
Zack Campbell
2518a0f7e2 Fix for incorrect oldMember in guildMemberUpdate event after addRole (#1129)
* Fix for incorrect oldMember in guildMemberUpdate event after addRole

`addRole` would modify the cached GuildMember rather than letting it be handled internally when a guild member update packet is received from Discord, leading to the `oldMember` and `newMember` being identical following a call to `addRole`

This is currently how `addRoles` does it, and a correct oldMember is passed to the `guildMemberUpdate` event following a call to `addRoles`

* Return cloned member with added/removed role

So we can return a member object with the added/removed role without affecting the member object sent to `guildMemberUpdate`

* Wait for guildMemberUpdate and return updated GuildMember

* Fix linter errors

* Remove listeners after 10 seconds
2017-02-08 17:38:57 +00:00
Gus Caplan
cee9e4839c fix sending code when you aren't splitting the message (#1162)
* fasguhq4wbyghjehuibh

kjgewqhuilb

* Update RESTMethods.js
2017-02-02 16:21:26 +00:00
bdistin
a2d6791cd8 Fix CodeBlock Splitting (#1160)
* Fix CodeBlock Splitting

* fix changes requested
2017-02-01 15:31:57 -05:00
Alex
ed42d7bd85 Fix backwards GuildEmojiCreate parameters (#1153) 2017-01-31 00:49:11 -05:00
Gus Caplan
565c640bc6 Add role support to emoji creation (#1141)
* add role support to emojis

* specify types
2017-01-30 22:47:27 -05:00
Alex
18729b25c7 Add support to edit emojis (#1142)
* Add support to edit emojis

* Fixes for coding style.

* Add and use guildEmoji constants for updateEmoji

* Just use the Constant

* Fix typo in edit documentation

* Specify property types

* Fix ridiculous typo.

* Update Emoji.js
2017-01-30 22:47:05 -05:00
Digitroinc
448c93615b fix splitting messages #1148)
* fix for issue #1120

* build fix
2017-01-29 18:58:35 +00:00
Alex
ba7c2db364 Fix createEmoji/deleteEmoji action name. (#1110) 2017-01-24 21:56:19 +00:00
Alexander
5173583e26 Fix empty search query parameters (#1119)
The search function was sending request to stuff like:
search?author_id=&content=&channel_id=135823828352838352
2017-01-24 21:55:59 +00:00
Programmix
c73e501243 Fix RESTMethods.removeMessageReaction (fixes #1114) (#1126) 2017-01-21 19:48:17 -05:00
Gus Caplan
0300601649 remove redundant editing (#1116)
* remove redundant editing

* update docs
2017-01-19 17:11:24 +00:00
Gus Caplan
3f4cbd07dd add voice region getting (#1108)
* add voice region getting

* clean up this mess

* add docstrings

* Update VoiceRegion.js

* Update RESTMethods.js
2017-01-18 19:14:44 -05:00
Gus Caplan
48be401330 add clientuser acceptinvite (#1081)
* add clientuser acceptinvite

* Update RESTMethods.js

* Update ClientUser.js

* Update ClientUser.js

* Update RESTMethods.js
2017-01-14 21:25:12 +00:00
Gus Caplan
7f4846c826 Add option to filter old messages in TextBasedChannel#bulkDelete (#1090)
* add filtering for messages older than two weeks

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update TextBasedChannel.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update RESTMethods.js

* Update TextBasedChannel.js
2017-01-14 16:21:23 -05:00
Gus Caplan
78bf402e8e allow users and members to not be cached (#1097) 2017-01-14 21:20:09 +00:00
Gus Caplan
0d4eab8d24 add color resolvable, and color constants from the client (#1080)
* add color resolvable, and color constants from the client

* fix up docs

* Update ClientDataResolver.js

* add easter eggs

* Update ClientDataResolver.js

* Update RESTMethods.js
2017-01-12 18:43:22 +00:00
Schuyler Cebulskie
5caa7df1d8 Add centralised reply option to message options 2017-01-10 19:25:05 -05:00
Gus Caplan
c37cd3fd91 clean up webhooks and fix sending messages with webhooks (#1078)
* clean up webhooks and fix sending messages with webhooks

* whoops

* fix up options

* Update Webhook.js

* Update Webhook.js

* Update Webhook.js
2017-01-10 16:52:12 -05:00
Gus Caplan
5e7ae847de switch to proper querystring parser because why not (#1077) 2017-01-08 14:49:56 -05:00
ooookai
4a7284b86e move function getRoute(url) into class APIRequest (#1065)
this.route = getRoute(this.url);
  >>>
this.route = this.getRoute(this.url);
2017-01-08 19:34:06 +00:00
Gus Caplan
d47f9d202b update search to have more useful returns (#1060) 2017-01-03 23:49:19 +00:00
Amish Shah
4c8e4fde6f Fix remove reaction endpoint 2016-12-30 18:31:48 +00:00
Amish Shah
50dc9addf1 Fix ESlint error, remove 'long' module import 2016-12-30 17:28:23 +00:00
Gus Caplan
bde6749d65 clean up search (#1049)
* add more search stuff

* clean up the options

* fix link hostname

* use some resolvers

* fix type

* move the trasform to a seperate file

* pass this param

* move typedef
2016-12-30 17:21:03 +00:00
Gus Caplan
da32c2ec3d add more search stuff (#1046)
* add more search stuff

* clean up the options

* fix link hostname

* use some resolvers

* fix type
2016-12-30 17:14:31 +00:00
Gus Caplan
beffb390e6 Add search (#1043)
* add search

* Update ClientDataResolver.js
2016-12-30 02:44:19 -05:00
Schuyler Cebulskie
86ffc86324 Update updateMessage with the new code logic 2016-12-29 10:49:59 -05:00
Schuyler Cebulskie
650acbf662 Improve codeblock lang 2016-12-29 10:44:24 -05:00
Amish Shah
75d45bd587 Fix sending codeblocks without a lang 2016-12-29 14:18:39 +00:00
Gus Caplan
ed8fcf651a Centralise message sending logic in one method, remove sendTTSMessage, add client shortcut in RESTMethods (#1031)
* start wip rewrite of sending/editing messages

* pass the build, modify the edit method to fit the new system

* simplify the applyToClass method

* change handling of file options

* add back message splitting

* i couldn't help myself

* add some smart message options

* clean up, add sexy options

* fix indentation

* fix up splitting

* add \b

* add back old methods for hydar happiness

* clean up more

* move code handling to the rest method

* clean up this.rest.client

* Update TextBasedChannel.js

* add docs back for the bad methods

* fix reply in group dms

* srsly gawdl3y

* make code better

* fix changes for gawdl3y

* fix checking

* remove getter

* make code handling more robust

* k

* fix up sendEmbed docs

* stupid

* fix up more docs because aaaaa

* no more pls
2016-12-28 23:58:30 -05:00
Schuyler Cebulskie
74c3bae506 Teensy weensy cleanup 2016-12-24 19:54:37 -05:00
Schuyler Cebulskie
ab30715028 Fix Hydar's lint errors 2016-12-24 19:49:24 -05: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
Gus Caplan
7c12fdcb56 add payload_json instead of the current iterator (#1015) 2016-12-24 02:04:18 -05: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
Gus Caplan
cecb0aee02 Update User#setEmail/setPassword/setUsername (#991)
* fix some things with user updates and tokens and such

* fix stupid

* Update ClientUser.js

* Update ClientUser.js
2016-12-22 15:12:29 -05: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
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
9c59b649ad get rid of user agent errors (#990) 2016-12-15 16:32:06 +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