Introduces comprehensive invite handling capabilities including creation, deletion, and retrieval operations.
Implements invite data model with proper parsing and representation methods to handle Discord invite objects and their metadata.
Provides HTTP client methods for all invite-related API endpoints with appropriate error handling and response processing.
Includes documentation with practical examples for common invite operations.
Cleans up codebase by removing redundant type casting, unused imports, and duplicate method definitions.
Eliminates duplicate embeds list comprehension that was accidentally duplicated.
Removes unnecessary typing imports and cast operation that were no longer needed.
Deletes duplicate history method implementation that was redundant.
Simplifies modal response creation by accepting both structured data objects and raw dictionaries, reducing unnecessary type casting and import dependencies.
Improves text input decorator by auto-generating custom IDs from function names when not explicitly provided.
Enhances example code by properly utilizing parsed Guild objects instead of raw data and fixes modal component registration.
Changes component validation to use the more general ComponentModel instead of ActionRowModel, allowing broader component types to be processed correctly.
Makes reply content parameter optional to improve API flexibility.
Adds missing import for Cog class to prevent runtime errors during cog validation.
Lowers minimum Python requirement from 3.11 to 3.10 to increase compatibility while updating CI to use Python 3.13 for testing.
Extracts hybrid command functionality into a separate module to improve code organization and reduce complexity in the main commands module.
Updates test timeouts and dependency versions to ensure reliable test execution and modern package compatibility.
The _compute_permissions helper function has been simplified by delegating the complex permission calculation logic to a new channel.permissions_for(member) method.
This refactoring encapsulates the permission logic within the Channel model, where it belongs. It removes duplicate and complex code from the command decorator, improving maintainability and separation of concerns.
The tests for requires_permissions have been updated to mock the new permissions_for method, resulting in cleaner tests that are no longer concerned with the internal implementation details of how permissions are calculated.