* fix(MessageEmbed): Add skipValidation flag to MessageEmbed
* fix(MessageEmbed): Use skipValidation flag in Message
* fix(MessageEmbed): Restore static normalizeField(s) methods
* fix(MessageEmbed): Update typings for constructor
* fix(MessageEmbed): Remove private docstrings/typings
* fix(MessageEmbed): Use skipValidation without storing in instance
* fix(MessageEmbed): skipValidation without modifying normalizeFields
* fix(MessageEmbed): Revert indentation change in typings
* fix(MessageEmbed): Clone logic from normalizeFields (duplicated code ftw)
* revert(MessageEmbed): remove dead code / breaking change
- dead code
discord.js does not use those methods interally and won't in the future, as Discord
does not emit any partial embed updates and doing so in the future seems unlikely.
- a breaking change (an incompatible api change)
Although it's not recommended to do, users can modify
received embeds without cloning them, e.g.:
const embed = message.embeds[0].addField('some title', '');
(replace '' with some function call; this is just an example)
This would no longer throw a synchronous error (breaking change),
but at a later point when actually sending it. (poorer to debug)
Co-authored-by: SpaceEEC <spaceeec@yahoo.com>
* User input sanitation: reimplement disableEveryone into disableMentions
* Change default value of ClientOptions#disableMentions to 'none'
* Update type declarations of disableMentions to include default
* update for compliance with ESLint
* Overlooked these files. Updated for complete compliance with ESLint
* cleanup(StreamDispatcher): remove old 'end' event
* fix(StreamDispatcher): only listen to finish event once
* refactor(VoiceWebSocket): use `connection.client` in favour of `connection.voiceManager.client`
* fix(VoiceWebSocket): use `client.clearInterval` in favour of `clearInterval`
* refactor: destructure EventEmitter
* refactor: destructure EventEmitter from events
* refactor: use EventEmitter.off in favour of EventEmitter.removeListener
* style: order typings alphabetically
* oops
* fix indent
* style: alphabetically organize imports
* style: remove extra line
* Revert "style: remove extra line"
This reverts commit 96e182ed69.
* Revert "style: alphabetically organize imports"
This reverts commit 02aee9b06d.
* Revert "refactor: destructure EventEmitter from events"
This reverts commit 9953b4d267.
* Revert "refactor: destructure EventEmitter"
This reverts commit 930d7751ab.
* Revert "fix(StreamDispatcher): only listen to finish event once"
This reverts commit 485a6430a8.
* refactor: use .removeListener instead of .off
* add ClientOptions#disableMentions and MessageOptions#disableMentions
* provide tests
* don't sanitize controlled mentions
* add @here mentions to tests
* fix indents (6 spaces instead of 8)
* add Util#cleanContent tests
* add typings for removeMentions
* replace @ with @\u200b AFTER cleaning content as suggested instead of using removeMentions
* better explanation of this option
* no newline in Util.removeMentions
* fix long line
* remove double space
* remove comments (change has been reverted)
* Use Util.removeMentions to remove mentions
* use Util.removeMentions in Util.cleanContent
* feat/fix(GuildAuditLogs): handle new event types
* fix(GuildAuditLogsEntry): coerce to numbers, simplify extra for deleted entities
* fix(GuildAuditLogsEntry): do not revert 'type' extra
* typings(MessageEmebd): fix typings for addFields
* fix: add missing semicolon
* docs(MessageEmbed): fix various types
* in accordance with the scope of the PR
* Update src/structures/MessageEmbed.js
Co-Authored-By: SpaceEEC <spaceeec@yahoo.com>
Co-authored-by: SpaceEEC <spaceeec@yahoo.com>
* feat: splice multiple fields
* remove MessageEmbed#spliceField
* add MessageEmbed#spliceFields
* to behave more like Array#splice
* and allow multiple fields to be replaced/inserted
* update typings accordingly
* refactor: rename check to normalize
* check suggests boolean return type
* feat: allow spread args or array as field input
* rewrite: replace addField in favor of addFields
* typings: account for changes
* chore: bump min node to 11.0.0
* for Array#flat
* fix: bump min-node in package engines field
* remove addBlankField
* Initial commit: add 5 initial managers
- Base manager
- GuildChannelManager
- MessageManager
- PresenceManager
- Reaction Manager
- Added LimitedCollection
* Add GuildEmojiManager, various fixes
* Modify some managers and add guildmembermanager
* Initial integration
* Delete old stores
* Integration part two, removed LRUCollection
- Most of the integration has been finished
- TODO typings
- Removed LRUCollection, needless sweeping
* Typings + stuff i somehow missed in ChannelManager
* LimitedCollection typings/ final changes
* Various jsdoc and syntactical fixes, Removed Util.mixin()
* tslint fix
* Grammatical and logical changes
* Delete temporary file placed by mistake
* Grammatical changes
* Add missing type
* Update jsdoc examples
* fix: ChannelManager#remove should call cache#delete not cache#remove
* fix recursive require
* Fix missed cache in util
* fix: more missed cache
* Remove accidental _fetchMany change from #3645
* fix: use .cache.delete() over .remove()
* fix: missing cache in ReactionCollector
* fix: missed cache in client
* fix: members is a collection not a manager
Co-Authored-By: Sugden <28943913+NotSugden@users.noreply.github.com>
* fix: various docs and cache fixes
* fix: missed cache
* fix: missing _roles
* Final testing and debugging
* LimitedCollection: return the Collection instead of undefined on .set
* Add cache to BaseManager in typings
* Commit fixes i forgot to stage yesterday
* Update invite events
* Account for new commit
* fix: MessageReactionRemoveAll should call .cache.clear()
* fix: add .cache at various places, correct return type
* docs: remove mentions of 'store'
* Add extra documented properties to typings
Co-authored-by: Sugden <28943913+NotSugden@users.noreply.github.com>
Co-authored-by: SpaceEEC <spaceeec@yahoo.com>
* Add support for MessageReaction#remove and MESSAGE_REACTION_REMOVE_EMOJI
* Remove reaction from cache
Co-Authored-By: matthewfripp <50251454+matthewfripp@users.noreply.github.com>
* fix: message may be partial
* Clarify what the event entails
* Document client in MessageReaction
Co-Authored-By: SpaceEEC <spaceeec@yahoo.com>
* await the REST call
* Add MessageReaction#remove to typings
Co-authored-by: matthewfripp <50251454+matthewfripp@users.noreply.github.com>
Co-authored-by: SpaceEEC <spaceeec@yahoo.com>
* docs(MessageMentions): channels are actually in order
* docs(MessageMentions): readd info about order for channels
* docs(MessageMentions): reword info to account for rtl locales