If !tag eval fails, let the user know the error

This commit is contained in:
Dragory 2020-08-05 02:26:47 +03:00
parent f93291e604
commit f71c0c076a
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1

View file

@ -1,6 +1,9 @@
import { tagsCmd } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { renderTag } from "../util/renderTag";
import { MessageContent } from "eris";
import { TemplateParseError } from "../../../templateFormatter";
import { sendErrorMessage } from "../../../pluginUtils";
export const TagEvalCmd = tagsCmd({
trigger: "tag eval",
@ -11,7 +14,16 @@ export const TagEvalCmd = tagsCmd({
},
async run({ message: msg, args, pluginData }) {
const rendered = await renderTag(pluginData, args.body);
msg.channel.createMessage(rendered);
try {
const rendered = await renderTag(pluginData, args.body);
msg.channel.createMessage(rendered);
} catch (e) {
if (e instanceof TemplateParseError) {
sendErrorMessage(pluginData, msg.channel, `Failed to render tag: ${e.message}`);
return;
}
throw e;
}
},
});