Commit Graph

911 Commits

Author SHA1 Message Date
Isabella
0a951cfc0f docs: TextChannel Webhooks fix&improvement 2018-03-03 18:55:54 -06:00
Isabella
b637c9c220 feat: allow multiple permission overwrites when editing channel (#2370)
* feat: allow multiple permission overwrites when editing channel

* undo Permissions#resolve change
2018-03-03 11:18:58 -06:00
Frangu Vlad
069dccfa3b docs: document the messages property for all TextBasedChannels (#2373)
* Document TextChannel#messages

* Same for DMChannels

* And GroupDMChannels
2018-03-03 11:04:33 +01:00
Will Nelson
cf7dcba1a5 Add toJSON methods (#1859)
* tojson things

* fix client

* ignore private properties

* remove extra property descriptors

* handle primitive flattening

* remove unused import

* add toJSON to collections

* reduce stateful props

* state

* allow custom prop names when flattening

* fix client

* fix build

* fix flatten docs

* remove guild.available, cleanup permissions, remove arbitrary id reduction

* fix util import

* add valueOf as needed, update member props

* fix incorrect merge

* update permissionoverwrites and permissions

remove serialization of permissions in PermissionOverwrites#toJSON.
change Permissions#toJSON to serialize permissions, by default excluding
admin checks.

* change Permissions#toJSON to return the primitive

* Permissions#toJSON explicitly return bitfield
2018-03-01 23:00:21 -06:00
Lewdcario
24571e465b docs: examples & improvements 2018-03-01 22:50:45 -06:00
Pascal
464fc14edd fix(Activity): ensure that timestamps are actually numbers
Fixes #2364
Discord sends those timestamps packed as SMALL_BIG_EXT, which get converted to strings in js.
~~Maybe they are already preparing their timestamps for 2038.~~
2018-02-28 09:31:42 +01:00
SpaceEEC
47bc0fc51e feat(GuildChannel): add fetchInvites method (#2339)
* feat(GuildChannel): add fetchInvites method

* fix: actually use the 'channels' endpoint
2018-02-13 17:29:42 +01:00
Snazzah
43363172c2 docs: Add TypeDef for MessageActivity (#2321) 2018-02-04 20:44:13 +01:00
Frangu Vlad
e0cbf0bb60 feature: add GuildEmoji#fetchAuthor (#2315)
* Make the base code

* Fxi lint
2018-02-02 20:34:21 +01:00
Gus Caplan
bd1bf11ed0 spotify stuff (#2314) 2018-02-02 12:45:18 -06:00
Lewdcario
234648bd2a fix(ClientApplication): createAsset incorrectly resolving image and posting 2018-02-02 11:41:08 -06:00
SpaceEEC
016526486c enhancement(Activity): add toString method (#2313) 2018-02-01 18:41:05 -06:00
Lasse Niermann
31873eb3a5 docs(ClientUser): mark email field as user account only property (#2306)
* Store Mail - User Account Only

Added that info

* docs(ClientUser): mark email field as nullable
2018-02-01 20:29:20 +01:00
Pascal
32e2dd212e fix: add clone methods to GuildMember and GuildMemberRoleStore
Fixes #2312
This adds clone method to both classes to achieve the expected behaviour when cloning a GuildMember, also cloning their roles store
2018-01-31 21:04:15 +01:00
Isabella
9810bdbc5f fix(MessageEmbed): remove length checks (#2304)
* fix(MessageEmbed): remove length checks

* update error messages
2018-01-29 10:56:55 -06:00
Lewdcario
2e0048add1 docs: doc changes 2018-01-27 23:41:25 -06:00
Lewdcario
d93d628f19 make Message#member a getter 2018-01-27 17:04:03 -06:00
Dim
10f98d8e57 use String#padStart for Role#hexColor (#2294) 2018-01-27 07:42:49 +01:00
Frangu Vlad
a832b56469 GuildEmoji: Move all role related functions to a separate store (#2271)
* Prepare to work on moving all role functions to a Store

And yes, this is *another* patch branch cause I messed up my master branch to hell

* Move all emoji role related functions to its own store
Tested everything and it works! (With a reload of the client)
Also had to change a value in DataStore#holds
holds.name for GuildEmojis would return the emoji name instead of the class name

* New Line

* Thanks JS for circular dependency!
Because we can't have nice things...

* Do space's request

* Fix equals

* Fix space's point.

Raw API data has the role property as an array of IDs
2018-01-24 20:47:20 +01:00
Dragon Fire
16b5de5d52 fix(Role) Update usages of highestRole#comparePositionTo to use GuildMemberRoleStore (#2289) 2018-01-24 13:34:11 +01:00
Frangu Vlad
00172e6c7d refactor: Move member role-related functions to a special store (#2242)
* Ignore this I need a patch branch for Git

* Move all member role related stuff to a new DataStore
GuildMemberRoleStore is a new store that holds all member role related stuffs
Because its consistent!

* Minorest doc fix ever
To whoever did this object, they forgot a `{`

* Fix the spacing in the docs

* Resue the stores resolve rather than copy paste
Cause I'm dum and it overwrite resolve to the guild role stores resolve soo

* Fix some requests
- Removed the bs private functions
- Set the roles in the constructor

But, I need feedback. There is no way, that I saw, to make a member have roles whenever GuildMmber#_patch is called,
due to the roles being null on the guild. So the only way might be the for loop and getter.

* Fix an issue that I caused in #add
I was testing some other things, and changed that to test. Forgot to change it back

* Actually make the store generate just once when the member is created by first initializing the roles in the guild
Also replaces GuildMember#_roles with GuildMemberRoleStore#_roles
Tested all functions to make sure the expected result happens.

* I missed this from moving remove from GuildMember to GuildMemberRoleStore

* Fix RoleStore#create docs
For real this time

* Do all the requested changes
- Rename all `somethingRole` to `something` (hoistRole => hoist)
- Refactor add and remove to be cleaner and re-use set

* Fix a bug where the store would loose some roles due to null roles that can throw an error in the for loop after they've been deleted

* Remove the `role.id || role` part of the add and remove functions as Appel suggested

* Replace roles.resolve with roles.resolveID for GuildMemberRoleStore#remove

* Don't use Array.isArray in checks
Use instanceof instead

* Woops, I forgot to change this
Renamed colorRole to color

* The docs have dots, so we place the dots back
2018-01-24 08:12:58 +01:00
Pascal
07c48a6845 fix: require discordjserror to throw meaningful errors where necessary 2018-01-22 20:23:36 +01:00
Pascal
93e083da4f fix(Guild): memberCount not decrementing when an uncached member leaves
This leads to GuildMemberStore#_fetchMany to always reject
because it expects more member than possible.

Also no longer call the GuildMemberRemove handler locally
to not decrement twice.
2018-01-21 07:30:59 +01:00
Kyra
986e6da196 Fix(GuildChannel#clone) options.parent not accepting (falsy) null. (#2262)
* Fixed (falsy) options not being set correctly

* Requested changes.

As a side note, I also default `options.withPermissions` for simplicity, and because it gets ignored in [`GuildChannelStore#create()`](https://discord.js.org/#/docs/main/master/class/GuildChannelStore?scrollTo=create).

* Fixed the overwrites option
2018-01-20 19:30:30 +01:00
Amish Shah
f588b3fd20 Merge branch 'master' into voice-rewrite 2018-01-20 13:50:34 +00:00
Pascal
fbd25f8677 fix(GuildMember): make edit method only modify a copy of the voice state
This is to fix stale members in voice channels.
2018-01-20 12:44:27 +01:00
Schuyler Cebulskie
f649610c26 Merge branch 'master' into voice-rewrite 2018-01-18 19:49:23 -05:00
SpaceEEC
aa3407f705 Base Emoji class for ReactionEmoji and renamed GuildEmoji classes (#2230)
* feat: create base Emoji class for ReactionEmoji and new GuildEmoji

* rename EmojiStore to GuildEmojiStore to account for the new class' name
2018-01-18 02:38:45 -06:00
bdistin
b846cbd2b3 GuildChannel.permissionsFor(role) (#2254)
* GuildChannel.permissionsFor(role)

* 1Comp's requested changes
2018-01-18 02:28:14 -06:00
Michel Nguyen
19591b0bb1 docs: fix attachFiles() docs (#2267)
* docs change

* fix attachFiles docs

* why was this still here
2018-01-18 07:42:05 +01:00
Amish Shah
b94d60d2ab Merge branch 'master' into voice-rewrite 2018-01-16 17:24:07 +00:00
Alex
e576387fea Fix ReactionCollector#remove and make Collector interface more consistent (#2221)
* Fix ReactionCollector#remove and make Collector interface more consistent

* Move those below the doc

* Remove object spread

* Only emit event arguments

* Forgot to delete this line

* Update docs

* Also fix this

* More edits to docs

* Snowflake|string
2018-01-16 01:33:58 +01:00
Isabella
36555c1cea refactor(GuildMember#manageable): refactored kickable and bannable (#2211)
* refactor(GuildMember#manageable): merged kickable and bannable code

* hydar suggestion
2018-01-16 01:32:40 +01:00
bdistin
3038d4b2c7 Address missing application docs in setPresence (#2257)
fixes #2103 according to how crawl says it should be fixed in #2104
2018-01-16 01:20:36 +01:00
bdistin
4fb7e64a39 Add parent, nsfw, bitrate, and userLimit options to GuildChannel.clone() (#2259)
* Add parent, nsfw, bitrate, and userLimit options to GuildChannel.clone()

* fix lint
2018-01-16 01:20:09 +01:00
iCrawl
f61b57ce10 Merge branch 'master' into voice-rewrite 2018-01-15 04:45:48 +01:00
Dim
351f5f7209 fix: missing height & width in embeds (#2249) 2018-01-14 13:28:46 +00:00
Dim
a3be0f3726 docs: Collection > RoleStore (#2251) 2018-01-14 13:28:00 +00:00
Amish Shah
d541cac9b3 Merge branch 'master' into voice-rewrite 2018-01-13 12:47:56 +00:00
bdistin
2249da464f Fix member.ban() and channel.clone() (#2241)
* Fix member.ban()

* also fix channel.clone()

* type is an option parameter in the new create

* lint

* better fix for clone
2018-01-11 18:44:35 +00:00
Isabella
9eac19d9d8 refactor: more oop with stores (#2216)
* refactor: more oop with stores

* forgot bulk delete

* Revert "forgot bulk delete"

This reverts commit 1b4fb999ee07b358ee6e1af9efb8981b84f83af1.

* appease linter

* missed some


shh

* fail
2018-01-11 16:33:30 +00:00
Schuyler Cebulskie
da32dae8f5 Merge branch 'master' into voice-rewrite 2018-01-10 00:14:29 -05:00
bdistin
5efddac025 Fix Channel.delete() example (#2238) 2018-01-09 21:17:08 +01:00
Amish Shah
096124b179 Merge branch 'master' into voice-rewrite 2018-01-05 21:24:23 +00:00
Isabella
45127bb408 docs: improve examples (master branch) (#2209)
* docs: improve examples

* more improvements


fix


maybe this


another example


collectors

* stuff
2018-01-04 01:12:05 +01:00
Isabella
61da73fee0 GuildMember#permissionsFor takes object (#2210) 2018-01-04 01:04:19 +01:00
Gus Caplan
abb93c9eb9 fix location of toString for channels (#2202) 2018-01-04 01:01:39 +01:00
Darqam
954a1c8d1a updating channelCreate example to reflect recent changes (#2194)
* updating channelCreate example to reflect recent changes

Type is now part of the options object, so the example should reflect that.

* changing type to reason per comment
2018-01-04 01:00:39 +01:00
Amish Shah
ac7e066126 Merge branch 'master' into voice-rewrite 2018-01-03 11:28:59 +00:00
Steven
229eb2be2d Fix Collector bug where checkEnd is only called on a valid message (#2186) 2017-12-31 20:21:29 +01:00