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