update translate data

This commit is contained in:
bignutty 2024-10-05 13:08:05 +02:00
parent 9d25d1ed27
commit 16cca6e52f
4 changed files with 390 additions and 28 deletions

View file

@ -1,5 +1,5 @@
const { googleVisionOcr, googleTranslate } = require('#api');
const { TRANSLATE_LANGUAGE_MAPPINGS, TRANSLATE_LANGUAGES } = require('#constants');
const { TRANSLATE_LANGUAGES, TRANSLATE_DISPLAY_MAPPINGS } = require('#constants');
const { getMessageAttachment, validateAttachment } = require('#utils/attachment');
const { createEmbed } = require('#utils/embed');
@ -42,8 +42,8 @@ module.exports = {
try{
let translate = await googleTranslate(context, ocr.response.body.text, "en", "auto")
let fromFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.to] || ''
let fromFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.to] || ''
return editOrReply(context, createEmbed("default", context, {
description: `${icon("locale")} ${fromFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.from || sourceLanguage])} ${icon("arrow_right")} ${toFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.to])}\n${codeblock("ansi", [translate.response.body.translation.substr(0,3900)])}`,

View file

@ -1,5 +1,5 @@
const { googleVisionOcr, googleTranslate } = require("#api");
const { TRANSLATE_LANGUAGES, TRANSLATE_LANGUAGE_MAPPINGS } = require("#constants");
const { TRANSLATE_LANGUAGES, TRANSLATE_DISPLAY_MAPPINGS } = require("#constants");
const { getRecentImage } = require("#utils/attachment");
const { createEmbed } = require("#utils/embed");
@ -54,8 +54,8 @@ module.exports = {
try{
let translate = await googleTranslate(context, ocr.response.body.text, targetLanguage, sourceLanguage)
let fromFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.to] || ''
let fromFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.to] || ''
return editOrReply(context, createEmbed("default", context, {
description: `${icon("locale")} ${fromFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.from || sourceLanguage])} ${icon("arrow_right")} ${toFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.to])}\n${codeblock("ansi", [translate.response.body.translation.substr(0,4000)])}`,

View file

@ -1,5 +1,5 @@
const { googleTranslate } = require('#api');
const { TRANSLATE_LANGUAGES, TRANSLATE_LANGUAGE_MAPPINGS } = require('#constants');
const { TRANSLATE_LANGUAGES, TRANSLATE_DISPLAY_MAPPINGS } = require('#constants');
const { createEmbed } = require('#utils/embed')
const { codeblock, icon, pill, stringwrap, smallIconPill } = require('#utils/markdown');
@ -58,8 +58,8 @@ module.exports = {
try{
let translate = await googleTranslate(context, content, targetLanguage, sourceLanguage)
let fromFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_LANGUAGE_MAPPINGS[translate.response.body.language.to] || ''
let fromFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.from || sourceLanguage] || ''
let toFlag = TRANSLATE_DISPLAY_MAPPINGS[translate.response.body.language.to] || ''
return editOrReply(context, createEmbed("default", context, {
description: `${icon("locale")} ${fromFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.from || sourceLanguage] || translate.response.body.language.from || args.from)} ${icon("arrow_right")} ${toFlag} ${pill(TRANSLATE_LANGUAGES[translate.response.body.language.to] || translate.response.body.language.to)}\n${codeblock("ansi", [translate.response.body.translation])}`,

View file

@ -700,6 +700,260 @@ module.exports.TRANSLATE_LANGUAGE_ALIASES = Object.freeze({
"jp": "ja",
})
// there are a lot of overlapping flags (specifically in eastern territories),
// we have separata "display" and "resolve" mappings now.
module.exports.TRANSLATE_DISPLAY_MAPPINGS = Object.freeze({
"af": "🇿🇦",
"sq": "🇦🇱",
"am": "🇪🇹",
"ar": "🇸🇦",
"hy": "🇦🇲",
"as": "🇮🇳",
"ay": "🇧🇴",
"az": "🇦🇿",
"bm": "🇲🇱",
"eu": "",
"be": "🇧🇾",
"bn": "🇧🇩",
"bho": "🇮🇳",
"bs": "🇧🇦",
"bg": "🇧🇬",
"ca": "",
"ceb": "🇵🇭",
"co": "",
"hr": "🇭🇷",
"cs": "🇨🇿",
"da": "🇩🇰",
"dv": "🇲🇻",
"doi": "🇮🇳",
"nl": "🇳🇱",
"en": "🇺🇸",
"eo": "",
"et": "🇪🇪",
"ee": "🇹🇬",
"fil": "🇵🇭",
"fi": "🇫🇮",
"fr": "🇫🇷",
"fy": "🇳🇱",
"gl": "🇪🇸",
"ka": "🇬🇪",
"de": "🇩🇪",
"el": "🇬🇷",
"gn": "🇵🇾",
"gu": "🇮🇳",
"ht": "🇭🇹",
"ha": "🇳🇬",
"haw": "",
"he": "🇮🇱",
"iw": "🇮🇱",
"hi": "🇮🇳",
"hmn": "",
"hu": "🇭🇺",
"is": "🇮🇸",
"ig": "🇳🇬",
"ilo": "",
"id": "🇮🇩",
"ga": "🇮🇪",
"it": "🇮🇹",
"ja": "🇯🇵",
"jv": "🇮🇩",
"kn": "🇮🇳",
"kk": "🇰🇿",
"km": "🇰🇭",
"rw": "🇷🇼",
"gom": "🇮🇳",
"ko": "🇰🇷",
"kri": "🇸🇱",
"ku": "",
"ckb": "",
"ky": "🇰🇬",
"lo": "🇱🇦",
"la": "",
"lv": "🇱🇻",
"ln": "🇨🇩",
"lt": "🇱🇹",
"lg": "🇺🇬",
"lb": "🇱🇺",
"mk": "🇲🇰",
"mai": "🇮🇳",
"mg": "🇲🇬",
"ms": "🇲🇾",
"ml": "🇮🇳",
"mt": "🇲🇹",
"mi": "🇳🇿",
"mr": "🇮🇳",
"mn": "🇲🇳",
"my": "🇲🇲",
"ne": "🇳🇵",
"no": "🇳🇴",
"ny": "🇲🇼",
"ps": "🇦🇫",
"fa": "🇮🇷",
"pl": "🇵🇱",
"pt": "🇵🇹",
"pt-pt": "🇵🇹",
"pt-br": "🇧🇷",
"ro": "🇷🇴",
"ru": "🇷🇺",
"sm": "🇼🇸",
"sa": "🇮🇳",
"gd": "",
"nso": "🇿🇦",
"sr": "🇷🇸",
"st": "🇱🇸",
"sn": "🇿🇼",
"si": "🇱🇰",
"sk": "🇸🇰",
"sl": "🇸🇮",
"so": "🇸🇴",
"es": "🇪🇸",
"su": "🇸🇩",
"sw": "🇰🇪",
"sv": "🇸🇪",
"tl": "🇵🇭",
"tg": "🇹🇯",
"te": "🇮🇳",
"th": "🇹🇭",
"ti": "🇪🇷",
"ts": "🇹🇴",
"tr": "🇹🇷",
"tk": "🇹🇲",
"ak": "🇬🇭",
"uk": "🇺🇦",
"ur": "🇵🇰",
"uz": "🇺🇿",
"vi": "🇻🇳",
"cy": "🏴󠁧󠁢󠁷󠁬󠁳󠁿",
"xh": "🇿🇦",
"yo": "🇳🇬",
"zu": "🇿🇦",
"zh-TW": "🇨🇳",
"zh": "🇨🇳",
"zh-CN": "🇨🇳",
"ab": "",
"ace": "🇮🇩",
"ach": "🇺🇬",
"aa": "🇪🇹",
"alz": "🇺🇬",
"av": "🇷🇺",
"awa": "🇮🇳",
"ban": "🇮🇩",
"bal": "🇮🇷",
"bci": "🇨🇮",
"ba": "🇷🇺",
"btx": "🇮🇩",
"bts": "🇮🇩",
"bbc": "🇮🇩",
"bem": "🇿🇲",
"bew": "🇮🇩",
"bik": "🇵🇭",
"br": "🇫🇷",
"bua": "🇷🇺",
"yue": "🇭🇰",
"ch": "🇬🇺",
"ce": "🇷🇺",
"chk": "🇫🇲",
"cv": "🇷🇺",
"crh": "🇺🇦",
"fa-AF": "🇦🇫",
"din": "🇸🇸",
"dov": "🇨🇩",
"dyu": "🇲🇱",
"dz": "🇧🇹",
"fo": "🇫🇴",
"fj": "🇫🇯",
"fon": "🇧🇯",
"fur": "🇮🇹",
"ff": "🇲🇱",
"gaa": "🇬🇭",
"cnh": "🇲🇲",
"hil": "🇵🇭",
"hrx": "🇩🇪",
"iba": "🇲🇾",
"jam": "🇯🇲",
"jw": "🇮🇩",
"kac": "🇨🇳",
"kl": "🇬🇱",
"kr": "🇳🇪",
"pam": "🇵🇭",
"kha": "🇮🇳",
"cgg": "🇺🇬",
"kg": "🇨🇩",
"ktu": "🇨🇩",
"trp": "🇮🇳",
"kv": "🇷🇺",
"ltg": "🇱🇻",
"lij": "🇮🇹",
"li": "🇳🇱",
"lmo": "🇮🇹",
"luo": "🇰🇪",
"mad": "🇮🇩",
"mak": "🇮🇩",
"ms-Arab": "🇲🇾",
"mam": "🇬🇹",
"gv": "🇮🇲",
"mh": "🇲🇭",
"mwr": "🇮🇳",
"mfe": "🇲🇺",
"chm": "🇷🇺",
"mni-Mtei": "🇮🇳",
"min": "🇮🇩",
"lus": "🇮🇳",
"nhe": "🇲🇽",
"ndc-ZW": "🇿🇼",
"nr": "🇿🇼",
"new": "🇳🇵",
"bm-Nkoo": "🇬🇳",
"nus": "🇸🇸",
"oc": "🇫🇷",
"or": "🇮🇳",
"om": "🇪🇹",
"os": "🇷🇺",
"pag": "🇵🇭",
"pap": "🇦🇼",
"pt-PT": "🇵🇹",
"pa": "🇮🇳",
"pa-Arab": "🇵🇰",
"kek": "🇬🇹",
"qu": "🇵🇪",
"rom": "🇷🇴",
"rn": "🇧🇮",
"se": "🇳🇴",
"sg": "🇨🇫",
"sat-Latn": "🇮🇳",
"crs": "🇸🇨",
"shn": "🇲🇲",
"scn": "🇮🇹",
"szl": "🇵🇱",
"sd": "🇵🇰",
"sus": "🇬🇳",
"ss": "🇸🇿",
"ty": "🇵🇫",
"ber-Latn": "🇩🇿",
"ber": "🇩🇿",
"ta": "🇮🇳",
"tt": "🇷🇺",
"tet": "🇹🇱",
"bo": "🇨🇳",
"tiv": "🇳🇬",
"tpi": "🇵🇬",
"to": "🇹🇴",
"tn": "🇧🇼",
"tcy": "🇮🇳",
"tum": "🇲🇼",
"tyv": "🇷🇺",
"udm": "🇷🇺",
"ug": "🇨🇳",
"ve": "🇿🇦",
"vec": "🇮🇹",
"war": "🇵🇭",
"wo": "🇸🇳",
"sah": "🇷🇺",
"yi": "",
"yua": "🇲🇽",
"zap": "🇲🇽"
})
module.exports.TRANSLATE_LANGUAGE_MAPPINGS = Object.freeze({
"af": "🇿🇦",
"sq": "🇦🇱",
@ -831,145 +1085,253 @@ module.exports.TRANSLATE_LANGUAGE_MAPPINGS = Object.freeze({
})
module.exports.TRANSLATE_LANGUAGES = Object.freeze({
'auto': 'Automatic',
"ab": "Abkhaz",
"ace": "Acehnese",
"ach": "Acholi",
"aa": "Afar",
"af": "Afrikaans",
"sq": "Albanian",
"alz": "Alur",
"am": "Amharic",
"ar": "Arabic",
"hy": "Armenian",
"as": "Assamese",
"av": "Avar",
"awa": "Awadhi",
"ay": "Aymara",
"az": "Azerbaijani",
"ban": "Balinese",
"bal": "Baluchi",
"bm": "Bambara",
"bci": "Baoulé",
"ba": "Bashkir",
"eu": "Basque",
"btx": "Batak Karo",
"bts": "Batak Simalungun",
"bbc": "Batak Toba",
"be": "Belarusian",
"bem": "Bemba",
"bn": "Bengali",
"bew": "Betawi",
"bho": "Bhojpuri",
"bik": "Bikol",
"bs": "Bosnian",
"br": "Breton",
"bg": "Bulgarian",
"bua": "Buryat",
"yue": "Cantonese",
"ca": "Catalan",
"ceb": "Cebuano",
"zh-CN": "Chinese",
"zh": "Chinese",
"ch": "Chamorro",
"ce": "Chechen",
"ny": "Chichewa",
"zh": "Chinese (Simplified)",
"zh-TW": "Chinese (Traditional)",
"chk": "Chuukese",
"cv": "Chuvash",
"co": "Corsican",
"crh": "Crimean Tatar",
"hr": "Croatian",
"cs": "Czech",
"da": "Danish",
"dv": "Dhivehi",
"fa-AF": "Dari",
"din": "Dinka",
"dv": "Divehi",
"doi": "Dogri",
"dov": "Dombe",
"nl": "Dutch",
"dyu": "Dyula",
"dz": "Dzongkha",
"en": "English",
"eo": "Esperanto",
"et": "Estonian",
"ee": "Ewe",
"fil": "Filipino (Tagalog)",
"fo": "Faroese",
"fj": "Fijian",
"tl": "Filipino",
"fi": "Finnish",
"fon": "Fon",
"fr": "French",
"fy": "Frisian",
"fur": "Friulian",
"ff": "Fulfulde",
"gaa": "Ga",
"gl": "Galician",
"lg": "Ganda",
"ka": "Georgian",
"de": "German",
"el": "Greek",
"gn": "Guarani",
"gu": "Gujarati",
"ht": "Haitian Creole",
"cnh": "Hakha Chin",
"ha": "Hausa",
"haw": "Hawaiian",
"he": "Hebrew",
"iw": "Hebrew",
"hil": "Hiligaynon",
"hi": "Hindi",
"hmn": "Hmong",
"hu": "Hungarian",
"hrx": "Hunsrik",
"iba": "Iban",
"is": "Icelandic",
"ig": "Igbo",
"ilo": "Ilocano",
"ilo": "Iloko",
"id": "Indonesian",
"ga": "Irish",
"ga": "Irish Gaelic",
"it": "Italian",
"jam": "Jamaican Patois",
"ja": "Japanese",
"jv": "Javanese",
"jw": "Javanese",
"kac": "Jingpo",
"kl": "Kalaallisut",
"kn": "Kannada",
"kr": "Kanuri",
"pam": "Kapampangan",
"kk": "Kazakh",
"kha": "Khasi",
"km": "Khmer",
"cgg": "Kiga",
"kg": "Kikongo",
"rw": "Kinyarwanda",
"ktu": "Kituba",
"trp": "Kokborok",
"kv": "Komi",
"gom": "Konkani",
"ko": "Korean",
"kri": "Krio",
"ku": "Kurdish",
"ku": "Kurdish (Kurmanji)",
"ckb": "Kurdish (Sorani)",
"ky": "Kyrgyz",
"lo": "Lao",
"ltg": "Latgalian",
"la": "Latin",
"lv": "Latvian",
"lij": "Ligurian",
"li": "Limburgan",
"ln": "Lingala",
"lt": "Lithuanian",
"lg": "Luganda",
"lmo": "Lombard",
"luo": "Luo",
"lb": "Luxembourgish",
"mk": "Macedonian",
"mad": "Madurese",
"mai": "Maithili",
"mak": "Makassar",
"mg": "Malagasy",
"ms": "Malay",
"ms-Arab": "Malay (Jawi)",
"ml": "Malayalam",
"mt": "Maltese",
"mam": "Mam",
"gv": "Manx",
"mi": "Maori",
"mr": "Marathi",
"mh": "Marshallese",
"mwr": "Marwadi",
"mfe": "Mauritian Creole",
"chm": "Meadow Mari",
"mni-Mtei": "Meiteilon (Manipuri)",
"min": "Minang",
"lus": "Mizo",
"mn": "Mongolian",
"my": "Myanmar (Burmese)",
"nhe": "Nahuatl (Eastern Huasteca)",
"ndc-ZW": "Ndau",
"nr": "Ndebele (South)",
"new": "Nepalbhasa (Newari)",
"ne": "Nepali",
"bm-Nkoo": "NKo",
"nso": "Northern Sotho",
"no": "Norwegian",
"ny": "Nyanja (Chichewa)",
"nus": "Nuer",
"oc": "Occitan",
"or": "Odia (Oriya)",
"om": "Oromo",
"os": "Ossetian",
"pag": "Pangasinan",
"pap": "Papiamento",
"ps": "Pashto",
"fa": "Persian",
"pl": "Polish",
"pt": "Portuguese",
"pt-br": "Brazilian Portuguese",
"pt-PT": "Portuguese (Portugal)",
"pa": "Punjabi",
"pa-Arab": "Punjabi (Shahmukhi)",
"kek": "Q'eqchi'",
"qu": "Quechua",
"rom": "Romani",
"ro": "Romanian",
"rn": "Rundi",
"ru": "Russian",
"se": "Sami (North)",
"sm": "Samoan",
"sg": "Sango",
"sa": "Sanskrit",
"sat-Latn": "Santali",
"gd": "Scots Gaelic",
"nso": "Sepedi",
"sr": "Serbian",
"st": "Sesotho",
"crs": "Seychellois Creole",
"shn": "Shan",
"sn": "Shona",
"scn": "Sicilian",
"szl": "Silesian",
"sd": "Sindhi",
"si": "Sinhala (Sinhalese)",
"si": "Sinhala",
"sk": "Slovak",
"sl": "Slovenian",
"so": "Somali",
"es": "Spanish",
"su": "Sundanese",
"sus": "Susu",
"sw": "Swahili",
"ss": "Swati",
"sv": "Swedish",
"tl": "Tagalog (Filipino)",
"ty": "Tahitian",
"tg": "Tajik",
"ber-Latn": "Tamazight",
"ber": "Tamazight (Tifinagh)",
"ta": "Tamil",
"tt": "Tatar",
"te": "Telugu",
"tet": "Tetum",
"th": "Thai",
"bo": "Tibetan",
"ti": "Tigrinya",
"tiv": "Tiv",
"tpi": "Tok Pisin",
"to": "Tongan",
"ts": "Tsonga",
"tn": "Tswana",
"tcy": "Tulu",
"tum": "Tumbuka",
"tr": "Turkish",
"tk": "Turkmen",
"ak": "Twi (Akan)",
"tyv": "Tuvan",
"ak": "Twi",
"udm": "Udmurt",
"uk": "Ukrainian",
"ur": "Urdu",
"ug": "Uyghur",
"uz": "Uzbek",
"ve": "Venda",
"vec": "Venetian",
"vi": "Vietnamese",
"war": "Waray",
"cy": "Welsh",
"wo": "Wolof",
"xh": "Xhosa",
"sah": "Yakut",
"yi": "Yiddish",
"yo": "Yoruba",
"zu": "Zulu"
})
"yua": "Yucatec Maya",
"zap": "Zapotec",
"zu": "Zulu",
"he": "Hebrew",
"jv": "Javanese",
"zh-CN": "Chinese (Simplified)"
})
module.exports.EMOJIPEDIA_PLATFORM_TYPES = [
"apple",