Merge branch 'image-api-logic'
This commit is contained in:
commit
5d89d78b44
17 changed files with 432 additions and 303 deletions
|
@ -18,7 +18,7 @@ class ImageStatsCommand extends Command {
|
|||
for (let i = 0; i < servers.length; i++) {
|
||||
embed.embeds[0].fields.push({
|
||||
name: `Server ${i + 1}`,
|
||||
value: `Running Jobs: ${servers[i].runningJobs}\nQueued: ${servers[i].queued}\nMax Jobs: ${servers[i].max}`
|
||||
value: `Running Jobs: ${servers[i].runningJobs}\nQueued: ${Math.max(0, servers[i].runningJobs - servers[i].max)}\nMax Jobs: ${servers[i].max}`
|
||||
});
|
||||
}
|
||||
return embed;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import ImageCommand from "../../classes/imageCommand.js";
|
||||
const allowedFonts = ["futura", "impact", "helvetica", "arial", "roboto", "noto"];
|
||||
const allowedFonts = ["futura", "impact", "helvetica", "arial", "roboto", "noto", "times"];
|
||||
|
||||
class CaptionCommand extends ImageCommand {
|
||||
params(url) {
|
||||
|
|
|
@ -1,21 +1,27 @@
|
|||
import ImageCommand from "../../classes/imageCommand.js";
|
||||
const words = ["me irl", "dank", "follow my second account @esmBot_", "2016", "meme", "wholesome", "reddit", "instagram", "twitter", "facebook", "fortnite", "minecraft", "relatable", "gold", "funny", "template", "hilarious", "memes", "deep fried", "2020", "leafy", "pewdiepie"];
|
||||
const allowedFonts = ["futura", "impact", "helvetica", "arial", "roboto", "noto", "times"];
|
||||
|
||||
class CaptionTwoCommand extends ImageCommand {
|
||||
params(url) {
|
||||
const newArgs = this.args.filter(item => !item.includes(url));
|
||||
return {
|
||||
caption: newArgs.length !== 0 ? newArgs.join(" ").replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%") : words.sort(() => 0.5 - Math.random()).slice(0, Math.floor(Math.random() * words.length + 1)).join(" "),
|
||||
top: !!this.specialArgs.top
|
||||
top: !!this.specialArgs.top,
|
||||
font: this.specialArgs.font && allowedFonts.includes(this.specialArgs.font.toLowerCase()) ? this.specialArgs.font.toLowerCase() : "helvetica"
|
||||
};
|
||||
}
|
||||
|
||||
static description = "Adds a me.me caption/tag list to an image/GIF";
|
||||
static description = "Adds a me.me caption/tag list to an image";
|
||||
static aliases = ["tags2", "meirl", "memecaption", "medotmecaption"];
|
||||
static arguments = ["{text}"];
|
||||
static flags = [{
|
||||
name: "top",
|
||||
description: "Put the caption on the top of an image/GIF instead of the bottom"
|
||||
description: "Put the caption on the top of an image instead of the bottom"
|
||||
}, {
|
||||
name: "font",
|
||||
type: allowedFonts.join("|"),
|
||||
description: "Specify the font you want to use (default: `helvetica`)"
|
||||
}];
|
||||
|
||||
static noText = "You need to provide some text to add a caption!";
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import ImageCommand from "../../classes/imageCommand.js";
|
||||
const allowedFonts = ["futura", "impact", "helvetica", "arial", "roboto", "noto", "times"];
|
||||
|
||||
class MemeCommand extends ImageCommand {
|
||||
params(url) {
|
||||
|
@ -6,7 +7,8 @@ class MemeCommand extends ImageCommand {
|
|||
const [topText, bottomText] = newArgs.join(" ").split(/(?<!\\),/).map(elem => elem.trim());
|
||||
return {
|
||||
top: (this.specialArgs.case ? topText : topText.toUpperCase()).replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%"),
|
||||
bottom: bottomText ? (this.specialArgs.case ? bottomText : bottomText.toUpperCase()).replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%") : ""
|
||||
bottom: bottomText ? (this.specialArgs.case ? bottomText : bottomText.toUpperCase()).replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%") : "",
|
||||
font: this.specialArgs.font && allowedFonts.includes(this.specialArgs.font.toLowerCase()) ? this.specialArgs.font.toLowerCase() : "impact"
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -15,6 +17,10 @@ class MemeCommand extends ImageCommand {
|
|||
static flags = [{
|
||||
name: "case",
|
||||
description: "Make the meme text case-sensitive (allows for lowercase text)"
|
||||
}, {
|
||||
name: "font",
|
||||
type: allowedFonts.join("|"),
|
||||
description: "Specify the font you want to use (default: `impact`)"
|
||||
}];
|
||||
|
||||
static requiresText = true;
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import ImageCommand from "../../classes/imageCommand.js";
|
||||
const allowedFonts = ["futura", "impact", "helvetica", "arial", "roboto", "noto", "times"];
|
||||
|
||||
class MotivateCommand extends ImageCommand {
|
||||
params(url) {
|
||||
|
@ -6,13 +7,19 @@ class MotivateCommand extends ImageCommand {
|
|||
const [topText, bottomText] = newArgs.join(" ").split(/(?<!\\),/).map(elem => elem.trim());
|
||||
return {
|
||||
top: topText.replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%"),
|
||||
bottom: bottomText ? bottomText.replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%") : ""
|
||||
bottom: bottomText ? bottomText.replaceAll("&", "\\&").replaceAll(">", "\\>").replaceAll("<", "\\<").replaceAll("\"", "\\"").replaceAll("'", "\\'").replaceAll("%", "\\%") : "",
|
||||
font: this.specialArgs.font && allowedFonts.includes(this.specialArgs.font.toLowerCase()) ? this.specialArgs.font.toLowerCase() : "times"
|
||||
};
|
||||
}
|
||||
|
||||
static description = "Generates a motivational poster";
|
||||
static aliases = ["motivational", "motiv", "demotiv", "demotivational", "poster", "motivation", "demotivate"];
|
||||
static arguments = ["[top text]", "{bottom text}"];
|
||||
static flags = [{
|
||||
name: "font",
|
||||
type: allowedFonts.join("|"),
|
||||
description: "Specify the font you want to use (default: `times`)"
|
||||
}];
|
||||
|
||||
static requiresText = true;
|
||||
static noText = "You need to provide some text to generate a motivational poster!";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue