22 lines
758 B
TypeScript
22 lines
758 B
TypeScript
|
import { CommandInteractionOptionResolver } from "discord.js"
|
||
|
import { ExtendedInteraction } from "../types/commandTypes"
|
||
|
import { client } from "../.."
|
||
|
import { logger } from "../logger"
|
||
|
|
||
|
export const name = 'interactionCreate'
|
||
|
export async function execute(interaction: ExtendedInteraction) {
|
||
|
//console.dir(interaction, { depth: null })
|
||
|
if (interaction.isCommand()) {
|
||
|
logger.info(`Interaction is a command.`, { guildId: interaction.guild?.id })
|
||
|
await interaction.deferReply()
|
||
|
const command = client.commands.get(interaction.commandName)
|
||
|
if (!command)
|
||
|
return interaction.followUp('Invalid command')
|
||
|
command.run({
|
||
|
args: interaction.options as CommandInteractionOptionResolver,
|
||
|
client,
|
||
|
interaction
|
||
|
})
|
||
|
}
|
||
|
}
|