Rapptz
7a52aa3764
[commands] Force HybridGroup to always have invoke_without_command
3 years ago
Rapptz
242d3f7ab7
[commands] Add Bot.hybrid_group and Bot.hybrid_command decorators
3 years ago
Rapptz
1931b0eb75
[commands] Ensure hybrid app command receives copied wrapper command
3 years ago
Rapptz
393fdde037
[commands] Add support for Greedy for hybrid commands
3 years ago
Rapptz
1004cf2059
[commands] Unconditionally replace default if it's set
Handles degenerate `x: int = commands.param(default=10)` case
3 years ago
Rapptz
70d2522e7e
[commands] Unwrap CommandInvokeError if the cause is CommandError
3 years ago
Rapptz
65418414ea
[commands] Refactor parameter replacement to be less brittle
If a parameter works as-is as a transformer or a built-in then it
will always be taken rather. This way, the custom behaviour is done
as a fallback in case it doesn't work natively with app commands.
This also allows things that are hybrid transformers and converters
to work transparently.
3 years ago
Rapptz
896932faf1
[commands] Add Range converter
This allows hybrid commands to also have a range annotation
3 years ago
Rapptz
3c4b22b623
[commands] Fix transformers no longer working as annotation
3 years ago
Rapptz
9d05f55ddb
[commands] Fix Optional handling when the inner type is a converter
3 years ago
Rapptz
f072edfdfc
[commands] Properly support commands.param in hybrid commands
3 years ago
Rapptz
d61561f2e8
[commands] Add support for autocomplete for hybrid commands
3 years ago
Rapptz
52fcaed79b
[commands] Reassign app_command attribute on copy
Prior to this change it would re-create the HybridAppCommand on copy
which had the consequence of clearing parameter related changes.
3 years ago
Rapptz
1232a1d2fd
[commands] Properly call after_hooks in hybrid commands
3 years ago
Rapptz
840eb577d4
[commands] Add initial implementation of hybrid commands
Hybrid commands allow a regular command to also double as a slash
command, assuming it meets the subset required to function.
3 years ago