Commit graph

1524 commits

Author SHA1 Message Date
Isabella
39013b1242 fix: made options.type optional in ClientUser#setActivity (#1875)
* fix: made options.type optional in ClientUser#setActivity

* some changes, smol fix

due to too many types being possible, it should just be defaulted to 0. this means streamers will have to set the type manually, though.
also mistake with activity.name check
2017-09-03 12:00:11 +02:00
Gus Caplan
c4df2502ec Rewrite presence a little bit (#1853)
* such presence many good

* Update PresenceStore.js

* Update index.js

* Update ClientPresenceStore.js

* Update Presence.js

* Update ClientPresenceStore.js

* Update ClientUser.js

* Update Presence.js

* add timestamps and party

* Update Presence.js

* Update PresenceStore.js

* Update ClientPresenceStore.js

* Update ClientPresenceStore.js
2017-09-02 23:57:02 +01:00
Raphael
765b652e6a fixed a little typo in docs of <User>.displayAvatarURL() (#1872) 2017-09-02 14:56:49 +02:00
SpaceEEC
1bdaa62481 fix(Guild): passing the constructor partial data from an invite no longer errors (#1868) 2017-09-01 16:05:02 +02:00
Isabella
b8a37b6f0c fix removal of Guild#afk/system channels and icon (#1863)
* fix removal of Guild#afk/system channels

* guild#setIcon too

* less ternary, many wow
2017-09-01 07:33:41 +02:00
Frangu Vlad
434a22dc4e MessageOptions can take content (#1861) 2017-08-31 18:27:58 +02:00
Amish Shah
7f921883f4
Fix TextChannel#createWebhook 2017-08-31 15:55:05 +01:00
Frangu Vlad
7b6190da01 Fix documentations that were incorrect or missing (#1837)
* Fix docs for Guild#pruneMembers

* ClientApplication returns

* Guild#deleteEmoji

* Guild#setRolePosition takes RoleResolvable

* Client#fetchApplication returns ClientApplication not Oauth2Application

* ClientDataResolver#resolveImage can return null

* ClientApplication#toString small example

* Guild#allowDMs now has a only for user accounts warning

* ClientUserSettings#patch is private and setGuildPosition has a user account warning

* Role#setPermissions can take PermissionResolvable, not just String

* ChannelCreationOverwrites is for a role or a member, not for a "group"

* Fix ChannelData#userlimit string being wrong
"The user limit of voice the channel" :lul:

* ChannelResolvable is only for Channel or Snowflake

* EmojiIdentifierResolvable supports Snowflakes

* UserResolvable doesn't take a guild

* Make patch functions private

* Remove examples

* Webhoox#edit options.name defaults to the webhook name

* Make VoiceConnection functions private

* Am dum
The whole ClientUserSettings category is only for self bots soo

* Value for update functions is *

* Make update functions be private

* Fix GuildEditData missing Ssytemchannel property

* PermissionOverwriteOptions can accept null as an option
(Why did no-one document this?)
2017-08-31 09:16:27 +02:00
Amish Shah
5121a02f13
Fix #1854 2017-08-30 12:33:01 +01:00
Amish Shah
eb5ba4e45e
Fix #1855 2017-08-30 12:20:32 +01:00
SpaceEEC
4e028d713a Fixing MessageReaction#count always being 1 (#1857) 2017-08-30 13:01:27 +02:00
SpaceEEC
b7c55f02c2 Allow Message#edit to accept a MessageEmbed as options parameter (#1844) 2017-08-28 03:05:34 +02:00
SpaceEEC
65d9d46a3c Fixed DataStore, deprecation leftovers and a bit of Event Constants (#1841)
* Fixed leftover fetchThing and removed unused methods/error messages

* Added resume event constant and used event constants wherever possible

* Replaced mentions of removed method name with their new name.

* Fixed typo: resume -> resumed
2017-08-28 00:11:28 +02:00
SpaceEEC
c4fecf6609 Simplified image resolving and used an options object when creating webhooks (#1843) 2017-08-28 00:11:19 +02:00
SpaceEEC
258fc4ecf3 Fix MessageMentions#has not returning true for role mentions (#1840) 2017-08-27 23:51:15 +02:00
iCrawl
3c532f16bc
Remove unused Util require 2017-08-26 16:12:18 +02:00
Amish Shah
4f5cbbc0f0
Merge branch 'master' of https://github.com/hydrabolt/discord.js 2017-08-26 13:51:56 +01:00
Amish Shah
7d750c4680
pass on error 2017-08-26 13:51:53 +01:00
Gus Caplan
d792c6764a ChannelStore LRU (#1832) 2017-08-26 13:48:31 +01:00
Amish Shah
92a52460e1
Fix GuildMemberStore docs 2017-08-26 13:47:26 +01:00
Amish Shah
30dd3e0cff
Fix #1684 2017-08-26 13:43:13 +01:00
Amish Shah
51fe80fd11
fix fetching all members 2017-08-26 13:08:54 +01:00
Amish Shah
c3d7c73e47
Add GuildMemberStore#fetch 2017-08-26 13:00:36 +01:00
Frangu Vlad
284f4e8ac0 Fix MessageEmbed copy paste (#1834)
The addField function wouldn't have errored if value wasn't a string
2017-08-26 10:03:44 +01:00
BigBrainAFK
86ffdc38d3 Mark video property as readonly (#1833) 2017-08-26 10:00:33 +01:00
Amish Shah
170f687d81
actually fix that delete thing (#1507) 2017-08-26 00:08:12 +01:00
Amish Shah
5a3b59b4b0
Fix #1685 2017-08-25 23:57:29 +01:00
Amish Shah
84153be894
Fix #1281 2017-08-25 23:41:26 +01:00
Amish Shah
5f694d1149
Make resolve types stricter
- UserResolvable no longer allows a guild
- ChannelResolvable no longer allows a message or a guild
- ChannelResolvable no longer allows a message or a guild
2017-08-25 23:10:05 +01:00
Isabella
fbb1253b3f Added resolveImage to reduce code duplication (#1820)
* add client#resolveImage

* oops

* resolveFile fix

* async is the future

* async

* update doc example

* build fix

* doc fix

* fix docs

* thx hydar
2017-08-25 22:17:38 +02:00
Amish Shah
b8315b79c7 Store and Model Refactor (#1618)
* UserStore refactor

* Create ChannelStore, remove redundant methods in ClientDataManager

* Create GuildStore

* Emoji stuff

* Use a Base class where possible to reduce code duplication

* Remove unnecessary comments from ChannelStore

* Add Base._clone();

* Remove unused ClientDataManager methods

* Refactor some more stuff

* ESLint

* Move Client#fetchUser to client.users.fetch

* Remove .has checks and just see if .get is truthy

* Fix guild member chunk error

* ESLint

* Fix typo

* Fix channel storing for user bots

* Remove ClientDataManager

* GuildChannelStore

* Reduce use of Util.cloneObject

* and this one too

* update typings

* Fix MessageUpdate handling (#1507)

* Fix role updates (probably fixes #1525)

* fix for eslint

* Address some of appell's comments

* Use debug constant

* start message store crap if it's ugly tell me later k

* fix that

* message store but works™️

* clean up guild stuff

* clean up channel store stuff

* clean up channel event handling

* does this message stuff work? find out soon in the next episode of dIsCoRd.Js

* eslint

* emojis

* emojis and reactions

* hi my name is eslint and im A LIL SHIT

* so i forgot this huh

* user stuff

* Fix @class

* Fix message stuff

* Fix user store docs

* Document all the bases

* fix the super things

* tidy up remove

* fix textbasedchannel

* fix that too

* fix emoji store

* make voice state stuff less ugly

* make voice states even less ugly

* make members less bad

* fix bug

* fix that too

* fix reactions

* how was this broken for so long

* role store

* remove super._patch from UserConnection

* Rename UserProfile#setup to _patch

* remove unnecessary super calls

* update docgen dep (pls fix travis thx)

* doc messagestore

* fix docs

* message store docs

* things

* DOCS PLS

* more things

* Document TextBasedChannel#messages as a MessageStore

* Rebase

* All the stores!
2017-08-25 21:08:58 +01:00
iCrawl
243ff48a67
Remove unneeded doc string 2017-08-24 00:36:13 +02:00
Gus Caplan
b055dae998 make webpack over 9000 times better (#1816)
* webpack stuff

* even better

* Update browser.js
2017-08-22 19:55:28 +02:00
Isabella
4520c801d3 update attachment & docs (#1815) 2017-08-21 23:11:58 +02:00
Isabella
0c0ec72cb8 Fix Guild#createRole with position (#1720)
* Fix Guild#createRole with position + validation

* remove position validation, small update

* fixed async issue if position provided
2017-08-20 23:36:22 +02:00
Will Nelson
2c763073d7 add capture groups to MessageMentions and validate snowflake ranges (#1612)
* add capture groups

* update patterns to valid snowflake ranges
2017-08-20 23:26:13 +02:00
bdistin
9c2e3b8978 Pass the collection of X collected in collectors (#1594)
...to the filter function.
2017-08-20 23:13:08 +02:00
Gus Caplan
8b8a365e99 fix ratelimits (#1806) 2017-08-20 10:14:38 +02:00
Gus Caplan
8c855855cd Guild/systemchannel (#1799)
* add cool system channel

* Update Guild.js

* Update Guild.js

* Update Guild.js
2017-08-20 05:15:02 +02:00
Gus Caplan
55543754b9 proper fix for #1685 (#1805)
* Update WebSocketConnection.js

* Update WebSocketConnection.js

* Update WebSocketConnection.js

* Update RESTManager.js
2017-08-20 05:14:49 +02:00
Gus Caplan
9b97fe292f Remove partial classes (#1794)
* remove partial objects

* remove partial evil

* Update Invite.js

* Update Invite.js
2017-08-17 20:49:41 +02:00
iCrawl
2aa2f73c74 Docs cleanup 2017-08-17 20:04:01 +02:00
Gus Caplan
5ce0def9d0 fix sync (#1792)
* Update Ready.js

* Update ClientDataManager.js
2017-08-17 18:28:01 +02:00
Gus Caplan
23d42d7e22 permissions rename :3 (#1788)
* permissions rename :3

* Update Permissions.js

* Update TextChannel.js

* Update GuildChannel.js
2017-08-17 18:27:50 +02:00
SpaceEEC
e677543c30 Allow to set the new game types via ClientUser#setPresence and ClientUser#setGame (#1782)
* Allow to set the new game types via ClientUser#setPresence and setGame

* Accept string version of types, fix options parameter, remove Presence#streaming

* One line if statement, don't reuse data.game when game is already reassigned and fix error message

* Removed redundant if statement
2017-08-17 18:27:32 +02:00
Gus Caplan
6065fe1f8c update image sizes, adding some more (#1781) 2017-08-15 21:55:07 +02:00
Gus Caplan
71f2cc10f1 add cover image (#1780)
* add cover image

* Update ClientApplication.js
2017-08-15 21:54:09 +02:00
Gus Caplan
57977b063e channel stuff (#1775)
* channel stuff

* abstract channel creation

* Update Channel.js

* Update Channel.js

* Update Channel.js

* Update Guild.js

* Update Constants.js

* e
2017-08-13 13:57:25 +02:00
SpaceEEC
b2c7fcb603 Add support for new game types (#1777) 2017-08-13 13:56:45 +02:00
Johnson Chen
9c52030c29 ClientUser Fixes (#1741)
* Fixes #1702

* Remove Comments

* Follow what Gus said... I hope

* JSDoc

* Update ClientUser.js

* TIL my knowledge about JSDocs was a lie
2017-08-12 12:01:43 +02:00
SpaceEEC
8034c0437d Fix VoiceChannel#setName and ChannelData#userLimit is a only voice thing (#1771) 2017-08-12 11:55:55 +02:00
Gus Caplan
fbdf028b86 :3 (#1774) 2017-08-12 10:58:51 +02:00
Gus Caplan
3ba224900f new application stuff very hype (#1764)
* application stuff, more to come

* docstrings

* Update Message.js
2017-08-11 19:09:06 +02:00
Gus Caplan
3c7869c1b7 update retry case for 5xx (#1765) 2017-08-10 20:31:45 +02:00
SpaceEEC
d9262f2682 Added and fixed a bunch of docs stuff (#1767)
- Fixed a common copy paste fail `the the <thing>` in various places
- Apparently I can't type Resolvable correctly,
Fixed that wherever applicable
- Documented GroupDMChannel#nicks so that it will be displayed on the docs
- GroupDMChannel#icon is nullable
- Removed empty InviteOptions typdef, as its properties are now documented in GuildChannel#createInvite
- MessageMentions#channels is no longer nullable
- RoleData#permissions takes a PermissionResolvable or an array of them
- Webhook#avatar is nullable
- Added HTTPOptions typedef and added it to ClientOptions typedef
- ClientUserChannelOverride#muted is for a channel and not a guild directly
2017-08-10 20:31:10 +02:00
SpaceEEC
fa5c4efa2b Fixed a bunch of ClientUserGuildSettings stuff and its docs (#1758) 2017-08-10 01:25:24 +02:00
SpaceEEC
87cdad332c Improved Guild#createChannel, added RoleResolvable and fixed a bit of Emoji stuff (#1754)
* Made creating channels with overwrites nicer
and added ClientDataResolver#resolveRole

* Renamed ChannelPermissionOverwrites to ChannelCreationOverwrites

* Added RoleResolvables everywhere possible

* Fixed Emoji#setName resetting restricted roles and Emoji#equals

Which will lead to emojis not to update when roles are being added removed.
2017-08-10 01:22:57 +02:00
SpaceEEC
48b69c6e2f No longer double increment the reaction count when the client reacts (#1755) 2017-08-10 01:21:34 +02:00
SpaceEEC
a49709d329 Readded permissions to Role#edit's payload (#1760) 2017-08-10 01:18:13 +02:00
Raphael
25dd3bc29e updated docs for <ReactionEmoji>.toString() so it now uses send instead sendMessage in example (#1761) 2017-08-10 01:17:12 +02:00
Isabella
62fc9fce6d Add Attachment structure (#1731)
* Add Attachment structure

* Fix linter issues + @private

* Fixed array sends, also added embed sends

* fixed proving path to attachment

* fixed incorrect name assumption from path

* linting fix

* ;)

* im really good at this

* changes as requested by gus

and computer from #1459

* am a dum

* update webhook#send

* readonly addition to getters

* i... uh... oops

* farming deez commits

* fix webhook split

* removed some ugly

* removed .every checks
2017-08-06 18:09:47 -04:00
SpaceEEC
317a352337 Fix ClientUser#settings not showing up in the documentation (#1757) 2017-08-05 15:41:00 +02:00
Gus Caplan
e5be902568 where we're going we don't need referrers (#1749) 2017-08-04 10:46:10 +02:00
Gus Caplan
e5386e33a8 default channel doesn't exist anymore (#1738) 2017-08-04 10:21:16 +02:00
FireController1847
580e066a36 Init pause variable on VoiceBroadcast (#1751)
* Init pause variable on VoiceBroadcast

* Move it back. Could have swore I did this.
2017-08-04 09:21:18 +02:00
Yoson Chiu
ba1c257bb2 Fixes #1693 (#1745)
* Update AudioPlayer.js

* Set timestamp to 0 as well.
2017-08-04 09:18:37 +02:00
SpaceEEC
abfda7c3cc Fixed ClientUser#createGroupDM on user accounts and added some more GroupDMChannel stuff (#1747)
* ClientUser#createGroupDM now works like the docs states on user accounts

* Added GroupDMChannel#setIcon and fixed null handling for the channel name

* Added an s

* Don't resolve when icon is falsy and removed useless name trimming

* Removed now unnecessary name constant

* vscode being great

* Added GroupDMChannel#iconURL
2017-08-04 09:17:46 +02:00
Will Nelson
a30fc87816 fix reply splitting (#1750) 2017-08-04 09:17:10 +02:00
Gus Caplan
fd11381cc5 fix more race conditions (#1740)
* Update ClientUser.js

* Update ClientUserGuildSettings.js
2017-08-01 05:42:22 +02:00
Gus Caplan
4b77f26851 Update ClientUser.js (#1739) 2017-08-01 05:35:59 +02:00
Gus Caplan
963cf42e0d add MessageMentions#has, remove old method (#1724)
* Update MessageMentions.js

* remove old method

* smh

* Update Message.js

* Update MessageMentions.js

* Update MessageMentions.js

* Update MessageMentions.js
2017-08-01 04:49:00 +02:00
Pg Biel
5799ba28f9 Fix Guild.equals (#1713) 2017-08-01 04:48:46 +02:00
Crawl
bda72c60fa CRLF to LF 2017-08-01 04:40:39 +02:00
iCrawl
d4793bae0f Fix tiny doc string 2017-08-01 04:32:29 +02:00
stupid cat
b8034525e3 Add user_guild_settings support (#1365)
* user guild settings

* Use direct collection

* I'm a goof

* double goof

* Structure properties

* Forgot to register listener

* wrong class names

* No more get in docs

* avoid waterfalls, bot checks

* trycatch

wow i thought i already did this :notlikecat:

* 👀

* Update ClientUser.js

* Update ClientUserGuildSettings.js

* Update UserGuildSettingsUpdate.js

* Update ClientUserChannelOverride.js

* Update ClientUserGuildSettings.js
2017-08-01 04:28:15 +02:00
tjpc3
4f5d1bffaf fix node.js crash due to error messages being called with invalid error keys (#1728)
* Comments

* More Comments

* Added new error message

* Fixed error message

* Removing temporary comments

* Fixed error messages

* Added more new error messages

* Removed trailing space

* Removed other trailing space

* Changed error key

* Changed error key used
2017-08-01 04:01:45 +02:00
SpaceEEC
79fed1295c Fixed DiscordAPIError#message sometimes being undefined (#1735) 2017-07-31 01:18:55 +02:00
SpaceEEC
fe8f371d82 Fixed Client#guildMembersChunk's members collection's key being undefined. (#1736) 2017-07-31 01:16:50 +02:00
Gus Caplan
0acb0ac5dc fix unpack weird issues (#1729) 2017-07-29 22:02:56 +02:00
Schuyler Cebulskie
a46f606170 Fix Crawl/Drah garbage 2017-07-27 23:17:39 -04:00
Crawl
7b74b088ac Update nsfw prop 2017-07-28 04:53:23 +02:00
Pg Biel
eef87e5d97 Reasons (#1715)
* Add reasons

* How could I forget

* Hopefully fix conflicts
2017-07-27 03:14:04 +02:00
Gus Caplan
b2ab947180 fix guild audit log fetching of stuff (#1721)
* Update GuildAuditLogs.js

* Update GuildAuditLogs.js

* e
2017-07-27 03:12:41 +02:00
bdistin
080996b5a9 fix sequential and burst ratelimiters from going on timeout because the queue is empty (#1722)
* create branch for me to work on

* fix sequential and burst ratelimiters from going on timeout because the queue is empty
2017-07-27 02:51:58 +02:00
Will Nelson
8bd7b82110 update collectors (#1616)
* start new collector stuff

* bugfixes

* remove pointless cleanup method

* rename methods, events, and options; remove extraneous methods,

* update doc ref
2017-07-26 10:10:35 +02:00
aemino
e29a3ec08b Handle unexpected disconnects via packets (#1521) 2017-07-26 10:10:21 +02:00
aemino
4342ed29a8 Audio bitrate support (#1439)
* Audio bitrate support

Note: not implemented for VoiceBroadcasts

* Fix default args, auto bitrate

* Late night typos are the best

* Changes bitrate to kbps for VoiceChannel stuff

* Add methods to manipulate bitrate while encoding
2017-07-26 10:06:40 +02:00
Will Nelson
7eb9e65c41 check guild availability when aggregating client emojis (#1711) 2017-07-26 10:04:43 +02:00
SpaceEEC
278fe74a58 Adding reason parameter to GuildMember's methods (#1710)
* Added reason parameter to GuildMember's methods

* Reason parameters are optional
2017-07-26 10:04:25 +02:00
Gus Caplan
57b6980313 retry on 500 (#1709) 2017-07-22 23:21:50 +02:00
SpaceEEC
aeb8f85106 Guild#fetchMember's options paremeter should be optional (#1705) 2017-07-21 15:00:20 +02:00
Gus Caplan
a2eeafc75d rewrite ratelimiting and api route builder (#1667)
* rewrite ratelimiting and api route builder

* more stuff

* let people pass their own handlers

* Update burst.js

* Update RequestHandler.js

* Update burst.js

* Update sequential.js

* Update RequestHandler.js
2017-07-21 02:32:40 +02:00
SpaceEEC
11556c0b3b Moved all error strings to src/errors/messages and a few other things (#1695)
* Added missing error messages
As well as `Guild#setRolePosition` and `Guild#setChannelPosition`'s first arg validation
And fixed a typo in `Guild#setChannelPosition`
`roles` -> `channels`

* Reverted collection and Util constructors

* Removed leftover messages
Should have been in the second commit.

* It's a single invalid permission and removed unused flag error

* Fix INVALID_TOKEN -> TOKEN_INVALID as of #1703
2017-07-21 02:27:19 +02:00
Raphael
7a27b12b2b .applicationID and .ownerID return a Snowflake rather than a string (#1700) 2017-07-21 02:11:37 +02:00
Gus Caplan
8cf95dc9b3 update fetch member to work in a more consistent way (#1696)
* Update Guild.js

* Update Guild.js
2017-07-21 02:11:12 +02:00
Raphael
edfd50d003 afkChannelID returns a Snowflake rather than an string (#1697)
little update to <guild>.afkChannelID property in docs
2017-07-18 17:11:09 +02:00
Robin B
7f69c62ddc Fix docs for Application secret type (#1690)
Now a string (as supposed to be) instead of boolean.
2017-07-17 12:03:40 +02:00
SpaceEEC
fdb8f046b5 Fixing MessageEmbed's timestamp transforming (#1688)
when sending to discord
Also storing the timestamp in milliseconds when using setTimestamp
2017-07-16 17:55:51 +02:00
SpaceEEC
b7bbd395e8 Fix for GroupDMChannel#addUser and added removeUser, setName and edit (#1576)
* fixed GroupDMChannel#addUser, added setName and removeUser

and changed every `the Group DM`to `this Group DM`, for consistency

* added edit method

* delete method comes already with the Channel class

* brackets

* removed empty line
2017-07-16 14:15:54 +02:00
SpaceEEC
8580380541 fixed MessageEmbed#timestamp and changed attachFile to attachFiles (#1670)
* fixed MessageEmbed#timestamp and changed attachFile to attachFiles
as well as a few doc changes

* Embed#files shouldn't be a nested array
2017-07-16 14:11:49 +02:00