Skip to content

Latest commit

 

History

History
1835 lines (1373 loc) · 169 KB

CHANGELOG.md

File metadata and controls

1835 lines (1373 loc) · 169 KB

Changelog

All notable changes to this project will be documented in this file.

5.2.1 - (2024-05-06)

🐛 Bug Fixes

  • permissions: Add permissions added by DJS 14.5.2 (7d6a301)
  • deps: Update all non-major dependencies (22f7729)

5.2.0 - (2024-05-02)

🚀 Features

  • command: Add rawName property (#751) (70e1465)

5.1.0 - (2024-04-06)

🚀 Features

  • Add option to retry bulk overwrites (#741) (f8a6ad5)

5.0.10 - (2024-03-23)

🐛 Bug Fixes

  • Actually fix type bundle (7e7074a)

5.0.9 - (2024-03-23)

🐛 Bug Fixes

5.0.8 - (2024-03-23)

🐛 Bug Fixes

  • Resolved issue with registerOptions not picking up default options correctly (#738) (2ad21b5)
  • Update sonar project key (b852496)

📝 Documentation

  • Improve UserError docs (#722) (4f67c5b)

5.0.7 - (2024-01-19)

🐛 Bug Fixes

  • Update transitive sapphire dependencies (fba3ce2)
  • Fixed commonjs typings export mapping (#718) (d10b4fa)
  • computeDifferences: Check channel types (#719) (3a1931b)
  • deps: Update all non-major dependencies (#717) (59f061c)
  • ApplicationCommandRegistries: Add the right ids in the right place (#716) (34193ef)

5.0.6 - (2024-01-10)

🐛 Bug Fixes

  • Re-export more types from @sapphire/pieces (#715) (662f212)
  • deps: Update all non-major dependencies (#713) (134ca45)

5.0.5 - (2023-12-27)

🐛 Bug Fixes

  • Update transitive sapphire dependencies (ddf4f15)
  • deps: Update all non-major dependencies (#704) (9e2dc3b)

5.0.4 - (2023-12-09)

🐛 Bug Fixes

  • Update @sapphire/pieces dependency to have bun load ts files automatically (47945f5)

5.0.3 - (2023-12-09)

🐛 Bug Fixes

  • normalizeInputs: Bring back the defaulting I removed (#701) (0e04eb3)

5.0.2 - (2023-12-05)

🐛 Bug Fixes

  • Update transitive dependencies (16af23b)

5.0.1 - (2023-12-05)

🐛 Bug Fixes

  • Bump transitive dependencies (8863d94)

5.0.0 - (2023-12-04)

🚀 Features

  • Make ESM properly load ESM endpoint and not masquerade as ESM (#700) (59b637e)
    • 💥 BREAKING CHANGE: This ensures that Framework will properly load the files from the dist/esm folder. This is BREAKING to ALL plugins that are not equally updated to load ESM specific files because they will otherwise load the CJS files of @sapphire/framework and every piece will load twice. DO NOT use this version without also updating your plugins! Sapphire plugins have been released alongside this version, third-party plugins will need to be updated by their respective authors!!

4.8.5 - (2023-12-03)

🐛 Bug Fixes

  • Point ESM entrypoint to CJS build (#699) (5132f62)

4.8.4 - (2023-12-03)

🐛 Bug Fixes

  • Convert .js imports to .cjs (#698) (925e2c9)

4.8.3 - (2023-12-02)

🏠 Refactor

  • Switch to split cjs and esm builds and fully build with tsup (#697) (2502abb)
  • Command: Make type guards check the type (3a6b259)

🐛 Bug Fixes

  • computeDifference: Correctly check for extra properties and split up compute difference (#695) (281d118)
  • Command: parentCategory failing with fullCategory.length === 1 (04bc519)

📝 Documentation

  • Command: Update fullCategory's outdated docs (d2d7967)

4.8.2 - (2023-11-16)

🐛 Bug Fixes

  • Register CoreReady piece correctly (#690) (4b99b37)

4.8.1 - (2023-11-16)

🏠 Refactor

  • cooldown: Improve error message (#689) (3dc2019)

📝 Documentation

  • Fix link to discord.js (#683) (2f160ba)

4.8.0 - (2023-11-16)

🏠 Refactor

  • Support latest /pieces type utilities (#687) (a1907e3)
  • cooldown: Use id properties for channelId and guildId (#688) (633d325)
  • Listener: Make loader hooks more resilient (#685) (d310a8a)

🐛 Bug Fixes

  • Update transitive dependencies (85c0280)
  • Set engines.node to >=18 (7cbec42)

🚀 Features

  • Make all pieces virtual (#686) (41bcc9b)

4.7.2 - (2023-10-23)

🏠 Refactor

  • Move preconditions resolvers to dedicated files (#679) (d9bbb28)
  • Move command types to its own file (#678) (832c979)

4.7.1 - (2023-10-16)

🏠 Refactor

  • Expose runInTypeIsSpecificsObject as public static method on Command (6bbe2c1)

4.7.0 - (2023-10-15)

🚀 Features

  • command: Make it possible for runIn to be command type specific (#673) (99ab31e)

4.6.1 - (2023-10-05)

🐛 Bug Fixes

  • events: Add missing discordjs events (#667) (a88c706)
  • ClientPermissions: Fixed permissions checking (#668) (370755e)
  • Fixed types for Node 20 types (de8e8d0)

4.6.0 - (2023-09-06)

🏠 Refactor

  • Change to tsc emitted declarations (#661) (ac99774)

🐛 Bug Fixes

  • Update transitive dependencies (dc0cf8a)

📝 Documentation

  • Temporarily typedoc docgen until typedoc-json-parser is fixed (4eb8306)
  • SapphireClient: Fix link to DiscordJS docs (341d57a)

🚀 Features

  • Add global config for setting the guild ids to register commands to (#659) (de5e8eb)

4.5.3 - (2023-08-23)

🐛 Bug Fixes

  • Command: Make resolveConstructorPreConditionsRunType protected instead of private (ce73c44)

4.5.2 - (2023-08-21)

🏠 Refactor

  • preconditions: Add RunIn, deprecate everything else (#655) (2ed7fa5)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (#656) (6d3b4fc)
  • Bump transitive dependencies (9103253)
  • deps: Update all non-major dependencies (b8ce85d)

4.5.1 - (2023-07-21)

🐛 Bug Fixes

  • preconditions: Resolve deprecated discordjs code (71cf295)
  • identifiers: Fix wrong string for Identifiers.ArgumentGuildNewsThreadChannelError (c711e8c)
  • Update transitive sapphire dependencies (f97ca21)

4.5.0 - (2023-06-29)

🐛 Bug Fixes

  • deps: Update dependency @sapphire/discord.js-utilities to v7 (#639) (a101ccb)

🚀 Features

  • interaction-handlers: Add events for parse return states (#641) (a069d5f)

4.4.4 - (2023-05-24)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (#634) (32015af)
  • deps: Update all non-major dependencies (#633) (fa918b5)
  • Update dependencies (defaefb)

4.4.3 - (2023-05-02)

🐛 Bug Fixes

4.4.2 - (2023-04-27)

🐛 Bug Fixes

  • Add missing permission to account for discord-api-types@0.37.40 (8c5ce9d)
  • deps: Update all non-major dependencies (#631) (d9115d2)

4.4.1 - (2023-04-18)

🐛 Bug Fixes

  • permissions: Add missing permission strings (#630) (23645bb)
  • ArgType: Update type for guild*ThreadChannel (#628) (222d50e)

📝 Documentation

  • Add code of conduct to the repo (f4a9897)

4.4.0 - (2023-04-12)

🚀 Features

  • Make the Application Command Registries status listeners optional (#627) (0e6d59a)

4.3.1 - (2023-04-10)

🐛 Bug Fixes

  • deps: Update pieces and utilities to latest version (e83009a)

4.3.0 - (2023-04-10)

🐛 Bug Fixes

  • Add missing type modifiers (75fb220)
  • Update dependencies (7555627)
  • ApplicationCommandRegistries: Emit event if user is listening for bulk overwrites errors (#622) (55b26ad)
  • deps: Update all non-major dependencies (#620) (5212e8c)

🚀 Features

  • Args: Add guild argument (#626) (ed414f4)

4.2.2 - (2023-03-14)

🐛 Bug Fixes

  • Update to discordjs v14.8.0 (00db5f3)
  • deps: Update dependency @sapphire/ratelimits to ^2.4.6 (#617) (ab9242a)

4.2.1 - (2023-03-09)

🐛 Bug Fixes

  • ClientPermissions: Fixed permission checking for old applications (#616) (725a7d3)
  • events: Add missing discordjs events (#612) (f9606c3)

4.2.0 - (2023-02-22)

🏠 Refactor

  • Expose argument context types (#610) (5ff473f)

🚀 Features

  • Allow member arg to not do a fuzzy search (#611) (22892c3)

4.1.1 - (2023-02-18)

🐛 Bug Fixes

  • Typescript fix for discord-api-types 0.37.35 (#608) (37fdcb4)

4.1.0 - (2023-02-08)

🐛 Bug Fixes

  • Command: Do not attempt to execute application command reloading logic when a command does not have any application commands (#598) (61e96d2)
  • Use declare for store properties to avoid the need for as *Store (#602) (b243bcd)
  • Command: Support BulkOverwrite for reloads (#600) (b4c252e)
  • Args: Ensure proper error types are always thrown (#601) (ee8be2e)

🚀 Features

  • Remove CommandChatInputRegisterShortcut alias interface, prefer using ApplicationCommandRegistry.RegisterOptions instead (#597) (18ad9fa)

4.0.2 - (2023-01-15)

🐛 Bug Fixes

  • Fixed deprecated djs code select menu (#593) (534fcb8)
  • deps: Update sapphire dependencies (#592) (02d4e1b)

4.0.1 - (2023-01-11)

🐛 Bug Fixes

  • ApplicationCommandRegistry: Context menu command matching went wrong (#590) (779dda4)

4.0.0 - (2023-01-08)

🚀 Features

3.2.0 - (2023-01-06)

🐛 Bug Fixes

  • computeDifferences: Ensure Overwrite strategy is actually faster (#586) (bfa3561)

📝 Documentation

  • Add @JcbSm as a contributor (ae9005a)

🚀 Features

  • Add ApplicationCommandRegistriesRegistered event (#587) (b49fd2a)
  • ApplicationCommandRegistries: Add RegisterBehavior.BulkOverwrite which has Sapphire use bulk overwrite for registering Application Commands (#585) (9f0ef5e)

3.1.4 - (2022-11-19)

🐛 Bug Fixes

  • Update dependencies (e474f76)
  • deps: Update sapphire dependencies (#571) (2d379ed)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.7 (#562) (894fa48)
  • Bump lexure and result dependencies (bb9687c)
  • deps: Update dependency @sapphire/discord.js-utilities to ^5.1.1 (#558) (ac5f084)
  • deps: Update sapphire dependencies (#554) (da74216)

3.1.3 - (2022-10-02)

🐛 Bug Fixes

  • Reloading the entire command store didn't fire ApplicationCommandRegistries (#525) (ad21eaa)

📝 Documentation

  • Add @itsUrcute as a contributor (8a8e10f)
  • Add @feefs as a contributor (f7927a9)
  • Add @BenSegal855 as a contributor (af2559c)
  • Add @RealShadowNova as a contributor (45e740b)

3.1.2 - (2022-10-02)

🐛 Bug Fixes

  • Remove object-hash dependency (699eaa7)
  • Bump dependencies (5f5a28f)
  • deps: Update dependency @sapphire/result to ^2.5.0 (#548) (9106f9a)
  • precondition: Use result for PreconditionContainerSingle (#535) (05167f4)
  • Fixed package description to remove mention of nonexistent /lib package (#543) (ae89de2)
  • deps: Update sapphire dependencies (#540) (3ab2f33)
  • Fixed args#restResult including leading space (#531) (3e560c6)

📝 Documentation

  • Install correct d.js version in installation steps (#537) (afeb934)

🧪 Testing

  • Switch from jest to vitest (#526) (c71b8e5)

3.1.1 - (2022-09-03)

🐛 Bug Fixes

  • Bump sapphire utilities (7015275)
  • Only fetch guild ids for commands that require them (#523) (61f2c07)
  • computeDifferences: Do not compute dm_permissions for guild-only commands (#519) (645df81)

3.1.0 - (2022-08-29)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (652135f)
  • args: Make getOption and getOptions return string | null again (77f5ed4)
  • message-listeners: Fixed potential null pointer exception in canRunInChannel (#515) (5409282)

🚀 Features

  • args: Add getOptionResult and getOptionsResults (8031e9b)
  • args: Add ArgsJSON type (b578d54)

3.0.0 - (2022-08-20)

🏠 Refactor

🐛 Bug Fixes

  • Bump deps (275e2a3)
  • Bump dependencies (79c76a1)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.12.0 (#508) (694bd88)
  • Bump @sapphire/result (8366b86)
  • Update sapphire result (fb3aadd)
  • Bump @sapphire/pieces (86b9fbc)
  • Fixed the infinite difference found for commands (#499) (1e11f53)
  • Update sapphire result (c0470f5)
  • deps: Update dependencies (#489) (28633d3)
  • Debump builders to 0.15.x (747be01)
  • Bump dependencies (91ed2d2)
  • deps: Update dependency @discordjs/builders to v1 (#492) (f75351b)
  • Parse BitField to string (#487) (9a74f02)
  • deps: Update sapphire dependencies (#474) (961e0bf)
  • deps: Update sapphire dependencies (#461) (9dc776c)
  • Add @discordjs/builders dependency and bump @sapphire/pieces (#458) (9d876ff)
  • deps: Update sapphire dependencies (#456) (0e6aa35)
  • deps: Update sapphire dependencies (#450) (0d9551e)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.0 (#436) (2bb87cd)
  • computeDifferences: Switch expected and original around for missing choice (47b1a8d)
  • ApplicationCommandRegistry: Fetch localizations for commands (1f76366)
  • Command reloading issues with HMR plugin (#432) (c668f90)
  • InteractionHandlers: Correctly handle modal submits (6f19dda)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.10.0 (#430) (f36f6fd)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.9.7 (#425) (1f048e3)
  • deps: Update sapphire dependencies (#420) (6a644c8)
  • deps: Update sapphire dependencies (#411) (7fb4dba)
  • deps: Update sapphire dependencies (#408) (0ea9553)
  • docs: Update CommandOptions.quotes default value (#407) (c6611df)
  • deps: Update sapphire dependencies (#405) (959e57e)
  • Correct preconditions error messages (#403) (7ef7ac9)
  • deps: Update sapphire dependencies (#401) (c543a34)
  • deps: Update sapphire dependencies (#396) (18ed641)
  • command: Use CacheType generic consistently (#390) (5c8c955)
  • normalizeInputs: Correctly handle old builders version (#387) (95dcb5c)
  • Command: Actually reload the registry on piece reload (4862928)
  • ApplicationCommandRegistries: Registries are empty sometimes (2358f2c)
  • deps: Update sapphire dependencies (#380) (ca7bc92)
  • deps: Update sapphire dependencies (#375) (f829eac)
  • deps: Update sapphire dependencies (#371) (5aedfd8)
  • Remove index from preconditions folder (#369) (92b5542)
  • deps: Update sapphire dependencies (#366) (684acd6)
  • accepted events: Ensure duration isn't destructured when not available (1269305)
  • CoreEmoji: Export named class instead of default (35d02d8)
  • Specify generic for InteractionHandler options (ca0318a)

📝 Documentation

  • Add @nicklvh as a contributor (6b63c67)
  • Add @botatooo as a contributor (f7d113d)
  • Add @UndiedGamer as a contributor (53ba58a)
  • Add @samfundev as a contributor (44ab580)
  • Add @Picowchew as a contributor (8c238a0)
  • Add @matteoturini as a contributor (ddc1d50)
  • Add @EvolutionX-10 as a contributor (33936db)
  • Add @imranbarbhuiya as a contributor (d483127)
  • Add @leonardssh as a contributor (67517ba)
  • Add @r-priyam as a contributor (077b8bb)
  • Fix a small mistake in the jsdoc (#505) (8ca7d7e)
  • Fix Result usage (#502) (fb07af0)
  • listener: Update TSDoc to mention the correct event name (#479) (5bc8a0d)
  • Ts ignore 2 lines for website (#437) (0fbb4ff)
  • changelog: List 2.4.0 on main branch (87b9b5b)
  • Add @feralheart as a contributor (455fc3d)
  • readme: Javascript and typescript support announcement and more (#364) (85b241e)
  • Add tsdoc to InteractionHandlerOptions.interactionHandlerType (18259a7)

🚀 Features

  • Resolve interactions (#503) (a09b4c2)
  • Faster overwrites and string min max length support (#495) (f47e6f6)
    • 💥 BREAKING CHANGE: RegisterBehavior.Overwrite is now the default behaviorWhenNotEqual, and it now uses object hashing instead of checking each property
    • 💥 Co-authored-by: Jeroen Claassens support@favware.tech
  • Omit the warn log message about getting slash commands for all guilds (#477) (70b4861)
  • Add success property in command finished payload (#470) (8198e94)
  • message-resolver: Search in cache when only given ID (#438) (cfb3547)
  • preconditions: Add voice channel only precondition (#462) (5da4e0e)
  • *: Update to discord.js v13.7.0 (#431) (b2d34bd)
  • Support generateUnderscoreLessAliases for command options (#406) (f1d5c21)
  • Update sapphire dependencies to fix issues with typescript nodenext (98b2a8b)
  • Allow module: NodeNext (#394) (781d94f)
  • events: Add jsdoc description to event enum members (#389) (93f24bd)
  • command: Add *Interaction CacheType generics (#384) (98bd4e4)
  • Add "French Quotes" («, ») support for quoted args (#381) (9a25f47)
  • command: Add Interaction and Registry namespace members (#378) (73cfe9f)
  • Migrate to @sapphire/result and re-export the package (#376) (9ed3d98)
  • commands: More types for detailed description (#372) (5f3fea4)
  • command-registry: Allow filtering guildIds from the Failed to fetch guild commands log (#368) (f330d83)
  • command-duration: Add duration to *commandSuccess payloads (#359) (76eebfa)
  • Extract InteractionHandlerParseResult from InteractionHandler namespace (9416b2c)
  • Add duration to *Error and *Finished Message, ChatInput and ContextMenu Command events (#357) (506fd58)
    • 💥 BREAKING CHANGE: The payload for Events.ChatInputCommandFinish has been changed from ChatInputCommandRunPayload to ChatInputCommandFinishPayload
    • 💥 BREAKING CHANGE: The payload for Events.ContextMenuCommandFinish has been changed from ContextMenuCommandRunPayload to ContextMenuCommandFinishPayload
  • Add emoji argument (#349) (15f4e13)
  • Interactions: Interaction Handlers, Application Commands and much much more! (#293) (6bc7f1b)

🚨 Deprecation

  • *: Remove deprecated ExtendedArguments class (#469) (9b51f2c)

🧪 Testing

  • Fix test (c7c8bfd)
  • Add emoji and enum resolver tests (#361) (990be5b)

4.0.0 - (2023-01-08)

🚀 Features

  • deps: Support for djs v14 (#512) (e81cba2)

3.2.0 - (2023-01-06)

🐛 Bug Fixes

  • computeDifferences: Ensure Overwrite strategy is actually faster (#586) (bfa3561)

📝 Documentation

  • Add @JcbSm as a contributor (ae9005a)

🚀 Features

  • Add ApplicationCommandRegistriesRegistered event (#587) (b49fd2a)
  • ApplicationCommandRegistries: Add RegisterBehavior.BulkOverwrite which has Sapphire use bulk overwrite for registering Application Commands (#585) (9f0ef5e)

3.1.4 - (2022-11-19)

🐛 Bug Fixes

  • Update dependencies (e474f76)
  • deps: Update sapphire dependencies (#571) (2d379ed)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.7 (#562) (894fa48)
  • Bump lexure and result dependencies (bb9687c)
  • deps: Update dependency @sapphire/discord.js-utilities to ^5.1.1 (#558) (ac5f084)
  • deps: Update sapphire dependencies (#554) (da74216)

3.1.3 - (2022-10-02)

🐛 Bug Fixes

  • Reloading the entire command store didn't fire ApplicationCommandRegistries (#525) (ad21eaa)

📝 Documentation

  • Add @itsUrcute as a contributor (8a8e10f)
  • Add @feefs as a contributor (f7927a9)
  • Add @BenSegal855 as a contributor (af2559c)
  • Add @RealShadowNova as a contributor (45e740b)

3.1.2 - (2022-10-02)

🐛 Bug Fixes

  • Remove object-hash dependency (699eaa7)
  • Bump dependencies (5f5a28f)
  • deps: Update dependency @sapphire/result to ^2.5.0 (#548) (9106f9a)
  • precondition: Use result for PreconditionContainerSingle (#535) (05167f4)
  • Fixed package description to remove mention of nonexistent /lib package (#543) (ae89de2)
  • deps: Update sapphire dependencies (#540) (3ab2f33)
  • Fixed args#restResult including leading space (#531) (3e560c6)

📝 Documentation

  • Install correct d.js version in installation steps (#537) (afeb934)

🧪 Testing

  • Switch from jest to vitest (#526) (c71b8e5)

3.1.1 - (2022-09-03)

🐛 Bug Fixes

  • Bump sapphire utilities (7015275)
  • Only fetch guild ids for commands that require them (#523) (61f2c07)
  • computeDifferences: Do not compute dm_permissions for guild-only commands (#519) (645df81)

3.1.0 - (2022-08-29)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (652135f)
  • args: Make getOption and getOptions return string | null again (77f5ed4)
  • message-listeners: Fixed potential null pointer exception in canRunInChannel (#515) (5409282)

🚀 Features

  • args: Add getOptionResult and getOptionsResults (8031e9b)
  • args: Add ArgsJSON type (b578d54)

3.0.0 - (2022-08-20)

🏠 Refactor

🐛 Bug Fixes

  • Bump deps (275e2a3)
  • Bump dependencies (79c76a1)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.12.0 (#508) (694bd88)
  • Bump @sapphire/result (8366b86)
  • Update sapphire result (fb3aadd)
  • Bump @sapphire/pieces (86b9fbc)
  • Fixed the infinite difference found for commands (#499) (1e11f53)
  • Update sapphire result (c0470f5)
  • deps: Update dependencies (#489) (28633d3)
  • Debump builders to 0.15.x (747be01)
  • Bump dependencies (91ed2d2)
  • deps: Update dependency @discordjs/builders to v1 (#492) (f75351b)
  • Parse BitField to string (#487) (9a74f02)
  • deps: Update sapphire dependencies (#474) (961e0bf)
  • deps: Update sapphire dependencies (#461) (9dc776c)
  • Add @discordjs/builders dependency and bump @sapphire/pieces (#458) (9d876ff)
  • deps: Update sapphire dependencies (#456) (0e6aa35)
  • deps: Update sapphire dependencies (#450) (0d9551e)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.0 (#436) (2bb87cd)
  • computeDifferences: Switch expected and original around for missing choice (47b1a8d)
  • ApplicationCommandRegistry: Fetch localizations for commands (1f76366)
  • Command reloading issues with HMR plugin (#432) (c668f90)
  • InteractionHandlers: Correctly handle modal submits (6f19dda)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.10.0 (#430) (f36f6fd)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.9.7 (#425) (1f048e3)
  • deps: Update sapphire dependencies (#420) (6a644c8)
  • deps: Update sapphire dependencies (#411) (7fb4dba)
  • deps: Update sapphire dependencies (#408) (0ea9553)
  • docs: Update CommandOptions.quotes default value (#407) (c6611df)
  • deps: Update sapphire dependencies (#405) (959e57e)
  • Correct preconditions error messages (#403) (7ef7ac9)
  • deps: Update sapphire dependencies (#401) (c543a34)
  • deps: Update sapphire dependencies (#396) (18ed641)
  • command: Use CacheType generic consistently (#390) (5c8c955)
  • normalizeInputs: Correctly handle old builders version (#387) (95dcb5c)
  • Command: Actually reload the registry on piece reload (4862928)
  • ApplicationCommandRegistries: Registries are empty sometimes (2358f2c)
  • deps: Update sapphire dependencies (#380) (ca7bc92)
  • deps: Update sapphire dependencies (#375) (f829eac)
  • deps: Update sapphire dependencies (#371) (5aedfd8)
  • Remove index from preconditions folder (#369) (92b5542)
  • deps: Update sapphire dependencies (#366) (684acd6)
  • accepted events: Ensure duration isn't destructured when not available (1269305)
  • CoreEmoji: Export named class instead of default (35d02d8)
  • Specify generic for InteractionHandler options (ca0318a)

📝 Documentation

  • Add @nicklvh as a contributor (6b63c67)
  • Add @botatooo as a contributor (f7d113d)
  • Add @UndiedGamer as a contributor (53ba58a)
  • Add @samfundev as a contributor (44ab580)
  • Add @Picowchew as a contributor (8c238a0)
  • Add @matteoturini as a contributor (ddc1d50)
  • Add @EvolutionX-10 as a contributor (33936db)
  • Add @imranbarbhuiya as a contributor (d483127)
  • Add @leonardssh as a contributor (67517ba)
  • Add @r-priyam as a contributor (077b8bb)
  • Fix a small mistake in the jsdoc (#505) (8ca7d7e)
  • Fix Result usage (#502) (fb07af0)
  • listener: Update TSDoc to mention the correct event name (#479) (5bc8a0d)
  • Ts ignore 2 lines for website (#437) (0fbb4ff)
  • changelog: List 2.4.0 on main branch (87b9b5b)
  • Add @feralheart as a contributor (455fc3d)
  • readme: Javascript and typescript support announcement and more (#364) (85b241e)
  • Add tsdoc to InteractionHandlerOptions.interactionHandlerType (18259a7)

🚀 Features

  • Resolve interactions (#503) (a09b4c2)
  • Faster overwrites and string min max length support (#495) (f47e6f6)
    • 💥 BREAKING CHANGE: RegisterBehavior.Overwrite is now the default behaviorWhenNotEqual, and it now uses object hashing instead of checking each property
    • 💥 Co-authored-by: Jeroen Claassens support@favware.tech
  • Omit the warn log message about getting slash commands for all guilds (#477) (70b4861)
  • Add success property in command finished payload (#470) (8198e94)
  • message-resolver: Search in cache when only given ID (#438) (cfb3547)
  • preconditions: Add voice channel only precondition (#462) (5da4e0e)
  • *: Update to discord.js v13.7.0 (#431) (b2d34bd)
  • Support generateUnderscoreLessAliases for command options (#406) (f1d5c21)
  • Update sapphire dependencies to fix issues with typescript nodenext (98b2a8b)
  • Allow module: NodeNext (#394) (781d94f)
  • events: Add jsdoc description to event enum members (#389) (93f24bd)
  • command: Add *Interaction CacheType generics (#384) (98bd4e4)
  • Add "French Quotes" («, ») support for quoted args (#381) (9a25f47)
  • command: Add Interaction and Registry namespace members (#378) (73cfe9f)
  • Migrate to @sapphire/result and re-export the package (#376) (9ed3d98)
  • commands: More types for detailed description (#372) (5f3fea4)
  • command-registry: Allow filtering guildIds from the Failed to fetch guild commands log (#368) (f330d83)
  • command-duration: Add duration to *commandSuccess payloads (#359) (76eebfa)
  • Extract InteractionHandlerParseResult from InteractionHandler namespace (9416b2c)
  • Add duration to *Error and *Finished Message, ChatInput and ContextMenu Command events (#357) (506fd58)
    • 💥 BREAKING CHANGE: The payload for Events.ChatInputCommandFinish has been changed from ChatInputCommandRunPayload to ChatInputCommandFinishPayload
    • 💥 BREAKING CHANGE: The payload for Events.ContextMenuCommandFinish has been changed from ContextMenuCommandRunPayload to ContextMenuCommandFinishPayload
  • Add emoji argument (#349) (15f4e13)
  • Interactions: Interaction Handlers, Application Commands and much much more! (#293) (6bc7f1b)

🚨 Deprecation

  • *: Remove deprecated ExtendedArguments class (#469) (9b51f2c)

🧪 Testing

  • Fix test (c7c8bfd)
  • Add emoji and enum resolver tests (#361) (990be5b)

3.1.4 - (2022-11-19)

🐛 Bug Fixes

  • Update dependencies (e474f76)
  • deps: Update sapphire dependencies (#571) (2d379ed)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.7 (#562) (894fa48)
  • Bump lexure and result dependencies (bb9687c)
  • deps: Update dependency @sapphire/discord.js-utilities to ^5.1.1 (#558) (ac5f084)
  • deps: Update sapphire dependencies (#554) (da74216)

3.1.3 - (2022-10-02)

🐛 Bug Fixes

  • Reloading the entire command store didn't fire ApplicationCommandRegistries (#525) (ad21eaa)

📝 Documentation

  • Add @itsUrcute as a contributor (8a8e10f)
  • Add @feefs as a contributor (f7927a9)
  • Add @BenSegal855 as a contributor (af2559c)
  • Add @RealShadowNova as a contributor (45e740b)

3.1.2 - (2022-10-02)

🐛 Bug Fixes

  • Remove object-hash dependency (699eaa7)
  • Bump dependencies (5f5a28f)
  • deps: Update dependency @sapphire/result to ^2.5.0 (#548) (9106f9a)
  • precondition: Use result for PreconditionContainerSingle (#535) (05167f4)
  • Fixed package description to remove mention of nonexistent /lib package (#543) (ae89de2)
  • deps: Update sapphire dependencies (#540) (3ab2f33)
  • Fixed args#restResult including leading space (#531) (3e560c6)

📝 Documentation

  • Install correct d.js version in installation steps (#537) (afeb934)

🧪 Testing

  • Switch from jest to vitest (#526) (c71b8e5)

3.1.1 - (2022-09-03)

🐛 Bug Fixes

  • Bump sapphire utilities (7015275)
  • Only fetch guild ids for commands that require them (#523) (61f2c07)
  • computeDifferences: Do not compute dm_permissions for guild-only commands (#519) (645df81)

3.1.0 - (2022-08-29)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (652135f)
  • args: Make getOption and getOptions return string | null again (77f5ed4)
  • message-listeners: Fixed potential null pointer exception in canRunInChannel (#515) (5409282)

🚀 Features

  • args: Add getOptionResult and getOptionsResults (8031e9b)
  • args: Add ArgsJSON type (b578d54)

3.0.0 - (2022-08-20)

🏠 Refactor

🐛 Bug Fixes

  • Bump deps (275e2a3)
  • Bump dependencies (79c76a1)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.12.0 (#508) (694bd88)
  • Bump @sapphire/result (8366b86)
  • Update sapphire result (fb3aadd)
  • Bump @sapphire/pieces (86b9fbc)
  • Fixed the infinite difference found for commands (#499) (1e11f53)
  • Update sapphire result (c0470f5)
  • deps: Update dependencies (#489) (28633d3)
  • Debump builders to 0.15.x (747be01)
  • Bump dependencies (91ed2d2)
  • deps: Update dependency @discordjs/builders to v1 (#492) (f75351b)
  • Parse BitField to string (#487) (9a74f02)
  • deps: Update sapphire dependencies (#474) (961e0bf)
  • deps: Update sapphire dependencies (#461) (9dc776c)
  • Add @discordjs/builders dependency and bump @sapphire/pieces (#458) (9d876ff)
  • deps: Update sapphire dependencies (#456) (0e6aa35)
  • deps: Update sapphire dependencies (#450) (0d9551e)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.0 (#436) (2bb87cd)
  • computeDifferences: Switch expected and original around for missing choice (47b1a8d)
  • ApplicationCommandRegistry: Fetch localizations for commands (1f76366)
  • Command reloading issues with HMR plugin (#432) (c668f90)
  • InteractionHandlers: Correctly handle modal submits (6f19dda)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.10.0 (#430) (f36f6fd)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.9.7 (#425) (1f048e3)
  • deps: Update sapphire dependencies (#420) (6a644c8)
  • deps: Update sapphire dependencies (#411) (7fb4dba)
  • deps: Update sapphire dependencies (#408) (0ea9553)
  • docs: Update CommandOptions.quotes default value (#407) (c6611df)
  • deps: Update sapphire dependencies (#405) (959e57e)
  • Correct preconditions error messages (#403) (7ef7ac9)
  • deps: Update sapphire dependencies (#401) (c543a34)
  • deps: Update sapphire dependencies (#396) (18ed641)
  • command: Use CacheType generic consistently (#390) (5c8c955)
  • normalizeInputs: Correctly handle old builders version (#387) (95dcb5c)
  • Command: Actually reload the registry on piece reload (4862928)
  • ApplicationCommandRegistries: Registries are empty sometimes (2358f2c)
  • deps: Update sapphire dependencies (#380) (ca7bc92)
  • deps: Update sapphire dependencies (#375) (f829eac)
  • deps: Update sapphire dependencies (#371) (5aedfd8)
  • Remove index from preconditions folder (#369) (92b5542)
  • deps: Update sapphire dependencies (#366) (684acd6)
  • accepted events: Ensure duration isn't destructured when not available (1269305)
  • CoreEmoji: Export named class instead of default (35d02d8)
  • Specify generic for InteractionHandler options (ca0318a)

📝 Documentation

  • Add @nicklvh as a contributor (6b63c67)
  • Add @botatooo as a contributor (f7d113d)
  • Add @UndiedGamer as a contributor (53ba58a)
  • Add @samfundev as a contributor (44ab580)
  • Add @Picowchew as a contributor (8c238a0)
  • Add @matteoturini as a contributor (ddc1d50)
  • Add @EvolutionX-10 as a contributor (33936db)
  • Add @imranbarbhuiya as a contributor (d483127)
  • Add @leonardssh as a contributor (67517ba)
  • Add @r-priyam as a contributor (077b8bb)
  • Fix a small mistake in the jsdoc (#505) (8ca7d7e)
  • Fix Result usage (#502) (fb07af0)
  • listener: Update TSDoc to mention the correct event name (#479) (5bc8a0d)
  • Ts ignore 2 lines for website (#437) (0fbb4ff)
  • changelog: List 2.4.0 on main branch (87b9b5b)
  • Add @feralheart as a contributor (455fc3d)
  • readme: Javascript and typescript support announcement and more (#364) (85b241e)
  • Add tsdoc to InteractionHandlerOptions.interactionHandlerType (18259a7)

🚀 Features

  • Resolve interactions (#503) (a09b4c2)
  • Faster overwrites and string min max length support (#495) (f47e6f6)
    • 💥 BREAKING CHANGE: RegisterBehavior.Overwrite is now the default behaviorWhenNotEqual, and it now uses object hashing instead of checking each property
    • 💥 Co-authored-by: Jeroen Claassens support@favware.tech
  • Omit the warn log message about getting slash commands for all guilds (#477) (70b4861)
  • Add success property in command finished payload (#470) (8198e94)
  • message-resolver: Search in cache when only given ID (#438) (cfb3547)
  • preconditions: Add voice channel only precondition (#462) (5da4e0e)
  • *: Update to discord.js v13.7.0 (#431) (b2d34bd)
  • Support generateUnderscoreLessAliases for command options (#406) (f1d5c21)
  • Update sapphire dependencies to fix issues with typescript nodenext (98b2a8b)
  • Allow module: NodeNext (#394) (781d94f)
  • events: Add jsdoc description to event enum members (#389) (93f24bd)
  • command: Add *Interaction CacheType generics (#384) (98bd4e4)
  • Add "French Quotes" («, ») support for quoted args (#381) (9a25f47)
  • command: Add Interaction and Registry namespace members (#378) (73cfe9f)
  • Migrate to @sapphire/result and re-export the package (#376) (9ed3d98)
  • commands: More types for detailed description (#372) (5f3fea4)
  • command-registry: Allow filtering guildIds from the Failed to fetch guild commands log (#368) (f330d83)
  • command-duration: Add duration to *commandSuccess payloads (#359) (76eebfa)
  • Extract InteractionHandlerParseResult from InteractionHandler namespace (9416b2c)
  • Add duration to *Error and *Finished Message, ChatInput and ContextMenu Command events (#357) (506fd58)
    • 💥 BREAKING CHANGE: The payload for Events.ChatInputCommandFinish has been changed from ChatInputCommandRunPayload to ChatInputCommandFinishPayload
    • 💥 BREAKING CHANGE: The payload for Events.ContextMenuCommandFinish has been changed from ContextMenuCommandRunPayload to ContextMenuCommandFinishPayload
  • Add emoji argument (#349) (15f4e13)
  • Interactions: Interaction Handlers, Application Commands and much much more! (#293) (6bc7f1b)

🚨 Deprecation

  • *: Remove deprecated ExtendedArguments class (#469) (9b51f2c)

🧪 Testing

  • Fix test (c7c8bfd)
  • Add emoji and enum resolver tests (#361) (990be5b)

3.1.3 - (2022-10-02)

🐛 Bug Fixes

  • Reloading the entire command store didn't fire ApplicationCommandRegistries (#525) (ad21eaa)

📝 Documentation

  • Add @itsUrcute as a contributor (8a8e10f)
  • Add @feefs as a contributor (f7927a9)
  • Add @BenSegal855 as a contributor (af2559c)
  • Add @RealShadowNova as a contributor (45e740b)

3.1.2 - (2022-10-02)

🐛 Bug Fixes

  • Remove object-hash dependency (699eaa7)
  • Bump dependencies (5f5a28f)
  • deps: Update dependency @sapphire/result to ^2.5.0 (#548) (9106f9a)
  • precondition: Use result for PreconditionContainerSingle (#535) (05167f4)
  • Fixed package description to remove mention of nonexistent /lib package (#543) (ae89de2)
  • deps: Update sapphire dependencies (#540) (3ab2f33)
  • Fixed args#restResult including leading space (#531) (3e560c6)

📝 Documentation

  • Install correct d.js version in installation steps (#537) (afeb934)

🧪 Testing

  • Switch from jest to vitest (#526) (c71b8e5)

3.1.1 - (2022-09-03)

🐛 Bug Fixes

  • Bump sapphire utilities (7015275)
  • Only fetch guild ids for commands that require them (#523) (61f2c07)
  • computeDifferences: Do not compute dm_permissions for guild-only commands (#519) (645df81)

3.1.0 - (2022-08-29)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (652135f)
  • args: Make getOption and getOptions return string | null again (77f5ed4)
  • message-listeners: Fixed potential null pointer exception in canRunInChannel (#515) (5409282)

🚀 Features

  • args: Add getOptionResult and getOptionsResults (8031e9b)
  • args: Add ArgsJSON type (b578d54)

3.0.0 - (2022-08-20)

🏠 Refactor

🐛 Bug Fixes

  • Bump deps (275e2a3)
  • Bump dependencies (79c76a1)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.12.0 (#508) (694bd88)
  • Bump @sapphire/result (8366b86)
  • Update sapphire result (fb3aadd)
  • Bump @sapphire/pieces (86b9fbc)
  • Fixed the infinite difference found for commands (#499) (1e11f53)
  • Update sapphire result (c0470f5)
  • deps: Update dependencies (#489) (28633d3)
  • Debump builders to 0.15.x (747be01)
  • Bump dependencies (91ed2d2)
  • deps: Update dependency @discordjs/builders to v1 (#492) (f75351b)
  • Parse BitField to string (#487) (9a74f02)
  • deps: Update sapphire dependencies (#474) (961e0bf)
  • deps: Update sapphire dependencies (#461) (9dc776c)
  • Add @discordjs/builders dependency and bump @sapphire/pieces (#458) (9d876ff)
  • deps: Update sapphire dependencies (#456) (0e6aa35)
  • deps: Update sapphire dependencies (#450) (0d9551e)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.0 (#436) (2bb87cd)
  • computeDifferences: Switch expected and original around for missing choice (47b1a8d)
  • ApplicationCommandRegistry: Fetch localizations for commands (1f76366)
  • Command reloading issues with HMR plugin (#432) (c668f90)
  • InteractionHandlers: Correctly handle modal submits (6f19dda)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.10.0 (#430) (f36f6fd)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.9.7 (#425) (1f048e3)
  • deps: Update sapphire dependencies (#420) (6a644c8)
  • deps: Update sapphire dependencies (#411) (7fb4dba)
  • deps: Update sapphire dependencies (#408) (0ea9553)
  • docs: Update CommandOptions.quotes default value (#407) (c6611df)
  • deps: Update sapphire dependencies (#405) (959e57e)
  • Correct preconditions error messages (#403) (7ef7ac9)
  • deps: Update sapphire dependencies (#401) (c543a34)
  • deps: Update sapphire dependencies (#396) (18ed641)
  • command: Use CacheType generic consistently (#390) (5c8c955)
  • normalizeInputs: Correctly handle old builders version (#387) (95dcb5c)
  • Command: Actually reload the registry on piece reload (4862928)
  • ApplicationCommandRegistries: Registries are empty sometimes (2358f2c)
  • deps: Update sapphire dependencies (#380) (ca7bc92)
  • deps: Update sapphire dependencies (#375) (f829eac)
  • deps: Update sapphire dependencies (#371) (5aedfd8)
  • Remove index from preconditions folder (#369) (92b5542)
  • deps: Update sapphire dependencies (#366) (684acd6)
  • accepted events: Ensure duration isn't destructured when not available (1269305)
  • CoreEmoji: Export named class instead of default (35d02d8)
  • Specify generic for InteractionHandler options (ca0318a)

📝 Documentation

  • Add @nicklvh as a contributor (6b63c67)
  • Add @botatooo as a contributor (f7d113d)
  • Add @UndiedGamer as a contributor (53ba58a)
  • Add @samfundev as a contributor (44ab580)
  • Add @Picowchew as a contributor (8c238a0)
  • Add @matteoturini as a contributor (ddc1d50)
  • Add @EvolutionX-10 as a contributor (33936db)
  • Add @imranbarbhuiya as a contributor (d483127)
  • Add @leonardssh as a contributor (67517ba)
  • Add @r-priyam as a contributor (077b8bb)
  • Fix a small mistake in the jsdoc (#505) (8ca7d7e)
  • Fix Result usage (#502) (fb07af0)
  • listener: Update TSDoc to mention the correct event name (#479) (5bc8a0d)
  • Ts ignore 2 lines for website (#437) (0fbb4ff)
  • changelog: List 2.4.0 on main branch (87b9b5b)
  • Add @feralheart as a contributor (455fc3d)
  • readme: Javascript and typescript support announcement and more (#364) (85b241e)
  • Add tsdoc to InteractionHandlerOptions.interactionHandlerType (18259a7)

🚀 Features

  • Resolve interactions (#503) (a09b4c2)
  • Faster overwrites and string min max length support (#495) (f47e6f6)
    • 💥 BREAKING CHANGE: RegisterBehavior.Overwrite is now the default behaviorWhenNotEqual, and it now uses object hashing instead of checking each property
    • 💥 Co-authored-by: Jeroen Claassens support@favware.tech
  • Omit the warn log message about getting slash commands for all guilds (#477) (70b4861)
  • Add success property in command finished payload (#470) (8198e94)
  • message-resolver: Search in cache when only given ID (#438) (cfb3547)
  • preconditions: Add voice channel only precondition (#462) (5da4e0e)
  • *: Update to discord.js v13.7.0 (#431) (b2d34bd)
  • Support generateUnderscoreLessAliases for command options (#406) (f1d5c21)
  • Update sapphire dependencies to fix issues with typescript nodenext (98b2a8b)
  • Allow module: NodeNext (#394) (781d94f)
  • events: Add jsdoc description to event enum members (#389) (93f24bd)
  • command: Add *Interaction CacheType generics (#384) (98bd4e4)
  • Add "French Quotes" («, ») support for quoted args (#381) (9a25f47)
  • command: Add Interaction and Registry namespace members (#378) (73cfe9f)
  • Migrate to @sapphire/result and re-export the package (#376) (9ed3d98)
  • commands: More types for detailed description (#372) (5f3fea4)
  • command-registry: Allow filtering guildIds from the Failed to fetch guild commands log (#368) (f330d83)
  • command-duration: Add duration to *commandSuccess payloads (#359) (76eebfa)
  • Extract InteractionHandlerParseResult from InteractionHandler namespace (9416b2c)
  • Add duration to *Error and *Finished Message, ChatInput and ContextMenu Command events (#357) (506fd58)
    • 💥 BREAKING CHANGE: The payload for Events.ChatInputCommandFinish has been changed from ChatInputCommandRunPayload to ChatInputCommandFinishPayload
    • 💥 BREAKING CHANGE: The payload for Events.ContextMenuCommandFinish has been changed from ContextMenuCommandRunPayload to ContextMenuCommandFinishPayload
  • Add emoji argument (#349) (15f4e13)
  • Interactions: Interaction Handlers, Application Commands and much much more! (#293) (6bc7f1b)

🚨 Deprecation

  • *: Remove deprecated ExtendedArguments class (#469) (9b51f2c)

🧪 Testing

  • Fix test (c7c8bfd)
  • Add emoji and enum resolver tests (#361) (990be5b)

3.1.0 - (2022-08-29)

🐛 Bug Fixes

  • deps: Update all non-major dependencies (652135f)
  • args: Make getOption and getOptions return string | null again (77f5ed4)
  • message-listeners: Fixed potential null pointer exception in canRunInChannel (#515) (5409282)

🚀 Features

  • args: Add getOptionResult and getOptionsResults (8031e9b)
  • args: Add ArgsJSON type (b578d54)

3.0.0 - (2022-08-20)

🏠 Refactor

🐛 Bug Fixes

  • Bump deps (275e2a3)
  • Bump dependencies (79c76a1)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.12.0 (#508) (694bd88)
  • Bump @sapphire/result (8366b86)
  • Update sapphire result (fb3aadd)
  • Bump @sapphire/pieces (86b9fbc)
  • Fixed the infinite difference found for commands (#499) (1e11f53)
  • Update sapphire result (c0470f5)
  • deps: Update dependencies (#489) (28633d3)
  • Debump builders to 0.15.x (747be01)
  • Bump dependencies (91ed2d2)
  • deps: Update dependency @discordjs/builders to v1 (#492) (f75351b)
  • Parse BitField to string (#487) (9a74f02)
  • deps: Update sapphire dependencies (#474) (961e0bf)
  • deps: Update sapphire dependencies (#461) (9dc776c)
  • Add @discordjs/builders dependency and bump @sapphire/pieces (#458) (9d876ff)
  • deps: Update sapphire dependencies (#456) (0e6aa35)
  • deps: Update sapphire dependencies (#450) (0d9551e)
  • deps: Update dependency @sapphire/discord-utilities to ^2.11.0 (#436) (2bb87cd)
  • computeDifferences: Switch expected and original around for missing choice (47b1a8d)
  • ApplicationCommandRegistry: Fetch localizations for commands (1f76366)
  • Command reloading issues with HMR plugin (#432) (c668f90)
  • InteractionHandlers: Correctly handle modal submits (6f19dda)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.10.0 (#430) (f36f6fd)
  • deps: Update dependency @sapphire/discord.js-utilities to ^4.9.7 (#425) (1f048e3)
  • deps: Update sapphire dependencies (#420) (6a644c8)
  • deps: Update sapphire dependencies (#411) (7fb4dba)
  • deps: Update sapphire dependencies (#408) (0ea9553)
  • docs: Update CommandOptions.quotes default value (#407) (c6611df)
  • deps: Update sapphire dependencies (#405) (959e57e)
  • Correct preconditions error messages (#403) (7ef7ac9)
  • deps: Update sapphire dependencies (#401) (c543a34)
  • deps: Update sapphire dependencies (#396) (18ed641)
  • command: Use CacheType generic consistently (#390) (5c8c955)
  • normalizeInputs: Correctly handle old builders version (#387) (95dcb5c)
  • Command: Actually reload the registry on piece reload (4862928)
  • ApplicationCommandRegistries: Registries are empty sometimes (2358f2c)
  • deps: Update sapphire dependencies (#380) (ca7bc92)
  • deps: Update sapphire dependencies (#375) (f829eac)
  • deps: Update sapphire dependencies (#371) (5aedfd8)
  • Remove index from preconditions folder (#369) (92b5542)
  • deps: Update sapphire dependencies (#366) (684acd6)
  • accepted events: Ensure duration isn't destructured when not available (1269305)
  • CoreEmoji: Export named class instead of default (35d02d8)
  • Specify generic for InteractionHandler options (ca0318a)

📝 Documentation

  • Add @nicklvh as a contributor (6b63c67)
  • Add @botatooo as a contributor (f7d113d)
  • Add @UndiedGamer as a contributor (53ba58a)
  • Add @samfundev as a contributor (44ab580)
  • Add @Picowchew as a contributor (8c238a0)
  • Add @matteoturini as a contributor (ddc1d50)
  • Add @EvolutionX-10 as a contributor (33936db)
  • Add @imranbarbhuiya as a contributor (d483127)
  • Add @leonardssh as a contributor (67517ba)
  • Add @r-priyam as a contributor (077b8bb)
  • Fix a small mistake in the jsdoc (#505) (8ca7d7e)
  • Fix Result usage (#502) (fb07af0)
  • listener: Update TSDoc to mention the correct event name (#479) (5bc8a0d)
  • Ts ignore 2 lines for website (#437) (0fbb4ff)
  • changelog: List 2.4.0 on main branch (87b9b5b)
  • Add @feralheart as a contributor (455fc3d)
  • readme: Javascript and typescript support announcement and more (#364) (85b241e)
  • Add tsdoc to InteractionHandlerOptions.interactionHandlerType (18259a7)

🚀 Features

  • Resolve interactions (#503) (a09b4c2)
  • Faster overwrites and string min max length support (#495) (f47e6f6)
    • 💥 BREAKING CHANGE: RegisterBehavior.Overwrite is now the default behaviorWhenNotEqual, and it now uses object hashing instead of checking each property
    • 💥 Co-authored-by: Jeroen Claassens support@favware.tech
  • Omit the warn log message about getting slash commands for all guilds (#477) (70b4861)
  • Add success property in command finished payload (#470) (8198e94)
  • message-resolver: Search in cache when only given ID (#438) (cfb3547)
  • preconditions: Add voice channel only precondition (#462) (5da4e0e)
  • *: Update to discord.js v13.7.0 (#431) (b2d34bd)
  • Support generateUnderscoreLessAliases for command options (#406) (f1d5c21)
  • Update sapphire dependencies to fix issues with typescript nodenext (98b2a8b)
  • Allow module: NodeNext (#394) (781d94f)
  • events: Add jsdoc description to event enum members (#389) (93f24bd)
  • command: Add *Interaction CacheType generics (#384) (98bd4e4)
  • Add "French Quotes" («, ») support for quoted args (#381) (9a25f47)
  • command: Add Interaction and Registry namespace members (#378) (73cfe9f)
  • Migrate to @sapphire/result and re-export the package (#376) (9ed3d98)
  • commands: More types for detailed description (#372) (5f3fea4)
  • command-registry: Allow filtering guildIds from the Failed to fetch guild commands log (#368) (f330d83)
  • command-duration: Add duration to *commandSuccess payloads (#359) (76eebfa)
  • Extract InteractionHandlerParseResult from InteractionHandler namespace (9416b2c)
  • Add duration to *Error and *Finished Message, ChatInput and ContextMenu Command events (#357) (506fd58)
    • 💥 BREAKING CHANGE: The payload for Events.ChatInputCommandFinish has been changed from ChatInputCommandRunPayload to ChatInputCommandFinishPayload
    • 💥 BREAKING CHANGE: The payload for Events.ContextMenuCommandFinish has been changed from ContextMenuCommandRunPayload to ContextMenuCommandFinishPayload
  • Add emoji argument (#349) (15f4e13)
  • Interactions: Interaction Handlers, Application Commands and much much more! (#293) (6bc7f1b)

🚨 Deprecation

  • *: Remove deprecated ExtendedArguments class (#469) (9b51f2c)

🧪 Testing

  • Fix test (c7c8bfd)
  • Add emoji and enum resolver tests (#361) (990be5b)

2.5.0 - (2022-05-15)

🚀 Features

  • Update to discord.js v13.7.0 (#435) (a2ea376)

2.4.1 (2022-02-18)

Bug Fixes

  • explicitly bump sapphire dependencies to their latest versions (df3a3d1)

2.4.0 (2022-02-05)

Features

  • commands: more types for detailed description (#372) (5085644)

Bug Fixes

  • bump dependencies to their latest versions (3b35c91)
  • message-parser: do not run commands when the bot has been timed out (#373) (760227d)

2.3.0 (2022-01-08)

Features

2.2.2 (2021-12-26)

Bug Fixes

  • deps: update sapphire dependencies (#342) (b706571)
  • fixed module building code on DiscordJS v13.4.0 (#346) (b0d860c)
  • make BooleanArgument/resolveBoolean's contexts immutable (#338) (be130fe)

2.2.1 (2021-12-06)

Bug Fixes

  • command: TS Only - Fixed type of re-export of Command.Context (422a093)
  • deps: update sapphire dependencies (#337) (0d06bc0)

2.2.0 (2021-11-21)

Features

  • deprecate ExtendedArgument (#321) (fd6d095)
  • expose and use namespaces for options, context, etc (#330) (85e7588)
  • preconditions: export all core preconditions (#322) (5a4898f)

Bug Fixes

  • Listener: fixed compile issues on TS 4.5 (#329) (cb40369)

2.1.4 (2021-11-06)

Bug Fixes

  • deps: update dependency @sapphire/discord.js-utilities to v4 (#317) (98cafa6)
  • docs: replace command usage of run to messageRun (#310) (6d40eb6)
  • SapphireClient: include Ready generic type from parent Client (#312) (4d528f5)
  • update outdated Args path in jsdoc (#309) (cd7f1cc)

2.1.3 (2021-10-17)

Bug Fixes

2.1.2 (2021-10-17)

Bug Fixes

  • Command: use optional access operator (#307) (b1b7822)

2.1.1 (2021-10-17)

Bug Fixes

2.1.0 (2021-10-17)

Features

  • pieces: add options field to read raw options (#303) (9f45bc9)

Bug Fixes

  • allow more npm versions in engines field (ccecf4e)

2.0.0 (2021-10-16)

⚠ BREAKING CHANGES

  • For TypeScript users only, if you were previously using from or fromAsync and you expected the error result to be of type Error, it will now be unknown. You can reset this back to Error by providing it as the second generic type argument.
  • command: For TypeScript users please rename your Command#run methods to Command#messageRun
  • Awaited type has been renamed to Awaitable
  • Updated @sapphire/pieces to 3.0.0
  • Removed Command#categories, use CommandStore#categories instead
  • arguments: Changed the error message of DateArgument
  • arguments: Changed the error message of FloatArgument
  • arguments: Changed the error message of NumberArgument
  • arguments: Changed the error message of IntegerArgument
  • arguments: Changed the error message of all arguments that must be run in a guild
  • arguments: Changed the error message of GuildNewsThreadChannelArgument
  • arguments: Changed the error message of GuildPrivateThreadChannelArgument
  • arguments: Changed the error message of GuildPublicThreadChannelArgument
  • arguments: Changed the error message of GuildStageVoiceChannelArgument
  • arguments: Changed the error message of GuildTextChannelArgument
  • arguments: Changed the error message of GuildThreadChannelArgument
  • arguments: Changed the error message of GuildVoiceChannelArgument
  • arguments: Changed the error message of GuildMemberArgument
  • arguments: Changed the error message of UserArgument
  • arguments: Made MessageArgumentContext private
  • arguments: Stop exposing the channel property in context of the ChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildCategoryChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildNewsChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildPrivateThreadArgument error
  • arguments: Stop exposing the channel property in context of the GuildStageVoiceChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildTextChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildThreadChannelArgument error
  • arguments: Stop exposing the channel property in context of the GuildVoiceChannelArgument error
  • arguments: Rename Identifiers.ArgumentBoolean to Identifiers.ArgumentBooleanError
  • arguments: Rename Identifiers.ArgumentCategoryChannel to Identifiers.ArgumentGuildCategoryChannelError
  • arguments: Rename Identifiers.ArgumentChannel to Identifiers.ArgumentChannelError
  • arguments: Rename Identifiers.ArgumentDate to Identifiers.ArgumentDateError
  • arguments: Rename Identifiers.ArgumentDateTooSmall to Identifiers.ArgumentDateTooEarly
  • arguments: Rename Identifiers.ArgumentDateTooBig to Identifiers.ArgumentDateTooFar
  • arguments: Rename Identifiers.ArgumentDMChannel to Identifiers.ArgumentDMChannelError
  • arguments: Rename Identifiers.ArgumentFloat to Identifiers.ArgumentFloatError
  • arguments: Rename Identifiers.ArgumentFloatTooBig to Identifiers.ArgumentFloatTooLarge
  • arguments: Rename Identifiers.ArgumentGuildChannel to Identifiers.ArgumentGuildChannelError
  • arguments: Rename Identifiers.ArgumentGuildChannelMissingGuild to Identifiers.ArgumentGuildChannelMissingGuildError
  • arguments: Rename Identifiers.ArgumentHyperlink to Identifiers.ArgumentHyperlinkError
  • arguments: Rename Identifiers.ArgumentInteger to Identifiers.ArgumentIntegerError
  • arguments: Rename Identifiers.ArgumentIntegerTooBig to Identifiers.ArgumentIntegerTooLarge
  • arguments: Rename Identifiers.ArgumentMember to Identifiers.ArgumentMemberError
  • arguments: Rename Identifiers.ArgumentMessage to Identifiers.ArgumentMessageError
  • arguments: Rename Identifiers.ArgumentNewsChannel to Identifiers.ArgumentGuildNewsChannelError
  • arguments: Rename Identifiers.ArgumentNumber to Identifiers.ArgumentNumberError
  • arguments: Rename Identifiers.ArgumentNumberTooBig to Identifiers.ArgumentNumberTooLarge
  • arguments: Rename Identifiers.ArgumentRole to Identifiers.ArgumentRoleError
  • arguments: Rename Identifiers.ArgumentTextChannel to Identifiers.ArgumentGuildTextChannel
  • arguments: Rename Identifiers.ArgumentUser to Identifiers.ArgumentUserError
  • arguments: Rename Identifiers.ArgumentVoiceChannel to Identifiers.ArgumentGuildVoiceChannel
  • Identifiers.PreconditionPermissions has been renamed to Identifiers.PreconditionClientPermissions
  • UserError identifier preconditionPermissions has been renamed to preconditionClientPermissions
  • Permissions precondition has been renamed to ClientPermissions
  • PermissionsPrecondition class has been renamed to ClientPermissionsPrecondition
  • listener: Listeners will now be automatically unloaded if no emitter is found
  • Changed guildChannel argument to return GuildChannel | ThreadChannel.
  • Changed SapphireClient.id's type to Snowflake | null.
  • Changed SapphireClientOptions.id's type to Snowflake | null.
  • Removed Events.GuildMemberSpeaking.
  • Removed StoreRegistry, it is now re-exported from @sapphire/pieces.
  • Renamed ArgType.categoryChannel to guildCategoryChannel.
  • Renamed ArgType.newsChannel to guildNewsChannel.
  • Renamed ArgType.textChannel to guildTextChannel.
  • Renamed ArgType.voiceChannel to guildVoiceChannel.
  • Renamed CommandPreConditions.NewsOnly to GuildNewsOnly.
  • Renamed CommandPreConditions.TextOnly to GuildTextOnly.
  • Renamed Identifiers.PreconditionNewsOnly to PreconditionGuildNewsOnly.
  • Renamed Identifiers.PreconditionTextOnly to PreconditionGuildTextOnly.
  • Renamed Preconditions.NewsOnly to GuildNewsOnly.
  • Renamed Preconditions.TextOnly to GuildTextOnly.
  • Renamed the possible values for CommandOptionsRunType.
  • Updated CooldownContext.delay to not be optional.
  • Updated discord.js requirement to v13.
  • Changed Command#preconditions to PreconditionContainerArray.
  • Removed Command#resolveConstructorPreConditions.
  • Renamed CommandOptions.cooldownBucket to cooldownLimit.
  • Renamed CommandOptions.cooldownDuration to cooldownDelay.
  • Renamed BucketType to BucketScope.
  • Changed PreconditionSingleResolvableDetails to take a type parameter.
  • Changed PreconditionSingleResolvable to use Preconditions's type.
  • Renamed CooldownContext.bucketType to scope.
  • Renamed Event to Listener
  • Renamed EventStore to ListenerStore
  • Changed events directory from events to listeners
  • Renamed SapphireClientOptions.loadDefaultErrorEvents to loadDefaultErrorListeners
  • Renamed StoreRegistryEntries.events to StoreRegistryEntries.listeners
  • Refactored Events enum to be an object, so we can use discord.js's constants
  • Renamed Events.EventError to Events.ListenerError
  • Renamed EventErrorPayload to ListenerErrorPayload
  • Renamed Events.Ready to Events.ClientReady
  • Renamed Events.Message to Events.MessageCreate
  • Flattened CommandOptions.strategyOptions into CommandOptions
  • Changed CommandOptions.preconditions to always require an array
  • Updated @sapphire/pieces to 2.0.0
  • Renamed PieceContextExtras to Container, usage and augmentation is the same.
  • Removed Store.injectedContext, use globally exported container variable instead.
  • Renamed Store#context to Store#container.
  • Renamed Piece#context to Piece#container.

Features

  • add Result#from and Result#fromAsync (#267) (300f2ed)
  • Add typing property to fire TextChannel.sendTyping() when a command is accepted (#258) (71c1883)
  • add managed role mention prefix support (#289) (7846d6c)
  • add partial dm channel argument (#288) (c8c74de)
  • add UserPermissions precondition (#252) (2bb2e12)
  • added auto-preconditions (#199) (7e79e15)
  • arguments: extract logic to resolvers (#237) (32d591b)
  • client: added option to set a default cooldown for all commands (#294) (7734d59)
  • command: add command#messageRun method and deprecation warning for command#run (#299) (750c25c)
  • command: add CommandOptionsRunTypeEnum (#254) (2d21b03)
  • commands: add category getters (#244) (d438ac0)
  • cooldown: add cooldownFilteredUsers to exempt users from the cooldown precondition (#249) (8261770)
  • ILogger: add #has method, auto-register Store#logger (#221) (85bfacb)
  • member argument: slice off Discord discriminators before performing a query search (#301) (f6261ae)
  • NonePrefixedMessage event (#202) (a410bbf)
  • resolver: make resolveChannel parse mentions (#253) (506576e)
  • resolver: make resolveMessage parse channelId-messageId (#292) (5e915d0)
  • specify missing breaking changes (9097cf5)
  • stricter types for preconditions (#226) (4a3c76a)
  • update @sapphire/pieces to add ts-node support (7a1c5c6)
  • update to DiscordJS v13.2.0 (#295) (51808a5)
  • updated for pieces v3 (#260) (db6febd)

Bug Fixes

  • change Awaited to Awaitable (189c01f)

  • docs: it was always info (3ce4d71)

  • docs: update-tsdoc-for-vscode-may-2021 (#213) (857eaba)

  • explicitly type version as string (a8c9b39)

  • export CooldownContext and MessageArgumentContext (54ba95a)

  • fixed ESM bundle (7ca08b2)

  • fixed oversight in passing preconditions (#239) (380a4ef)

  • index: re-export StoreRegistryEntries from @sapphire/pieces (#243) (aa78ba9)

  • listener: add and remove maximum listeners (#230) (53681ad)

  • make from/fromAsync return unknown to match TypeScript (#300) (a83f0c9)

  • NonePrefixedMessage: rename to NonPrefixedMessage (#205) (ad8adbc)

  • preconditions: fixed TextOnly and NewsOnly (#222) (8cf1c2b)

  • preconditions: fixed UserPermissions precondition (1848f53)

  • preconditions: properly check for null in ClientPermissions and UserPermissions (#262) (852ee87)

  • remove peer deps, update dev deps, update READMEs (#210) (7cb9e3d)

  • types: use the correct channel parent type (#232) (8307313)

  • update @sapphire/pieces to v2.0.0 (#198) (5c95c32)

  • flatten command strategy options (#220) (fdc4aa4)

  • rename Event to Listener (#218) (e7ce612)

  • specify missing breaking changes (b9c36de)

  • switch to sapphire/*[@v2](https://github.com/v2) and discord.js@dev (#227) (cbf5d4e)

1.0.2 (2021-05-02)

Bug Fixes

  • drop the www. from the SapphireJS URL (e9ed4e8)
  • update all the SapphireJS URLs from .com to .dev (4d0c8ea)

1.0.1 (2021-04-21)

Bug Fixes

  • dependencies: update in semver scope dependencies (ca9a2c1)
  • change all Sapphire URLs from "project"->"community" & use our domain where applicable 👨‍🌾🚜 (#192) (650260e)

1.0.0 (2021-03-16)

Features

Bug Fixes

1.0.0-alpha.11 (2021-02-16)

Features

  • structures: add global preconditions (#176) (e8ef41f)

Bug Fixes

  • enabled: remove last remnant of essentials (4928823)

1.0.0-alpha.10 (2021-02-12)

⚠ BREAKING CHANGES

  • command-accepted: Events.CommandRun third argument changed type to CommandRunPayload, this is mostly identical to CommandAcceptedPayload (and exactly identical to CommandFinishPayload) and likely won't be a breaking change for your code, however you may need to adjust your import when using TypeScript.
  • command-accepted: Events.CommandFinish third argument changed type to CommandFinishPayload, this is mostly identical to CommandAcceptedPayload (and exactly identical to CommandRunPayload) and likely won't be a breaking change for your code, however you may need to adjust your import when using TypeScript.

Features

  • args: add name to context of Args.unavailableArgument (#171) (a5bda61)
  • args: add more data to error context for core arguments (0cfff79)
  • args: pass more context to args errors (#174) (007eaed)
  • argumenterror: add type default of unknown (55be30a)
  • command-accepted: add received args to event payloads (#173) (fa60b13)
  • message-parser: add caseInsensitivePrefixes client option (#170) (61f9c41)

1.0.0-alpha.9 (2021-02-07)

⚠ BREAKING CHANGES

  • preconditions: Changed PreconditionContext.command to external

Features

  • events: added UnknownCommandPayload.commandName (#166) (3dbcffd)

  • preconditions: make IPreconditionContainer#run's context optional (#167) (57ad8d2)

1.0.0-alpha.8 (2021-02-07)

⚠ BREAKING CHANGES

  • events: Changed Events.UnknownCommandName event arguments to UnknownCommandNamePayload.
  • events: Changed Events.UnknownCommand event arguments to UnknownCommandPayload.

Co-authored-by: Jeroen Claassens support@favware.tech

  • events: CoreMessageParser is not longer a message event listener

Features

  • events: create Events.PreMessageParsed (#164) (0311838)

  • events: remove UnknownCommandName, changed UnknownCommand (#165) (c3273d1)

1.0.0-alpha.7 (2021-02-06)

⚠ BREAKING CHANGES

  • errors: Changed UserError identifier from 'ArgumentBooleanInvalidBoolean' to Identifiers.ArgumentBoolean.
  • errors: Changed UserError identifier from 'ArgumentCategoryChannelInvalidChannel' to Identifiers.ArgumentCategoryChannel.
  • errors: Changed UserError identifier from 'ArgumentChannelMissingChannel' to Identifiers.ArgumentChannel.
  • errors: Changed UserError identifier from 'ArgumentDateInvalidNumber' to Identifiers.ArgumentDate.
  • errors: Changed UserError identifier from 'ArgumentDateTooSmall' to Identifiers.ArgumentDateTooSmall.
  • errors: Changed UserError identifier from 'ArgumentDateTooBig' to Identifiers.ArgumentDateTooBig.
  • errors: Changed UserError identifier from 'ArgumentDMChannelInvalidChannel' to Identifiers.ArgumentDMChannel.
  • errors: Changed UserError identifier from 'ArgumentFloatInvalidFloat' to Identifiers.ArgumentFloat.
  • errors: Changed UserError identifier from 'ArgumentFloatTooSmall' to Identifiers.ArgumentFloatTooSmall.
  • errors: Changed UserError identifier from 'ArgumentFloatTooBig' to Identifiers.ArgumentFloatTooBig.
  • errors: Changed UserError identifier from 'ArgumentGuildChannelMissingGuild' to Identifiers.ArgumentGuildChannelMissingGuild.
  • errors: Changed UserError identifier from 'ArgumentGuildChannelUnknownChannel' to Identifiers.ArgumentGuildChannel.
  • errors: Changed UserError identifier from 'ArgumentHyperlinkInvalidURL' to Identifiers.ArgumentHyperlink.
  • errors: Changed UserError identifier from 'ArgumentIntegerInvalidNumber' to Identifiers.ArgumentInteger.
  • errors: Changed UserError identifier from 'ArgumentIntegerTooSmall' to Identifiers.ArgumentIntegerTooSmall.
  • errors: Changed UserError identifier from 'ArgumentIntegerTooBig' to Identifiers.ArgumentIntegerTooBig.
  • errors: Changed UserError identifier from 'ArgumentMemberMissingGuild' to Identifiers.ArgumentMemberMissingGuild.
  • errors: Changed UserError identifier from 'ArgumentMemberUnknownMember' to Identifiers.ArgumentMember.
  • errors: Changed UserError identifier from 'ArgumentMessageUnknownMessage' to Identifiers.Message.
  • errors: Changed UserError identifier from 'ArgumentNewsChannelInvalidChannel' to Identifiers.NewsChannel.
  • errors: Changed UserError identifier from 'ArgumentNumberInvalidNumber' to Identifiers.Number.
  • errors: Changed UserError identifier from 'ArgumentNumberTooSmall' to Identifiers.ArgumentNumberTooSmall.
  • errors: Changed UserError identifier from 'ArgumentNumberTooBig' to Identifiers.ArgumentNumberTooBig.
  • errors: Changed UserError identifier from 'ArgumentRoleMissingGuild' to Identifiers.ArgumentRoleMissingGuild.
  • errors: Changed UserError identifier from 'ArgumentRoleUnknownRole' to Identifiers.Role.
  • errors: Changed UserError identifier from 'ArgumentStringTooShort' to Identifiers.ArgumentStringTooShort.
  • errors: Changed UserError identifier from 'ArgumentStringTooLong' to Identifiers.ArgumentStringTooLong.
  • errors: Changed UserError identifier from 'ArgumentTextChannelInvalidChannel' to Identifiers.TextChannel.
  • errors: Changed UserError identifier from 'ArgumentUserUnknownUser' to Identifiers.User.
  • errors: Changed UserError identifier from 'ArgumentVoiceChannelInvalidChannel' to Identifiers.VoiceChannel.
  • errors: Changed UserError identifier from 'CommandDisabled' to Identifiers.CommandDisabled.
  • errors: Changed UserError identifier from 'UnavailableArgument' to Identifiers.ArgsUnavailable.
  • errors: Changed UserError identifier from 'MissingArguments' to Identifiers.ArgsMissing.
  • errors: Changed UserError identifier from 'Cooldown' to Identifiers.PreconditionCooldown.
  • errors: Changed UserError identifier from 'DMOnly' to Identifiers.PreconditionDMOnly.
  • errors: Changed UserError identifier from 'GuildOnly' to Identifiers.PreconditionGuildOnly.
  • errors: Changed UserError identifier from 'NSFW' to Identifiers.PreconditionNSFW.
  • errors: Changed UserError identifier from 'Permissions' to Identifiers.PreconditionPermissions.
  • preconditions: Added PreconditionContext as third parameter to IPreconditionContainer#run.
  • preconditions: Changed PermissionsPrecondition#context from PreconditionContext to Record<PropertyKey, unknown>.
  • preconditions: Changed PreconditionContainerSingle#context from PreconditionContext to Record<PropertyKey, unknown>.
  • preconditions: Changed PreconditionSingleResolvableDetails#context from PreconditionContext to Record<PropertyKey, unknown>.
  • preconditions: Added PreconditionContext as third parameter to IPreconditionCondition#run.
  • args: changed Args.err to return Err<ArgumentError<T>> instead of ArgumentError<T>

Features

  • args: add Args#ok, refactored Args#error to return Err<ArgumentError> (#159) (65316a6)
  • args: change visibility of parser from private to protected (#160) (3ad6f85)
  • command: add CommandContext#commandPrefix (#157) (c8c7417)
  • command-events: pass more context (#162) (11a6274)
  • errors: expose all identifiers in an enum (#161) (3371f35)
  • preconditions: add context to Container and Condition (#158) (de6bc03)

1.0.0-alpha.6 (2021-02-04)

Bug Fixes

  • preconditions: make options optional (#155) (ecc5323)

1.0.0-alpha.5 (2021-02-02)

⚠ BREAKING CHANGES

  • client: client.arguments is now client.stores.get('arguments')
  • client: client.commands is now client.stores.get('commands')
  • client: client.events is now client.stores.get('events')
  • client: client.preconditions is now client.stores.get('preconditions')
  • client: client.registerUserDirectories is now client.stores.registerUserDirectories
  • client: client.deregisterStore is now client.stores.deregister
  • client: client.registerStore is now client.stores.register
  • command parser: The events prefixedMessage, unknownCommandName, and unknownCommand 3rd parameter now have the type string | RegExp
  • command parser: CommandContext.prefix now has the type string | RegExp
  • The UserError, PreconditionError, ArgumentError classes, and the ok, err functions now take a single parameter which is an object of properties, rather than multiple parameters.

Features

  • args: add Args#commandContext (#154) (63c195b)
  • client: change stores from a Set to a Map (#129) (01f7161)
  • command: add generateDashLessAliases (#146) (e94649c)
  • command parser: add regexPrefix client option (#145) (86e6b79)
  • preconditions: make Permission errors less vague (#151) (c6b04e1)
  • make errors take objects instead of many params (#144) (f638410)

Bug Fixes

  • update discord redirect URL (61edce2)

1.0.0-alpha.4 (2021-01-28)

Features

Bug Fixes

  • add discord.js utilities for type guards (cf74431)

1.0.0-alpha.3 (2021-01-14)

Features

Bug Fixes

1.0.0-alpha.2 (2021-01-03)

Features

Bug Fixes

1.0.0-alpha.1 (2020-12-28)

Features

  • new preconditions (#119) (10c7a1b)
  • arguments: Add Message argument, use discord-utilities (#118) (c70af0a)
  • logger: make Logger.levels protected (5a4b8d6)

1.0.0-alpha.0 (2020-12-22)

Features

  • re-export public-facing structures from pieces (#113) (648a57d)
  • output type declarations to a single .d.ts file (#112) (2652a9b)
  • allow case insensitive commands (#105) (a9485ec)
  • arguments: add CoreBoolean argument (#96) (c4c25c3)
  • arguments: Add extended argument functionality (#101) (8fa9e7b)
  • arguments: added more resolvers (#63) (4eb1016)
  • arguments: Improve ID/mention checking of members, roles, and users (#100) (008dd44)
  • arguments: more helpers, added richer errors (#59) (59027d8)
  • commands: add an optional context parameter (#93) (8e1d4f8)
  • add event types to event pieces (#27) (770101f)
  • add pregenericsinitialization plugin hook (#45) (972c2d4)
  • added a lot more features (4051121)
  • added cooldown precondition (#76) (cfabf52)
  • added events (524f58c)
  • added missing imports (7688a0a)
  • added permissions precondition and utilities (#64) (123a975)
  • added Result, finished PreconditionContainer (08092b1)
  • added some minor QoL features, and a lot of docs (#84) (909efb7)
  • async login plugin hooks (#46) (95be214)
  • implement additional parsing methods for core arguments (#82) (33dc791)
  • pass error into Events.CommandDenied (#77) (d329b0f)
  • args: add Args#repeat (5924a53)
  • args: add overload for IArgument (#39) (0adac4b)
  • client: move auto-register to registerUserDirectories (cbb7667)
  • client: register and load stores (#31) (db581a9)
  • core: add base i18n handlers (#43) (a83b77a)
  • core: added logger (#38) (021085c)
  • events: add commandSuccess, change commandFinish (#65) (0d107e4)
  • flags: Add flag parsing (#47) (905d1fc)
  • index: re-export useful exports from @sapphire/pieces (#40) (d89ee44)
  • loader: automatically register client's directories (ff86b04)
  • commands and command store (#2) (73cdf0e)
  • finish command handler (#29) (a890d74)
  • implement monitors (#1) (9fde455)
  • initial work in precondition runners (bd2be01)
  • more events (7f7be02)
  • plugin support (#28) (a992b7e)
  • type documented events (#25) (df95f00)
  • Monitor: add decorators (#7) (5d3accd)

Bug Fixes

  • renamed Events.SharedReady -> Events.ShardReady (#107) (d8ca2c0)
  • args: add boolean to ArgType (#97) (67b4da8)
  • events: Return early in CorePreCommandRun if the command is not enabled (#99) (7ac3ba0)
  • argument undefined error (#34) (23de1b2)
  • do not run disabled commands (#78) (a24175c)
  • failing command tests (#24) (ceeb286)
  • make tests pass (3068899)
  • remove bug breaking prefixless commands (#80) (fc40a6c)
  • resolved bug where all pieces were nameless (989e0c7)
  • resolved build errors (09bb56f)
  • small docs inconsistency (#87) (f560742)
  • small typo (#53) (cee4a77)
  • typing error (#68) (961c33b)
  • args: make options optional (584c6ef)
  • arguments: error names (#36) (6b3c195)
  • command-handler: handle command name resolution better (0c868e1)
  • command-handler: make checks more strict (#62) (77352e8)
  • command-handler: pass parameters through all events (44cfe86)
  • command-handler: use the right variable (a12e61e)
  • core: arguments docs (#44) (1421c05)
  • eslint: cast idOffset to a number (923bf43)
  • event: set emitter to client if unset (a3bb96e)