From b22c6af08328f2f5731feff3b906f64678ae0afe Mon Sep 17 00:00:00 2001 From: Kazhnuz Date: Sun, 16 Feb 2025 16:08:20 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20blank=20versions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.js | 48 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/main.js b/main.js index 9c2627d..dfe752c 100644 --- a/main.js +++ b/main.js @@ -18,15 +18,19 @@ function capitalizeFirstLetter(val) { } function createFilename(prideflag, text, now = false) { - const adaptedText = text - .replaceAll("⋅", "_") - .replaceAll(" ", "_") - .replaceAll("\n", '-') - .normalize("NFD").replaceAll(/[\u0300-\u036f]/g, "") - .replaceAll("&", "and") - .replaceAll("+", "") - .toLowerCase(); - return `${prideflag.name.en.toLowerCase()}-${adaptedText}${now?'-now':''}.gif`; + let filename = `${prideflag.name.en.toLowerCase()}.gif` + if (text !== "") { + const adaptedText = text + .replaceAll("⋅", "_") + .replaceAll(" ", "_") + .replaceAll("\n", '-') + .normalize("NFD").replaceAll(/[\u0300-\u036f]/g, "") + .replaceAll("&", "and") + .replaceAll("+", "") + .toLowerCase(); + filename = `${prideflag.name.en.toLowerCase()}-${adaptedText}${now?'-now':''}.gif`; + } + return filename; } function createButton(source, x, y, text, gravity) { @@ -50,9 +54,17 @@ function createButton(source, x, y, text, gravity) { function createMetadatas(prideflag, text, now = false) { const filename = createFilename(prideflag, text, now); - const textForAlt = text.replaceAll("\n", " ").toLowerCase(); - const alt = `Drapeau ${prideflag.name.fr.toLowerCase()} (${prideflag.alt.fr}) avec écrit "${textForAlt}${now?", now!": ""}"` - const alten = `${capitalizeFirstLetter(prideflag.name.en)} flag (${prideflag.alt.en}) with written "${textForAlt}${now?", now!": ""}"` + let textForAlt = "" + let alt = "" + let alten = "" + if (text === "") { + alt = `Drapeau ${prideflag.name.fr.toLowerCase()} (${prideflag.alt.fr})` + alten = `${capitalizeFirstLetter(prideflag.name.en)} flag (${prideflag.alt.en})` + } else { + textForAlt = text.replaceAll("\n", " ").toLowerCase(); + alt = `Drapeau ${prideflag.name.fr.toLowerCase()} (${prideflag.alt.fr}) avec écrit "${textForAlt}${now?", now!": ""}"` + alten = `${capitalizeFirstLetter(prideflag.name.en)} flag (${prideflag.alt.en}) with written "${textForAlt}${now?", now!": ""}"` + } return {file:filename, alt:alt, localizedAlt:{en: alten, fr: alt}, text:textForAlt}; } @@ -78,6 +90,18 @@ const start = Date.now(); data.forEach(prideflag => { console.log(`- Creating flags for ${prideflag.name.en}`); const imageMetadata = {title:`Drapeau ${prideflag.name.fr.toLowerCase()} :`, list:[]}; + + const metadata = createMetadatas(prideflag, "", false) + imageMetadata.list.push(metadata); + createButton(prideflag.source, position.x, position.y, "", position.gravity) + .write(`./output/${metadata.file}`, function (err) { + if (err) { + console.error(err); + throw err; + }; + }); + count++; + prideflag.texts.forEach(text => { const metadatas = createMetadatas(prideflag, text, false) imageMetadata.list.push(metadatas);