Files
2026-01-16 01:51:36 +00:00

139 lines
4.6 KiB
JavaScript

import { get } from 'rc-util';
import arEG from "./locale/ar_EG";
import caES from "./locale/ca_ES";
import csCZ from "./locale/cs_CZ";
import deDE from "./locale/de_DE";
import enGB from "./locale/en_GB";
import enUS from "./locale/en_US";
import esES from "./locale/es_ES";
import faIR from "./locale/fa_IR";
import frFR from "./locale/fr_FR";
import heIL from "./locale/he_IL";
import hrHR from "./locale/hr_HR";
import idID from "./locale/id_ID";
import itIT from "./locale/it_IT";
import jaJP from "./locale/ja_JP";
import koKR from "./locale/ko_KR";
import mnMN from "./locale/mn_MN";
import msMY from "./locale/ms_MY";
import nlNL from "./locale/nl_NL";
import plPL from "./locale/pl_PL";
import ptBR from "./locale/pt_BR";
import roRO from "./locale/ro_RO";
import ruRU from "./locale/ru_RU";
import skSK from "./locale/sk_SK";
import srRS from "./locale/sr_RS";
import svSE from "./locale/sv_SE";
import thTH from "./locale/th_TH";
import trTR from "./locale/tr_TR";
import ukUA from "./locale/uk_UA";
import uzUZ from "./locale/uz_UZ";
import viVN from "./locale/vi_VN";
import zhCN from "./locale/zh_CN";
import zhHK from "./locale/zh_HK";
import zhTW from "./locale/zh_TW";
/**
* 创建一个国际化的操作函数
*
* @param locale
* @param localeMap
*/
export var createIntl = function createIntl(locale, localeMap) {
return {
getMessage: function getMessage(id, defaultMessage) {
var msg = get(localeMap, id.replace(/\[(\d+)\]/g, '.$1').split('.')) || '';
if (msg) return msg;
var localKey = locale.replace('_', '-');
if (localKey === 'zh-CN') {
return defaultMessage;
}
// eslint-disable-next-line @typescript-eslint/no-use-before-define
var intl = intlMap['zh-CN'];
return intl ? intl.getMessage(id, defaultMessage) : defaultMessage;
},
locale: locale
};
};
var mnMNIntl = createIntl('mn_MN', mnMN);
var arEGIntl = createIntl('ar_EG', arEG);
var zhCNIntl = createIntl('zh_CN', zhCN);
var enUSIntl = createIntl('en_US', enUS);
var enGBIntl = createIntl('en_GB', enGB);
var viVNIntl = createIntl('vi_VN', viVN);
var itITIntl = createIntl('it_IT', itIT);
var jaJPIntl = createIntl('ja_JP', jaJP);
var esESIntl = createIntl('es_ES', esES);
var caESIntl = createIntl('ca_ES', caES);
var ruRUIntl = createIntl('ru_RU', ruRU);
var srRSIntl = createIntl('sr_RS', srRS);
var msMYIntl = createIntl('ms_MY', msMY);
var zhTWIntl = createIntl('zh_TW', zhTW);
var zhHKIntl = createIntl('zh_HK', zhHK);
var frFRIntl = createIntl('fr_FR', frFR);
var ptBRIntl = createIntl('pt_BR', ptBR);
var koKRIntl = createIntl('ko_KR', koKR);
var idIDIntl = createIntl('id_ID', idID);
var deDEIntl = createIntl('de_DE', deDE);
var faIRIntl = createIntl('fa_IR', faIR);
var trTRIntl = createIntl('tr_TR', trTR);
var plPLIntl = createIntl('pl_PL', plPL);
var hrHRIntl = createIntl('hr_', hrHR);
var thTHIntl = createIntl('th_TH', thTH);
var csCZIntl = createIntl('cs_cz', csCZ);
var skSKIntl = createIntl('sk_SK', skSK);
var heILIntl = createIntl('he_IL', heIL);
var ukUAIntl = createIntl('uk_UA', ukUA);
var uzUZIntl = createIntl('uz_UZ', uzUZ);
var nlNLIntl = createIntl('nl_NL', nlNL);
var roROIntl = createIntl('ro_RO', roRO);
var svSEIntl = createIntl('sv_SE', svSE);
var intlMap = {
'mn-MN': mnMNIntl,
'ar-EG': arEGIntl,
'zh-CN': zhCNIntl,
'en-US': enUSIntl,
'en-GB': enGBIntl,
'vi-VN': viVNIntl,
'it-IT': itITIntl,
'ja-JP': jaJPIntl,
'es-ES': esESIntl,
'ca-ES': caESIntl,
'ru-RU': ruRUIntl,
'sr-RS': srRSIntl,
'ms-MY': msMYIntl,
'zh-TW': zhTWIntl,
'zh-HK': zhHKIntl,
'fr-FR': frFRIntl,
'pt-BR': ptBRIntl,
'ko-KR': koKRIntl,
'id-ID': idIDIntl,
'de-DE': deDEIntl,
'fa-IR': faIRIntl,
'tr-TR': trTRIntl,
'pl-PL': plPLIntl,
'hr-HR': hrHRIntl,
'th-TH': thTHIntl,
'cs-CZ': csCZIntl,
'sk-SK': skSKIntl,
'he-IL': heILIntl,
'uk-UA': ukUAIntl,
'uz-UZ': uzUZIntl,
'nl-NL': nlNLIntl,
'ro-RO': roROIntl,
'sv-SE': svSEIntl
};
var intlMapKeys = Object.keys(intlMap);
/**
* 根据 antd 的 key 来找到的 locale 插件的 key
*
* @param localeKey
*/
export var findIntlKeyByAntdLocaleKey = function findIntlKeyByAntdLocaleKey(localeKey) {
var localeName = (localeKey || 'zh-CN').toLocaleLowerCase();
return intlMapKeys.find(function (intlKey) {
var LowerCaseKey = intlKey.toLocaleLowerCase();
return LowerCaseKey.includes(localeName);
});
};
export { arEGIntl, caESIntl, csCZIntl, deDEIntl, enGBIntl, enUSIntl, esESIntl, faIRIntl, frFRIntl, heILIntl, hrHRIntl, idIDIntl, intlMap, intlMapKeys, itITIntl, jaJPIntl, koKRIntl, mnMNIntl, msMYIntl, nlNLIntl, plPLIntl, ptBRIntl, roROIntl, ruRUIntl, skSKIntl, srRSIntl, svSEIntl, thTHIntl, trTRIntl, ukUAIntl, uzUZIntl, viVNIntl, zhCNIntl, zhTWIntl };