198 Commits

Author SHA1 Message Date
Rapptz
0ec06f0ac5 Add on_app_command_completion event
Fix #8126
2022-08-15 09:19:01 -04:00
Rapptz
0b69148c84 Fix float focused autocomplete options being parsed
According to the Discord docs these aren't validated
2022-08-15 08:59:29 -04:00
Bryan Forbes
63b32994f4
Improve TranslationContext type narrowing using a tagged union 2022-08-15 08:17:41 -04:00
Rapptz
49e6fe9a0c Fix autocomplete translations calling unnecessary locales 2022-08-14 17:35:43 -04:00
Rapptz
32c5a0cec1 Change default Choice.name_localizations to an empty dict 2022-08-14 17:35:43 -04:00
Rapptz
f69d4ee5cb Add Choice.name_localizations data from Discord
Fix #8337
2022-08-14 16:29:16 -04:00
Rapptz
c8db766be4 Fix empty strings crashing Namespace for float options
This feels like a Discord bug to me but it's causing issues
2022-08-14 05:38:11 -04:00
Rapptz
1fa7d7e402 Raise special CommandSyncFailure during sync for better errors
This is parsed from the error to allow for users to better debug
what exactly is causing the issue in sync.
2022-08-12 22:36:13 -04:00
Rapptz
a9025ca3d1 Remove public CommandTree.call method and make it private 2022-08-12 10:57:54 -04:00
Rapptz
0744737e86 Fix default_permissions serialisation error from __bool__ change 2022-08-11 18:24:23 -04:00
Rapptz
a36d6daec7 Fix formatting issue in app_commands 2022-08-10 22:39:53 -04:00
Rapptz
11278d55e8 Add command information to Parameter class 2022-08-09 23:11:40 -04:00
Rapptz
4fbafcd718 Fix attribute error in TranslationError 2022-08-09 10:45:12 -04:00
Rapptz
c32567ea81 Refactor TranslationContext to be more useful
The previous enum was good at accomplishing dynamic key generation for
a few cases, but it fell short in others:

1. It could not discern group names and command names
2. It could not give you more contextual data such as the full object
   currently being translated.

On top of that, the context being a required parameter for
Translator.translate meant that it wouldn't be possible to re-use the
translator for other use cases outside of the rigid ones defined in the
library.

To alleviate these concerns, new enum attributes were added along with
a richer type for obtaining even more context.
2022-08-09 10:41:45 -04:00
z03h
dc81ff76c4
Add Object.type to Objects where a type can be determined 2022-08-09 08:18:58 -04:00
Rapptz
57efb5a5a0 Fix failing tests to use new get_parameter function 2022-08-09 08:02:41 -04:00
Rapptz
1727eca106 Add app_commands.Parameter for parameter introspection 2022-08-09 07:43:40 -04:00
Rapptz
0e386ec2cc Fix parameter descriptions being serialised as locale_str 2022-08-08 21:15:08 -04:00
Rapptz
cc0c261925 Change auto_locale_strings default to True 2022-08-08 20:17:47 -04:00
Rapptz
dd40ff1d57 Add __slots__ to locale_str 2022-08-08 08:11:19 -04:00
Rapptz
842d6b4fbb Fix auto_locale_strings when no choices are given 2022-08-06 09:20:00 -04:00
Rapptz
7d20379bd9 Add name_localizations and description_localizations to AppCommand & co 2022-08-05 22:36:40 -04:00
Rapptz
1c9792e0ed Add auto_locale_strings parameter to application commands 2022-08-05 22:36:40 -04:00
Rapptz
2d586ae805 Add initial support for app command localisation 2022-08-05 22:35:30 -04:00
Bryan Forbes
d707019348
Bump Pyright to 1.1.265, fix type errors, and remove unnecessary ignores 2022-08-04 22:46:02 -04:00
Rapptz
08fa9aa65c Add support for inline transformers via classmethod 2022-08-04 10:28:57 -04:00
Rapptz
6c42065210 Fix various a -> an typos across the library
Closes #8301, #8287
2022-08-04 08:17:07 -04:00
Rapptz
c735682ac6 Fix autocomplete bindings not working for transformer instances 2022-08-03 19:02:36 -04:00
Rapptz
13c725f183 Fix EnumNameTransformer passing values 2022-08-02 11:02:30 -04:00
Bryan Forbes
07ad6951fb
Fix various generics throughout the public interface
Fix CooldownMapping generic typing and ensure other public methods 
have proper generics
2022-08-01 06:24:55 -04:00
Soheab
6e3c359373
Add min/max_length to Argument
Co-authored-by: Danny <1695103+Rapptz@users.noreply.github.com>
2022-08-01 06:23:12 -04:00
Rapptz
5527de688a Fix Python 3.10 __or__ not working with transformers
Fixes #8214
2022-07-30 04:48:26 -04:00
Rapptz
11618cd1ba Refactor transformers to use instances instead of classmethods
This should allow them to be easier to use for users without requiring
a lot of metaprogramming hackery if you want to involve state.
2022-07-30 04:40:28 -04:00
StockerMC
1fbcfbd1fb Fix cog_app_command_error for group edge case 2022-07-27 22:27:37 -04:00
Stocker
6d1069e789
Fix cog_app_command_error for groups 2022-07-27 00:29:53 -04:00
Lucas Hardt
24b619a516
Fix docstring for AppCommand.options and AppCommandGroup.options 2022-07-25 21:20:08 -04:00
Rapptz
0b1c5df3e0 Fix minimum and maximum being casted to str in Range[str, ...] 2022-07-20 23:12:00 -04:00
Rapptz
4914e74029 Change variable name for binding error handler to be more generic 2022-07-17 23:46:47 -04:00
Stocker
0546343bcb
[commands] Add cog-level app command error special method 2022-07-17 23:45:19 -04:00
Lucas Hardt
55b9a848ff
Implement AppCommand mentions 2022-07-09 23:06:09 -04:00
JohannesIBK
65a270d35a
Update bot_has_permissions to use Interaction.app_permissions 2022-07-04 21:47:47 -04:00
Rapptz
fd9c244f48 Validate Range to disallow min > max 2022-07-03 07:37:58 -04:00
Emily
c61e407b50
Fix typo in app_commands.AppCommandGroup 2022-07-01 22:31:54 -04:00
Rapptz
bac66a9dab Add support for Range[str, ...] for app commands 2022-07-01 19:04:59 -04:00
Bryan Forbes
0eb3d26343
Add generic arguments for extras typing 2022-06-27 22:35:22 -04:00
I. Ahmad
9fc4769b18
Add extras attribute to app commands command types 2022-06-21 20:38:56 -04:00
Rapptz
b8ddb17b14 Fix fallback_to_global not working with context menus
Fix #8167
2022-06-20 06:20:46 -04:00
Rapptz
9648986028 Reorder fruit autocomplete example to be less confusing 2022-06-14 20:40:27 -04:00
Rapptz
53685b9b86 Change stderr prints to use the logging module instead 2022-06-13 01:06:15 -04:00
Soheab
e73a805bd7
Add missing data to Argument model 2022-06-12 15:33:08 -04:00