diff --git a/labscore/constants.js b/labscore/constants.js index f18dde4..ffa17cd 100644 --- a/labscore/constants.js +++ b/labscore/constants.js @@ -549,8 +549,8 @@ module.exports.DICTIONARY_LANGUAGES = Object.freeze({ nl: "Dutch", no: "Norwegian", pl: "Polish", - "pt-br": "Portuguese", - "pt-pt": "Portuguese", + "pt-br": "Portuguese (Brazil)", + "pt-pt": "Portuguese (Portugal)", pt: "Portuguese", ro: "Romanian", ru: "Russian", @@ -571,7 +571,7 @@ module.exports.DICTIONARY_LANGUAGES = Object.freeze({ // work lmk on discord @bignutty and i'll add it (if reasonable) // same goes for emoji below module.exports.TRANSLATE_LANGUAGE_ALIASES = Object.freeze({ - "jp": "ja" + "jp": "ja", }) module.exports.TRANSLATE_LANGUAGE_MAPPINGS = Object.freeze({ @@ -664,6 +664,8 @@ module.exports.TRANSLATE_LANGUAGE_MAPPINGS = Object.freeze({ "fa": "🇮🇷", "pl": "🇵🇱", "pt": "🇵🇹", + "pt-pt": "🇵🇹", + "pt-br": "🇧🇷", "ro": "🇷🇴", "ru": "🇷🇺", "sm": "🇼🇸", @@ -798,7 +800,8 @@ module.exports.TRANSLATE_LANGUAGES = Object.freeze({ "ps": "Pashto", "fa": "Persian", "pl": "Polish", - "pt": "Portuguese (Portugal, Brazil)", + "pt": "Portuguese", + "pt-br": "Brazilian Portuguese", "pa": "Punjabi", "qu": "Quechua", "ro": "Romanian", diff --git a/labscore/utils/translate.js b/labscore/utils/translate.js index b6453bc..a4efdf7 100644 --- a/labscore/utils/translate.js +++ b/labscore/utils/translate.js @@ -15,7 +15,9 @@ function getCode(desiredLang) { return false; } - return TRANSLATE_LANGUAGES[key].toLowerCase() === desiredLang; + if(TRANSLATE_LANGUAGES[key].toLowerCase() === desiredLang) return true; + if(TRANSLATE_LANGUAGES[key].toLowerCase().startsWith(desiredLang)) return true; + return false; }); keys.push(Object.keys(TRANSLATE_LANGUAGE_MAPPINGS).filter(function (key) { @@ -23,7 +25,9 @@ function getCode(desiredLang) { return false; } - return TRANSLATE_LANGUAGE_MAPPINGS[key].toLowerCase() === desiredLang; + if(TRANSLATE_LANGUAGE_MAPPINGS[key].toLowerCase() === desiredLang) return true; + if(TRANSLATE_LANGUAGE_MAPPINGS[key].toLowerCase().startsWith(desiredLang)) return true; + return false; })); return keys[0] || false; @@ -33,7 +37,7 @@ module.exports.getCodeFromAny = function (prompt) { if(TRANSLATE_LANGUAGE_ALIASES[prompt.toLowerCase()]) prompt = TRANSLATE_LANGUAGE_ALIASES[prompt.toLowerCase()] if(TRANSLATE_LANGUAGES[prompt.toLowerCase()]) return prompt.toLowerCase() let languages = []; - for(const i of Object.keys(TRANSLATE_LANGUAGES)) if(!languages.includes(i) && TRANSLATE_LANGUAGES[i].toLowerCase() == prompt.toLowerCase()) languages.push(i) + for(const i of Object.keys(TRANSLATE_LANGUAGES)) if(!languages.includes(i) && (TRANSLATE_LANGUAGES[i].toLowerCase() == prompt.toLowerCase() || TRANSLATE_LANGUAGES[i].toLowerCase().startsWith(prompt.toLowerCase()))) languages.push(i) for(const i of Object.keys(TRANSLATE_LANGUAGE_MAPPINGS)) if(!languages.includes(i) && TRANSLATE_LANGUAGE_MAPPINGS[i].toLowerCase() == prompt.toLowerCase()) languages.push(i) return languages[0]; };