From 341565e2c30bfdc60e174c6abfb9f6bacbb1d5e3 Mon Sep 17 00:00:00 2001 From: IRONM00N <64110067+IRONM00N@users.noreply.github.com> Date: Fri, 5 Aug 2022 23:14:44 -0400 Subject: add command snippet --- .vscode/typescript.code-snippets | 61 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to '.vscode/typescript.code-snippets') diff --git a/.vscode/typescript.code-snippets b/.vscode/typescript.code-snippets index 6ab1c89..29418b1 100644 --- a/.vscode/typescript.code-snippets +++ b/.vscode/typescript.code-snippets @@ -72,5 +72,66 @@ "\trequired: $3", "},$0" ] + }, + + // prettier-ignore + "Command":{ + "prefix": "command", + "description": "A bot command template", + "body": [ + "import {", + "\tBushCommand,", + "\tclientSendAndPermCheck,", + "\temojis,", + "\ttype ArgType,", + "\ttype CommandMessage,", + "\ttype OptArgType,", + "\ttype SlashMessage", + "} from '#lib';", + "", + "import { ApplicationCommandOptionType } from 'discord.js';", + "export default class ${1:CommandName} extends BushCommand {", + "\tpublic constructor() {", + "\t\tsuper('${2:commandId}', {", + "\t\t\taliases: ['${3:alias}'],", + "\t\t\tcategory: '${4:category}',", + "\t\t\tdescription: '${5:description}.',", + "\t\t\tusage: ['${3:alias} <${6:arg}> [${7:arg}]'],", + "\t\t\texamples: ['${3:alias} ${8:argExample} ${9:argExample}'],", + "\t\t\targs: [", + "\t\t\t\t{", + "\t\t\t\t\tid: '${6:arg}',", + "\t\t\t\t\tdescription: '${10:Argument description}.',", + "\t\t\t\t\ttype: '${11:argType}',", + "\t\t\t\t\tprompt: '${12:What is arg}?',", + "\t\t\t\t\tretry: '{error} ${13:Invalid arg}.',", + "\t\t\t\t\toptional: ${14|true,false|},", + "\t\t\t\t\tslashType: ApplicationCommandOptionType.${15|Subcommand,SubcommandGroup,String,Integer,Boolean,User,Channel,Role,Mentionable,Number,Attachment|}", + "\t\t\t\t},", + "\t\t\t\t{", + "\t\t\t\t\tid: '${7:arg}',", + "\t\t\t\t\tdescription: '${16:Argument description}.',", + "\t\t\t\t\ttype: '${17:argType}',", + "\t\t\t\t\tprompt: '${18:What is arg}?',", + "\t\t\t\t\tretry: '{error} ${19:Invalid arg}.',", + "\t\t\t\t\toptional: ${20|true,false|},", + "\t\t\t\t\tslashType: ApplicationCommandOptionType.${21|Subcommand,SubcommandGroup,String,Integer,Boolean,User,Channel,Role,Mentionable,Number,Attachment|}", + "\t\t\t\t}", + "\t\t\t],", + "\t\t\tslash: ${22|true,false|},", + "\t\t\tchannel: '${23|guild,dm|}',", + "\t\t\tclientPermissions: (m) => clientSendAndPermCheck(m),", + "\t\t\tuserPermissions: []", + "\t\t});", + "\t}", + "", + "\tpublic override async exec(", + "\t\tmessage: CommandMessage | SlashMessage,", + "\t\targs: { ${6:arg}: ArgType<'${10:argType}'>; ${7:arg}: OptArgType<'${16:argType}'> }", + "\t) {", + "\t\t$0", + "\t}", + "}", + ] } } -- cgit