const Discord = require("discord.js"); const axios = require("axios"); module.exports = { name: "compile", description: "Compile a code!", cateogry: "Bot Development", run: async (client, message, args) => { const cmd = message.content.replace(/^!/, ""); console.log(cmd) const languages = await axios.get("https://wandbox.org/api/list.json"); const supportedLanguages = Object.values(languages.data.reduce((accumulator, currentValue) => { if (accumulator[currentValue.language]) { if (currentValue.version > accumulator[currentValue.language].version) { accumulator[currentValue.language] = currentValue; } } else { accumulator[currentValue.language] = currentValue; } return accumulator; }, {})).map(lang => lang.language); console.log(supportedLanguages) // .map(lang => lang.language.toLowerCase()); const regex1 = /^compile `.*\n.*`$/gm; //compile `language \n code` const regex2 = /^compile [a-zA-Z]+ `.*`$/gm; //compile language `code` if(regex2.test(cmd)) { const language = args[0]; const code = args[1]; if(supportedLanguages.includes(language)) { console.log("thjing gfound") } console.log(language) console.log(code) } else if (regex1.test(cmd)) { const argssplited = args[0].split("\n"); const language = argssplited[0].replace(/`/g, "") const code = argssplited[1].replace(/`/g, "") console.log(language) console.log(code) } // let match = message.content.match(/^compile\s+(\w+)\s+```([\s\S]*)```/); // console.log(match) // if (match) { // let language = match[1]; // let code = match[2]; // console.log(`Compiling ${language} code: ${code}`); // } else { // // Match format "compile ```[language] code```" // match = message.content.match(/^compile\s+```(\w+)\s+([\s\S]*)```/); // if (match) { // let language = match[1]; // let code = match[2]; // console.log(`Compiling ${language} code: ${code}`); // } else { // // Can't match either pattern // console.log("Log: no match found"); // } // } } }