Add features from Auto

This commit is contained in:
Dragon Fire
2020-09-29 14:08:19 -04:00
parent db140795e9
commit 1516f58354
9 changed files with 208 additions and 3 deletions
+33
View File
@@ -0,0 +1,33 @@
const { ArgumentType } = require('discord.js-commando');
const codeblock = /```(?:(\S+)\n)?\s*([^]+?)\s*```/i;
module.exports = class CodeArgumentType extends ArgumentType {
constructor(client) {
super(client, 'code');
}
async validate(value) {
if (!value) return false;
return true;
}
parse(value) {
if (!value) return null;
if (/^[0-9]+$/.test(value)) {
try {
const message = await msg.channel.messages.fetch(value);
value = message.content;
} catch (err) {
return { code: value, lang: null };
}
}
if (codeblock.test(value)) {
const parsed = codeblock.exec(value);
return {
code: parsed[2],
lang: parsed[1] ? parsed[1].toLowerCase() : null
};
}
return { code: value, lang: null };
}
};