mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-12-23 09:42:32 -05:00
Added Downloader cog (#786)
This commit is contained in:
24
cogs/downloader/converters.py
Normal file
24
cogs/downloader/converters.py
Normal file
@@ -0,0 +1,24 @@
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
from .repo_manager import RepoManager
|
||||
from .installable import Installable
|
||||
|
||||
|
||||
class RepoName(commands.Converter):
|
||||
async def convert(self, ctx: commands.Context, arg: str) -> str:
|
||||
return RepoManager.validate_and_normalize_repo_name(arg)
|
||||
|
||||
|
||||
class InstalledCog(commands.Converter):
|
||||
async def convert(self, ctx: commands.Context, arg: str) -> Installable:
|
||||
downloader = ctx.bot.get_cog("Downloader")
|
||||
if downloader is None:
|
||||
raise commands.CommandError("Downloader not loaded.")
|
||||
|
||||
cog = discord.utils.get(downloader.installed_cogs, name=arg)
|
||||
if cog is None:
|
||||
raise commands.BadArgument(
|
||||
"That cog is not installed"
|
||||
)
|
||||
|
||||
return cog
|
||||
Reference in New Issue
Block a user