Releases: Advanced-Command-Handler/Advanced-Command-Handler
v3.1.0
📆 16.09.2021 🏷️ 3.1.0 💾 18D91CF 🚀 23 ♻️ 4 ✏️ 5 👥 1
This release brings support to Discord.js v13, arguments for functions options when setting default commands & events.
🚀 New Features
3171882 feat: Add Argument class and types. (@Ayfri)
f4b0018 feat: Add argument errors to CommandErrorType. (@Ayfri)
a6d0a35 feat: Add argument functions. (@Ayfri)
4234c15 feat: Add argument methods to CommandContext & SubCommandContext. (@Ayfri)
e286b6e feat: Add ARGUMENT_NOT_FOUND & BAD_ARGUMENT CommandErrorTypes. (@Ayfri)
bafdfef feat: Add arguments property in Command & SubCommand classes. (@Ayfri)
b72e0f7 feat: Add channelOnly & threadOnly tags. (@Ayfri)
ff3f837 feat: Add check function to Tag. (@Ayfri)
b38c02b feat: Add DefaultCommandOptions, can exclude default commands. (@Ayfri)
864b758 feat: Add DefaultEventsOptions, can exclude events. (@Ayfri)
35f118a feat: Add the getter isSkipable to CommandArgument class. (@Ayfri)
cb95a67 feat: Add global tags. (@Ayfri)
ee294a2 feat: Add HelpOptions, can exclude commands, auto-delete message, use list of commands instead of list of categories. (@Ayfri)
ec60c77 feat: Add isSnowflake util function. (@Ayfri)
8398b53 feat: Add MaybePromise util type. (@Ayfri)
005e860, 0a69103 feat: Add MessageCreateOptions, can explicitly exclude or not bot, explicitly send code errors or not & only when owner or not, set global tags. (@Ayfri)
ad004a6 feat: Add possibility to get messages with canary and ptb links and to get guilds with mention. (@Ayfri)
44c01ed feat: Add searching with text literal mention for getThing function. (@Ayfri)
38b1472, 0d0389c feat: Add signature & signatures functions to Command class. (@Ayfri)
9485124 feat: Add TEXT_CHANNEL DataType for getThing function. (@Ayfri)
ad81df2 feat: Add threads-related methods to CommandContext class. (@Ayfri)
c66ce3e feat: Handle new error types to default messageCreate event. (@Ayfri)
d868480 feat: Use signature(s) methods in default help command. (@Ayfri)
a23676b feat: Use signatures method in argError if no usage set. (@Ayfri)
♻️ Refactors
2fb1ce8 refactor!: Rename args property to rawArgs in CommandContext, add a deprecated getter for compatibility. (@Ayfri)
ffc8d6d refactor: Rename default 'message' event to 'messageCreate'. (@Ayfri)
9b1c4e5 refactor: Rename MessageEvent class to MessageCreateEvent, set filename to same name. (@Ayfri)
05039b9 refactor: Use arguments for default help command. (@Ayfri)
✏️ Chores
8189ca2 chore: Add argumentorum parser library. (@Ayfri)
64f1443 chore: Bump minimum required Node.js version to 16.6. (@Ayfri)
c7a44d2 chore: Update discord.js to V13. (@Ayfri)
6dc37df chore: Update discord.js-better-embed to 1.3.0. (@Ayfri)
b215571 chore: Update typescript to 4.4. (@Ayfri)
👥 Contributors
v3.0.0
📆 08.08.2021 🏷️ 3.0.0 💾 EF2693A 🚀 20 🐛 4 ♻️ 10 ✏️ 1 👥 2
The biggest update ever for this project is now done !
I know it's still using discord.js v12, but I will update to v13 for 3.1, don't worry, it should be quicker to come.
There is a complete guide for migrating your code here.
This version changes how commands & events are created, now you have to use classes, letting you customize more and letting the library handle more complex features and behavior without having a catchy syntax.
It now also uses XContext classes to avoid having a lot of parameters and just having 1 containing everything you need plus some useful getters/setters.
The tests are now more precises and use approximately all the features available (at least the important ones).
Thanks to everyone using this library !
You can see me on Twitch developing my projects ^o^/
🚀 New Features
5ea118b feat: Add loadEvent function. (@Ayfri)
b1925c4 feat: Add ability to save logs in files. (@Ayfri)
ed6421c feat: Add CommandError class. (@Ayfri)
6b9b721, 88cbc76 feat: Add default help command. (@Ayfri)
3514515, 1cc8b1f, 9e3f745, 6b9df26, b0ed627, 84907c5, 5e1b68b, 0efe4e8 feat: Add EventContext & CommandContext. (@Ayfri)
3877b40 feat: Add getCommandAliasesAndNames & findCommand functions into CommandHandler namespace. (@Ayfri)
c7592ca feat: Add ImageCommand class. (@Ayfri)
fdde666 feat: Add LaunchCommandHandlerOptions argmument in launch event. (@Ayfri)
019a5c2 feat: Add Logger.LEVEL property to only log certain levels. (@Ayfri)
45b72db, 8491eaf feat: Add Logging titles ignores. (@Ayfri)
d20d997 feat: Add nameAndAliases in Command class. (@Ayfri)
42054c0 feat: Add presence & cycling presences options when launching the CommandHandler. (@Ayfri)
48a4f4d feat: Add SlowCommand class. (@Ayfri)
f4465d6 feat: Add SubCommands and validation methods for commands. (@Ayfri)
1816359 feat: Add unloadCommand & unloadEvent functions to CommandHandler. (@Ayfri)
db3654e feat: Add useful getters to AdvancedClient. (@Ayfri)
28af5e2 feat: Add useMentionAsPrefix property to CreateCommandHandlerOptions. (@Ayfri)
0c00a7f feat: Improve saveJSON typings and logging errors. (@Ayfri)
ef8d61e feat: Simplify types for events. (@Ayfri)
b319c28 feat(readme): Add information about the version of Discord.js and the features available. (@Ayfri)
🐛 Bug fixes
e4c45e1 fix: Fix dayjs format for Logger. (@Ayfri)
10902cc fix: Fix loading default commands showing commands name. (@Ayfri)
5ce8d4e fix: Fix logging of objects. (@Ayfri)
937347a fix: Fix typo in default ping command. (@Ayfri)
♻️ Refactors
00d88cb refactor: Improve typings of getThing. (@Ayfri)
8d12f42 refactor: Move Logger.propertyInEnum to external function. (@Ayfri)
38dfaba refactor: Remove AdvancedClient#hasPermission function. (@Ayfri)
e07220e refactor!: Rename Log type test to debug.
db81108 refactor: Rename permissionError file to permissionUtils. (@Ayfri)
8fcefd1 refactor!: Remove Logger.logComments, use Logger.LogLevel instead.
b79ecce refactor!: Update DeleteMessageOptions interface with new Discord API.
ae07707 refactor!: Use a more approriate name for functions to use defaults.
e1a7c05 refactor: Use CommandContext for errors functions. (@Ayfri)
610cf27 refactor: Use index.ts files for every folders. (@Ayfri)
✏️ Chores
67b5dd3, ef57b01 chore: Use better tsconfig. (@Ayfri)
👥 Contributors
v3.0.0-beta.4
📆 25.07.2021 🏷️ 3.0.0-beta.4 💾 230740A 🚀 1 🐛 1 📚 1 ♻️ 3
🚀 New Features
🐛 Bug fixes
📚 Documentation
♻️ Refactors
v3.0.0-beta.3
v3.0.0-beta.2
📆 15.07.2021 🏷️ 3.0.0.beta.2 💾 93CA377 🚀 1 🐛 4 ♻️ 1
This beta fixes a lot of problems and should more stable and more usable.
🚀 New Features
88CBC76feat(help): Add information on weather can you use the command or not inhelp <command>. (@Ayfri)
🐛 Bug fixes
5E8DB3Dfix: Fix eventrunmethod types. (@Ayfri)8964B65fix: Fix eventrunmethod typings for events without arguments. (@Ayfri)1C6DCCEfix: Fix exporting types &typesdirectory. (@Ayfri)4F93100fix: Support simple exports for commands & events. (@Ayfri)
♻️ Refactors
v3.0.0-beta.1
v3.0.0-beta.0
📆 07.07.2021 🏷️ 3.0.0.beta.0 💾 FEA397F 👥 2
This is a very big release including a lot of changes, and you will need to rewrite a lot of your code to have it working on v3.
There is a guide to update your code here.
🚀 New Features
Logger
- b1925c4 feat: Add ability to save logs into files. (@Ayfri)
- 019a5c2 feat: Add
Logger.LEVELproperty to only log certain levels. (@Ayfri) - 45b72db feat: Add Logging title ignores. (@Ayfri)
- 8491eaf feat: Ignoring logs can now be defined with title and levels. (@Ayfri)
Commands
- af3eea4 feat: Add any type to
Command&SubCommandrunmethod. (@Ayfri) - 3514515, 9e3f745, 84907c5 feat: Add
CommandContext. (@Ayfri) - ed6421c feat: Add
CommandErrorclass. (@Ayfri) - 6b9b721 feat: Add default
helpcommand. (@Ayfri) - c7592ca feat: Add
ImageCommandclass. (@Ayfri) - d20d997 feat: Add
nameAndAliasesinCommandclass. (@Ayfri) - 48a4f4d feat: Add
SlowCommandclass. (@Ayfri) - f4465d6, 83c50ad feat: Add
SubCommandsand validation methods for commands. (@Ayfri) - b0ed627 feat: Add useful reaction methods to
CommandContext. (@fantomitechno)
CommandHandler
- 3877b40 feat: Add
getCommandAliasesAndNames&findCommandfunctions intoCommandHandlernamespace. (@Ayfri) - fdde666 feat: Add
LaunchCommandHandlerOptionsinlaunchevent. (@Ayfri) - 1816359 feat: Add
unloadCommand&unloadEventfunctions intoCommandHandlernamespace. (@Ayfri)
Others
- 8a748df feat: Activate
durationplugin fordayjs. (@Ayfri) - 3514515 feat: Add
EventContext. (@Ayfri) - db3654e feat: Add useful getters to
AdvancedClient. (@Ayfri) - 1cc8b1f feat: Improve `EventContext, add some getters. (@Ayfri)
- ef8d61e feat: Simplify types for events. (@Ayfri)
🐛 Bug fixes
- e0c5932 fix: Export
types.ts. (@Ayfri) - 901a84b fix: Fix command category when loading commands. (@Ayfri)
- e4c45e1 fix: Fix
dayjsformat forLogger. (@Ayfri) - d1f1f0f fix: Fix documentation on cooldowns. (@Ayfri)
- 10902cc fix: Fix loading default commands showing commands name. (@Ayfri)
- 745a4ba fix: Fix types for
getThing&JSON. (@Ayfri) - 937347a fix: Fix typo in default
pingcommand. (@Ayfri) - df44a54 fix: Remove debugging message in default
messageevent. (@Ayfri)
🎨 Styles
- e4bbe0b style: Change
prettierconfiguration for shorter lines. (@Ayfri) - 1ad8190 style: Improve
prettierscript file selection. (@Ayfri) - e12c183 style: Use a stricter
ESLintconfiguration forTSDoc. (@Ayfri)
♻️ Refactors
- 00d88cb refactor: Improve typings of
getThingfunction, fix some typos. (@Ayfri) - eff3c03 refactor: Move
CommandHandlerErrorclass intoclassesfolder. (@Ayfri) - db81108 refactor: Rename
permissionErrorfile topermissionUtils, movehasPermissiontopermissionUtils. (@Ayfri) - 610cf27 refactor: Use
index.tsfiles for every folder. (@Ayfri)
✏️ Chores
- 3b7f58d chore(deps): Bump Typescript to 4.3, bump dayjs to 1.10.5. (@Ayfri)
- ef57b01, 67b5dd3 chore: Remove useless properties in
tsconfig, addnoImplicitOverriderule. (@Ayfri)
👥 Contributors
v2.4.0
This release moves all the code for generating documentation into another repo.
It also adds the last features before v3 :)
Changelog
- Added
JSONUtils(safe save, safe load). (a71973b) - Added missing export for
codeError. (0ea2d26) - Added more TSDoc in
CommandHandlernamespace. (a831273) - Added support for string version of tags in types. (4ef5198) (821ce7b)
- Cooldown functions in
Commandclass now accept different types. (1099163) - Fixed conflicts. (b379c4f)
- Fixed docs. (4acf18c) (0d8f3ed)
- Fixed typo on dependency name. (f122acc)
- Improved documentation in many places. (b49eb34)
- Improved loading code. (02f2f83)
IsInRightChannelmethod now acceptsTextChannelas argument. (cce9113)- Now using string version of tags in default
pingcommand. (0756012) - Removed documentation as now in another repo. (c44c822)
- Removed
package-lock, added to.gitignore. (24f5a65) - Removed unused function. (e65626b)
- Removed useless overloads. (74e4a83)
- Simplified a lot generating documentation as everything has moved into another repo. (789da55)
- Updated all dependencies. (515a0db)
- Updated readme with the new organization. (2440e7e)
Dependencies
@types/node: 14.14.21 => 14.14.22
@typescript-eslint/eslint-plugin: 4.14.0 => 4.14.2
@typescript-eslint/parser: 4.14.0 => 4.14.2
eslint: 7.18.0 => 7.19.0
eslint-plugin-jsdoc: 31.2.2 => 31.6.0
V2.3.0
This is a pretty big update for the chore, adding TSDoc, online documentation, Wiki & more.
Also added cooldown management & some utils.
For changes that refer to a PR, I invite you to check to documentation.
Changelog
- Added
codeErrorfunction. (2a00110) - Added missing imports. (83a7eec)
- Added online documentation here using TSDoc. (3e777bb)(e128886)(2c5dbde)(b653cd2)
- Added some utils functions. (4988d37)
- Added TSDoc everywhere. (#61)
- Added wiki pages here to explain how to use this library.
- Fixed spelling. (#57)
- Improved cooldowns. (#56).
- Improved default message event. (9a12f7f)(704a45c)
- Improved exports. (c34df4e)
- Improved internal code for getting arguments in default message event. (#57)(8a8f27d)
- Moved declarations to their proper folder. (45d65ec)
- Removed all explanations from README, as everything is now explicated in the guide & documentation. (5818646)