import {
ChatInputSubcommandErrorPayload,
SubcommandPluginEvents,
} from "@sapphire/plugin-subcommands"
import { Listener } from "@sapphire/framework"
import { YumeError, interactionError, logCommand } from "@yume/common"
import { ApplyOptions } from "@sapphire/decorators"
@ApplyOptions<Listener.Options>({
name: SubcommandPluginEvents.ChatInputSubcommandError,
})
export class ChatInputSubcommandError extends Listener<
typeof SubcommandPluginEvents.ChatInputSubcommandError
> {
public override async run(error: Error, payload: ChatInputSubcommandErrorPayload) {
if (error instanceof YumeError) {
logCommand(payload)
interactionError(payload.interaction, error.message)
} else {
this.container.logger.error(error)
}
}
}
import {
ChatInputSubcommandErrorPayload,
SubcommandPluginEvents,
} from "@sapphire/plugin-subcommands"
import { Listener } from "@sapphire/framework"
import { YumeError, interactionError, logCommand } from "@yume/common"
import { ApplyOptions } from "@sapphire/decorators"
@ApplyOptions<Listener.Options>({
name: SubcommandPluginEvents.ChatInputSubcommandError,
})
export class ChatInputSubcommandError extends Listener<
typeof SubcommandPluginEvents.ChatInputSubcommandError
> {
public override async run(error: Error, payload: ChatInputSubcommandErrorPayload) {
if (error instanceof YumeError) {
logCommand(payload)
interactionError(payload.interaction, error.message)
} else {
this.container.logger.error(error)
}
}
}